public void Initialize(SceneType scene) { endFlag = false; blurRate = 0.0f; store = new Store(gameManager, gameDevice); store.Initialize(); Vector2 size = new Vector2(windowWidth / 2 - 128, windowHeight - 128); leftWindow = new Window(gameDevice, new Vector2(64, 64), size); leftWindow.Initialize(); rightWindow = new Window(gameDevice, new Vector2(windowWidth / 2 + 64, 64), size); rightWindow.Initialize(); messegeWindow = new Window(gameDevice, new Vector2(windowWidth / 2 - 160, 720 / 2 - 80), new Vector2(320, 160)); messegeWindow.Initialize(); buyButton = new Button(new Vector2(windowWidth / 2 - 160, windowHeight / 2 + 80 + 32), 64, 32); sellButton = new Button(new Vector2(windowWidth / 2 + 160 - 64, 720 / 2 + 80 + 32), 64, 32); buyWindow = new Window(gameDevice, new Vector2(windowWidth / 2 - 160, windowHeight / 2 + 80 + 32), new Vector2(64, 32)); buyWindow.Initialize(); sellWindow = new Window(gameDevice, new Vector2(windowWidth / 2 + 160 - 64, windowHeight / 2 + 80 + 32), new Vector2(64, 32)); sellWindow.Initialize(); mode = ShopMode.select; isPop = false; isMessegePop = false; }
public override void Handle(GameSession session, PacketReader packet) { ShopMode mode = (ShopMode)packet.ReadByte(); switch (mode) { case ShopMode.Close: HandleClose(session); break; case ShopMode.Buy: HandleBuy(session, packet); break; case ShopMode.Sell: HandleSell(session, packet); break; case ShopMode.OpenViaItem: HandleOpenViaItem(session, packet); break; default: IPacketHandler <GameSession> .LogUnknownMode(mode); break; } }
public static string WriteItemValue(Item item, int discount, ShopMode mode, bool showDetails = false) { var cost = new StringBuilder(); cost.Append($"{Icons.IconOf(item.Currency)} "); if (item.Value == 0) { cost.Append("**Unknown Cost**"); return(cost.ToString()); } discount = Math.Clamp(discount, 0, 100); if (discount == 100) { cost.Append(mode == ShopMode.Buy ? "**Free**" : "**Worthless**"); return(cost.ToString()); } cost.Append($" **{GetCost(item.Value, discount):##,0}**"); if (showDetails && discount > 0) { cost.Append($" (**{discount}**% {(mode == ShopMode.Buy ? "discount" : "deduction")})"); } return(cost.ToString()); }
public void SwitchDisplayedInventory(ShopMode mode) { itemList.ClearList(); filterList.ClearList(); selectedItem = null; DisplayOtherList(); shopMode = mode; if (mode == ShopMode.Selling) { filterList.AddButtonFavorite(); filterList.AddButtonAll().SelectButton(); DisplayListOfItems(player.PlayerInventory.Items); List <Item.ItemType> typeAlreadyHere = new List <Item.ItemType>(); foreach (Item item in player.PlayerInventory.Items.Keys) { if (!typeAlreadyHere.Contains(item.EnumItemType)) { filterList.AddButtonFilter(item); typeAlreadyHere.Add(item.EnumItemType); } } } else { DisplayInventory(player); } lowerBar.UpdateGoldLabel(); }
public void DisplayInventory(Player _player) { player = _player; maxWeight = 50.0f + player.Characteristics.Strength * 2f; shopMode = ShopMode.Buying; if (inventoryType == InterfaceType.OtherInventory || inventoryType == InterfaceType.Shop) { lowerBar.ShowTakeAllButton(); } gameObject.SetActive(true); gold = player.PlayerInventory.Gold; filterList.AddButtonFavorite(); filterList.AddButtonAll().SelectButton(); DisplayAll(); List <Item.ItemType> typeAlreadyHere = new List <Item.ItemType>(); foreach (Item item in items.Keys) { if (!typeAlreadyHere.Contains(item.EnumItemType)) { filterList.AddButtonFilter(item); typeAlreadyHere.Add(item.EnumItemType); } } lowerBar.UpdateGoldLabel(); }
//アイテムを買う処理へ遷移 「買う」ボタンを押した時 public void OpenBuyWindow() { //モード変更 shopMode = ShopMode.BUY; //ウィンドウを開く detailWindow.SetActive(true); OpenWindow("BuyWindow"); }
//アイテムを売る処理へ遷移 「売るボタンを押した時」 public void OpenSaleWindow() { //モード変更 shopMode = ShopMode.SALE; initSaleWindow(); //売却時はボタンを押されたタイミングでPrefubをロードする detailWindow.SetActive(true); //ウィンドウを開く OpenWindow("SaleWindow"); }
public override void Handle(GameSession session, PacketReader packet) { byte unk = packet.ReadByte(); // Looks like it's always 0x0A ShopMode mode = (ShopMode)packet.ReadByte(); switch (mode) { case ShopMode.Open: HandleOpen(session, packet); break; default: IPacketHandler <GameSession> .LogUnknownMode(mode); break; } }
public override void Handle(GameSession session, PacketReader packet) { ShopMode mode = (ShopMode)packet.ReadByte(); switch (mode) { case ShopMode.ViaItem: HandleViaItem(session, packet); break; case ShopMode.Arena: HandleMapleArenaShop(session, packet); break; default: IPacketHandler <GameSession> .LogUnknownMode(mode); break; } }
/// <summary> /// Linked to UI Sell button. /// </summary> void SetSellMode() { Mode = ShopMode.Sell; }
/// <summary> /// Linked to UI Buy button. /// </summary> void SetBuyMode() { Mode = ShopMode.Buy; }
public void Update(GameTime gameTime) { store.Update(); leftWindow.Update(); rightWindow.Update(); messegeWindow.Update(); buyWindow.Update(); sellWindow.Update(); Point mousePos = new Point( (int)input.GetMousePosition().X, (int)input.GetMousePosition().Y); if (mode == ShopMode.select) { if (backRect.Contains(mousePos) && input.IsLeftClick()) { endFlag = true; } if (!isMessegePop) { messegeWindow.Switch(); buyWindow.Switch(); sellWindow.Switch(); isMessegePop = true; } if (buyButton.IsClick(mousePos) && input.IsLeftClick()) { mode = ShopMode.buy; store.Initialize(); store.Buy(); messegeWindow.Switch(); buyWindow.Switch(); sellWindow.Switch(); isMessegePop = false; } else if (sellButton.IsClick(mousePos) && input.IsLeftClick()) { mode = ShopMode.sell; store.Initialize(); store.Sell(); messegeWindow.Switch(); buyWindow.Switch(); sellWindow.Switch(); isMessegePop = false; } } else { if (!isPop) { leftWindow.Switch(); rightWindow.Switch(); isPop = true; } if (backRect.Contains(mousePos) && input.IsLeftClick()) { mode = ShopMode.select; leftWindow.Switch(); rightWindow.Switch(); isPop = false; } } UpdateBlurRate(); blurEffect.Update(blurRate); }
public ValueInfo(CurrencyType currency, long value, ShopMode mode = ShopMode.Any) { Currency = currency; Value = value; AllowedModes = mode; }
internal void HandleShopItemPressed(int index) { switch (CurrentShopMode) { case ShopMode.InCategory: { ShopItem[0].Content.material = BackMaterial; switch (index) { case 0: { CurrentShopMode = ShopMode.InBase; for (int i = 1; i < 5; i++) { ShopItem[i].Content.material = BaseMaterial[i - 1]; } } break; case 1: { CurrentShopMode = ShopMode.InBody; for (int i = 1; i < 5; i++) { ShopItem[i].Content.material = BodyMaterial[i - 1]; } } break; case 2: { CurrentShopMode = ShopMode.InTurret; for (int i = 1; i < 5; i++) { ShopItem[i].Content.material = TurretMaterial[i - 1]; } } break; case 3: { CurrentShopMode = ShopMode.InInner; for (int i = 1; i < 5; i++) { ShopItem[i].Content.material = InnerAccessoryMaterial[i - 1]; } } break; case 4: { CurrentShopMode = ShopMode.InOuter; for (int i = 1; i < 5; i++) { ShopItem[i].Content.material = OuterAccessoryMaterial[i - 1]; } } break; } } break; case ShopMode.InBase: { switch(index) { case 0: { ResetShopItems(); } break; case 1: { ShopSlots.ShopItemsHookedTo.SlotContent.GetComponent<Tower>().ChangeBaseTo(Color.black); ShopSlots.ShopItemsHookedTo.ActualTower.GetComponent<Tower>().ChangeBaseTo(Color.black); } break; case 2: { ShopSlots.ShopItemsHookedTo.SlotContent.GetComponent<Tower>().ChangeBaseTo(Color.green); ShopSlots.ShopItemsHookedTo.ActualTower.GetComponent<Tower>().ChangeBaseTo(Color.green); } break; case 3: { ShopSlots.ShopItemsHookedTo.SlotContent.GetComponent<Tower>().ChangeBaseTo(Color.red); ShopSlots.ShopItemsHookedTo.ActualTower.GetComponent<Tower>().ChangeBaseTo(Color.red); } break; case 4: { ShopSlots.ShopItemsHookedTo.SlotContent.GetComponent<Tower>().ChangeBaseTo(Color.cyan); ShopSlots.ShopItemsHookedTo.ActualTower.GetComponent<Tower>().ChangeBaseTo(Color.cyan); } break; } } break; case ShopMode.InBody: { switch (index) { case 0: { ResetShopItems(); } break; case 1: { ShopSlots.ShopItemsHookedTo.SlotContent.GetComponent<Tower>().ChangeBodyTo(Color.black); ShopSlots.ShopItemsHookedTo.ActualTower.GetComponent<Tower>().ChangeBodyTo(Color.black); } break; case 2: { ShopSlots.ShopItemsHookedTo.SlotContent.GetComponent<Tower>().ChangeBodyTo(Color.green); ShopSlots.ShopItemsHookedTo.ActualTower.GetComponent<Tower>().ChangeBodyTo(Color.green); } break; case 3: { ShopSlots.ShopItemsHookedTo.SlotContent.GetComponent<Tower>().ChangeBodyTo(Color.red); ShopSlots.ShopItemsHookedTo.ActualTower.GetComponent<Tower>().ChangeBodyTo(Color.red); } break; case 4: { ShopSlots.ShopItemsHookedTo.SlotContent.GetComponent<Tower>().ChangeBodyTo(Color.cyan); ShopSlots.ShopItemsHookedTo.ActualTower.GetComponent<Tower>().ChangeBodyTo(Color.cyan); } break; } } break; case ShopMode.InTurret: { switch (index) { case 0: { ResetShopItems(); } break; case 1: { ShopSlots.ShopItemsHookedTo.SlotContent.GetComponent<Tower>().ChangeTurretTo(Color.black); ShopSlots.ShopItemsHookedTo.ActualTower.GetComponent<Tower>().ChangeTurretTo(Color.black); } break; case 2: { ShopSlots.ShopItemsHookedTo.SlotContent.GetComponent<Tower>().ChangeTurretTo(Color.green); ShopSlots.ShopItemsHookedTo.ActualTower.GetComponent<Tower>().ChangeTurretTo(Color.green); } break; case 3: { ShopSlots.ShopItemsHookedTo.SlotContent.GetComponent<Tower>().ChangeTurretTo(Color.red); ShopSlots.ShopItemsHookedTo.ActualTower.GetComponent<Tower>().ChangeTurretTo(Color.red); } break; case 4: { ShopSlots.ShopItemsHookedTo.SlotContent.GetComponent<Tower>().ChangeTurretTo(Color.cyan); ShopSlots.ShopItemsHookedTo.ActualTower.GetComponent<Tower>().ChangeTurretTo(Color.cyan); } break; } } break; default: { if (index == 0) { ResetShopItems(); } } break; } }
internal void ResetShopItems() { CurrentShopMode = ShopMode.InCategory; ShopItem[0].Content.material = BaseMaterial[0]; ShopItem[1].Content.material = BodyMaterial[0]; ShopItem[2].Content.material = TurretMaterial[0]; ShopItem[3].Content.material = InnerAccessoryMaterial[0]; ShopItem[4].Content.material = OuterAccessoryMaterial[0]; }