Beispiel #1
0
 public void SetOpen()
 {
     bestScore = 0;
     starCount = 0;
     stageSelectButton.interactable = true;       //버튼 클릭 가능
     stageSlotImage.sprite          = openSprite; //오픈 Sprite로 변경
     for (int i = 0; i < starImages.Length; i++)
     {
         starImages[i].sprite = UIManager.instance.blankStarSprite;
     }
     go_StageInformation.SetActive(true);   //스테이지 Text, Star Image 활성화
     stageStatus = StageStatus.Open;
 }
Beispiel #2
0
    private void ForceUnapplyAllBurfsWhenStageFinished(StageStatus stageStatus)
    {
        if (stageStatus != StageStatus.InProgress)
        {
            CommonLogger.LogFormat("StageStatusManager::ForceUnapplyAllBurfsWhenStageFinished => 스테이지가 종료되어 버프가 강제로 해제됨.");

            foreach (var programmer in unitManager.Programmers)
            {
                foreach (var burf in programmer.Status.Burfs)
                {
                    programmer.UnregisterBurf(burf);
                }
            }
        }
    }
Beispiel #3
0
 void Start()
 {
     TextStageName.text = string.Format("Stage {0}", StageName);
     SetUI(TextScore1, 20f, 0f, 140f, 30f, 26);
     SetUI(TextScore2, -20f, 0f, 140f, 30f, 26);
     SetUI(TextStageName, -124f, 0f, 240f, 30f, 26);
     SetUI(TextElapsedTime, 124f, 0f, 160f, 30f, 26);
     SetUI(TextWinMessage, 0f, 40f, 500f, 100f, 48);
     SetUI(TextContinue, 0f, -40f, 260f, 30f, 24);
     UpdateScore(Player1, GlobalState.Score1);
     UpdateScore(Player2, GlobalState.Score2);
     Status         = StageStatus.Started;
     Player1.IsDead = Player2.IsDead = true;
     Invoke("StartStage", StartDelay);
 }
Beispiel #4
0
    //----------------------------------------------------------------------------------------------------
    /// <summary>
    /// ダンジョン状態
    /// </summary>
    void DungeonState()
    {
        //初めてこの状態になった
        if (m_stageState != m_stageStatePrev)
        {
            //設定
            SetManipulateMainObject(false);
            m_countTimeState = 0;
            myMainUi.GameScreenScript.StartDungeonInstruction();

            m_stageStatePrev = m_stageState;
        }

        //ボスイベント発生管理
        BossEventOccurrenceManagement();
    }
Beispiel #5
0
 public void SetStageSlot(int _bestScore, int _starCount, int _statusNumber)
 {
     bestScore = _bestScore;
     starCount = _starCount;
     StarImageChange();
     if (_statusNumber == 1)
     {
         stageStatus = StageStatus.Open;
     }
     else
     {
         stageStatus = StageStatus.Clear;
     }
     stageSelectButton.interactable = true;       //버튼 클릭 가능
     stageSlotImage.sprite          = openSprite; //오픈 Sprite로 변경
     go_StageInformation.SetActive(true);         //스테이지 Text, Star Image 활성화
 }
Beispiel #6
0
    public void LoadData(string diff, string big, string small, StageStatus[] _allData)
    {
        gameObject.name = diff + "-" + big + "-" + small;

        text.text = big + "-" + small;
        if (big == "2" && small == "5")
        {
            text.text = big + "-" + small + "\n(Boss)";
        }

        foreach (StageStatus _data in _allData)
        {
            if (_data.LevelName == gameObject.name)
            {
                thisData = _data;
            }
        }
    }
Beispiel #7
0
 // -------------------------------------------------------------------------------------
 // Public Funtion
 public bool SelectPosition(Position _position)
 {
     if (_position == Position.None)
     {
         _position = RandomPosition();
     }
     if (_BoardData[_position.Row, _position.Column] == 0 && _Status == StageStatus.Waiting)
     {
         _BoardData[_position.Row, _position.Column] = (int)_CurrentTurn;
         _Selected = _position;
         _Status   = StageStatus.Selected;
         return(true);
     }
     else
     {
         return(false);
     }
 }
