void Update() { if (isInChestZone) { Debug.Log("In the zone!"); if (Input.GetKeyDown(KeyCode.E)) { Playerlevel.LevelUp(); ContainerBox.color = Color.black; Debug.Log("Is this thing on?"); } } }
private void NextPart() { bulletsAreFlying = false; playerLevel.LevelUp(); enemySpawner.SpawnSeries(); }
// ショット衝突判定 /*void OnTriggerEnter(Collider collider) { * // Animatorがdead(死亡)だったら判定しない(何もしない) * if (animator.GetBool ("dead") == true) { * return; * } * // Shotタグが付いているオブジェクトに当たったら * if (collider.gameObject.tag == "Shot") { * // 相手を硬直させる(下記DamageSet参照) * DamageSet = true; * // ライフバー表示(下記参照) * StartCoroutine ("LifeBarCoroutine"); * // Bullet01スクリプトのdamageを受け取る * damage = collider.gameObject.GetComponent<Bullet01> ().damage; * // 当たり判定用のHit01ObjectをHit01Prefabにし生成 * Hit01Object = Instantiate (Hit01Prefab, EffectPoint.position, Quaternion.identity); * // ダメージコルーチン(下記参照) * StartCoroutine ("DamageCoroutine"); * // Shot接触時敵Animatorを"damaged"へ移行 * // アニメーションした後元に戻すのならSetTriggerの方が単純で良い * animator.SetTrigger ("damaged"); * // 敵アーマーポイントからBullet01スクリプトのdamage値を差し引く * armorPoint -= damage; * //ライフバーからもダメージ分ゲージを減らす * LifeBar.GetComponent<LifeBar> ().UpdateArmorPointValue (); * //DamageSet = false; * } else if (collider.gameObject.tag == "Shot2") { * DamageSet = true; * StartCoroutine ("LifeBarCoroutine"); * damage = collider.gameObject.GetComponent<Bullet02> ().damage; * Hit02Object = Instantiate (Hit01Prefab, EffectPoint.position, Quaternion.identity); * StartCoroutine ("DamageCoroutine"); * animator.SetTrigger ("damaged"); * armorPoint -= damage; * LifeBar.GetComponent<LifeBar> ().UpdateArmorPointValue (); * } else if (collider.gameObject.tag == "Shot3") { * //Debug.Log (collider.gameObject.name); * //DamageSet = true; * FreezeSet = true; * StartCoroutine ("LifeBarCoroutine"); * damage = collider.gameObject.GetComponent<Bullet03> ().damage; * Hit03Object = Instantiate (Hit01Prefab, EffectPoint.position, Quaternion.identity); * StartCoroutine ("DamageCoroutine"); * animator.SetTrigger ("damaged"); * armorPoint -= damage; * LifeBar.GetComponent<LifeBar> ().UpdateArmorPointValue (); * } else if (collider.gameObject.tag == "Shot5") { * DamageSet = true; * StartCoroutine ("LifeBarCoroutine"); * damage = collider.gameObject.GetComponent<Bullet05> ().damage; * Hit05Object = Instantiate (Hit01Prefab, EffectPoint.position, Quaternion.identity); * StartCoroutine ("DamageCoroutine"); * animator.SetTrigger ("damaged"); * armorPoint -= damage; * LifeBar.GetComponent<LifeBar> ().UpdateArmorPointValue (); * } * * //プレイヤーのいずれかの弾に当たって体力が0以下になったら消滅する * if (collider.gameObject.tag == "Shot" || collider.gameObject.tag == "Shot2" || collider.gameObject.tag == "Shot3" || collider.gameObject.tag == "Shot5") { || if (armorPoint <= 0) { || //Debug.Log ("敵"+gameObject.name); || // Animatorを"dead"へ移行 || // 移行後元に戻さないならBool判定にした方がよい || animator.SetBool ("dead", true); || // 死亡アニメーション中に敵が移動しないようにスピードをゼロにする || EnemySpeed = 0; || // 敵消滅用エフェクト発生 || // 敵消滅中にプレイヤに接触ダメージがを与えないようにDeadCoroutine(下記参照)で接触判定を無くす || DeadObject = Instantiate (Hit01Prefab, EffectPoint.position, Quaternion.identity); || StartCoroutine ("DeadCoroutine"); || Instantiate (DestroyEffect, transform.position, transform.rotation); || // バトルマネージャーにスコア(EnemyScoreで設定)を加算する || battleManager = GameObject.Find ("BattleManager").GetComponent<BattleManager> (); || DataManager.Score += EnemyScore; || // プレイヤのレベルアップ判定(PlayerLevel参照) || // レベルに関係している数値はDataManagedrで管理している || playerLevel.LevelUp (); || // DestroyTime時間後敵消滅 || Destroy (gameObject, DestroyTime); || // ボス、ラスボス消滅後は必ずクリア用スターを出現させる || // インスペクタ画面でIsBoss、IsLastBossに✔を付ける || if (isBoss == true) { || Instantiate (Star, transform.position, transform.rotation); || } || if (isLastBoss == true) { || Instantiate (BigStar, transform.position, transform.rotation); || // ボス、ラスボス以外が消滅後は一定確率(0,RedEncountでRedEncount分の1)でアイテム出現 || } else if (Random.Range (0, RedEncount) == 0) { || Instantiate (RedSphere, transform.position, transform.rotation); || //Vector3 Pog = this.gameObject.transform.position; || //Instantiate (RedSphere, transform.position += new Vector3(0 , SphereHeight, 0), transform.rotation); || } else if (Random.Range (0, BlueEncount) == 0) { || Instantiate (BlueSphere, transform.position, transform.rotation); || //Vector3 Pog = this.gameObject.transform.position; || //Instantiate (RedSphere, transform.position += new Vector3(0 , SphereHeight, 0), transform.rotation); || } else if (Random.Range (0, GreenEncount) == 0) { || Instantiate (GreenSphere, transform.position, transform.rotation); || //Vector3 Pog = this.gameObject.transform.position; || //Instantiate (RedSphere, transform.position += new Vector3(0 , SphereHeight, 0), transform.rotation); || } else if (Random.Range (0, YellowEncount) == 0) { || Instantiate (YellowSphere, transform.position, transform.rotation); || //Vector3 Pog = this.gameObject.transform.position; || //Instantiate (RedSphere, transform.position += new Vector3(0 , SphereHeight, 0), transform.rotation); || } || } || } ||}*/ //巨大化したプレイヤに接触したらダメージ void OnCollisionEnter(Collision collider) { //PlayerApのisBig(巨大化)状態をisbigとする bool isbig = GameObject.FindWithTag("Player").GetComponent <PlayerAp> ().isBig; //プレイヤのタグがついていてisbig状態(巨大化中)なら if (collider.gameObject.tag == "Player" && isbig == true) { //Debug.Log ("一撃"); //armorPointからプレイヤのbigAttack値を差し引く bigAttack = GameObject.FindWithTag("Player").GetComponent <PlayerAp> ().BigAttack; armorPoint -= bigAttack; //それ以外(巨大化してない)ならDamageSet状態にする } else if (collider.gameObject.tag == "Player") { DamageSet = true; animator.SetTrigger("damaged"); } //ライフバーからダメージ分ゲージを減らす LifeBar.GetComponent <LifeBar>().UpdateArmorPointValue(); // if (collider.gameObject.tag == "Player") { //体力が0以下になったら消滅する if (armorPoint <= 0) { //Debug.Log ("敵"+gameObject.name); // Animatorを"dead"へ移行 // 移行後元に戻さないならBool判定にした方がよい animator.SetBool("dead", true); // 死亡アニメーション中に敵が移動しないようにスピードをゼロにする EnemySpeed = 0; // 敵消滅用エフェクト発生 // 敵消滅中にプレイヤに接触ダメージがを与えないようにDeadCoroutineで接触判定を無くす DeadObject = Instantiate(Hit01Prefab, EffectPoint.position, Quaternion.identity); StartCoroutine("DeadCoroutine"); Instantiate(DestroyEffect, transform.position, transform.rotation); // バトルマネージャーにスコア(EnemyScoreで設定)を加算する battleManager = GameObject.Find("BattleManager").GetComponent <BattleManager> (); // プレイヤのレベルアップ判定(PlayerLevel参照) // レベルに関係している数値はDataManagedrで管理している DataManager.Score += EnemyScore; playerLevel.LevelUp(); // 敵消滅 Destroy(gameObject, DestroyTime); //Instantiate(exprosion, transform.position, transform.rotation); // ボス、ラスボス消滅後は必ずクリア用スターを出現させる // インスペクタ画面でIsBoss、IsLastBossに✔を付ける if (isBoss == true) { Instantiate(Star, transform.position, transform.rotation); } if (isLastBoss == true) { Instantiate(BigStar, transform.position, transform.rotation); // ボス、ラスボス以外が消滅後は一定確率(0,RedEncountでRedEncount分の1)でアイテム出現 } else if (Random.Range(0, RedEncount) == 0) { Instantiate(RedSphere, transform.position, transform.rotation); } else if (Random.Range(0, BlueEncount) == 0) { Instantiate(BlueSphere, transform.position, transform.rotation); } else if (Random.Range(0, GreenEncount) == 0) { Instantiate(GreenSphere, transform.position, transform.rotation); } else if (Random.Range(0, YellowEncount) == 0) { Instantiate(YellowSphere, transform.position, transform.rotation); } } } }