Example #1
0
    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);
        }
    }
Example #2
0
    public void OnClickSaveDefenseTeam()
    {
        if (m_CurrentTeam.Creatures.Count == 0)
        {
            Tooltip.Instance.ShowMessageKey("PVPTeamCountZero");
            return;
        }

        if (CheckSkill() == false)
        {
            return;
        }

        if (m_CurrentTeam.LeaderCreature == null && m_CurrentTeam.Creatures.Any(c => c.creature.TeamSkill != null))
        {
            OnLeaderSkill();
            return;
        }

        if (is_regist == true)
        {
            C2G.PVPRegistDefense packet = new C2G.PVPRegistDefense();
            packet.leader_creature = Network.PlayerInfo.leader_creature;
            packet.team_power      = m_CurrentTeam.Power;
            packet.team_data       = m_CurrentTeam.CreateSaveData();
            packet.message         = Localization.Get("PVPMessageDefault");
            Network.GameServer.JsonAsync <C2G.PVPRegistDefense, C2G.PVPRegistDefenseAck>(packet, OnPvpRegistDefense);
        }
        else
        {
            TeamData defense_team = TeamDataManager.Instance.GetTeam(pe_Team.PVP_Defense);
            if (defense_team == null || defense_team.IsEqual(m_CurrentTeam) == false)
            {
                C2G.PvpUpdateDefense packet = new C2G.PvpUpdateDefense();
                packet.leader_creature = Network.PlayerInfo.leader_creature;
                packet.team_power      = m_CurrentTeam.Power;
                packet.team_data       = m_CurrentTeam.CreateSaveData();
                Network.GameServer.JsonAsync <C2G.PvpUpdateDefense, C2G.PVPRegistDefenseAck>(packet, OnPvpUpdateDefense);
            }
            else
            {
                PvpDefenseTeamUpdated();
            }
        }
    }