Example #1
0
    /// <summary>
    /// Funzione che esegue il Setup
    /// </summary>
    /// <param name="_groupCtrl"></param>
    public void Setup(GroupController _groupCtrl)
    {
        groupCtrl         = _groupCtrl;
        groupMovementCtrl = groupCtrl.GetGroupMovementController();
        groupSizeCtrl     = groupCtrl.GetGroupSizeController();
        playerInput       = groupCtrl.GetPlayerInput();
        aimFeedback       = groupCtrl.GetGroupFeedbackController().GetAimArrow();

        groupCtrl.OnGroupDead += EndReloading;
        canShoot = true;
    }
Example #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;
    }
Example #3
0
    /// <summary>
    /// Funzione che esegue il setup
    /// </summary>
    public void Setup()
    {
        groupMovementCtrl = GetComponent <GroupMovementController>();
        groupSizeCtrl     = GetComponent <GroupSizeController>();
        shootCtrl         = GetComponent <GroupShootController>();
        groupFeedbackCtrl = GetComponent <GroupFeedbackController>();
        playerInput       = GetComponent <PlayerInput>();

        //Feedback setup prima di tutti perchè deve gestire eventi di spawn degli agent
        groupFeedbackCtrl.Setup(this);

        AgentsSetup();
        groupMovementCtrl.Setup(this);
        groupSizeCtrl.Setup(this);
        shootCtrl.Setup(this);

        isSetupped = true;
        isEnabled  = false;
    }