Beispiel #8
0
        // -------------------------------------------------------------------------------------
        public GameStage(BoardSize _boardSize, int[,] _boardData, PlayerName[] _players, PlayerName _currentTurn, int _winAmount = -1)
        {
            _BoardSize   = _boardSize;
            _Players     = _players;
            _CurrentTurn = _currentTurn;
            _BoardData   = _boardData;
            CreatePosiblePositions();

            if (_winAmount == -1 || _winAmount > _WinAmount)
            {
                _WinAmount = (int)_boardSize;
            }
            else
            {
                _WinAmount = _winAmount;
            }
            _WonPlayer = CheckWonPlayer();
            _Status    = CheckStatus();
        }
        internal static string ToSerializedValue(this StageStatus value)
        {
            switch (value)
            {
            case StageStatus.None:
                return("None");

            case StageStatus.InProgress:
                return("InProgress");

            case StageStatus.Succeeded:
                return("Succeeded");

            case StageStatus.Failed:
                return("Failed");

            case StageStatus.Cancelled:
                return("Cancelled");

            case StageStatus.Cancelling:
                return("Cancelling");

            case StageStatus.SucceededWithErrors:
                return("SucceededWithErrors");

            case StageStatus.WaitingForCustomerAction:
                return("WaitingForCustomerAction");

            case StageStatus.SucceededWithWarnings:
                return("SucceededWithWarnings");

            case StageStatus.WaitingForCustomerActionForKek:
                return("WaitingForCustomerActionForKek");

            case StageStatus.WaitingForCustomerActionForCleanUp:
                return("WaitingForCustomerActionForCleanUp");

            case StageStatus.CustomerActionPerformedForCleanUp:
                return("CustomerActionPerformedForCleanUp");
            }
            return(null);
        }
Beispiel #10
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;
            }
        }
    }
Beispiel #11
0
    //----------------------------------------------------------------------------------------------------
    /// <summary>
    /// ボス戦状態
    /// </summary>
    void BossGameState()
    {
        //初めてこの状態になった
        if (m_stageState != m_stageStatePrev)
        {
            //初期設定
            SetManipulateMainObject(false);
            m_countTimeState = 0;

            //戦闘位置へ移動
            m_player.transform.position = myStage.CurrentField.BossRoomCenterPos;
            m_boss.transform.position   = myStage.CurrentField.GetPosDeathblow1()[0];
            m_player.transform.LookAt(m_boss.transform);
            m_boss.transform.LookAt(m_player.transform);
            m_boss.StartAI();
            myCamera.SetPosition(-(m_boss.transform.position - m_player.transform.position).normalized
                                 + (Vector3.Scale(myStage.CurrentField.RelativePosCamera, Vector3.up)));

            //BGMの切り替え
            switch (m_stageNum)
            {
            case 0:
                MySoundManager.Instance.Play(BgmCollection.Boss1);
                break;

            case 1:
                MySoundManager.Instance.Play(BgmCollection.Boss2);
                break;

            case 2:
                MySoundManager.Instance.Play(BgmCollection.Boss3);
                break;

            case 3:
                MySoundManager.Instance.Play(BgmCollection.Boss4);
                break;
            }

            m_stageStatePrev = m_stageState;
        }
    }
Beispiel #12
0
 public LevelDataItem(int levelId, LevelMetaData levelMetaData)
 {
     this.levelId       = levelId;
     this._metaData     = levelMetaData;
     this.Initialized   = false;
     this.status        = 1;
     this.challengeList = new List <LevelChallengeDataItem>();
     foreach (LevelMetaData.LevelChallengeMetaNode node in this._metaData.challengeList)
     {
         this.challengeList.Add(new LevelChallengeDataItem(node.challengeId, this._metaData, node.rewardId));
     }
     this.isNewLevel              = true;
     this._actID                  = this._metaData.actId;
     this._chapterID              = this._metaData.chapterId;
     this.isDropActivityOpen      = false;
     this.isDoubleDrop            = false;
     this.displayDropList         = new List <int>();
     this.displayFirstDropList    = new List <int>();
     this.displayBonusDropList    = new List <int>();
     this.dropDisplayInfoReceived = false;
 }
