Beispiel #1
0
    protected override void Start()
    {
        m_TeamData = TeamDataManager.Instance.GetTeam(pe_Team.PVP);
        m_UILeaderSkill.Lock(Localization.Get("PVPOnlyAutoBattle"));

        base.Start();

#if SH_DEV
        m_btnWin.SetActive(true);
#else
        m_btnWin.SetActive(Debug.isDebugBuild);
#endif

        m_ProfileMine.UpdateProfile(Network.PlayerInfo.leader_creature, Network.PlayerInfo.nickname, Network.PlayerInfo.player_level);
        m_ProfileEnemy.UpdateProfile(Network.PVPBattleInfo.enemy_info.leader_creature, Network.PVPBattleInfo.enemy_info.nickname, Network.PVPBattleInfo.enemy_info.player_level);

        m_BG.material.mainTexture = AssetManager.LoadBG("000_pvp");
        enemies = new List <ICreature>();
        for (int i = 0; i < Network.PVPBattleInfo.enemy_team_data.Creatures.Count; ++i)
        {
            Creature       creature        = Network.PVPBattleInfo.enemy_team_data.Creatures[i].creature;
            BattleCreature battle_creature = new BattleCreature(creature, battle_layout.m_Enemy.m_Characters[i], 0f, character_hpbar_prefab, character_skill_prefab, false);
            battle_creature.AutoSkillIndex = Network.PVPBattleInfo.enemy_team_data.Creatures[i].auto_skill_index;
            if (creature.Idx == Network.PVPBattleInfo.enemy_team_data.LeaderCreatureIdx)
            {
                battle_creature.SetLeader(Network.PVPBattleInfo.enemy_team_data.UseLeaderSkillType, OnUseEnemyLeaderSkill);
            }
            enemies.Add(battle_creature);
        }

        InitCreatures();

        SoundManager.Instance.PlayBGM("PVP");
    }
Beispiel #2
0
    // Use this for initialization
    override protected void Start()
    {
//         UnityEngine.SceneManagement.Scene scene = UnityEngine.SceneManagement.SceneManager.GetSceneByName(scene_name);
//         if (UnityEngine.SceneManagement.SceneManager.SetActiveScene(scene) == false)
//             Debug.LogErrorFormat("SetActiveScene({0}) Failed!!", scene_name);

        GameMain.Instance.gameObject.SetActive(false);

        TimeLimit = GetTimeLimit();
        base.Start();

        tween_system    = AssetManager.GetCharacterPrefab("000_tween").GetComponent <HFX_TweenSystem>();
        color_container = tween_system.gameObject.GetComponent <ColorContainer>();

        character_hpbar_prefab = Resources.Load("Prefab/Battle/CharacterHPBar", typeof(GameObject)) as GameObject;
        character_skill_prefab = Resources.Load("Prefab/Battle/CharacterSkill", typeof(GameObject)) as GameObject;

        characters      = new List <ICreature>();
        dead_characters = new List <ICreature>();
        GameObject prefab = Resources.Load <GameObject>("Prefab/Battle/BattleUICharacter");

        if (prefab == null)
        {
            Debug.LogErrorFormat("Failed to load BattleUICharacter.prefab");
            return;
        }
        for (int i = 0; i < CharIndicator.Length && i < m_TeamData.Creatures.Count; i++)
        {
            BattleCreature creature = new BattleCreature(m_TeamData.Creatures[i].creature, battle_layout.m_Mine.m_Characters[i], 0f, character_hpbar_prefab, character_skill_prefab);
            characters.Add(creature);

            var ui_character = (Instantiate(prefab) as GameObject).GetComponent <BattleUICharacter>();
            ui_character.transform.parent        = CharIndicator[i].transform;
            ui_character.transform.localPosition = Vector3.zero;
            ui_character.transform.localScale    = Vector3.one;
            ui_character.SetCharacter(creature);
            ui_character.gameObject.SetActive(true);
            battleUICharacter[i] = ui_character;

            ui_character.AutoSkillSelect(m_TeamData.Creatures[i].auto_skill_index);
        }

        if (Tutorial.Instance.Completed == false && Network.BattleStageInfo.MapInfo.IDN == 1 && Network.BattleStageInfo.StageIndex == 0)
        {
            SetAuto(false);
            SetFast(false, true);
        }
        else
        {
            SetAuto(m_TeamData.IsAuto);
            SetFast(m_TeamData.IsFast, true);
        }

        if (m_TeamData.LeaderCreature != null)
        {
            m_Leader = characters.Find(c => c.Info.IDN == m_TeamData.LeaderCreature.Info.IDN) as BattleCreature;
            m_Leader.SetLeader(m_TeamData.UseLeaderSkillType, OnUseLeaderSkill);
            m_UILeaderSkill.Init(m_TeamData.LeaderCreature, m_TeamData.UseLeaderSkillType, OnLeaderSkill);
        }
        else
        {
            m_UILeaderSkill.gameObject.SetActive(false);
        }

        LoadSkill();

        m_SkillCasting     = AssetManager.GetParticleSystem("skill_casting");
        m_SkillTargetTeam  = AssetManager.GetParticleSystem("skill_target_team");
        m_SkillTargetEnemy = AssetManager.GetParticleSystem("skill_target_enemy");
        m_Miss             = AssetManager.GetParticleSystem("miss");

        Network.HideIndicator();
    }