Update() private method

private Update ( ) : void
return void
Esempio n. 1
0
    // 更新・メイン
    void UpdateMain()
    {
        // 敵生成管理の更新
        _enemyGenerator.Update();

        // 配置できるかどうか判定
        if (_cursor.Placeable == false)
        {
            // 配置できないのでここでおしまい
            return;
        }

        // カーソルの下にあるオブジェクトをチェック
        int        mask = 1 << LayerMask.NameToLayer("Tower");
        Collider2D col  = Physics2D.OverlapPoint(_cursor.GetPosition(), mask);

        _selObj = null;
        if (col != null)
        {
            // 選択中のオブジェクトを格納
            _selObj = col.gameObject;
        }

        // マウスクリック判定
        if (Input.GetMouseButtonDown(0) == false)
        {
            //クリックしていないので以下の処理は不要
            return;
        }

        if (_selObj != null)
        {
            // 砲台をクリックした
            // 選択した砲台オブジェクトを取得
            _selTower = _selObj.GetComponent <Tower>();

            // アップグレードモードに移行する
            ChangeSelMode(eSelMode.Upgrade);
        }

        switch (_selMode)
        {
        case eSelMode.Buy:
            if (_cursor.SelObj == null)
            {
                // 所持金を減らす
                int cost = Cost.TowerProduction();
                Global.UseMoney(cost);
                // 何もないので砲台を配置
                Tower.Add(_cursor.X, _cursor.Y);
                // 次のタワーの生産コストを取得する
                int cost2 = Cost.TowerProduction();
                if (Global.Money < cost2)
                {
                    // お金が足りないので通常モードに戻る
                    ChangeSelMode(eSelMode.None);
                }
            }
            break;
        }
    }
Esempio n. 2
0
    // 更新・メイン
    void UpdateMain()
    {
        // 敵生成管理の更新
        _enemyGenerator.Update();
        _enemyGenerator2.Update();

        // カーソルの下にあるオブジェクトをチェック
        int        mask = 1 << LayerMask.NameToLayer("Tower");
        Collider2D col  = Physics2D.OverlapPoint(_cursor.GetPosition(), mask);

        _selObj = null;
        if (col != null)
        {
            // 選択中のオブジェクトを格納
            _selObj = col.gameObject;
        }

        // カーソルの下にあるオブジェクトをチェック
        int        mask2 = 1 << LayerMask.NameToLayer("Tower");
        Collider2D col2  = Physics2D.OverlapPoint(_cursor2.GetPosition(), mask2);

        _selObj2 = null;
        if (col2 != null)
        {
            // 選択中のオブジェクトを格納
            _selObj2 = col2.gameObject;
        }

        if (Input.GetButtonDown("Done1p"))
        {
            if (_selObj != null)
            {
                // 砲台をクリックした
                // 選択した砲台オブジェクトを取得
                _selTower = _selObj.GetComponent <Tower>();

                // アップグレードモードに移行する
                ChangeSelMode(eSelMode.Upgrade);
            }
            else
            {
                switch (_selMode)
                {
                case eSelMode.Buy:
                    if (_cursor.SelObj == null)
                    {
                        if (_cursor.Placeable)
                        {
                            if (_cursor._Placeable)
                            {
                                // 所持金を減らす
                                int cost = Cost.TowerProduction();
                                if (Global.Money < cost)
                                {
                                    // お金が足りないので通常モードに戻る
                                    ChangeSelMode(eSelMode.None);
                                }
                                else
                                {
                                    Global.UseMoney(cost);
                                    // 何もないので砲台を配置
                                    Tower.Add(_cursor.X, _cursor.Y);
                                    // 次のタワーの生産コストを取得する
                                    int cost2 = Cost.TowerProduction2();
                                    if (Global.Money < cost)
                                    {
                                        // お金が足りないので通常モードに戻る
                                        ChangeSelMode(eSelMode.None);
                                    }
                                }
                            }
                        }
                    }
                    break;

                case eSelMode.None:
                    ChangeSelMode(eSelMode.Buy);
                    break;

                case eSelMode.Upgrade:
                    ChangeSelMode(eSelMode.None);
                    break;
                }
            }
        }

        if (Input.GetButtonDown("Done2p"))
        {
            if (_selObj2 != null)
            {
                // 砲台をクリックした
                // 選択した砲台オブジェクトを取得
                _selTower2 = _selObj2.GetComponent <Tower2>();

                // アップグレードモードに移行する
                ChangeSelMode2(eSelMode2.Upgrade);
            }
            else
            {
                switch (_selMode2)
                {
                case eSelMode2.Buy:
                    if (_cursor2.SelObj == null)
                    {
                        if (_cursor2.Placeable)
                        {
                            if (_cursor2._Placeable)
                            {
                                // 所持金を減らす
                                int cost = Cost.TowerProduction();
                                if (Global.Money2 < cost)
                                {
                                    // お金が足りないので通常モードに戻る
                                    ChangeSelMode2(eSelMode2.None);
                                }
                                else
                                {
                                    Global.UseMoney2(cost);
                                    // 何もないので砲台を配置
                                    Tower2.Add(_cursor2.X, _cursor2.Y);
                                    // 次のタワーの生産コストを取得する
                                    int cost2 = Cost.TowerProduction2();
                                    if (Global.Money2 < cost2)
                                    {
                                        // お金が足りないので通常モードに戻る
                                        ChangeSelMode2(eSelMode2.None);
                                    }
                                }
                            }
                        }
                    }
                    break;

                case eSelMode2.None:
                    ChangeSelMode2(eSelMode2.Buy);
                    break;

                case eSelMode2.Upgrade:
                    ChangeSelMode2(eSelMode2.None);
                    break;
                }
            }
        }

        if (Input.GetButtonDown("Range1p"))
        {
            OnClickRange();
        }

        if (Input.GetButtonDown("Range2p"))
        {
            OnClickRange2();
        }

        if (Input.GetButtonDown("Firerate1p"))
        {
            OnClickFirerate();
        }

        if (Input.GetButtonDown("Firerate2p"))
        {
            OnClickFirerate2();
        }

        if (Input.GetButtonDown("Power1p"))
        {
            OnClickPower();
        }

        if (Input.GetButtonDown("Power2p"))
        {
            OnClickPower2();
        }
    }