Painting - Ellpeck/TinyLifeExampleMod Wiki

Tiny Life


Painting Class

A furniture is an instance of a FurnitureType which is placed in the world, or in a Person's hand.
To register a custom furniture, use Register(TypeSettings).

public class Painting : TinyLife.Objects.Furniture

Inheritance System.Object 🡒 MLEM.Misc.GenericDataHolder 🡒 MapObject 🡒 Furniture 🡒 Painting


Painting.Painting(Guid, FurnitureType, int[], Map, Vector2) Constructor

Creates a new furniture instance.
By default, this is done using Construct(int[], Map, Vector2, Nullable<Guid>).

public Painting(System.Guid id, TinyLife.Objects.FurnitureType type, int[] colors, TinyLife.World.Map map, Microsoft.Xna.Framework.Vector2 pos);


id System.Guid
The id to apply to the created furniture instance

type FurnitureType
The type to create an instance of

colors System.Int32[]
The colors to apply to the furniture

map Map
The map to create the furniture on

pos Microsoft.Xna.Framework.Vector2
The position that the furniture should have


Painting.Creator Field

The System.Guid of the Person that created, and is painting this painting.
This value defaults to System.Guid.Empty, meaning no creator.

public Guid Creator;

Field Value


Painting.PaintingType Field

The type of painting that this object displays

public PaintingType PaintingType;

Field Value


Painting.Progress Field

The progress that has been done on this painting by the Creator so far.
This value defaults to 1, which is 100%.

public float Progress;

Field Value


Painting.Quality Field

The Quality that this painting has.
This value default to Average, but may be different if there is a Creator.

public Quality Quality;

Field Value



Painting.Draw(GameTime, SpriteBatch, Vector2, Vector2, Nullable<Color>, Direction2, int[], float, bool, Furniture, AbstractSpot, float, bool) Method

Draws this furniture in the world with the given settings.
This is a more generalized version of Draw(GameTime, SpriteBatch, Vector2, Nullable<Color>)

public override void Draw(Microsoft.Xna.Framework.GameTime time, Microsoft.Xna.Framework.Graphics.SpriteBatch batch, Microsoft.Xna.Framework.Vector2 pos, Microsoft.Xna.Framework.Vector2 drawPos, System.Nullable<Microsoft.Xna.Framework.Color> overrideColor, MLEM.Misc.Direction2 rotation, int[] colors, float drawScale, bool pivot, TinyLife.Objects.Furniture parent, TinyLife.Objects.AbstractSpot parentSpot, float depthOffset, bool held);


time Microsoft.Xna.Framework.GameTime
The game time

batch Microsoft.Xna.Framework.Graphics.SpriteBatch
The sprite batch to draw with

pos Microsoft.Xna.Framework.Vector2
The position, in world space, that the furniture is at

drawPos Microsoft.Xna.Framework.Vector2
The position, in draw space, to draw the furniture at

overrideColor System.Nullable<Microsoft.Xna.Framework.Color>
An optional color to override the default colors of the furniture

rotation MLEM.Misc.Direction2
The rotation of the furniture

colors System.Int32[]
The colors to draw the furniture with

drawScale System.Single
The scale to draw the furniture with

pivot System.Boolean
Whether or not to move the furniture by its texture's pivot point

parent Furniture
The object that this furniture is latched on to, or null if there is none

parentSpot AbstractSpot
The object spot that this furntiture is in, or null if there is none

depthOffset System.Single
A value that is added onto the calculated depth of the object

held System.Boolean
Whether or not this item is currently being held by a Person

Painting.GetHoverInfo() Method

Returns a MLEM.Ui.Elements.Tooltip object that is displayed whenever the mouse is hovered over this object in the world.
By default, this method returns null, which will cause no tooltip to be displayed.

public override MLEM.Ui.Elements.Tooltip GetHoverInfo();


The tooltip to display

Painting.Validate() Method

This method is called when this object is loaded from disk.
Returning false on this method causes the object to be removed from the map.
By default, this method invokes OnValidated and OnEventsAttachable.

public override bool Validate();


false if the object is not valid, true otherwise