public override bool NewRightClick(int i, int j) { Player player = Main.LocalPlayer; Main.mouseRightRelease = false; if (player.sign >= 0) { Main.PlaySound(SoundID.MenuClose); player.sign = -1; Main.editSign = false; Main.npcChatText = ""; } //TODO: (Or not to do) Hardcoded frame coordinate values because using TileObjectData is cancer. if (PoMUtil.TryGetTileEntity(i, j, 18, 18, out TileEntity te)) { ModifierForgeTE clickedForge = (ModifierForgeTE)te; if (ModifierForgeUI.Instance.IsVisible && activeForge == clickedForge) { ModifierForgeUI.HideUI(); } else { ModifierForgeUI.ShowUI(clickedForge); } return(true); } return(false); }
public override void NetReceive(BinaryReader reader, bool lightReceive) { //PathOfModifiers.Log($"NetReceive{Main.netMode}"); modifiedItem = ItemIO.Receive(reader, true); modifierItem = ItemIO.Receive(reader, true); if (Main.netMode != 2) { if (ModifierForge.activeForge?.Position == Position) { ModifierForgeUI.ShowUI(this); } } }
public override void PostSetupContent() { PoMDataLoader.Initialize(); if (Main.netMode != 2) { new ModifierForgeUI().Initialize(); modifierForgeUI = new UserInterface(); ModifierForgeUI.HideUI(); new MapDeviceUI().Initialize(); mapDeviceUI = new UserInterface(); MapDeviceUI.HideUI(); } }
public override void OnKill() { if (Main.netMode != NetmodeID.MultiplayerClient) { if (!modifiedItem.IsAir) { PoMUtil.DropItem(new Vector2(Position.X * 16, Position.Y * 16), modifiedItem, 2); } if (!modifierItem.IsAir) { PoMUtil.DropItem(new Vector2(Position.X * 16, Position.Y * 16), modifierItem, 2); } } if (Main.netMode != NetmodeID.Server && ModifierForge.activeForge == this) { ModifierForgeUI.HideUI(); } }
public override void PreSaveAndQuit() { ModifierForgeUI.HideUI(); MapDeviceUI.HideUI(); }