void Update() { int NowScore = Bullet.Score; //スコアによって処理を区別 if (NowScore < (int)NextStage.Stage1) { n_s = NextStage.None; Set_Stage(n_s); } else if (NowScore == (int)NextStage.Stage1) { n_s = NextStage.Stage1; Set_Stage(n_s); } else if (NowScore > (int)NextStage.Stage1) { SetCandySpeed(2); } if (NowScore == (int)NextStage.Stage2) { n_s = NextStage.Stage2; Set_Stage(n_s); } else if (NowScore > (int)NextStage.Stage2) { SetCandySpeed(4); } }
public void Set_Stage(NextStage n_stage)//ステージごとの処理 { switch (n_s) { case NextStage.None: //100点以下の時 StageText.enabled = false; SetCandySpeed(1); break; case NextStage.Stage1: //100点以上の時 n_s = NextStage.Stage1; SetCandySpeed(2); StageClear(n_s); break; case NextStage.Stage2: //200点以上の時 n_s = NextStage.Stage2; SetCandySpeed(4); StageClear(n_s); break; default: //StageText.enabled = false; break; } //Debug.Log(s_o[0].GetComponent<Rigidbody2D>().gravityScale); }
void Start() { //セレクト用のカメラと演出用のカメラをそれぞれ初期化 cameraName = CameraName.None; nextStage = NextStage.None; //次のステージが何を選ばれているかを取得 //ただ、タイトル画面ではステージ選択を行うスクリプトは必要ないので振り分け string name = SceneManager.GetActiveScene().name; if (selectCamera && transform.tag != CameraName.PlayCamera.ToString()) { obj = GameObject.Find("StageConfiguration"); stageInstructs = obj.GetComponent <StageInstructs>(); } //初期化ではShaderをかけない CRTFlag = false; //全部の値を初期化 Donothing(); //演出用のかめらの場合 if (!selectCamera) { foreach (var camera_name in Enum.GetValues(typeof(CameraName))) { //自身のカメラに付けたのと同じ名前の列挙型を取得する if (transform.tag == camera_name.ToString()) { cameraName = (CameraName)camera_name; if (transform.tag == CameraName.TitleRoomCamera.ToString()) { CRTFlag = true; } } } } //ステージ選択の場合 if (selectCamera) { foreach (var next_stage in Enum.GetValues(typeof(NextStage))) { //上と同じく自身のカメラに付けたタグと同じものを取得する //ステージを選ぶ際と同じ型の列挙型を指定している if (transform.tag == next_stage.ToString()) { nextStage = (NextStage)next_stage; } } } //タイトルでノイズを調整するためのタイム NoiseTime = 0; }
void TriggerNextStageEvent() { NextStage?.Invoke(); }
void StageClear(NextStage n_stage)//テキスト表示 { StageText.text = n_stage.ToString(); StageText.enabled = true; StartCoroutine("VisibleText"); }
public virtual void CheckPossibilityToMoveToNextStage() { ValidationUtils.NotNull(NextStage, String.Format("Этап сделки «{0}» не имеет следующего этапа.", Stage.GetDisplayName())); switch (Stage) { // 4 case DealStage.ContractSigning: ValidationUtils.NotNull(Contract, String.Format("Невозможно перевести сделку на этап «{0}», так как по ней отсутствует договор.", NextStage.GetDisplayName())); break; } }
// Use this for initialization public void SetUpNode(StageNode prevStage, int clearedCount, ref int followerCount) { if (GateRenderers.Length > 1) { _gateMaterial = GateRenderers[0].material; foreach (var item in GateRenderers) { item.sharedMaterial = _gateMaterial; } } _gateAnimator = GetComponentInChildren <Animator>(); if (_gateAnimator) { _gateAnimator.SetFloat("DoorSpeed", -1 * _animSpeed); } OnIsSelectedChanged += e => { if (_gateAnimator) { var t = _gateAnimator.GetCurrentAnimatorStateInfo(0).normalizedTime; t = Mathf.Clamp(t, 0, 1); _gateAnimator.Play("gate", 0, t); _gateAnimator.SetFloat("DoorSpeed", (IsSelected ? 1 : -1) * _animSpeed); } }; IsCleared = clearedCount > 0; PrevStage = prevStage; // クリア状態を表示 if (_gateMaterial) { _gateMaterial.EnableKeyword("EMISSION"); var c = IsCleared ? new Color(2, 2, 0) : new Color(2, 0, 0); _gateMaterial.SetColor("_EmissionColor", c); } // 助けた数を表示 FollowerFindData followerData = new FollowerFindData(); GameData.Instance.GetData(TargetStageName + StageController.StageFollowerDataTarget, ref followerData); var count = followerData.FindedIndexList.Count; followerCount += count; for (int i = 0; i < FindedFollowerPositions.Count; i++) { var t = FindedFollowerPositions[i]; GameObject f; if (i >= count) { f = Instantiate(FollowerModelPrefab, t.position, t.rotation); // 助けてなければ黒色にする var rs = f.GetComponentsInChildren <Renderer>(); foreach (var item in rs) { item.material.EnableKeyword("EMISSION"); item.material.SetColor("_EmissionColor", new Color(.25f, .25f, .25f)); } } else { f = Instantiate(FollowerChipPrefab, t.position, t.rotation); } f.transform.localScale = Vector3.one * 0.75f; } if (NextStage) { NextStage.SetUpNode(this, --clearedCount, ref followerCount); } }
private void OnCompTanksDestroyed(object sender, EventArgs e) { NextStage.Invoke(this, new EventArgs()); }
void Update() { Debug.Log("現在のステージは:" + CurrentStage); //Xinput関連 if (!playerInputSet_ || !prevState_.IsConnected) { playerIndex_ = (PlayerIndex)0; playerInputSet_ = true; } prevState_ = padState_; padState_ = GamePad.GetState(playerIndex_); //Xinput関連 if (selectControll.ChangeSceneFrag) { return; } //Debug.Log("次のシーン:" + CurrentStage); if (prevState_.DPad.Up == ButtonState.Released && padState_.DPad.Up == ButtonState.Pressed) { SoundManager.GetInstance.PlaySE("input_SE1"); foreach (var stage in movingStage) { if (stage.currentStage != CurrentStage || stage.up_tv == NextStage.None) { continue; } CurrentStage = stage.up_tv; return; } } if (prevState_.DPad.Right == ButtonState.Released && padState_.DPad.Right == ButtonState.Pressed) { SoundManager.GetInstance.PlaySE("input_SE1"); foreach (var stage in movingStage) { //Debug.Log("おらがめあすだ:" + stage.currentStage + "みぎ:" + stage.right_tv); if (stage.currentStage != CurrentStage || stage.right_tv == NextStage.None) { continue; } CurrentStage = stage.right_tv; return; } } if (prevState_.DPad.Left == ButtonState.Released && padState_.DPad.Left == ButtonState.Pressed) { SoundManager.GetInstance.PlaySE("input_SE1"); foreach (var stage in movingStage) { if (stage.currentStage != CurrentStage || stage.left_tv == NextStage.None) { continue; } CurrentStage = stage.left_tv; return; } } if (prevState_.DPad.Down == ButtonState.Released && padState_.DPad.Down == ButtonState.Pressed) { SoundManager.GetInstance.PlaySE("input_SE1"); foreach (var stage in movingStage) { if (stage.currentStage != CurrentStage || stage.dwon_tv == NextStage.None) { continue; } CurrentStage = stage.dwon_tv; return; } } }
public IStage <TMeetType> ToNextStage() { NextStage.SetUnits(Rule.GetPassing(this).ToArray()); return(NextStage); }