public override void Exit(StateMediator<BattleStateName> mediator) { var effect = Object.Instantiate(ResourceUtils.GetMenkoReturnEffect()); effect.transform.position = decideMenko.transform.position; Object.Destroy(decideMenko.gameObject); PhotonManager.Instance.RemoveRPCEvent("Flipping"); }
IEnumerator ShowResult(StateMediator<BattleStateName> mediator) { while (decideMenko.IsSleep() == false) { yield return null; } bool isFirst = !decideMenko.IsBack(); isFirst = manager.Data.IsPlayerHost ? isFirst : !isFirst; string guideText; if (isFirst) { guideText = @"あなたは <color=""red"">先攻</color> になりました"; } else { guideText = @"あなたは <color=""red"">後攻</color> になりました"; } manager.ViewModels.GuideVM.GuideText = guideText; yield return new WaitForSeconds(WaitTime); manager.ViewModels.GuideVM.GuideText = ""; mediator.SetState(new StartGame(manager, isFirst)); }
public override void Init(StateMediator<BattleStateName> mediator) { this.mediator = mediator; PhotonManager.Instance.AddRPCEvent("Flipping", Flipping); manager.ViewModels.GuideVM.GuideText = "メンコの表裏で\n先攻後攻を決定します"; var path = BattleConst.Menko.DecideMenkoPath; var prefab = (DecideMenko)AssetManager.Load<DecideMenko>(path).Asset; decideMenko = Object.Instantiate(prefab); decideMenko.transform.position = Vector3.up * 1f; if (PhotonNetwork.offlineMode) { Flipping(new object[] { Random.Range(2.5f, 10f), Random.Range(50f, 150f) }); return; } if (PhotonNetwork.player.isMasterClient) { PhotonManager.Instance.SendRPC( "Flipping", PhotonTargets.All, Random.Range(2.5f, 10f), Random.Range(50f, 150f) ); } }
public override void Update(StateMediator<PhaseStateName> mediator) { if (isFallPointRegisted) { mediator.SetState(share.cache.GetState(PhaseStateName.Attack)); } }
public override void Init(StateMediator<BattleStateName> mediator) { Debug.Log("対戦相手のターン"); timer = 0; manager.ViewModels.GuideVM.GuideText = @"<color=""blue"">相手</color>のターンです"; // this.phaseSM.SetState(PhaseStateName.SelectChip); }
public override void Init(StateMediator <SceneName> mediator) { Debug.Log("Start Battle Scene"); manager.Init(); this.stateMachine.Init(); }
public override void Update(StateMediator <PlayState> mediator) { if (IsEnd()) { mediator.SetState(nextState); } }
public void Init(StateMediator <GameStateType> mediator) { isSelected = false; this.gameMediator.selecter.callback += Selected; this.gameMediator.selecter.ShowUp(); Debug.Log("Game - PlayerSelectChip"); }
public override void Init(StateMediator<PlayState> mediator) { if (audio.main.isPlaying) { audio.main.Pause(); } }
public override void Init(StateMediator <BattleStateName> mediator) { this.mediator = mediator; PhotonManager.Instance.AddRPCEvent("Flipping", Flipping); manager.ViewModels.GuideVM.GuideText = "メンコの表裏で\n先攻後攻を決定します"; var path = BattleConst.Menko.DecideMenkoPath; var prefab = (DecideMenko)AssetManager.Load <DecideMenko>(path).Asset; decideMenko = Object.Instantiate(prefab); decideMenko.transform.position = Vector3.up * 1f; if (PhotonNetwork.offlineMode) { Flipping(new object[] { Random.Range(2.5f, 10f), Random.Range(50f, 150f) }); return; } if (PhotonNetwork.player.isMasterClient) { PhotonManager.Instance.SendRPC( "Flipping", PhotonTargets.All, Random.Range(2.5f, 10f), Random.Range(50f, 150f) ); } }
public override void Update(StateMediator <PhaseStateName> mediator) { if (IsEnd()) { mediator.SetState(share.cache.GetState(PhaseStateName.SetFallPoint)); } }
public override void Update(StateMediator<PlayState> mediator) { if (IsEnd()) { mediator.SetState(nextState); } }
public override void Update(StateMediator <BattleStateName> mediator) { if (IsEnd()) { mediator.SetState(turnLoop.CurrentTurnState()); } }
public override void Update(StateMediator<PhaseStateName> mediator) { if (IsEnd()) { mediator.SetState(share.cache.GetState(PhaseStateName.SetFallPoint)); } }
public override void Init(StateMediator <BattleStateName> mediator) { Debug.Log("対戦相手のターン"); timer = 0; manager.ViewModels.GuideVM.GuideText = @"<color=""blue"">相手</color>のターンです"; // this.phaseSM.SetState(PhaseStateName.SelectChip); }
public void Update(StateMediator <GameStateType> mediator) { if (IsEnd()) { mediator.SetState(new PlayerSetFallPoint(gameMediator)); } }
public void Update(StateMediator <GameStateType> mediator) { if (IsEnd()) { mediator.SetState(new PlayerSelectChip(gameMediator)); } }
public override void Init(StateMediator<SceneName> mediator) { Debug.Log("Start Battle Scene"); manager.Init(); this.stateMachine.Init(); }
public void Update(StateMediator <ShakeKey> mediator) { info.accelarations.Add(Input.gyro.userAcceleration); info.gyroAngles.Add(gyro.attitude.eulerAngles); #if UNITY_EDITOR || UNITY_EDITOR_64 || UNITY_EDITOR_OSX if (Input.GetKey(KeyCode.Mouse0)) { info.accelarations.Add(Vector3.forward * ShakeParam.AccelThreshold); info.gyroAngles.Add(Vector3.zero); mediator.SetState(info.stateCache.GetState(ShakeKey.End)); } #endif if (IsEnd()) { if (IsShake()) { mediator.SetState(info.stateCache.GetState(ShakeKey.End)); } else { mediator.SetState(info.stateCache.GetState(ShakeKey.Wait)); } } }
public override void Init(StateMediator <PlayState> mediator) { if (audio.main.isPlaying) { audio.main.Pause(); } }
public override void Update(StateMediator<BattleStateName> mediator) { if (IsEnd()) { mediator.SetState(turnLoop.CurrentTurnState()); } }
public override void Update(StateMediator <PhaseStateName> mediator) { if (isFallPointRegisted) { mediator.SetState(share.cache.GetState(PhaseStateName.Attack)); } }
IEnumerator ShowResult(StateMediator <BattleStateName> mediator) { while (decideMenko.IsSleep() == false) { yield return(null); } bool isFirst = !decideMenko.IsBack(); isFirst = manager.Data.IsPlayerHost ? isFirst : !isFirst; string guideText; if (isFirst) { guideText = @"あなたは <color=""red"">先攻</color> になりました"; } else { guideText = @"あなたは <color=""red"">後攻</color> になりました"; } manager.ViewModels.GuideVM.GuideText = guideText; yield return(new WaitForSeconds(WaitTime)); manager.ViewModels.GuideVM.GuideText = ""; mediator.SetState(new StartGame(manager, isFirst)); }
IEnumerator Load(StateMediator <SceneName> mediator) { // Loading画面の検索 LoadingScreen screen; screen = GameObject.FindObjectOfType <LoadingScreen>(); // Loading画面の生成 if (screen == null) { var asset = AssetManager.Load(AssetPath.GetLoadScreenPath()); screen = ((GameObject)GameObject.Instantiate(asset.Asset)).GetComponent <LoadingScreen>(); } // 画面の遷移表現開始 screen.ShowScreen(); // 画面の遷移表現が終わるまで待つ while (screen.IsFading()) { yield return(null); } // 少しだけWait yield return(new WaitForSeconds(0.5f)); // Unityシーンの非同期ロード開始 this.sceneTrans.Load(); // Unityシーンのロード進捗を待つ while (this.sceneTrans.Progress < 1.0f) { // 画面のロード進捗へProgress値を渡す screen.SetProgress(this.sceneTrans.Progress); yield return(null); } screen.SetProgress(this.sceneTrans.Progress); // Unityシーンの切り替え終了まで待つ while (this.sceneTrans.IsDone == false) { yield return(null); } // 少しだけWait yield return(new WaitForSeconds(0.5f)); // 画面の遷移表現開始 screen.HideScreen(); // 画面の遷移表現が終わるまで待つ while (screen.IsFading()) { yield return(null); } // SceneStateの遷移、移動先のステートスタート mediator.SetState(nextScene); }
public void Exit(StateMediator <GameStateType> mediator) { Sound.Instance.PlaySE(gameMediator.selectSound); gameMediator.fallPointText.enabled = false; TouchSensor.Instance.RemoveAction(TouchState.Enter, TouchMove); TouchSensor.Instance.RemoveAction(TouchState.Move, TouchMove); TouchSensor.Instance.RemoveAction(TouchState.Exit, TouchExit); }
public override void Exit(StateMediator <BattleStateName> mediator) { var effect = Object.Instantiate(ResourceUtils.GetMenkoReturnEffect()); effect.transform.position = decideMenko.transform.position; Object.Destroy(decideMenko.gameObject); PhotonManager.Instance.RemoveRPCEvent("Flipping"); }
public override void Update(StateMediator<BattleStateName> mediator) { phaseSM.UpdateState(); if (IsEnd()) { mediator.SetState(turnLoop.NextTurnState()); } }
public override void Update(StateMediator <BattleStateName> mediator) { phaseSM.UpdateState(); if (IsEnd()) { mediator.SetState(turnLoop.NextTurnState()); } }
public void Init(StateMediator <ShakeKey> mediator) { info.accelarations.Clear(); info.gyroAngles.Clear(); info.accelarations.Add(Input.gyro.userAcceleration); info.gyroAngles.Add(gyro.attitude.eulerAngles); Debug.Log("ShakeState_Shaking"); }
public override void Init(StateMediator <PhaseStateName> mediator) { Debug.Log("Attack !"); this.mediator = mediator; shakeCounter.StartShake(EndShake); manager.ViewModels.BattleVM.BackButtonVM.Enabled = true; manager.ViewModels.BattleVM.BackButtonVM.Action = BackToSelect; }
public override void Init(StateMediator<PhaseStateName> mediator) { Debug.Log("Attack !"); this.mediator = mediator; shakeCounter.StartShake(EndShake); manager.ViewModels.BattleVM.BackButtonVM.Enabled = true; manager.ViewModels.BattleVM.BackButtonVM.Action = BackToSelect; }
IEnumerator Load(StateMediator<SceneName> mediator) { // Loading画面の検索 LoadingScreen screen; screen = GameObject.FindObjectOfType<LoadingScreen>(); // Loading画面の生成 if (screen == null) { var asset = AssetManager.Load(AssetPath.GetLoadScreenPath()); screen = ((GameObject)GameObject.Instantiate(asset.Asset)).GetComponent<LoadingScreen>(); } // 画面の遷移表現開始 screen.ShowScreen(); // 画面の遷移表現が終わるまで待つ while (screen.IsFading()) { yield return null; } // 少しだけWait yield return new WaitForSeconds(0.5f); // Unityシーンの非同期ロード開始 this.sceneTrans.Load(); // Unityシーンのロード進捗を待つ while (this.sceneTrans.Progress < 1.0f) { // 画面のロード進捗へProgress値を渡す screen.SetProgress(this.sceneTrans.Progress); yield return null; } screen.SetProgress(this.sceneTrans.Progress); // Unityシーンの切り替え終了まで待つ while (this.sceneTrans.IsDone == false) { yield return null; } // 少しだけWait yield return new WaitForSeconds(0.5f); // 画面の遷移表現開始 screen.HideScreen(); // 画面の遷移表現が終わるまで待つ while (screen.IsFading()) { yield return null; } // SceneStateの遷移、移動先のステートスタート mediator.SetState(nextScene); }
public override void Update(StateMediator <SceneName> mediator) { this.stateMachine.Update(); if (this.manager.IsBattleEnd()) { SceneManager.Instance.ChangeScene(new HomeScene()); } }
public override void Init(StateMediator <PlayState> mediator) { audio.main.volume = SoundVolume.PlayBGMVolume; if (audio.main.isPlaying == false) { audio.main.Play(); } }
public override void Update(StateMediator <BattleStateName> mediator) { // this.phaseSM.UpdateState(); timer += Time.deltaTime; if (IsEnd()) { mediator.SetState(turnLoop.NextTurnState()); } }
public override void Init(StateMediator<PlayState> mediator) { audio.main.volume = SoundVolume.PlayBGMVolume; if (audio.main.isPlaying == false) { audio.main.Play(); } }
public override void Init(StateMediator <BattleStateName> mediator) { Debug.Log("結果表示"); //TODO: 勝敗結果データを入れていく //TODO: 結果表示のUI展開 OnPressed(); }
public override void Update(StateMediator<SceneName> mediator) { this.stateMachine.Update(); if (this.manager.IsBattleEnd()) { SceneManager.Instance.ChangeScene(new HomeScene()); } }
public override void Init(StateMediator<BattleStateName> mediator) { Debug.Log("結果表示"); //TODO: 勝敗結果データを入れていく //TODO: 結果表示のUI展開 OnPressed(); }
public override void Update(StateMediator<BattleStateName> mediator) { // this.phaseSM.UpdateState(); timer += Time.deltaTime; if (IsEnd()) { mediator.SetState(turnLoop.NextTurnState()); } }
public override void Update(StateMediator<PlayState> mediator) { timer += Time.deltaTime; audio.main.volume += fadeAmount * Time.deltaTime; if (IsEnd()) { mediator.SetState(nextState); } }
public override void Init(StateMediator<PlayState> mediator) { this.audio.sub.volume = SoundVolume.PlayBGMVolume; this.audio.sub.loop = false; if (audio.main.isPlaying) audio.main.Pause(); this.audio.sub.Play(); }
public override void Update(StateMediator <PlayState> mediator) { timer += Time.deltaTime; audio.main.volume += fadeAmount * Time.deltaTime; if (IsEnd()) { mediator.SetState(nextState); } }
public override void Init(StateMediator<BattleStateName> mediator) { Debug.Log("ゲームスタート"); // ターンのループステートを事前生成しておく turnLoop = new TurnLoop(manager, isPlayerFirst); // 使用メンコの初期生成 PreInstantiate(manager.Data.AllBattleData); }
public override void Init(StateMediator <BattleStateName> mediator) { Debug.Log("対戦終了"); this.mediator = mediator; //TODO: ネットワーク対戦の場合はこの時点でルーム解散してログアウトする // 対戦終了演出の開始 manager.UI.PlayEnd(OnEnd); }
public override void Init(StateMediator<BattleStateName> mediator) { Debug.Log("対戦終了"); this.mediator = mediator; //TODO: ネットワーク対戦の場合はこの時点でルーム解散してログアウトする // 対戦終了演出の開始 manager.UI.PlayEnd(OnEnd); }
public override void Init(StateMediator <BattleStateName> mediator) { Debug.Log("ゲームスタート"); // ターンのループステートを事前生成しておく turnLoop = new TurnLoop(manager, isPlayerFirst); // 使用メンコの初期生成 PreInstantiate(manager.Data.AllBattleData); }
public void Init(StateMediator <GameStateType> mediator) { fallPointer = gameMediator.baseObjects.fallPointer.transform; TouchSensor.Instance.AddAction(TouchState.Enter, TouchMove); TouchSensor.Instance.AddAction(TouchState.Move, TouchMove); TouchSensor.Instance.AddAction(TouchState.Exit, TouchExit); TouchSensor.Instance.SingleTouchMode(true); gameMediator.fallPointText.enabled = true; Debug.Log("Game - PlayerAttack"); }
public override void Init(StateMediator <PhaseStateName> mediator) { manager.ViewModels.GuideVM.GuideText = "落下位置をタップしてください"; isMoved = false; isFallPointRegisted = false; SetupCamera(); TouchSensor.Instance.AddAction(TouchState.Enter, TouchMove); TouchSensor.Instance.AddAction(TouchState.Move, TouchMove); TouchSensor.Instance.AddAction(TouchState.Exit, TouchExit); TouchSensor.Instance.SingleTouchMode(true); }
public override void Init(StateMediator<PhaseStateName> mediator) { manager.ViewModels.GuideVM.GuideText = "落下位置をタップしてください"; isMoved = false; isFallPointRegisted = false; SetupCamera(); TouchSensor.Instance.AddAction(TouchState.Enter, TouchMove); TouchSensor.Instance.AddAction(TouchState.Move, TouchMove); TouchSensor.Instance.AddAction(TouchState.Exit, TouchExit); TouchSensor.Instance.SingleTouchMode(true); }
public override void Update(StateMediator <PlayState> mediator) { audio.main.volume = SoundVolume.PlayBGMVolume; audio.sub.volume = SoundVolume.PlayBGMVolume; // イントロが終了していたらnextStateに移行 if (this.audio.sub.isPlaying == false) { mediator.SetState(nextState); } }
public override void Update(StateMediator<PlayState> mediator) { audio.main.volume = SoundVolume.PlayBGMVolume; audio.sub.volume = SoundVolume.PlayBGMVolume; // イントロが終了していたらnextStateに移行 if (this.audio.sub.isPlaying == false) { mediator.SetState(nextState); } }
public override void Init(StateMediator <PlayState> mediator) { this.audio.sub.volume = SoundVolume.PlayBGMVolume; this.audio.sub.loop = false; if (audio.main.isPlaying) { audio.main.Pause(); } this.audio.sub.Play(); }
public override void Init(StateMediator<PlayState> mediator) { timer = 0; if (SoundVolume.PlayBGMVolume <= 0f) { timer = fadeTime; } else { fadeAmount = (audio.main.volume / fadeTime) * -1f; } }
public override void Init(StateMediator<PlayState> mediator) { if (SoundVolume.PlayBGMVolume <= 0f) { timer = fadeTime; return; } timer = 0; fadeInAmount = SoundVolume.PlayBGMVolume / fadeTime; fadeOutAmount = (audio.sub.volume / fadeTime) * -1f; audio.main.volume = 0f; audio.main.Play(); }
public override void Exit(StateMediator<PhaseStateName> mediator) { TouchSensor.Instance.RemoveAction(TouchState.Enter, TouchMove); TouchSensor.Instance.RemoveAction(TouchState.Move, TouchMove); TouchSensor.Instance.RemoveAction(TouchState.Exit, TouchExit); if (isPlayer) { var unitList = manager.ViewModels.UnitListVM.PlayerUnitList; for (int i = 0; i < unitList.Count; i++) { unitList[i].Pressed = null; unitList[i].LongPressed = null; } } }
public override void Init(StateMediator<PlayState> mediator) { timer = 0; audio.main.volume = 0f; if (SoundVolume.PlayBGMVolume <= 0f) { timer = fadeTime; } else { fadeAmount = (SoundVolume.PlayBGMVolume - audio.main.volume) / fadeTime; } audio.main.Play(); }
public override void Init(StateMediator<BattleStateName> mediator) { Debug.Log("ゲームの開始前準備"); this.mediator = mediator; manager.UI.EntryScreen(this.NextState); //// ネットワーク接続(test) //// 本番は自分が到着したことを知らせるBufferRPCを飛ばす //PhotonManager.Instance.Connection(InRoom); // マップのロード var assetData = AssetManager.Load(AssetPath.GetStagePrefabPath(manager.Data.StageNumber)); GameObject.Instantiate(assetData.Asset); //this.manager.ViewModels.GuideVM.GuideText = "対戦相手の到着を\n待っています..."; }
public override void Init(StateMediator<BattleStateName> mediator) { Debug.Log("プレイヤーのターン"); manager.ViewModels.GuideVM.GuideText = @"<color=""red"">あなた</color>のターンです"; var unitList = manager.Data.PlayerUnit.GetData(); var unitVMList = manager.ViewModels.UnitListVM.PlayerUnitList; for (int i = 0; i < unitList.Length; i++) { var unit = unitList[i]; var unitVM = unitVMList[i]; unit.Status.ElapseTurn(); SetUpButton(unitVM); } phaseSM.SetState(PhaseStateName.SelectChip); }
public override void Init(StateMediator<PhaseStateName> mediator) { share.fallPointer.gameObject.SetActive(false); isPressed = false; share.selectIndex = -1; share.isUseSkill = false; if (isPlayer) { unitList = manager.ViewModels.UnitListVM.PlayerUnitList; for (int i = 0; i < unitList.Count; i++) { int index = i; unitList[i].Pressed = () => Pressed(index); unitList[i].LongPressed = () => LongPressed(index); } manager.ViewModels.GuideVM.SelecterEnabled = true; } }