public void Init(Vector3 navDestination, DefenseMonsterData data, TestFence fence, Material mat) { this.navDestination = navDestination; this.data = data; this.hp = data.maxHp; this.fence = fence; this.whiteMaterial = mat; if (monsterAttackEvent == null) { this.monsterAttackEvent = this.gameObject.transform.GetChild(0).gameObject.AddComponent <MonsterAttackEvent>(); } this.isTargetedByBomber = false; if (model == null) { this.model = this.transform.GetChild(0).gameObject; } this.model.transform.localPosition = Vector3.zero; if (agent == null) { this.agent = this.gameObject.AddComponent <NavMeshAgent>(); } if (animator == null) { this.animator = this.gameObject.GetComponentInChildren <Animator>(); } if (boxCollider == null) { this.boxCollider = this.gameObject.AddComponent <BoxCollider>(); this.boxCollider.size = new Vector3(1, 3, 1); this.boxCollider.center = new Vector3(0, 1.2f, 0); this.boxCollider.isTrigger = true; } this.gameObject.layer = LayerMask.NameToLayer("Monster"); //레이어를 몬스터로 this.skinnedMeshRenderer = this.gameObject.GetComponentInChildren <SkinnedMeshRenderer>(); this.defaultMaterial = this.skinnedMeshRenderer.material; this.CheckHp(); }
IEnumerator Defend(float time) { yield return(new WaitForSeconds(time)); MonsterAttackEvent.monsterAttack(Angriff()); }