Beispiel #13
0
        public void PausedPipelines_AreNotIncludedInTheGlobalStatusCalculation(StageStatus stageStatus, bool isPaused, EstateStatus estateStatus)
        {
            // Arrange
            var pipeline = new Pipeline()
            {
                Paused = isPaused, PipelineInstances = { new PipelineInstance()
                                                         {
                                                             Stages =   { new Stage()
                                                                          {
                                                                              Status = stageStatus
                                                                          } }
                                                         } }
            };
            var result = Result <List <Pipeline> > .Valid(new List <Pipeline> {
                pipeline
            });

            // Act
            var estate = new Estate(result);

            //Assert
            Assert.That(estate.Status, Is.EqualTo(estateStatus));
        }
    public void ReAutoTarget()
    {
        mMonsterCount -= 1;

        if (mMonsterCount == 0)
        {
            //한 스테이지 클리어
            StopCoroutine("HeroAutoAttack");
            StopCoroutine("MonsterAutoAttack");

            mLoopCount -= 1;
            //mIngTextMassage.text = "모든 적을 격파";



            if (mLoopCount == 0)
            {
                //모든 스테이지 클리어. -> 승리 결과창.

                mIngTextMassage.text = "스테이지 클리어!";

                mStageStatus = StageStatus.Clear;

                GameOver();

                Invoke("getResult", 0.5f);

                return;
            }

            mStageStatus = StageStatus.Idle;
            StartCoroutine("AutoStep");
            return;
        }
        //타겟 재 탐색.
        GetSingleAutoTarget();
    }
Beispiel #15
0
    //----------------------------------------------------------------------------------------------------
    /// <summary>
    /// ボス撃破状態
    /// </summary>
    void BossDestroyedState()
    {
        //初めてこの状態になった
        if (m_stageState != m_stageStatePrev)
        {
            //初期設定
            SetManipulateMainObject(true);
            m_countTimeState = 0;

            //カメラとボスの設定
            m_initPosCameraState = CameraScript.transform.position;
            m_boss.transform.LookAt(myStage.CurrentField.BossRoomCenterPos);
            Debug.Log("ボスの敗北アニメーションスタート");

            //BGMの停止
            MySoundManager.Instance.StopBGM();

            m_stageStatePrev = m_stageState;
        }

        //ボスにカメラがズーム
        if (m_countTimeState <= m_timeCameraMovesBoss)
        {
            Transposition(CameraScript.gameObject, m_initPosCameraState,
                          m_boss.transform.position + m_boss.transform.forward * m_cameraDistanceTarget + Vector3.up * m_cameraHeight,
                          m_countTimeState, m_timeCameraMovesBoss);
        }

        //カメラの見る場所
        CameraScript.transform.LookAt(m_boss.transform.position + Vector3.up * m_cameraHeight);

        //状態の終了
        if (m_countTimeState >= m_bossDevastationTime)
        {
            AddvanceStage();
        }
    }
Beispiel #16
0
    public void StartDay()
    {
        sStatus = StageStatus.Day;

        //  낮 종료되면 밤으로 전환
        iTween.MoveAdd(gameObject, iTween.Hash("position", Vector3.zero,
                                               "time", Daytime, "oncomplete", "EndDay"));

        //  아이콘 회전
        iTween.RotateAdd(Day,
                         iTween.Hash("amount", new Vector3(0.0f, 0.0f, -180.0f), "time", Daytime, "easetype", "linear"));
        iTween.FadeTo(Day,
                      iTween.Hash("alpha", 0.0f, "time", Daytime, "easetype", "easeInCubic"));
        iTween.RotateAdd(Night,
                         iTween.Hash("amount", new Vector3(0.0f, 0.0f, -180.0f), "time", Daytime, "easetype", "linear"));
        iTween.FadeTo(Night,
                      iTween.Hash("alpha", 1.0f, "time", Daytime, "easetype", "easeInCubic"));

        //  UI 디렉셔널, 스팟 라이팅
        iTween.ColorTo(UIDirect.gameObject,
                       iTween.Hash("color", DarkColor, "time", Daytime, "easetype", "easeInCubic"));
        iTween.ColorTo(UISpot.gameObject,
                       iTween.Hash("color", NightColor, "time", Daytime, "easetype", "easeInCubic"));

        //  오브젝트 디렉셔널, 스팟 라이팅
        iTween.ColorTo(ObjectDirect.gameObject,
                       iTween.Hash("color", DarkColor, "time", Daytime, "easetype", "easeInCubic"));
        iTween.ColorTo(ObjectSpot.gameObject,
                       iTween.Hash("color", NightColor, "time", Daytime, "easetype", "easeInCubic"));


        //  게임 클리어
        if (GameManager.Instance.Round > MaxRound)
        {
            StageClear();
        }
    }
