public void AskForID(OccupantSelector occupantselect) { GameFiber.StartNew(delegate { PlaySpecificSpeech("Kifflom"); Game.LocalPlayer.Character.Tasks.AchieveHeading(Game.LocalPlayer.Character.CalculateHeadingTowardsEntity(Suspect)); GameFiber.Wait(1500); if (occupantselect == OccupantSelector.Driver) { Suspect.ShowDrivingLicence(); } else if (occupantselect == OccupantSelector.Passengers) { foreach (Ped occupant in SuspectVehicle.Passengers) { occupant.ShowDrivingLicence(); } } else if (occupantselect == OccupantSelector.AllOccupants) { foreach (Ped occupant in SuspectVehicle.Occupants) { occupant.ShowDrivingLicence(); } } Game.LocalPlayer.Character.Tasks.Clear(); }); }
public void OutOfVehicle(OccupantSelector occupantselect) { GameFiber.StartNew(delegate { try { Vehicle veh = Functions.GetPulloverSuspect(Functions.GetCurrentPullover()).CurrentVehicle; if (occupantselect == OccupantSelector.Driver) { if (Functions.GetPulloverSuspect(Functions.GetCurrentPullover()).IsInAnyVehicle(false)) { ProcessOrderOutOfVehicle(veh, Suspect); } } else if (occupantselect == OccupantSelector.Passengers) { foreach (Ped pas in veh.Passengers) { ProcessOrderOutOfVehicle(veh, pas); } } else if (occupantselect == OccupantSelector.AllOccupants) { foreach (Ped occ in veh.Occupants) { ProcessOrderOutOfVehicle(veh, occ); } } } catch (Exception e) { Game.LogTrivial(e.ToString()); Game.LogTrivial("Error in getout handled - LSPDFR+"); } }); }
public void OutOfVehicle(OccupantSelector occupantselect) { GameFiber.StartNew(delegate { try { Vehicle veh = Functions.GetPulloverSuspect(Functions.GetCurrentPullover()).CurrentVehicle; if (occupantselect == OccupantSelector.Driver) { if (Functions.GetPulloverSuspect(Functions.GetCurrentPullover()).IsInAnyVehicle(false)) { if (veh.IsBoat) { Functions.ForceEndCurrentPullover(); Vector3 pos = Suspect.GetBonePosition(0); Suspect.Tasks.Clear(); Suspect.Position = pos; } else { Suspect.Tasks.LeaveVehicle(LeaveVehicleFlags.None).WaitForCompletion(5000); PedBackIntoVehicleLogic(Suspect, SuspectVehicle); } NativeFunction.Natives.RESET_PED_LAST_VEHICLE(Suspect); API.Functions.OnPedOrderedOutOfVehicle(Suspect); GameFiber.Wait(100); Suspect.Tasks.StandStill(30000); Functions.SetPedCantBeArrestedByPlayer(Suspect, true); GameFiber.Yield(); Functions.SetPedCantBeArrestedByPlayer(Suspect, false); } } else if (occupantselect == OccupantSelector.Passengers) { foreach (Ped pas in veh.Passengers) { if (veh.IsBoat) { Functions.ForceEndCurrentPullover(); Vector3 pos = pas.GetBonePosition(0); pas.Tasks.Clear(); pas.Position = pos; } else { pas.Tasks.LeaveVehicle(LeaveVehicleFlags.None).WaitForCompletion(6000); PedBackIntoVehicleLogic(pas, SuspectVehicle); } NativeFunction.Natives.RESET_PED_LAST_VEHICLE(pas); API.Functions.OnPedOrderedOutOfVehicle(pas); GameFiber.Wait(100); pas.Tasks.StandStill(30000); Functions.SetPedCantBeArrestedByPlayer(pas, true); GameFiber.Yield(); Functions.SetPedCantBeArrestedByPlayer(pas, false); } } else if (occupantselect == OccupantSelector.AllOccupants) { foreach (Ped occ in veh.Occupants) { if (veh.IsBoat) { Functions.ForceEndCurrentPullover(); Vector3 pos = occ.GetBonePosition(0); occ.Tasks.Clear(); occ.Position = pos; } else { occ.Tasks.LeaveVehicle(LeaveVehicleFlags.None).WaitForCompletion(6000); PedBackIntoVehicleLogic(occ, SuspectVehicle); } NativeFunction.Natives.RESET_PED_LAST_VEHICLE(occ); API.Functions.OnPedOrderedOutOfVehicle(occ); GameFiber.Wait(100); occ.Tasks.StandStill(30000); Functions.SetPedCantBeArrestedByPlayer(occ, true); GameFiber.Yield(); Functions.SetPedCantBeArrestedByPlayer(occ, false); } } } catch (Exception e) { Game.LogTrivial(e.ToString()); Game.LogTrivial("Error in getout handled - LSPDFR+"); } }); }