Пример #1
0
    IEnumerator AutoStep()
    {
        while (true)
        {
            if (mStageStatus == StageStatus.Idle)
            {
                //스타트 TEXT 출현..
                mIngTextMassage.text = "스타트!";

                yield return(new WaitForSeconds(1.2f));

                mStageStatus = StageStatus.BattleIdle;
            }
            else if (mStageStatus == StageStatus.BattleIdle)
            {
                //몬스터 등장...
                mHero01.SetStatus(HeroControl.Status.Idle);
                mMonster01.Clear();
                for (int i = 0; i < monsterSpwanNumber; i++)
                {
                    //X 마리의 몬스터를 소환 합니다.
                    SpawnMonster(i);

                    //딜레이를 둔다. for 문에 딜레이를 줌.
                    yield return(new WaitForSeconds(0.12f));
                }

                yield return(new WaitForSeconds(2));                // 2초 대기..

                mIngTextMassage.text = "*배틀 스타트*";

                //배틀 상태로 둔다..
                mStageStatus = StageStatus.Battle;

                //코루틴 실행.
                StartCoroutine("HeroAutoAttack");
                StartCoroutine("HeroSkillAttack");
                StartCoroutine("MonsterAutoAttack");
                yield break;
            }
        }
    }
Пример #2
0
    IEnumerator AutoStep()
    {
        while (true)
        {
            if (mStageStatus == StageStatus.Idle)
            {
                mIngTextMassage.text = "스타트!";
                yield return(new WaitForSeconds(0.5f));

                mStageStatus = StageStatus.BattleIdle;
            }

            else if (mStageStatus == StageStatus.BattleIdle)
            {
                //몇번째 파트인지 체크.
                int checkloop  = mLoopCheckCount - mLoopCount;
                int PartNumber = int.Parse(mXmlController.public_Temp_Now_Stage_info[checkloop].ToString());
                //Debug.Log("PartNumner = "+PartNumber); //6이 나오면 됨.

                //stage_info_Xml
                //0		1		2		3				4				5				6				7				8				9
                //ID	STAGE	PART	MONSTER_NUMBER	MONSTER_ID_01	MONSTER_ID_02	MONSTER_ID_03	DROPITEM_ID_01	DROPITEM_ID_02	DROPGOL

                mHero01.SetStatus(HeroControl.Status.Idle);
                mMonster01.Clear();

                monsterSpwanNumber = int.Parse(mXmlController.Part_load_From_Xml(PartNumber, 3));                 //3번째에 출현 몬스터 정보
                //Debug.Log("______________"+monsterSpwanNumber);


                //이 part에서 소환할 몬스터 마리수를 가져와서 넣습니다.

                for (int i = 0; i < monsterSpwanNumber; i++)
                {
                    //X 마리의 몬스터를 소환 합니다. 여기에 몬스터 id의 정보를 넣습니다.
                    //SpawnMonster(i);

                    //stage_info_Xml
                    //0		1		2		3				4				5				6				7				8				9
                    //ID	STAGE	PART	MONSTER_NUMBER	MONSTER_ID_01	MONSTER_ID_02	MONSTER_ID_03	DROPITEM_ID_01	DROPITEM_ID_02	DROPGOL

                    SpawnMonsterWithID(i, mXmlController.Part_load_From_Xml(PartNumber, i + 4));                   //i+4는 stage xml에서 4,5,6번으로 증가하며 몬스터 id를 받아온다.
                    //2015-09-09 여기까지 성공. 캐릭터 정보를 받아와서 뿌려주는데까지는 되었고.
                    //남은건 몬스터 HP넣고, mp넣고 등등 하는 것.


                    //딜레이를 둔다. for 문에 딜레이를 줌.
                    yield return(new WaitForSeconds(0.5f));
                }

                yield return(new WaitForSeconds(2));                // 2초 대기..

                mIngTextMassage.text = "*배틀 스타트*";

                //배틀 상태로 둔다..
                mStageStatus = StageStatus.Battle;

                //코루틴 실행.
                StartCoroutine("HeroAutoAttack");
                StartCoroutine("MonsterAutoAttack");
                yield break;
            }
        }
    }