public override void Exit() { if (collisionCtrl != null) { collisionCtrl.OnObstacleHit -= HandleOnObstacleHit; collisionCtrl.OnAgentHit -= HandleOnAgentHit; } if (lifeCtrl != null) { lifeCtrl.OnBossDead -= HandleOnBossDead; } if (bossPhaseCtrl != null) { bossPhaseCtrl.OnSecondPhaseStart -= HandleOnSecondPhaseStart; bossPhaseCtrl.OnThirdPhaseStart -= HandleOnThirdPhaseStart; } if (rb != null) { rb.useGravity = true; } bossCtrl = null; collisionCtrl = null; bossPhaseCtrl = null; lifeCtrl = null; currentStatePhase = StatePhases.Raising; distanceTraveled = 0; distanceToTravel = 0; startHeigth = 0; maxHeigth = 0; }
public override void Exit() { if (collisionCtrl != null) { collisionCtrl.OnObstacleHit -= HandleOnObstacleHit; collisionCtrl.OnAgentHit -= HandleOnAgentHit; } if (lifeCtrl != null) { lifeCtrl.OnBossDead -= HandleOnBossDead; } if (bossPhaseCtrl != null) { bossPhaseCtrl.OnSecondPhaseStart -= HandleOnSecondPhaseStart; bossPhaseCtrl.OnThirdPhaseStart -= HandleOnThirdPhaseStart; } if (trailController != null && leaveTrail) { trailController.EndTrail(); } bossCtrl = null; collisionCtrl = null; bossPhaseCtrl = null; lifeCtrl = null; distanceTraveled = 0; }
/// <summary> /// Funzione di Setup /// </summary> public virtual void Setup(LevelManager _lvlMng) { lvlMng = _lvlMng; lifeCtrl = GetComponent <BossLifeController>(); collisionCtrl = GetComponent <BossCollisionController>(); isSetupped = true; }
/// <summary> /// Funzione che esegue il Setup /// </summary> /// <param name="_bossCtrl"></param> public void Setup(BossControllerBase _bossCtrl) { bossLifeCtrl = _bossCtrl.GetBossLifeController(); bossMaxLife = bossLifeCtrl.GetMaxBossLife(); bossLifeBar.value = 1; bossLifeCtrl.OnBossTakeDamage += HandleOnBossTakeDamage; }
/// <summary> /// Funzione di Setup /// </summary> /// <param name="_bossCtrl"></param> public void Setup(Boss1Controller _bossCtrl) { bossCtrl = _bossCtrl; bossLifeCtrl = bossCtrl.GetBossLifeController(); maxBossLife = bossLifeCtrl.GetMaxBossLife(); currentPhase = 1; bossLifeCtrl.OnBossTakeDamage += HandleOnBossTakeDamage; }
/// <summary> /// Funzione di Setup /// </summary> /// <param name="_bossCtrl"></param> public void Setup(Boss2Controller _bossCtrl) { bossCtrl = _bossCtrl; bossLifeCtrl = bossCtrl.GetBossLifeController(); maxBossLife = bossLifeCtrl.GetMaxBossLife(); thirdPhase = false; bossLifeCtrl.OnBossTakeDamage += HandleOnBossTakeDamage; }
public override void Enter() { bossCltr = context.GetBossController(); lifeCtrl = bossCltr.GetBossLifeController(); lifeCtrl.SetCanTakeDamage(canTakeDirectDamage); Debug.Log("Phase 3 Iniziata"); Complete(); }
public override void Enter() { bossCtrl = context.GetBossController(); bossTourretsCtrl = bossCtrl.GetTourretsController(); lifeCtrl = bossCtrl.GetBossLifeController(); lifeCtrl.SetCanTakeDamage(canTakeDirectDamage); bossTourretsCtrl.SetCanAim(false); Debug.Log("Phase 2 Iniziata"); Complete(); }
public override void Enter() { groupCtrl = context.GetLevelManager().GetGroupController(); bossCtrl = context.GetBossController(); laserCtrl = bossCtrl.GetLaserController(); lifeCtrl = bossCtrl.GetBossLifeController(); collisionCtrl = bossCtrl.GetBossCollisionController(); lifeCtrl.OnBossDead += HandleOnBossDead; collisionCtrl.OnAgentHit += HandleOnAgentHit; laserTimer = laserDuration; laserCtrl.StartLaser(); }
public override void Enter() { groupCtrl = context.GetLevelManager().GetGroupController(); groupMovementCtrl = groupCtrl.GetGroupMovementController(); bossCtrl = context.GetBossController(); lifeCtrl = bossCtrl.GetBossLifeController(); collisionCtrl = bossCtrl.GetBossCollisionController(); phaseCtrl = bossCtrl.GetPhaseController(); lifeCtrl.OnBossDead += HandleOnBossDead; collisionCtrl.OnAgentHit += HandleOnAgentHit; phaseCtrl.OnThirdPhaseStart += HandleOnThirdPhaseStart; suckTimer = suckDuration; }
public override void Enter() { bossCtrl = context.GetBossController(); bossTourretsCtrl = bossCtrl.GetTourretsController(); coverBlockCtrl = bossCtrl.GetCoverBlocksController(); lifeCtrl = bossCtrl.GetBossLifeController(); lifeCtrl.SetCanTakeDamage(canTakeDirectDamage); coverBlockCtrl.EnableCoverBlocks(true); bossTourretsCtrl.TourretsSetup(); bossTourretsCtrl.SetCanAim(true); Debug.Log("Phase 1 Iniziata"); Complete(); }
public override void Enter() { groupCtrl = context.GetLevelManager().GetGroupController(); bossCtrl = context.GetBossController(); tourretsCtrl = bossCtrl.GetTourretsController(); collisionCtrl = bossCtrl.GetBossCollisionController(); lifeCtrl = bossCtrl.GetBossLifeController(); tourretsCtrl.OnTourretDead += HandleOnTourretDead; tourretsCtrl.OnAllTourretsDead += HandleOnAllTourretsDead; collisionCtrl.OnAgentHit += HandleOnAgentHit; lifeCtrl.OnBossDead += HandleOnBossDead; tourretsShootRoutine = TourretsShootCoroutine(); tourretsCtrl.StartCoroutine(tourretsShootRoutine); }
public override void Enter() { groupCtrl = context.GetLevelManager().GetGroupController(); bossCtrl = context.GetBossController(); lifeCtrl = bossCtrl.GetBossLifeController(); collisionCtrl = bossCtrl.GetBossCollisionController(); bossPhaseCtrl = bossCtrl.GetBossPhaseController(); timer = 0; waitTime = Random.Range(waitTimeRange.x, waitTimeRange.y); bossPhaseCtrl.OnSecondPhaseStart += HandleOnSecondPhaseStart; bossPhaseCtrl.OnThirdPhaseStart += HandleOnThirdPhaseStart; lifeCtrl.OnBossDead += HandleOnBossDead; collisionCtrl.OnAgentHit += HandleOnAgentHit; }
public override void Enter() { bossCtrl = context.GetBossController(); lifeCtrl = bossCtrl.GetBossLifeController(); collisionCtrl = bossCtrl.GetBossCollisionController(); bossPhaseCtrl = bossCtrl.GetBossPhaseController(); groupCtrl = context.GetLevelManager().GetGroupController(); Boss1ShootController shootCtrl = context.GetBossController().GetBossShootController(); //HACK: Così i designer possono partire a contare da 1 shootCtrl.Shoot(shootPointIndex - 1); bossPhaseCtrl.OnSecondPhaseStart += HandleOnSecondPhaseStart; bossPhaseCtrl.OnThirdPhaseStart += HandleOnThirdPhaseStart; lifeCtrl.OnBossDead += HandleOnBossDead; collisionCtrl.OnAgentHit += HandleOnAgentHit; Complete(); }
public override void Exit() { if (bossPhaseCtrl != null) { bossPhaseCtrl.OnSecondPhaseStart -= HandleOnSecondPhaseStart; bossPhaseCtrl.OnThirdPhaseStart -= HandleOnThirdPhaseStart; } if (lifeCtrl != null) { lifeCtrl.OnBossDead -= HandleOnBossDead; } if (collisionCtrl != null) { collisionCtrl.OnAgentHit -= HandleOnAgentHit; } bossPhaseCtrl = null; lifeCtrl = null; bossCtrl = null; }
public override void Enter() { groupCtrl = context.GetLevelManager().GetGroupController(); bossCtrl = context.GetBossController(); lifeCtrl = bossCtrl.GetBossLifeController(); collisionCtrl = bossCtrl.GetBossCollisionController(); rb = collisionCtrl.GetRigidBody(); bossPhaseCtrl = bossCtrl.GetBossPhaseController(); rb.useGravity = false; startHeigth = bossCtrl.transform.position.y; maxHeigth = startHeigth + jumpHeight; distanceTraveled = 0; distanceToTravel = 0; currentStatePhase = StatePhases.Raising; bossPhaseCtrl.OnSecondPhaseStart += HandleOnSecondPhaseStart; bossPhaseCtrl.OnThirdPhaseStart += HandleOnThirdPhaseStart; lifeCtrl.OnBossDead += HandleOnBossDead; collisionCtrl.OnObstacleHit += HandleOnObstacleHit; collisionCtrl.OnAgentHit += HandleOnAgentHit; }
public override void Enter() { groupCtrl = context.GetLevelManager().GetGroupController(); bossCtrl = context.GetBossController(); lifeCtrl = bossCtrl.GetBossLifeController(); collisionCtrl = bossCtrl.GetBossCollisionController(); bossPhaseCtrl = bossCtrl.GetBossPhaseController(); trailController = bossCtrl.GetBossTrailController(); distanceTraveled = 0; LookAtPosition(groupCtrl.GetGroupCenterPoint()); if (leaveTrail) { trailController.InstantiateNewTrail(); } bossPhaseCtrl.OnSecondPhaseStart += HandleOnSecondPhaseStart; bossPhaseCtrl.OnThirdPhaseStart += HandleOnThirdPhaseStart; lifeCtrl.OnBossDead += HandleOnBossDead; collisionCtrl.OnObstacleHit += HandleOnObstacleHit; collisionCtrl.OnAgentHit += HandleOnAgentHit; }