public override void KillMultiTile(int i, int j, int frameX, int frameY) { TileEntities.EnergyExtractor extractor = Utility.GetTileEntity <TileEntities.EnergyExtractor>(i, j); PanelUI.Instance.CloseUI(extractor); Item.NewItem(i * 16, j * 16, 48, 48, ModContent.ItemType <Items.EnergyExtractor>()); extractor.Kill(i, j); }
public override bool NewRightClick(int i, int j) { TileEntities.EnergyExtractor extractor = Utility.GetTileEntity <TileEntities.EnergyExtractor>(i, j); if (extractor == null) { return(false); } PanelUI.Instance.HandleUI(extractor); return(true); }
public override void SpecialDraw(int i, int j, SpriteBatch spriteBatch) { TileEntities.EnergyExtractor extractor = Utility.GetTileEntity <TileEntities.EnergyExtractor>(i, j); if (extractor == null) { return; } Tile tile = Main.tile[i, j]; if (!tile.IsTopLeft()) { return; } Vector2 position = new Point16(i, j).ToScreenCoordinates() + new Vector2(24, 24); float progress = (extractor.EnergyHandler.Energy / (float)extractor.EnergyHandler.Capacity).Remap(0f, 1f, 0.05f, 0.15f); spriteBatch.Draw(Gelum.OrbTexture, position, null, color, -(float)Hooking.time.TotalGameTime.TotalSeconds, Gelum.OrbTexture.Size() * 0.5f, progress, SpriteEffects.None, 0f); }