protected override void Start() { base.Start(); selfRigidbody = gameObject.GetComponent <Rigidbody2D>(); anime = gameObject.GetComponent <EnemyAnime>(); //加载子弹 bulletPath = "Enemy/EnemyClass1/"; atkBulletPrefab = Resources.Load <GameObject>(bulletPath + "AtkBullet"); searchTimeDelay = 0; atkTimeDelay = 0; rotPositive = new Vector3(0, 0, 0); rotNegative = new Vector3(0, 180, 0); heroTransform = GameObject.FindGameObjectWithTag("Hero").transform; }
protected override void Start() { //uiplay = GameObject.Find("/UI/UIPlay").GetComponent<UIPlay>(); mediator = GameObject.Find("/Chapters/ChapterNow/Mediator").GetComponent <Mediator>(); base.Start(); selfRigidbody = gameObject.GetComponent <Rigidbody2D>(); anime = gameObject.GetComponent <EnemyAnime>(); //加载子弹 bulletPath = "Enemy/EnemyClass1/"; atkBulletPrefab = Resources.Load <GameObject>(bulletPath + "AtkBullet"); //设置攻击与搜敌延迟 searchTimeDelay = searchTime; atkTimeDelay = atkTime; rotPositive = new Vector3(0, 0, 0); rotNegative = new Vector3(0, 180, 0); heroTransform = GameObject.FindGameObjectWithTag("Hero").transform; heroCharacter = heroTransform.GetComponent <Character>(); }
void Start() { enemyState = this.GetComponent <EnemyState>(); enemyStatesList.Add(this.GetComponent <EnemyState>()); agent = this.GetComponent <NavMeshAgent>(); enemyAnime = this.GetComponent <EnemyAnime>(); var player = GameObject.Find("Player_Pack(Clone)"); foreach (EnemyState state in enemyStatesList) { enemyState.checkState .Where(x => x == EnemyState.SetState.chase) .Subscribe(_ => agent.SetDestination(player.transform.position)); enemyState.checkState .Where(x => x == EnemyState.SetState.attack) .First() .Subscribe(_ => { agent.enabled = false; enemyAnime.Attack(); enemyState.checkState.OnNext(EnemyState.SetState.attackAftar); } ); enemyState.checkState .Where(x => x == EnemyState.SetState.deth) .First() .Subscribe(_ => { EnemyDead(); enemyState.checkState.OnCompleted(); } ); } }