/// <summary> /// Function that activate on state enter /// </summary> public override void Enter() { spriteCtrl = context.enemy.GetEnemyCommandsSpriteController(); viewCtrl = context.enemy.GetViewCtrl(); playerParasiteRange = LevelManager.instance.GetPlayer().GetParasiteController().GetRange(); context.enemy.SetCanStun(false); stunDuration = context.enemy.GetStunDuration(); context.enemy.GetVFXController().EnemyStunVFX(true); context.enemy.GetAnimationController().Stun(true); timer = 0; start = true; }
/// <summary> /// Initialize Script /// </summary> public virtual void Init(EnemyManager _enemyMng) { graphics = GetComponentInChildren <EnemyGraphicController>(); enemyMng = _enemyMng; startPosition = transform.position; startRotation = transform.rotation; ResetLife(); ResetStunHit(); ResetPosition(); SetCanStun(true); // Initialize Enemy State Machine enemySM = GetComponent <EnemySMController>(); if (enemySM != null) { enemySM.Init(this); } toleranceCtrl = GetComponent <EnemyToleranceController>(); if (toleranceCtrl != null) { toleranceCtrl.Init(); } collisionCtrl = GetComponent <EnemyCollisionController>(); if (collisionCtrl != null) { collisionCtrl.Init(); } movementCtrl = GetComponent <EnemyMovementController>(); if (movementCtrl != null) { movementCtrl.Init(collisionCtrl); } animCtrl = GetComponentInChildren <EnemyAnimationController>(); if (animCtrl != null) { animCtrl.Init(this); } commandsSpriteCtrl = GetComponentInChildren <EnemySpriteController>(); if (commandsSpriteCtrl != null) { commandsSpriteCtrl.Init(this); } vfxCtrl = GetComponentInChildren <EnemyVFXController>(); if (vfxCtrl != null) { vfxCtrl.Init(this); } sfxCtrl = GetComponentInChildren <EnemySoundController>(); if (sfxCtrl != null) { sfxCtrl.Setup(this); sfxCtrl.Init(); } viewCtrl = GetComponent <EnemyViewController>(); if (viewCtrl != null) { viewCtrl.Init(); } CalculatePathLenght(); }
void Awake() { spriteController = GetComponentInChildren <EnemySpriteController>(); }