Beispiel #17
0
 public GameStageData(int[,] boardData, Position selected, PlayerName[] playerNames, PlayerName currentTurn, StageStatus status, PlayerName wonPlayer, int winAmount)
 {
     BoardData   = boardData;
     Selected    = selected;
     PlayerNames = playerNames;
     CurrentTurn = currentTurn;
     Status      = status;
     WonPlayer   = wonPlayer;
     WinAmount   = winAmount;
 }
Beispiel #18
0
 public override void Delete()
 {
     Status = StageStatus.Deleted;
     Save();
 }
Beispiel #19
0
    //----------------------------------------------------------------------------------------------------
    /// <summary>
    /// ボスの登場状態
    /// </summary>
    void BossAppearanceState()
    {
        //初めてこの状態になった
        if (m_stageState != m_stageStatePrev)
        {
            //初期設定
            SetManipulateMainObject(true);
            m_countTimeState = 0;

            //カメラの設定とプレイヤー&ボスのアニメーション
            m_initPosCameraState = CameraScript.transform.position;
            m_player.StartAnimIdle();
            m_isCameraStoppedWhenTheBossAppeared = false;

            //ワープマネージャ
            if (myStage.CurrentField.WarpManagerScript)
            {
                myStage.CurrentField.WarpManagerScript.enabled = false;
            }

            //BGMの停止
            MySoundManager.Instance.StopBGM();

            m_stageStatePrev = m_stageState;
        }

        //状況認識した時間~カメラが動き終わるまで
        if (m_countTimeState >= m_situationRecognitionTime && m_countTimeState <= m_situationRecognitionTime + m_timeCameraMovesBoss)
        {
            //ボスにカメラがズーム
            Transposition(CameraScript.gameObject, m_initPosCameraState,
                          m_boss.transform.position + m_boss.transform.forward * m_cameraDistanceTarget + Vector3.up * m_cameraHeight,
                          (m_countTimeState - m_situationRecognitionTime), m_timeCameraMovesBoss);
        }

        //カメラが動いているandカメラが動き終わる時間
        if (!m_isCameraStoppedWhenTheBossAppeared && m_countTimeState >= m_situationRecognitionTime + m_timeCameraMovesBoss)
        {
            m_isCameraStoppedWhenTheBossAppeared = true;
            Debug.Log("ボスの威嚇アニメーションスタート");

            //SEの再生
            switch (m_stageNum)
            {
            case 0:
                MySoundManager.Instance.Play(SeCollection.RoarOfTheCarryMinister,
                                             true, m_boss.transform.position.x, m_boss.transform.position.y, m_boss.transform.position.z);
                break;

            case 1:
                MySoundManager.Instance.Play(SeCollection.RoarOfTheVirusMinister,
                                             true, m_boss.transform.position.x, m_boss.transform.position.y, m_boss.transform.position.z);
                break;

            case 2:
                MySoundManager.Instance.Play(SeCollection.RoarOfTheMirrorMinister,
                                             true, m_boss.transform.position.x, m_boss.transform.position.y, m_boss.transform.position.z);
                break;

            case 3:
                MySoundManager.Instance.Play(SeCollection.RoarOfTheMagicMinister,
                                             true, m_boss.transform.position.x, m_boss.transform.position.y, m_boss.transform.position.z);
                break;
            }
        }

        //カメラの見る場所
        CameraScript.transform.LookAt(m_boss.transform.position + Vector3.up * m_cameraHeight);

        //状態の終了
        if (m_countTimeState >= m_appearanceTimeBoss)
        {
            m_stageState = StageStatus.BossGame;
        }
    }
 /// <summary>
 /// Converts the <see cref="sourceValue" /> parameter to the <see cref="destinationType" /> parameter using <see cref="formatProvider"
 /// /> and <see cref="ignoreCase" />
 /// </summary>
 /// <param name="sourceValue">the <see cref="System.Object"/> to convert from</param>
 /// <param name="destinationType">the <see cref="System.Type" /> to convert to</param>
 /// <param name="formatProvider">not used by this TypeConverter.</param>
 /// <param name="ignoreCase">when set to <c>true</c>, will ignore the case when converting.</param>
 /// <returns>
 /// an instance of <see cref="StageStatus" />, or <c>null</c> if there is no suitable conversion.
 /// </returns>
 public override object ConvertFrom(object sourceValue, global::System.Type destinationType, global::System.IFormatProvider formatProvider, bool ignoreCase) => StageStatus.CreateFrom(sourceValue);
