Exemplo n.º 1
0
    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);
        }
    }
Exemplo n.º 2
0
    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);
    }
Exemplo n.º 3
0
    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;
    }
Exemplo n.º 4
0
 void TriggerNextStageEvent()
 {
     NextStage?.Invoke();
 }
Exemplo n.º 5
0
 void StageClear(NextStage n_stage)//テキスト表示
 {
     StageText.text    = n_stage.ToString();
     StageText.enabled = true;
     StartCoroutine("VisibleText");
 }
Exemplo n.º 6
0
        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;
            }
        }
Exemplo n.º 7
0
    // 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);
        }
    }
Exemplo n.º 8
0
 private void OnCompTanksDestroyed(object sender, EventArgs e)
 {
     NextStage.Invoke(this, new EventArgs());
 }
Exemplo n.º 9
0
    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;
            }
        }
    }
Exemplo n.º 10
0
        public IStage <TMeetType> ToNextStage()
        {
            NextStage.SetUnits(Rule.GetPassing(this).ToArray());

            return(NextStage);
        }