Exemple #1
0
 void OnUnequipConfirm(StoreConfirmParam param)
 {
     C2G.RuneUnequip packet = new C2G.RuneUnequip();
     packet.rune_idx   = param.rune_item.RuneIdx;
     packet.rune_grade = param.rune_item.Info.Grade;
     Network.GameServer.JsonAsync <C2G.RuneUnequip, C2G.RuneUnequipAck>(packet, OnRuneUnequip);
 }
Exemple #2
0
    void OnPopupOk(StoreConfirmParam parm)
    {
        C2G.StoreItemBuy packet = new C2G.StoreItemBuy();

        packet.store_id  = m_StoreID;
        packet.store_idx = m_StoreItem.store_idx;

        switch (m_StoreItem.item_type)
        {
        case pe_StoreItemType.Rune:
            RuneInfo rune_info = ItemInfoManager.Instance.GetInfoByIdn(m_StoreItem.item_idn) as RuneInfo;
            packet.rune_id = rune_info.ID;
            break;

        case pe_StoreItemType.Token:
            packet.goods = new pd_GoodsData((ItemInfoManager.Instance.GetInfoByIdn(m_StoreItem.item_idn) as TokenInfo).TokenType, m_StoreItem.item_count);
            break;

        case pe_StoreItemType.Creature:
            packet.creature_id    = CreatureInfoManager.Instance.GetInfoByIdn(m_StoreItem.item_idn).ID;
            packet.creature_grade = m_StoreItem.item_count;
            break;

        default:
            break;
        }

        Network.GameServer.JsonAsync <C2G.StoreItemBuy, C2G.StoreItemBuyAck>(packet, OnStoreItemBuy);
    }
Exemple #3
0
    public void OnPopupOk(StoreConfirmParam parm)
    {
        C2G.StuffPurchase packet = new C2G.StuffPurchase();
        packet.stuff_idn = m_Item.Info.IDN;

        Network.GameServer.JsonAsync <C2G.StuffPurchase, C2G.StuffPurchaseAck>(packet, OnPurchaseStuffHandler);
    }
Exemple #4
0
    void OnRefreshPopupOk(StoreConfirmParam parm)
    {
        if (Network.Instance.CheckGoods(parm.refresh_goods.goods_type, parm.refresh_goods.goods_value) == false)
        {
            return;
        }

        switch (CurrentStoreInfo.ID)
        {
        case "Items":
        case "Mileage":
        case "Boss":
        case "Arena":
        {
            C2G.StoreItemsRefresh packet = new C2G.StoreItemsRefresh();
            packet.clear_map_id = MapClearDataManager.Instance.GetLastClearedMapID();
            packet.store_id     = CurrentStoreInfo.ID;
            packet.exclude_ids  = ItemManager.Instance.NotInventoryItems.Select(i => i.Info.ID).ToList();
            Network.GameServer.JsonAsync <C2G.StoreItemsRefresh, C2G.StoreItemsGetAck>(packet, OnStoreItemRefresh);
        }
        break;

        default:
            Tooltip.Instance.ShowMessageKey("Invaild OnRefresh");
            break;
        }
    }
Exemple #5
0
    void OnSaleConfirm(StoreConfirmParam param)
    {
        C2G.RunesSale packet = new C2G.RunesSale();
        packet.rune_idxes  = new List <long>();
        packet.rune_grades = new List <long>();
        packet.rune_idxes.Add(param.rune_item.RuneIdx);
        packet.rune_grades.Add(param.rune_item.Info.Grade);

        Network.GameServer.JsonAsync <C2G.RunesSale, C2G.RunesSaleAck>(packet, OnRunesSaleHandler);
    }
