private List <Vehicle> getClosestVehiclesToPed(Ped ped)
 {
     if (waitingTimeForSorting > 200)
     {
         closestVehicleCache.Remove(ped);
         closestVehicleCache.Add(ped, VehicleUtilty.getClosestVehiclesToPed(ped));
     }
     return(closestVehicleCache.Contains(ped) ? (List <Vehicle>)closestVehicleCache[ped] : new List <Vehicle>());
 }
        private void PedsDriveOnPlayerDrive()
        {
            foreach (Ped ped in pedCreationManagment.getPeds())
            {
                if (IfAllowedToDrive(ped))
                {
                    LoggerUtil.logInfo(ped, "Ped is allowed drive, searching for vehicle to drive.");
                    ForcePedToDriveAVehicle(ped);
                }
                else
                {
                    VehicleUtilty.makePedToLeaveVehicle(ped);
                }
            }

            if (waitingTimeForSorting > 200)
            {
                waitingTimeForSorting = 0;
            }
        }
 private void onKeyDown(object sender, KeyEventArgs e)
 {
     if (e.KeyCode == Keys.NumPad8)
     {
         InitSetup();
         CreatePedAndAssignToVehicleIfThereis();
     }
     else if (e.KeyCode == Keys.NumPad9)
     {
         pedCreationManagment.deleteAllPeds();
         pedsAndVehicleManagment.deleteAllVehicales();
         tryingToEnterVehclesWithPeds.Clear();
         closestVehicleCache.Clear();
     }
     else if (e.KeyCode == Keys.NumPad6)
     {
         var         pos         = new PointF(0f, 0f);
         TextElement textElemntu = new TextElement("Hello", pos, 5f, Color.White);
         textElemntu.Enabled = true;
     }
     else if (e.KeyCode == Keys.NumPad5)
     {
         pedsAndVehicleManagment.CreateVehicale();
     }
     else if (e.KeyCode == Keys.NumPad4)
     {
         VehicleUtilty.createVehicle().LockStatus = VehicleLockStatus.CanBeBrokenInto;
     }
     else if (e.KeyCode == Keys.NumPad1)
     {
         Ped[] peds = World.GetNearbyPeds(player, 200);
         foreach (Ped ped in peds)
         {
             ped.Delete();
         }
     }
     else if (e.KeyCode == Keys.NumPad2)
     {
         VehicleUtilty.createForwardVehicle();
     }
 }
Beispiel #4
0
 public bool PedDriveIfHaveVehicle(Ped ped)
 {
     if (vehiclesWithPeds.Contains(ped))
     {
         Vehicle vehicle = (Vehicle)vehiclesWithPeds[ped];
         LoggerUtil.logInfo(ped, "Ped own vehicle: " + vehicle.GetHashCode() + " and will drive.");
         if (ped.IsInVehicle())
         {
             LoggerUtil.logInfo(ped, "Ped is inVehicle, so EnterVehicle task is invoked, and drive to is invoked");
             ped.Task.EnterVehicle(vehicle, VehicleSeat.Driver, -1, 30);
             VehicleUtilty.DrivePedBehindPlayer(ped, vehicle);
         }
         else if (!vehicle.Equals(ped.VehicleTryingToEnter))
         {
             LoggerUtil.logInfo(ped, "Ped trying to enter vehicle is null, making him to enter vehicle");
             ped.Task.EnterVehicle(vehicle, VehicleSeat.Driver, -1, 30);
         }
         return(true);
     }
     else
     {
         return(false);
     }
 }
Beispiel #5
0
 public void CreateVehicale()
 {
     vehicles.Add(VehicleUtilty.createVehicle());
 }