void OnEquipConfirm(bool confirm) { if (confirm == false) { return; } C2G.RuneEquip packet = new C2G.RuneEquip(); packet.rune_idx = m_PopupRune.Rune.RuneIdx; packet.rune_id = m_PopupRune.Rune.Info.ID; packet.creature_idx = m_Creature.Idx; packet.creature_id = m_Creature.Info.ID; if (Tutorial.Instance.Completed == false) { C2G.TutorialState tutorial_packet = new C2G.TutorialState(); tutorial_packet.tutorial_state = Network.PlayerInfo.tutorial_state; tutorial_packet.next_tutorial_state = (short)Tutorial.Instance.CurrentState; tutorial_packet.rune_equip = packet; Network.GameServer.JsonAsync <C2G.TutorialState, C2G.TutorialStateAck>(tutorial_packet, OnRuneEquipTutorial); } else { Network.GameServer.JsonAsync <C2G.RuneEquip, NetworkCore.AckDefault>(packet, OnRuneEquip); } }
void EnchantConfirm(bool confirm) { if (confirm == false) { return; } C2G.CreatureEnchant packet = new C2G.CreatureEnchant(); packet.creature_idx = m_Creature.Idx; packet.creature_grade = m_Creature.Grade; packet.materials = new List <pd_CreatureEnchantInfo>(); foreach (var material in m_Materials.Where(m => m.Creature != null).Select(m => m.Creature)) { var data = new pd_CreatureEnchantInfo(); data.creature_idx = material.Idx; data.creature_grade = material.Grade; packet.materials.Add(data); } 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.creature_enchant = packet; Network.GameServer.JsonAsync <C2G.TutorialState, C2G.TutorialStateAck>(tutorial_packet, OnTutorialCreatureEnchant); } else { Network.GameServer.JsonAsync <C2G.CreatureEnchant, C2G.CreatureEnchantAck>(packet, OnCreatureEnchant); } }
private void EnterBattle() { C2G.EnterBattle packet = new C2G.EnterBattle(); packet.map_id = m_StageInfo.MapInfo.ID; packet.stage_id = m_StageInfo.ID; packet.difficulty = m_StageInfo.Difficulty; if (m_StageInfo.MapInfo.AvailableTags.Count > 0) { packet.creature_ids = m_TeamData.Creatures.Select(c => c.creature.Info.ID).ToList(); } if (Tutorial.Instance.Completed == true) { if (m_TeamData.IsEqual(m_TeamDataBackup) == false) { packet.team_data = m_TeamData.CreateSaveData(); } Network.GameServer.JsonAsync <C2G.EnterBattle, C2G.EnterBattleAck>(packet, OnEnterBattle); } else { C2G.TutorialState tutorial_packet = new C2G.TutorialState(); tutorial_packet.enter_battle = packet; tutorial_packet.tutorial_state = Network.PlayerInfo.tutorial_state; tutorial_packet.next_tutorial_state = (short)Tutorial.Instance.CurrentState; Network.GameServer.JsonAsync <C2G.TutorialState, C2G.TutorialStateAck>(tutorial_packet, OnTutorialEnterBattle); } }
public void OnClickAllMax() { if (m_Creature.AllSkillEnchantCost() == 0) { return; } if (Network.Instance.CheckGoods(PacketInfo.pe_GoodsType.token_gold, m_Creature.AllSkillEnchantCost()) == false) { return; } C2G.SkillEnchantAllMax packet = new C2G.SkillEnchantAllMax(); packet.creature_idx = m_Creature.Idx; packet.creature_id = m_Creature.Info.ID; packet.creature_level = m_Creature.Level; packet.skill_level = m_Creature.Skills.GetRange(1, m_Creature.Skills.Count - 1).Select(s => s.Level).ToList(); 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.skill_enchant_all_max = packet; Network.GameServer.JsonAsync <C2G.TutorialState, C2G.TutorialStateAck>(tutorial_packet, OnTutorialSkillEnchant); } else { Network.GameServer.JsonAsync <C2G.SkillEnchantAllMax, C2G.SkillEnchantAck>(packet, OnSkillEnchantAllMax); } }
private void TutorialComplete() { gameObject.SetActive(false); if (GameMain.Instance.gameObject.activeSelf == false) { TimeManager.Instance.SetPause(false); } C2G.TutorialState tutorial_packet = new C2G.TutorialState(); tutorial_packet.tutorial_state = (short)TutorialInfoManager.Instance.CompletedState; tutorial_packet.next_tutorial_state = (short)TutorialInfoManager.Instance.CompletedState; Network.GameServer.JsonAsync <C2G.TutorialState, C2G.TutorialStateAck>(tutorial_packet, OnTutorialEndHandler); }
void OnTutorialEndHandler(C2G.TutorialState packet, C2G.TutorialStateAck ack) { Network.PlayerInfo.tutorial_state = TutorialInfoManager.Instance.CompletedState; Network.Instance.ProcessReward3Ack(ack.rewards_ack); TutorialInfo info = TutorialInfoManager.Instance.GetInfoByIdn(TutorialInfoManager.Instance.CompletedState) as TutorialInfo; Popup.Instance.Show(ePopupMode.Reward, info.rewards, Localization.Get("TutorialRewardTitle"), Localization.Get("GetThisRewards"), ack.rewards_ack); MetapsAnalyticsScript.TrackEvent("Tutorial", "Finish"); #if SH_DEV || UNITY_EDITOR BtnSkip.SetActive(Completed == false); #endif }
public void OnClick() { m_btnLevelUp.isEnabled = false; m_btnLevelUp.SetPressed(false); C2G.SkillEnchantLevel packet = new C2G.SkillEnchantLevel(); packet.creature_idx = m_Skill.Creature.Idx; packet.creature_id = m_Skill.Creature.Info.ID; packet.skill_id = m_Skill.Info.ID; packet.skill_index = m_Skill.Index; packet.skill_level = m_Skill.Level; if (add_level > 1) { packet.add_level = add_level; } else { if (m_Skill.Creature.Level <= m_Skill.Level) { Tooltip.Instance.ShowMessageKey("NotAvailableSkillEnchantLevel"); return; } if (current_enchant_gold > current_gold) { Popup.Instance.Show(ePopupMode.MoveStore, pe_GoodsType.token_gold); return; } add_level = 1; packet.add_level = add_level; } 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.skill_enchant = packet; Network.GameServer.JsonAsync <C2G.TutorialState, C2G.TutorialStateAck>(tutorial_packet, OnTutorialSkillEnchant); } else { Network.GameServer.JsonAsync <C2G.SkillEnchantLevel, C2G.SkillEnchantAck>(packet, OnSkillEnchant); } }
void SetBattleEndStage() { C2G.EndBattle _packet = new C2G.EndBattle(); _packet.battle_type = pe_Battle.Stage; _packet.end_type = battleEndType; _packet.difficulty = Network.BattleStageInfo.Difficulty; _packet.map_id = Network.BattleStageInfo.MapInfo.ID; _packet.stage_id = Network.BattleStageInfo.ID; _packet.creatures = new List <PacketInfo.pd_BattleEndCreatureInfo>(); _packet.is_new_clear = MapClearDataManager.Instance.IsNewClear(Network.BattleStageInfo); //List<int> skill_indice = new List<int>(); for (int i = 0; i < m_TeamData.Creatures.Count; ++i) { Creature creature = m_TeamData.Creatures[i].creature; BattleCreature bc = characters.Find(c => c.Idx == creature.Idx) as BattleCreature; if (bc == null) { bc = dead_characters.Find(c => c.Idx == creature.Idx) as BattleCreature; } _packet.creatures.Add(new PacketInfo.pd_BattleEndCreatureInfo(bc.Idx, bc.IsDead)); m_TeamData.Creatures[i].auto_skill_index = bc.AutoSkillIndex; } if (m_TeamData.IsEqual(m_TeamDataBackup) == false || Tutorial.Instance.Completed == false) { _packet.team_data = m_TeamData.CreateSaveData(); } if (Tutorial.Instance.Completed == false) { C2G.TutorialState tutorial_packet = new C2G.TutorialState(); tutorial_packet.tutorial_state = Network.PlayerInfo.tutorial_state; tutorial_packet.next_tutorial_state = (short)Tutorial.Instance.CurrentState; tutorial_packet.end_battle = _packet; Network.GameServer.JsonAsync <C2G.TutorialState, C2G.TutorialStateAck>(tutorial_packet, OnTutorialEndBattleHandler); } else { Network.GameServer.JsonAsync <C2G.EndBattle, C2G.EndBattleAck>(_packet, OnEndBattleHandler); } }
void OnEquipEnchant(Equip equip) { C2G.EquipEnchant packet = new C2G.EquipEnchant(); packet.equip_idx = equip.EquipIdx; packet.creature_idx = equip.CreatureIdx; packet.equip_id = equip.Info.ID; packet.enchant_level = equip.EnchantLevel; 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.equip_enchant = packet; Network.GameServer.JsonAsync <C2G.TutorialState, C2G.TutorialStateAck>(tutorial_packet, OnTutorialEquipEnchant); } else { Network.GameServer.JsonAsync <C2G.EquipEnchant, C2G.EquipEnchantAck>(packet, OnEquipEnchant); } }
void EnchantConfirm(bool confirm) { if (confirm == false) { return; } if (m_ToggleMix.value) { C2G.CreatureMix packet = new C2G.CreatureMix(); packet.creature_idx = m_EnchantBase.Creature.Idx; packet.creature_grade = m_EnchantBase.Creature.Grade; packet.material_creature_idx = m_EnchantMaterial.Creature.Idx; 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.creature_mix = packet; Network.GameServer.JsonAsync <C2G.TutorialState, C2G.TutorialStateAck>(tutorial_packet, OnTutorialCreatureMix); } else { Network.GameServer.JsonAsync <C2G.CreatureMix, C2G.CreatureMixAck>(packet, OnCreatureMix); } } else { C2G.CreatureEvolve packet = new C2G.CreatureEvolve(); packet.creature_idx = m_EnchantBase.Creature.Idx; packet.creature_grade = m_EnchantBase.Creature.Grade; packet.material_creature_idx = m_EnchantMaterial.Creature.Idx; Network.GameServer.JsonAsync <C2G.CreatureEvolve, C2G.CreatureEvolveAck>(packet, OnCreatureEvolve); } }
void OnTutorialSkillEnchant(C2G.TutorialState packet, C2G.TutorialStateAck ack) { OnSkillEnchantAllMax(packet.skill_enchant_all_max, ack.skill_enchant); Tutorial.Instance.AfterNetworking(); }
void OnTutorialEnterBattle(C2G.TutorialState packet, C2G.TutorialStateAck ack) { OnEnterBattle(packet.enter_battle, null); Tutorial.Instance.AfterNetworking(); }
void OnTutorialLootCreature(C2G.TutorialState packet, C2G.TutorialStateAck ack) { OnLootCreature(packet.loot_creature, ack.loot_creature); Tutorial.Instance.AfterNetworking(); }
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"); }
void OnRuneEquipTutorial(C2G.TutorialState packet, C2G.TutorialStateAck ack) { OnRuneEquip(packet.rune_equip, null); }
void OnTutorialEndBattleHandler(C2G.TutorialState packet, C2G.TutorialStateAck ack) { TeamDataManager.Instance.Save(); OnEndBattleHandler(packet.end_battle, ack.end_battle); }
void OnTutorialCreatureMix(C2G.TutorialState packet, C2G.TutorialStateAck ack) { OnCreatureMix(packet.creature_mix, ack.creature_mix); Tutorial.Instance.AfterNetworking(); }
void OnTutorialEquipEnchant(C2G.TutorialState packet, C2G.TutorialStateAck ack) { OnEquipEnchant(packet.equip_enchant, ack.equip_enchant); Tutorial.Instance.AfterNetworking(); }
void OnTutorialCreatureEnchant(C2G.TutorialState packet, C2G.TutorialStateAck ack) { OnCreatureEnchant(packet.creature_enchant, ack.creature_enchant); Tutorial.Instance.AfterNetworking(); }