예제 #1
0
파일: Battle.cs 프로젝트: tapenjoyGame/cry
    protected void InitCreatures()
    {
        List <float> start_times = new List <float>();

        for (int i = 0; i < characters.Count; ++i)
        {
            start_times.Add(i * 2f + Rand.NextRange(0f, BattleConfig.Instance.StartRange) * BattleConfig.Instance.AttackCoolTimeMax);
        }

        for (int i = 0; i < characters.Count; i++)
        {
            int   start_time_index = Rand.NextRange(0, start_times.Count - 1);
            float start_time       = start_times[start_time_index];
            start_times.RemoveAt(start_time_index);

            BattleCreature creature = characters[i] as BattleCreature;
            creature.InitContainer(battle_layout.m_Mine.m_Characters[i]);

            if (UseRun == true)
            {
                var creature_tween = creature.Character.GetComponent <HFX_TweenSystem>();
                creature_tween.Stop();

                BattleBase.Instance.tween_system.Play("start_preset", null, creature_tween, creature.Character.transform);
                creature_tween.UpdatePlay(0f);
            }

            creature.Restart(start_time);
        }

        for (int i = 0; i < enemies.Count; ++i)
        {
            start_times.Add(i * 2f + Rand.NextRange(0f, BattleConfig.Instance.StartRange) * BattleConfig.Instance.AttackCoolTimeMax);
        }

        for (int i = 0; i < enemies.Count; ++i)
        {
            if (enemies[i] == null)
            {
                continue;
            }

            int   start_time_index = Rand.NextRange(0, start_times.Count - 1);
            float start_time       = start_times[start_time_index];
            start_times.RemoveAt(start_time_index);

            BattleCreature creature = enemies[i] as BattleCreature;

            if (UseRun == true)
            {
                var creature_tween = creature.Character.GetComponent <HFX_TweenSystem>();
                creature_tween.Stop();

                BattleBase.Instance.tween_system.Play("start_preset", null, creature_tween, creature.Character.transform);
                creature_tween.UpdatePlay(0f);
            }

            creature.Restart(start_time);
        }
    }