Exemple #6
0
    void OnPopupOk(StoreConfirmParam parm)
    {
        if (m_ItemLoot != null)
        {
            long price = Network.PlayerInfo.GetGoodsValue(m_ItemLoot.Price.goods_type);
            if (m_Free.activeInHierarchy == false && m_ItemLoot.Price.goods_value > price)
            {
                Popup.Instance.Show(ePopupMode.MoveStore, m_ItemLoot.Price.goods_type);
                return;
            }
            switch (m_ItemLoot.LootType)
            {
            case "LootHero":
            {
                if (Network.Instance.CheckCreatureSlotCount(m_ItemLoot.LootCount, true, true, OnLootMore) == false)
                {
                    return;
                }

                if (m_ItemLoot.LootCount == 1)
                {
                    C2G.LootCreature packet = new C2G.LootCreature();
                    packet.loot_id = m_ItemLoot.ID;
                    packet.is_free = m_Free.activeSelf;
                    if (Tutorial.Instance.Completed == false)
                    {
                        C2G.TutorialState tutorial_packet = new C2G.TutorialState();
                        tutorial_packet.tutorial_state      = (short)Tutorial.Instance.CurrentState;
                        tutorial_packet.next_tutorial_state = (short)Tutorial.Instance.NextState;
                        tutorial_packet.loot_creature       = packet;
                        Network.GameServer.JsonAsync <C2G.TutorialState, C2G.TutorialStateAck>(tutorial_packet, OnTutorialLootCreature);
                    }
                    else
                    {
                        Network.GameServer.JsonAsync <C2G.LootCreature, C2G.LootCreatureAck>(packet, OnLootCreature);
                    }
                    return;
                }
                else if (m_ItemLoot.LootCount == 10)
                {
                    C2G.LootCreature10 packet = new C2G.LootCreature10();
                    packet.loot_id = m_ItemLoot.ID;
                    Network.GameServer.JsonAsync <C2G.LootCreature10, C2G.LootCreature10Ack>(packet, OnLootCreature10);
                    return;
                }
            }
            break;

            case "LootRune":
            case "LootItem":
            {
                if (m_ItemLoot.LootType == "LootRune" && Network.Instance.CheckRuneSlotCount(m_ItemLoot.LootCount, true, true, OnLootMore) == false)
                {
                    return;
                }

                if (m_ItemLoot.LootCount == 1)
                {
                    C2G.StoreLootItem packet = new C2G.StoreLootItem();
                    packet.loot_id = m_ItemLoot.ID;
                    packet.is_free = m_Free.activeSelf;
                    Network.GameServer.JsonAsync <C2G.StoreLootItem, C2G.StoreLootItemAck>(packet, OnLootItem);
                    return;
                }
                else if (m_ItemLoot.LootCount == 10)
                {
                    C2G.StoreLootItem10 packet = new C2G.StoreLootItem10();
                    packet.loot_id = m_ItemLoot.ID;
                    Network.GameServer.JsonAsync <C2G.StoreLootItem10, C2G.StoreLootItem10Ack>(packet, OnLootItem10);
                    return;
                }
            }
            break;
            }
        }
        else if (m_ItemGoods != null)
        {
            if (m_ItemGoods.StoreID != "Gem")
            {
                long price = Network.PlayerInfo.GetGoodsValue(m_ItemGoods.Price.goods_type);
                if (m_ItemGoods.Price.goods_value > price)
                {
                    Popup.Instance.Show(ePopupMode.MoveStore, m_ItemGoods.Price.goods_type);
                    return;
                }
            }

            C2G.StoreGoodsBuy packet = new C2G.StoreGoodsBuy();

            packet.store_id = m_ItemGoods.StoreID;
            packet.item_id  = m_ItemGoods.ID;

            Network.GameServer.JsonAsync <C2G.StoreGoodsBuy, C2G.StoreGoodsBuyAck>(packet, OnStoreItemBuy);
            return;
        }

        Tooltip.Instance.ShowMessageKey("NotImplement");
    }
Exemple #7
0
 override public void SetParams(bool is_new, object[] parms)
 {
     base.SetParams(is_new, parms);
     parm = parms[0] as StoreConfirmParam;
     Init();
 }