public override void SpecialDraw(int i, int j, SpriteBatch spriteBatch) { int ID = mod.GetID <TEFan>(i, j); if (ID == -1) { return; } Tile tile = Main.tile[i, j]; if (tile.TopLeft()) { TEFan fan = (TEFan)TileEntity.ByID[ID]; TileObjectDirection dir = TheOneLibrary.Utility.Utility.GetDirection(i, j, mod.TileType <Fan>()); int startX = dir == TileObjectDirection.PlaceRight ? i + 2 : i - fan.rangeX / 16; int endX = dir == TileObjectDirection.PlaceRight ? i + 1 + fan.rangeX / 16 : i - 1; if (fan.drawInfo) { spriteBatch.DrawOutline(new Point16(startX, j + 2 - fan.rangeY / 16), new Point16(endX, j + 2), Color.Goldenrod, 2, true); } fan.drawInfo = false; } }
public void SetTileEntity(ModTileEntity tileEntity) => fan = (TEFan)tileEntity;