Inheritance: MonoBehaviour
Example #1
0
    GameClear GameClearScript;      //クリア判定する際の衝突検知用に割り当てられているGameClearスクリプトを取得するための変数

    // Start is called before the first frame update
    void Start()
    {
        ObstacleObject = GameObject.FindGameObjectsWithTag("Obstacle"); //Collisionflagを使用するため、Obstacleの付いたタグからBrokenスクリプトを取得して変数に格納する
        HeelObject     = GameObject.FindGameObjectsWithTag("Heel");     //Collisionflagを使用するため、Heelの付いたタグからBrokenスクリプトを取得して変数に格納する

        BrokenScript_Obstacle = new Broken[Define.HeelObjectNunmber];   //NullReferenceException解消
        BrokenScript_Heel     = new Broken[Define.HeelObjectNunmber];   //NullReferenceException解消

        //障害物のオブジェクトを読み込む
        for (int i = 0; i < Define.ObstacleNumber; i++)
        {
            BrokenScript_Obstacle[i] = ObstacleObject[i].GetComponent <Broken>(); //Obstacleタグの中にあるBrokenを取得して変数に格納する
        }
        //回復オブジェクトを読み込む
        for (int i = 0; i < Define.HeelObjectNunmber; i++)
        {
            BrokenScript_Heel[i] = HeelObject[i].GetComponent <Broken>();        //Heelタグの中にあるBrokenを取得して変数に格納する
        }

        ClearObject     = GameObject.Find("ClearObject");                //textGameClear_flagを使用するため、ClearObjectと名のついたオブジェクトからGameClearスクリプトを取得して変数に格納する
        GameClearScript = ClearObject.GetComponent <GameClear>();        //ClearObjectと名のついたオブジェクトからGameClearを取得して変数に格納する

        PlayerLife            = 3;                                       //初期プレイヤーライフ
        textGameOver.enabled  = false;                                   //ゲームオーバーの文字を非表示
        textGameClear.enabled = false;                                   //ゲームクリアの文字を非表示
            score = 0;                                                   //初期スコア
        leftTime  = 60f;                                                 //制限時間
        textScore = GameObject.Find("Score").GetComponent <Text>();      //テキストスコア
        textLife  = GameObject.Find("PlayerLife").GetComponent <Text>(); //テキストライフ
        textTimer = GameObject.Find("Time").GetComponent <Text>();       //テキストタイム
        SetScoreText(score);                                             //スコアを表示する関数
        SetLifeText(PlayerLife);                                         //ライフを表示する関数
        inGame = true;                                                   //ゲーム続行中
    }
Example #2
0
 // Use this for initialization
 void Start()
 {
     canvas        = GameObject.Find("Canvas");
     Line          = GameObject.Find("line");
     TimeShotDeath = GameObject.Find("TimeShotDeath(Clone)");
     if (SceneManager.GetActiveScene().name != "TitleScene" && SceneManager.GetActiveScene().name != "gameclear")
     {
         gameClear = canvas.GetComponent <GameClear>();
     }
 }
Example #3
0
    // Start is called before the first frame update
    void Start()
    {
        if (GameObject.Find("ConversationController") != null)
        {
            conversationController = GameObject.Find("ConversationController").GetComponent <ConversationController>();
        }
        flagManager = GameObject.Find("FlagManager").GetComponent <FlagManager>();
        gameClear   = GameObject.Find("NextStage").GetComponent <GameClear>();
        if (GameObject.Find("Data") != null)
        {
            data = GameObject.Find("Data").GetComponent <Data>();
        }
        canvasGroup = GetComponent <CanvasGroup>();

        scenetime = 0;
    }
