void Awake() { player = GameObject.Find("Player"); mRb2d = gameObject.GetComponent <Rigidbody2D>(); target = GameObject.FindGameObjectWithTag("Player").GetComponent <Transform>(); anim = transform.GetComponent <Animator>(); state = transform.GetComponent <MonsterState>(); hp = transform.GetComponent <HP>(); rb = transform.GetComponent <Rigidbody2D>(); playerMove = player.GetComponent <PlayerMove>(); playerFsm = player.transform.GetChild(0).GetComponent <PlayerFSM>(); Monster_State[] stateValues = (Monster_State[])System.Enum.GetValues(typeof(Monster_State)); foreach (Monster_State s in stateValues) { System.Type mFSMType = System.Type.GetType("Monster" + s.ToString()); MonsterFSMState state = (MonsterFSMState)GetComponent(mFSMType); if (null == state) { state = (MonsterFSMState)gameObject.AddComponent(mFSMType); } _states.Add(s, state); state.enabled = false; } }
private void Awake() { _cc = GetComponent <CharacterController>(); _stat = GetComponent <MonsterStat>(); _anim = GetComponentInChildren <Animator>(); _sight = GetComponentInChildren <Camera>(); _playercc = GameObject.FindGameObjectWithTag("Player").GetComponent <CharacterController>(); _playerTransform = _playercc.transform; _target = GameObject.FindGameObjectWithTag("Player").transform; MonsterState[] stateValues = (MonsterState[])System.Enum.GetValues(typeof(MonsterState)); foreach (MonsterState s in stateValues) { System.Type FSMType = System.Type.GetType("Monster" + s.ToString()); MonsterFSMState state = (MonsterFSMState)GetComponent(FSMType); if (null == state) { state = (MonsterFSMState)gameObject.AddComponent(FSMType); } _states.Add(s, state); state.enabled = false; } }