Ejemplo n.º 1
0
 public BossReturnState(BossAgent agent, Vector3 originalPoint, Quaternion originalRotation) : base(agent)
 {
     _originalPoint    = originalPoint;
     _originalRotation = originalRotation;
     _targetXZ         = new Vector2(_originalPoint.x, _originalPoint.z);
     _parentXZ         = new Vector2(_agent.Parent.transform.position.x, _agent.Parent.transform.position.z);
 }
Ejemplo n.º 2
0
 public BossPatrolState(BossAgent agent, Quaternion originalRotation, NavigationPath patrolPath = null) : base(agent)
 {
     if (patrolPath != null)
     {
         _path       = patrolPath.Path;
         _currentPos = new Vector2(_agent.Parent.position.x, _agent.Parent.position.z);
     }
     _originalRotation = originalRotation;
 }
 public override void Update(BossAgent agent)
 {
     if (agent.GetIsPlayerInRange())
     {
         agent.SetState(BossFollowPlayerState.GetInstance());
     }
     if (agent.GetIsBaseInAttackRange())
     {
         agent.SetState(BossAttackState.GetInstance());
     }
 }
 public override void Update(BossAgent agent)
 {
     agent.SetPlayerAsTarget();
     if (agent.GetIsPlayerInAttackRange())
     {
         agent.SetState(BossAttackState.GetInstance());
     }
     if (!agent.GetIsPlayerInRange())
     {
         agent.SetState(BossChargeTownState.GetInstance());
     }
 }
Ejemplo n.º 5
0
    /*
     * public BossAttackState(BossAgent agent, GameObject muzzleFlash, GameObject bloodParticles, GameObject impactParticles, GameObject turretPoint) : base(agent)
     * {
     *  random = new System.Random();
     *  _muzzleFlash = muzzleFlash;
     *  _bloodParticles = bloodParticles;
     *  _impactParticles = impactParticles;
     *  _turret = turretPoint.transform;
     *  _turretVector = _turret.position;
     * }
     */

    public BossAttackState(BossAgent agent, GameObject muzzleFlash, GameObject bloodParticles,
                           GameObject impactParticles, GameObject turretPoint, int aimDistortion, int aimSteadiness,
                           int acceptableShotRange, int shotsPerSecond) : base(agent)
    {
        random               = new System.Random();
        _muzzleFlash         = muzzleFlash;
        _bloodParticles      = bloodParticles;
        _impactParticles     = impactParticles;
        _turret              = turretPoint.transform;
        _turretVector        = _turret.position;
        _aimDistortion       = aimDistortion;
        _aimSteadiness       = 0.2f / aimSteadiness;
        _acceptableShotRange = acceptableShotRange;
        _shotsPerSecond      = shotsPerSecond;
    }
Ejemplo n.º 6
0
 protected AbstractBossState(BossAgent agent)
 {
     _agent = agent;
 }
 public override void Exit(BossAgent agent)
 {
 }
 public override void Enter(BossAgent agent)
 {
     agent.Attack();
 }
Ejemplo n.º 9
0
 public abstract void Exit(BossAgent agent);
Ejemplo n.º 10
0
 public abstract void Update(BossAgent agent);
Ejemplo n.º 11
0
 public abstract void Enter(BossAgent agent);
 public override void Enter(BossAgent agent)
 {
 }
Ejemplo n.º 13
0
 public BossLookoutState(BossAgent agent) : base(agent)
 {
 }
 public override void Enter(BossAgent agent)
 {
     agent.SetBaseAsTarget();
 }
Ejemplo n.º 15
0
 public BossChaseState(BossAgent agent) : base(agent)
 {
 }