private void OnTriggerEnter2D(Collider2D collision) { if (collision.CompareTag("Enemy")) { //敵がダメージを受けたとき。 PlayerControllerScript.AttackColliderMode = true; enemy_status = collision.gameObject.GetComponent <EnemyStatus>(); boss_status_player_similar = collision.gameObject.GetComponent <BossStatusSimilarPlayer>(); gun_boss_status = collision.gameObject.GetComponent <GunBossStatusScript>(); if (enemy_status != null) { enemy_status.Damage = true; collision.gameObject.GetComponent <AudioSource>().Play(); collision.gameObject.GetComponent <ChaseToPlayer>().WalkMode = false; if (player_status.SpecialAttackMode) { Instantiate(ExplosionObject, collision.gameObject.transform.position, Quaternion.identity); } enemy_status.Attacked(player_status.Attack); } if (gun_boss_status != null) { gun_boss_status.Damage = true; //gun_boss_status.gameObject.GetComponent<GunBossMoveScript>().MoveMode = false; if (player_status.SpecialAttackMode) { Instantiate(ExplosionObject, collision.gameObject.transform.position, Quaternion.identity); } gun_boss_status.Attacked(player_status.Attack); } if (boss_status_player_similar != null) { boss_status_player_similar.Damage = true; boss_status_player_similar.gameObject.GetComponent <EnemyBossSimilarPlayerMoveScript>().MoveMode = false; if (player_status.SpecialAttackMode) { Instantiate(ExplosionObject, collision.gameObject.transform.position, Quaternion.identity); } boss_status_player_similar.Attacked(player_status.Attack); } } if (collision.CompareTag("Player") && EnemyBossSimilarPlayerControllerScript != null) { // SimilarBossPlayerの攻撃 EnemyBossSimilarPlayerControllerScript.AttackColliderMode = true; PlayerStatus player_status = collision.gameObject.GetComponent <PlayerStatus>(); if (EnemyBossSimilarPlayerControllerScript.SpecialAttackMode) { Instantiate(ExplosionObject, collision.gameObject.transform.position, Quaternion.identity); } player_status.Attacked(EnemyBossSimilarPlayerControllerScript.gameObject.GetComponent <BossStatusSimilarPlayer>().Attack, boss_status_player_similar.KnockPower); } }
// Start is called before the first frame update void Start() { boxCollider = this.gameObject.GetComponent <BoxCollider2D>(); ColliderOffSet = boxCollider.offset; ColliderSize = boxCollider.size; if (AttackToPlayerOrEnemy.Enemy == attackToPlayerOrEnemy) { PlayerControllerScript = GameObject.FindWithTag("Player").GetComponent <PlayerControllerScript>(); this.gameObject.SetActive(false); player_status = GameObject.FindWithTag("Player").GetComponent <PlayerStatus>(); } else if (AttackToPlayerOrEnemy.Player == attackToPlayerOrEnemy) { EnemyBossSimilarPlayerControllerScript = EnemyBossSimilarPlayerControllerScript.enemy_boss_controller; boss_status_player_similar = EnemyBossSimilarPlayerControllerScript.enemy_boss_controller.gameObject.GetComponent <BossStatusSimilarPlayer>(); } }