IEnumerator loopText(){ while (true) { switch(thisStatus){ case enm_textControllStatus.fadein: if (tapedFlag){ txtColorAlpha = 1f; this.setTextAlpha (); thisStatus = enm_textControllStatus.inputWait; //fazerボタンの使用可能に _fazerIconSR.enabled = true; tapedFlag=false; }else{ this.setTextAlpha (); if (txtColorAlpha >= 1f){ thisStatus = enm_textControllStatus.inputWait; //fazerボタンの使用可能に _fazerIconSR.enabled = true; } } break; case enm_textControllStatus.inputWait: if (tapedFlag){ _fazerIconSR.enabled = false; tapedFlag=false; this.pageNext(); }else{ //クリックされるまで何もしない } break; case enm_textControllStatus.sleep: //ウィンドウの非表示 this.setChildImageEnable(false); if (tapedFlag){ tapedFlag=false; }else{ if (DateTime.Now > endWaitTime){ //時間待機 setChildImageEnable(true); this.pageNext(); } } break; } yield return null; //new WaitForSeconds(0.05f); } }
// // private void setSleep(string argsStr){ //"<nextScene:[tbs]{1}:[.]+>"; string tagMain = argsStr.Substring (1, (argsStr.Length-2)); //各個の消去 string[] spritStr = tagMain.Split(new string[]{":"}, System.StringSplitOptions.None); //sprit double argsSleepTime = double.Parse(spritStr[1]); thisStatus = enm_textControllStatus.sleep; this.endWaitTime = DateTime.Now.AddMilliseconds(argsSleepTime); }
private void pageStart(){ //最初だけ呼ばれる //以降は、pageNextが呼ばれる thisStatus = enm_textControllStatus.fadein; //初期値 thisUIText.text = ""; //初期化 this.setTextAlpha (true); this.nowPage = 0; //テキスト用コマンドの実行 this.execTextCommond (); thisUIText.text = allTxt[nowPage]; //クリック待ちアイコンは非表示にする _fazerIconSR.enabled = false; }
private void pageNext(){ thisStatus = enm_textControllStatus.fadein; thisUIText.text = ""; this.setTextAlpha (true); this.clearSpot (); //ページ移行時には必ずクリアする this.nowPage += 1; if (this.nowPage >= allTxt.Length ) { //次が無い場合 Debug.Log("todo : text end"); this.finishTalking(); return; } //テキスト用コマンドの実行 this.execTextCommond (); thisUIText.text = allTxt[nowPage]; }