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; //ゲーム続行中 }
// 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>(); } }
// 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; }
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); } } }
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()); }
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); } } }