public Improvement(Field location, ImprovementMetadata metadata) { Metadata = metadata; Id = metadata.EntityId; if (metadata.IsEmpty) { return; } var model = location.World.Model; var flagTexture = location.World.Resources.Get <EditorTilesets>().Miscellaneous.Flag; var improvementTexture = metadata.Tile; improvementSprite = new Sprite { Position = model.GetTopLeftCorner(location.Position), Scale = improvementTexture.Scale(model.Size), Texture = improvementTexture.Texture, TextureRect = improvementTexture.Bounds }; flagSprite = new Sprite { Color = metadata.Owner.Value.ToRGB(), Position = model.GetTopLeftCorner(location.Position) + FlagOffset(model), Scale = flagTexture.Scale(model.Size), Texture = flagTexture.Texture, TextureRect = flagTexture.Bounds }; }
public ImprovementBrush(ImprovementMetadata metadata) : base(metadata) { }
public static void AddImprovementBrush(this List <ImageBrushPair> list, Image image, ImprovementMetadata metadata) { list.Add(new ImageBrushPair( brush: new ImprovementBrush( metadata: metadata ), image: image )); }
public void Create(ImprovementMetadata metadata) { Improvement = new Improvement(this, metadata); }