IEnumerator PlayActionRamble(Vector2 countActionCharacterInfo) { // 敵のリーダーキャラクターの選択( 1体でも発動 ) int enemyLeader = SelectLeaderEnemy(countActionCharacterInfo); GameObject enemyLeaderObj = DrawEnemyLeader(enemyLeader); // 味方のリーダーキャラクター選択 selectedLeader = -1; while (selectedLeader == -1) { yield return(SelectLeaderPlayer(countActionCharacterInfo)); } DestroyObject(enemyLeaderObj); // 勝敗判定 int isPlayerWin = JudgeRamble(enemyCd[enemyLeader].cs.element); if (isPlayerWin == 1) { mCombo.AddPlayerCombo(); } else if (isPlayerWin == -1) { mCombo.AddEnemyCombo(); } // 少ない方にスタン処理&ダメージ。 int stunCtbNum = 7; if (isPlayerWin == 1) { OpeCharaList.CallStun(enemyCd, stunCtbNum); } else if (isPlayerWin == -1) { OpeCharaList.CallStun(cd, stunCtbNum); } // エフェクト表示 // ユニゾン・詠唱を終了 OpeCharaList.EndWaitUnison(cd); OpeCharaList.EndWaitUnison(enemyCd); OpeCharaList.EndMagic(cd); OpeCharaList.EndMagic(enemyCd); // CTB 値を再設定( waitAction の値を格納 ) CtbManager.SetCtbNum(cd, enemyCd); }
// 行動できるキャラクターが出るまでループを回す IEnumerator DecideNextActionCharacter() { Vector2 tmp = OpeCharaList.CountActionableCharacter(cd, enemyCd); int isActionableChara = (int)tmp.x + (int)tmp.y; while (isActionableChara == 0) { Debug.Log("OK"); // CTBメータを 1 つ進める isActionableChara += CtbManager.SubCtbNum(cd); isActionableChara += CtbManager.SubCtbNum(enemyCd); CtbManager.SubStun(cd, enemyCd); // メモ: CTB値の更新⇒スタン値の更新の順番である必要がある // 移動演出のコルーチンを呼び出す yield return(CtbMove()); // メモ: 処理終了後に CTB値・STUN値をもとにした位置に再描画 // yield return Utility._Wait.WaitKey(); } } // --- DecideNextActionCharacter()
static void Main(string[] args) { CtbManager ctbManager = CtbManager.Instance; ctbManager.Initialize(); try { Console.WriteLine("Hello, world!"); } catch { // do nothing } ctbManager.Cleanup(); #if DEBUG Console.Write("Press any key to continue..."); Console.ReadKey(); #endif }
public void TestMethod1() { CtbManager _ctbManager = CtbManager.Instance; }