public override void PreUpdate() { Player plr = this.player; //if( plr.whoAmI != Main.myPlayer ) { return; } //if( plr.dead ) { return; } if( plr.whoAmI == Main.myPlayer ) { WanderingGhostNPC.UpdateTradingState(); } this.UpdateIntrinsicBuffs(); }
private void DrawTradeUI() { string text = "Give a rare or hard-to-get item"; int x = this.Config.TradeUIPositionX >= 0 ? this.Config.TradeUIPositionX : Main.screenWidth + this.Config.TradeUIPositionX; int y = this.Config.TradeUIPositionY >= 0 ? this.Config.TradeUIPositionY : Main.screenHeight + this.Config.TradeUIPositionY; if (ModLoader.GetMod("ExtensibleInventory") != null) { y += 40; } var textPos = new Vector2(x + 64, y); var color = Color.White * ((float)Main.mouseTextColor / 255f); float oldInvScale = Main.inventoryScale; Main.inventoryScale = 1f; ChatManager.DrawColorCodedStringWithShadow( Main.spriteBatch, Main.fontMouseText, text, textPos, color, 0f, Vector2.Zero, Vector2.One, -1f, 2f ); int maxX = (int)(x + ((float)Main.inventoryBackTexture.Width * Main.inventoryScale)); int maxY = (int)(y + ((float)Main.inventoryBackTexture.Height * Main.inventoryScale)); if (Main.mouseX >= x && Main.mouseX <= maxX && Main.mouseY >= y && Main.mouseY <= maxY && !PlayerInput.IgnoreMouseInterface) { Main.LocalPlayer.mouseInterface = true; Main.craftingHide = true; if (Main.mouseLeftRelease && Main.mouseLeft) { ItemSlot.LeftClick(ref this.TradeItem, 0); WanderingGhostNPC.AttemptTrade(ref this.TradeItem); Recipe.FindRecipes(); } else { ItemSlot.RightClick(ref this.TradeItem, 0); } ItemSlot.MouseHover(ref this.TradeItem, 0); } ItemSlot.Draw( Main.spriteBatch, ref this.TradeItem, ItemSlot.Context.GuideItem, new Vector2(x, y), default(Color) ); Main.inventoryScale = oldInvScale; }