예제 #1
0
    /// <summary>
    /// Funzione di Setup
    /// </summary>
    /// <param name="_lvlMng"></param>
    public override void Setup(LevelManager _lvlMng)
    {
        base.Setup(_lvlMng);

        sm             = GetComponent <Boss2SMController>();
        tourretsCtrl   = GetComponent <Boss2TourretsController>();
        laserCtrl      = GetComponent <Boss2LaserController>();
        coverBlockCtrl = GetComponent <Boss2CoverBlocksController>();
        phaseCtrl      = GetComponent <Boss2PhaseController>();
    }
예제 #2
0
    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;
    }
예제 #3
0
    public override void Enter()
    {
        groupCtrl     = context.GetLevelManager().GetGroupController();
        bossCtrl      = context.GetBossController();
        lifeCtrl      = bossCtrl.GetBossLifeController();
        collisionCtrl = bossCtrl.GetBossCollisionController();
        tourretsCtrl  = bossCtrl.GetTourretsController();
        phaseCtrl     = bossCtrl.GetPhaseController();

        timer    = 0;
        waitTime = Random.Range(waitTimeRange.x, waitTimeRange.y);

        lifeCtrl.OnBossDead            += HandleOnBossDead;
        collisionCtrl.OnAgentHit       += HandleOnAgentHit;
        tourretsCtrl.OnTourretDead     += HandleOnTourretDead;
        tourretsCtrl.OnAllTourretsDead += HandleOnAllTourretDead;
        phaseCtrl.OnThirdPhaseStart    += HandleOnThirdPhaseStart;
    }