public static Pursuit GetInstance() { if (instance == null) { instance = new Pursuit(); } return(instance); }
public void PursuitOn(Transform targetTrans) { if (!behaviours.Contains(Pursuit.GetInstance())) { behaviours.Add(Pursuit.GetInstance()); } TargetTrans = targetTrans; }
public void PursuitOn(Vector3 targetPos) { if (!behaviours.Contains(Pursuit.GetInstance())) { behaviours.Add(Pursuit.GetInstance()); } TargetTrans = null; TargetPos = targetPos; }
public MeteoroidAlienform(Ship owner, float lifetime) : base(owner, "Sprites/Meteoroid-Alienform.png", Color.Green, lifetime) { RotateToMomentum = true; Momentum = Vector2.One; MaxSpeed = 9f; _pursuit = new Pursuit(this); SteeringBehaviors.Add(_pursuit); }
public override void Initialize() { base.Initialize(); this._ImplementDate = ""; this._ResponseDate = ""; this._Attachments = new PursuitAttachments(); this._CoPursuit = new Pursuit(); this._ImplementStatus = new BasicInfoDetail(); this._ResponseQualityType = new BasicInfoDetail(); this._IsFinished = SbnBoolean.OutOfValue; }
protected override void Awake() { _rb = GetComponent <Rigidbody>(); _au = GetComponent <AudioSource>(); _vehicle = GetComponent <Vehicle>(); _pursuit = GetComponent <Pursuit>(); _pursuit.target = Target.GetComponent <Vehicle>(); _vehicle.MaxSpeed = 130; Transform.Rotation = (float)Math.Atan2(_rb.velocity.X, -_rb.velocity.Y); }
/// <summary> /// Occurs every simulation step while the entity is in this state. /// </summary> public override void Run() { if (AI.MyTeam.PassReceiver != Player) { Player.StateMachine.ChangeState(new Default(Player, AI)); return; } // lost control if (AI.OpponentTeam.PlayerInBallRange != null && AI.MyTeam.PlayerInBallRange == null) { Player.StateMachine.ChangeState(new Default(Player, AI)); return; } if (Player.CanKickBall(AI.Ball)) { Player.StateMachine.ChangeState(new KickBall(Player, AI)); return; } if (Vector.GetDistanceBetween(AI.Ball.Position, Player.Position) < Parameters.BallReceivingRange) { Player.StateMachine.ChangeState(new PursueBall(Player, AI)); return; } UpdatePassTarget(); var nearestOpponent = AI.OpponentTeam.GetNearestPlayerToPosition(Player.Position); var ball = AI.Ball; var timeToReceive = ball.GetTimeToCoverDistance(Vector.GetDistanceBetween(ball.Position, PassTarget), ball.CurrentSpeed); if (nearestOpponent.GetTimeToGetToTarget(PassTarget) < timeToReceive || Player.GetTimeToGetToTarget(PassTarget) > timeToReceive) { if (SteeringBehavior is Arrive) { Player.SteeringBehaviorsManager.RemoveBehavior(SteeringBehavior); SteeringBehavior = new Pursuit(Player, SteeringBehavior.Priority, SteeringBehavior.Weight, ball); Player.SteeringBehaviorsManager.AddBehavior(SteeringBehavior); } } else { if (SteeringBehavior is Pursuit) { Player.SteeringBehaviorsManager.RemoveBehavior(SteeringBehavior); SteeringBehavior = new Arrive(Player, SteeringBehavior.Priority, SteeringBehavior.Weight, PassTarget); Player.SteeringBehaviorsManager.AddBehavior(SteeringBehavior); } } }
void Start() { attack = GetComponent <EnemyAttack>(); //Asignamos a la variable los scripts antes mencionados pursuit = GetComponent <Pursuit>(); rb = GetComponent <Rigidbody2D>(); CurrentHealthPoints = EnemyMaxHealthPoints; //Pone la vida al máximo al empezar isFullHealth = true; if (enemyHealthUI) { enemyHealthUI.SetEnemyMaxHealthUI(EnemyMaxHealthPoints); } }
// Runs when the player enters the blipped area. public override void OnStart(Ped player) { base.OnStart(player); // Attaches a blip to the vehicle. vehicle.AttachBlip(); // Variables for the driver data and the vehicle data. PedData pedData = new PedData(); VehicleData vehicleData = new VehicleData(); // Shows a simple subtitle at the bottom of the screen. Screen.ShowSubtitle("It looks like the driver is not here, they shouldn't be too far."); // String variables. string firstname = pedData.FirstName; string lastname = pedData.LastName; // Sets the driver's driving license to revoked. pedData.DriverLicense.LicenseStatus = PedData.License.Status.Expired; Utilities.SetPedData(suspect.NetworkId, pedData); // Essentially sets the vehicle to be owned by the driver, as FivePD doesn't do that automatically. vehicleData.OwnerFirstName = firstname; vehicleData.OwnerLastName = lastname; // Sets the vehicle to be flagged up on the system - doesn't seem to actually do it though. vehicleData.Flag = "Owner has expired driving license"; // Push the data we just set to both the driver and the vehicle. Utilities.SetVehicleData(vehicle.NetworkId, vehicleData); // 40% chance for the suspect to flee using the IPursuit interface. int chance = rnd.Next(0, 10); // If the number is between, or equal to, 0 through 3, initiate a pursuit. if (chance >= 0 && chance <= 3) { var pursuit = Pursuit.RegisterPursuit(suspect); pursuit.Init(true, 30f, 125f, true); pursuit.ActivatePursuit(); Utilities.ExcludeVehicleFromTrafficStop(vehicle.NetworkId, true); } }
/// <summary> /// Creates a new instance /// </summary> public Behaviors() { Alignment = new Alignment(); Arrive = new Arrive(); Cohesion = new Cohesion(); Evade = new Evade(); Flee = new Flee(); Hide = new Hide(); Interpose = new Interpose(); ObstacleAvoidance = new ObstacleAvoidance(); OffsetPursuit = new OffsetPursuit(); PathFollowing = new PathFollowing(); Pursuit = new Pursuit(); Seek = new Seek(); Separation = new Separation(); WallAvoidance = new WallAvoidance(); Wander = new Wander(); }
public PursuiterMissile(Ship owner, float lifetime) : base(owner, "Sprites/Avenger-PursuiterMissile.png", Color.Red, lifetime) { RotateToMomentum = true; Momentum = Vector2.One; MaxSpeed = 10f; _pursuit = new Pursuit(this); SteeringBehaviors.Add(_pursuit); // Wander, for when the target is not visible. _wander = new Wander(this) { Jitter = 1.25f, WanderDistance = 1f, WanderRadius = 100f, }; SteeringBehaviors.Add(_wander); }
protected override void OnEnter() { _pursuit = Steering.GetComponent <Pursuit>(); _pursuit.enabled = true; _pursuit.Target = _target.GetComponent <Rigidbody2D>(); }
/// <summary> /// Occurs when the entity enters to this state. /// </summary> public override void Enter() { BallPursuit = new Pursuit(Player, 1, 1.0, AI.Ball); Player.SteeringBehaviorsManager.AddBehavior(BallPursuit); }
public Proxy(SchoolGirl mm) { gg = new Pursuit(mm); }
public void PursuitOff() { behaviours.Remove(Pursuit.GetInstance()); }
public Proxy(Girl mm) { _mm = new Pursuit(mm); }
public Proxy(SchoolGirl girl) { this._pursuit = new Pursuit(girl); }
public Proxy(Girl girl) { pursuer = new Pursuit(girl); }