Beispiel #1
0
 public override void Execute(AIBrain brain)
 {
     brain.Coast();
     if (brain.extrapolatedPlayerPosition.HasValue && brain.lastKnownPlayerVelocity.HasValue)
     {
         brain.LookAt(brain.extrapolatedPlayerPosition.Value);
         brain.Fire();
     }
 }
 public override void Execute(AIBrain brain)
 {
     brain.Coast();
     if (brain.extrapolatedPlayerPosition.HasValue && brain.lastKnownPlayerVelocity.HasValue)
     {
         float lookAheadSeconds = (brain.extrapolatedPlayerPosition.Value - brain.transform.position).magnitude / brain.ship.weapon.projectileSpeed;
         brain.LookAt(brain.extrapolatedPlayerPosition.Value + brain.lastKnownPlayerVelocity.Value * lookAheadSeconds);
         brain.Fire();
     }
 }