public Unit(Field location, UnitMetadata metadata) { Metadata = metadata; Id = metadata.EntityId; if (metadata.IsEmpty) { return; } var model = location.World.Model; var position = location.Position; var hexModel = location.World.Model; var resources = location.World.Resources; var emblemTexture = resources.Get <EditorTilesets>().Miscellaneous.Emblem; var unitSize = hexModel.Size / 2; emblemSprite = new Sprite { Color = metadata.Owner.Value.ToRGB(), Position = hexModel.GetTopLeftCorner(position), Scale = emblemTexture.Scale(hexModel.Size), Texture = emblemTexture.Texture, TextureRect = emblemTexture.Bounds }; unitSprite = new Sprite { Position = hexModel.GetShiftedTopLeftCenter(position, unitSize), Scale = metadata.Tile.Scale(unitSize), Texture = metadata.Tile.Texture, TextureRect = metadata.Tile.Bounds }; }
public static double GetConversionFactor(this SpeedUnit unit) { return(UnitMetadata.For(unit).ConversionFactor); }
public UnitBrush(UnitMetadata metadata) : base(metadata) { }
public static void AddUnitBrush(this List <ImageBrushPair> list, Image image, UnitMetadata metadata) { list.Add(new ImageBrushPair( brush: new UnitBrush( metadata: metadata ), image: image )); }
public void Create(UnitMetadata metadata) { Unit = new Unit(this, metadata); }