Beispiel #21
0
        public void IfTheResultIsValid_StateIsCalculatedFromPipelineStates_FailedBeatsEverything_BuildingBeatsPassed(StageStatus stageStatus1, StageStatus stageStatus2, EstateStatus estateStatus)
        {
            // Arrange
            var pipeline1 = new Pipeline()
            {
                PipelineInstances = { new PipelineInstance()
                                      {
                                          Stages =   { new Stage()
                                                       {
                                                           Status = stageStatus1
                                                       } }
                                      } }
            };
            var pipeline2 = new Pipeline()
            {
                PipelineInstances = { new PipelineInstance()
                                      {
                                          Stages =   { new Stage()
                                                       {
                                                           Status = stageStatus2
                                                       } }
                                      } }
            };
            var result = Result <List <Pipeline> > .Valid(new List <Pipeline> {
                pipeline1, pipeline2
            });

            // Act
            var estate = new Estate(result);

            //Assert
            Assert.That(estate.Status, Is.EqualTo(estateStatus));
        }
    public void ReAutoTarget()
    {
        mMonsterCount -= 1;

        if (mMonsterCount == 0) {
            //한 스테이지 클리어
            StopCoroutine ("HeroAutoAttack");
            StopCoroutine ("MonsterAutoAttack");

            mLoopCount -= 1;
            //mIngTextMassage.text = "모든 적을 격파";

            if (mLoopCount == 0) {
                //모든 스테이지 클리어. -> 승리 결과창.

                mIngTextMassage.text = "스테이지 클리어!";

                mStageStatus = StageStatus.Clear;
                GameOver();

                return;
            }

            mStageStatus = StageStatus.Idle;
            StartCoroutine ("AutoStep");
            return;
        }
        //타겟 재 탐색.
        GetSingleAutoTarget();
    }
Beispiel #23
0
    public void ReAutoTarget()
    {
        mMonsterCount -= 1;
        Debug.Log ("몬스터 카운트= "+mMonsterCount);

        TargetMonster = null;

        if (mMonsterCount == 0) {
            //한 스테이지 클리어
            mLoopCount -= 1;

            StopCoroutine ("HeroAutoAttack");
            StopCoroutine ("HeroSkillAttack");

            //mIngTextMassage.text = "모든 적을 격파";

            if (mLoopCount == 0) {
                //모든 스테이지 클리어. -> 승리 결과창.

                mIngTextMassage.text = "스테이지 클리어!";

                //Invoke ("GameOver", 2);
                GameOver();
                return;
            }

            mStageStatus = StageStatus.Idle;
            StartCoroutine ("AutoStep");
            return;
        }
        //타겟 재 탐색.
        GetSingleAutoTarget();
    }
Beispiel #24
0
        public void PipelineStatus_OneInstance_TwoStages_BuildingBeatsEverything_FailedBeatsPassed(StageStatus stageStatus1, StageStatus stageStatus2, PipelineStatus pipelineStatus)
        {
            // Arrange
            var pipeline = new Pipeline()
            {
                PipelineInstances = { new PipelineInstance()
                                      {
                                          Stages ={ new Stage              {
                                            Status = stageStatus1
                                        }, new Stage {
                                            Status = stageStatus2
                                        } }
                                      } }
            };

            // Act/Assert
            Assert.That(pipeline.Status, Is.EqualTo(pipelineStatus));
        }