Example #4
0
    private void DamageEffect(GameObject col)
    {
        //もしもHPが0より大きい場合には
        if (objectHP > 0)
        {
            //ぶつかってきたオブジェクトを破壊する
            Destroy(col.gameObject);

            //エフェクトを実体化する
            GameObject effect = (GameObject)Instantiate(effectPrefab, transform.position, Quaternion.identity);

            //エフェクトを2秒後に画面から消す
            Destroy(effect, 2.0f);
        }
        else     //そうでない場合(HPが0以下になったら)
        {
            Destroy(col.gameObject);

            //もう1種類のエフェクトを発生させる
            GameObject effect2 = (GameObject)Instantiate(effectPrefab2, transform.position, Quaternion.identity);
            Destroy(effect2, 2.0f);

            int randomValue = Random.Range(0, 100);
            Debug.Log(randomValue);
            Vector3 temp = new Vector3();
            temp.y = 1.0f;

            if (0 <= randomValue && randomValue < 50)
            {
                item = (GameObject)Instantiate(itemsPrefab[1], new Vector3(transform.position.x, (transform.position.y + temp.y), transform.position.z), Quaternion.identity);
            }
            else if (50 <= randomValue && randomValue < 75)
            {
                item = (GameObject)Instantiate(itemsPrefab[0], new Vector3(transform.position.x, (transform.position.y + temp.y), transform.position.z), Quaternion.identity);
            }

            sm.AddScore(scoreValue);
            Debug.Log(scoreValue);

            gc = GameObject.Find("GameManager").GetComponent <GameClear>();
            gc.AddDestroyCount(1);

            //このスクリプトがついているオブジェクトを破壊する(thisは省略可)
            Destroy(this.gameObject);
        }
    }
 void GamePlayBoss()//ボス戦
 {
     //池から出てくる
     if (Input.GetKeyDown("p"))
     {
         transform.LookAt(new Vector3(-1000, 10, 0));
     }
     if (BossFlag == 0)
     {
         //ボスモーション
         if (true)
         {
             BossFlag = 1;
         }
     }
     else
     {
         lifepoint = playboss.SetLife();
         for (int i = 0; i < life.Length; i++)
         {
             if (i > lifepoint)
             {
                 //コロッケを消す
                 //life[i].SetActive(false);
             }
         }
         if (playboss.EnemyEndFlag())
         {
             trock.Resume();
             trock.Speed = 6;
         }
         int n = trock.GetPointNo();
         if (n == 15)
         {
             trock.Pause();
             //ボス削除
             Flag++;
             playboss.End();
             Destroy(playbossO);
             clearO = (GameObject)Instantiate(GameClearPoint);
             clear  = clearO.GetComponent <GameClear> ();
             clear.GetLife(lifepoint);
         }
     }
 }
Example #6
0
        public void AddNewName(Name name)
        {
            var before = _isCleared;

            Names.Add(name);
            if (MainName == null || !Names.Contains(MainName))
            {
                MainName = name;
            }
            else if (SubName == null || !Names.Contains(SubName))
            {
                SubName = name;
            }
            var after = _isCleared;

            if (!before && after)
            {
                Device.BeginInvokeOnMainThread(() =>
                {
                    GameClear?.Invoke(this, EventArgs.Empty);
                });
            }
            DependencyService.Get <IDeviceService>().LogEvent("GetName", "Count", Names.Count.ToString());
        }
Example #7
0
 public override void Invoke()
 {
     Broker.Global.Publish(GameClear.Get());
 }
 //ボス戦
 void GamePlayBoss()
 {
     //池から出てくる
     if (Input.GetKeyDown ("p")) {
         transform.LookAt(new Vector3(-1000,10,0));
     }
     if (BossFlag == 0)
     {
         //ボスモーション
         if (true)
         {
             BossFlag = 1;
         }
     }
     else
     {
         lifepoint = playboss.SetLife();
         for (int i = 0; i < life.Length; i++)
         {
             if (i > lifepoint)
             {
                 //コロッケを消す
                 //life[i].SetActive(false);
             }
         }
         if (playboss.EnemyEndFlag())
         {
             trock.Resume();
             trock.Speed =6;
         }
         int n = trock.GetPointNo();
         if (n == 15)
         {
             trock.Pause();
             //ボス削除
             Flag++;
             playboss.End();
             Destroy(playbossO);
             clearO=(GameObject)Instantiate (GameClearPoint);
             clear = clearO.GetComponent<GameClear> ();
             clear.GetLife(lifepoint);
         }
     }
 }