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; }
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); } } } }
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); }
//---------------------------------------------------------------------------------------------------- /// <summary> /// ダンジョン状態 /// </summary> void DungeonState() { //初めてこの状態になった if (m_stageState != m_stageStatePrev) { //設定 SetManipulateMainObject(false); m_countTimeState = 0; myMainUi.GameScreenScript.StartDungeonInstruction(); m_stageStatePrev = m_stageState; } //ボスイベント発生管理 BossEventOccurrenceManagement(); }
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 활성화 }
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; } } }
// ------------------------------------------------------------------------------------- // 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); } }
// ------------------------------------------------------------------------------------- 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); }
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; } } }
//---------------------------------------------------------------------------------------------------- /// <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; } }
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; }
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(); }
//---------------------------------------------------------------------------------------------------- /// <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(); } }
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(); } }
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; }
public override void Delete() { Status = StageStatus.Deleted; Save(); }
//---------------------------------------------------------------------------------------------------- /// <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);
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(); }
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(); }
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)); }
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)); }
public SaveData(StageStatus status) { this.status = status; }
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; } } }