Beispiel #25
0
        public void PipelineStatus_OneInstance_OneStage_CancelledIsFailed_UnknowenIsPassed(StageStatus stageStatus, PipelineStatus pipelineStatus)
        {
            // Arrange
            var pipeline = new Pipeline()
            {
                PipelineInstances = { new PipelineInstance()
                                      {
                                          Stages ={ new Stage              {
                                            Status = stageStatus
                                        } }
                                      } }
            };

            // Act/Assert
            Assert.That(pipeline.Status, Is.EqualTo(pipelineStatus));
        }
Beispiel #26
0
 public SaveData(StageStatus status)
 {
     this.status = status;
 }
Beispiel #27
0
    void Start()
    {
        /// <summary>
        /// StageFileの読み込み
        string filename = "stage" + SampleData.SceneNo.ToString();

        stageMaker(filename);
        Text StageNoText = GameObject.Find("StageNoText").GetComponent <Text>();

        StageNoText.text = "Stage " + SampleData.SceneNo.ToString();

        // ステージのクリア条件
        if (SampleData.SceneNo == 1)
        {
            StatusData = new StageStatus(2, 10);
        }
        else if (SampleData.SceneNo == 2)
        {
            StatusData = new StageStatus(3, 15);
        }
        else if (SampleData.SceneNo == 3)
        {
            StatusData = new StageStatus(3, 20);
        }

        StatusData.StatusUpdate();

        ActiveBlockHeight = rowLength - DefaultBlockHeight;
        UnderArrowHeight  = ActiveBlockHeight;

        // can_alphabetにパズルエリアのアルフェベットを格納
        CheckPotentialPuzzle();
        CanWordText      = GameObject.Find("CanWordText").GetComponent <Text>();
        CanWordText.text = "";
        /////////////////

        // 画面に表示されない縦数を見つける
        UnderArrow = GameObject.Find("UnderArrow");

        // 猫救出ラインのGlassLineを見つける
        GlassLine = GameObject.Find("GlassLine");
        Vector3 pos = new Vector3(0, GlassLineHeight + UnderArrowHeight * -BlockSize, -1);

        GlassLine.transform.localPosition = pos;

        BackPicture = GameObject.Find("BackPicture");
        pos         = new Vector3(0, GlassLineHeight + UnderArrowHeight * -BlockSize + 500, 100);
        BackPicture.transform.localPosition = pos;

        //無視英単語リストを設定する
        // テキストファイルから読み込んだデータ
        TextAsset textasset = new TextAsset();                                     //テキストファイルのデータを取得するインスタンスを作成

        textasset = Resources.Load("ignore_word", typeof(TextAsset)) as TextAsset; //Resourcesフォルダから対象テキストを取得
        string TextLines = textasset.text;                                         //テキスト全体をstring型で入れる変数を用意して入れる

        //Splitで一行づつを代入した1次配列を作成
        ignore_word = TextLines.Split('\n'); //

        //★ミッションの設定
        StarData = new StarReword("ANIMAL", "[名]動物", "PEOPLE", "[名]人々", "CHECK", "[動]確認する");

        //DBの設定
        sqlDB = new SqliteDatabase("ejdict.sqlite3");

        //GameObjectを探して格納
        TransWindow = GameObject.Find("TransWindow");
        TransWindow.SetActive(false);
        StartWindow = GameObject.Find("StartWindow");
        StartWindow.SetActive(true);

        GameOverObj = GameObject.Find("GameOverText");
        GameOverObj.GetComponent <Text>().text = "";
        GameOverObj.SetActive(false);


        btnFlg = ButtonFlg.NORMAL;

        EigoText  = "";
        TransText = "";

        // 音声ファイルを設定
        soundTap = Resources.Load("SOUND/SE/cursor1", typeof(AudioClip)) as AudioClip;
    }
    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;
            }
        }
    }
    IEnumerator AutoStep()
    {
        while (true)
        {
            if (mStageStatus == StageStatus.Idle)
            {
                //스타트 TEXT 출현..
                mIngTextMassage.text = "스타트!";

                yield return new WaitForSeconds (0.5f);

                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.5f);
                }

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

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

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

                //코루틴 실행.
                StartCoroutine("HeroAutoAttack");
                StartCoroutine("MonsterAutoAttack");
                yield break;
            }
        }
    }
 public StageStatus RejectStage(StageStatus currentStatus)
 {
     return(currentStatus != StageStatus.Accepted ? StageStatus.Rejected : currentStatus);
 }
    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;
            }
        }
    }