示例#1
0
 /// <summary>
 /// Funzione di Setup
 /// </summary>
 /// <param name="_bossCtrl"></param>
 public void Setup(Boss2Controller _bossCtrl)
 {
     bossCtrl      = _bossCtrl;
     groupCtrl     = bossCtrl.GetLevelManager().GetGroupController();
     collisionCtrl = bossCtrl.GetBossCollisionController();
     aliveTouretts = new List <TourretController>();
 }
示例#2
0
    /// <summary>
    /// Override della funzione di Setup del BulletControllerBase
    /// </summary>
    public override void Setup()
    {
        if (ownerObject != null)
        {
            Boss2Controller bossCtrl = ownerObject.GetComponent <Boss2Controller>();
            if (bossCtrl != null)
            {
                bossCollisionCtrl = bossCtrl.GetBossCollisionController();
            }
        }

        base.Setup();
    }
示例#3
0
    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();
    }
示例#4
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;
    }
示例#5
0
    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);
    }
示例#6
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;
    }
示例#7
0
 /// <summary>
 /// Funzione di Setup
 /// </summary>
 /// <param name="_bossCtrl"></param>
 public void Setup(Boss2Controller _bossCtrl)
 {
     bossCtrl      = _bossCtrl;
     collisionCtrl = bossCtrl.GetBossCollisionController();
     laserCtrl.Setup(maxLaserRange, laserRadius);
 }