private async Task GeneralSetup() { Gfx.DrawStatBar("TIME", "00:00", 0); var i = 1; foreach (Player p in new PlayerList()) { if (IsEntityVisible(GetPlayerPed(p.Handle))) { Gfx.DrawStatBar($"~HUD_COLOUR_NET_PLAYER{p.Handle + 1}~{p.Name}", "(player)", i); i++; } } //ClearPedTasksImmediately(PlayerPedId()); //SetEntityHealth(PlayerPedId(), 300); RemoveAllPedWeapons(PlayerPedId(), true); ClearPlayerWantedLevel(PlayerId()); SetParkedVehicleDensityMultiplierThisFrame(0f); SetPedDensityMultiplierThisFrame(0f); SetRandomVehicleDensityMultiplierThisFrame(0f); SetScenarioPedDensityMultiplierThisFrame(0f, 0f); SetSomeVehicleDensityMultiplierThisFrame(0f); SetVehicleDensityMultiplierThisFrame(0f); }
private async Task OnTick() { if (firstTick) { //Exports["spawnmanager"].setAutoSpawn(false); firstTick = false; FirstJoin(); } if (IsEntityDead(PlayerPedId()) && currentPhase == GamePhase.STARTED) { Gfx.ShowShard(Gfx.MessageType.KNOCKED_OUT, "~r~KNOCKED OUT", "", 0, 0, 3000); DoScreenFadeOut(3000); await Delay(3000); currentPhase = GamePhase.DEAD; SpawnPlayer(); await Delay(2000); DoScreenFadeIn(3000); } else { if (IsEntityInWater(PlayerPedId()) || IsEntityInWater(GetVehiclePedIsIn(PlayerPedId(), false))) { NetworkExplodeVehicle(GetVehiclePedIsIn(PlayerPedId(), false), true, false, false); SetEntityHealth(PlayerPedId(), 0); TriggerServerEvent("Sumo:ImOut"); } } if (Gfx.LimboActive && !IsPauseMenuActive() && !IsPauseMenuRestarting()) { //DisableAllControlActions(0); //Game.DisableAllControlsThisFrame(0); //Game.EnableControlThisFrame(0, Control.MpTextChatAll); //Game.EnableControlThisFrame(0, Control.FrontendPause); //Game.EnableControlThisFrame(0, Control.FrontendPauseAlternate); } if (currentPhase == GamePhase.RESET) { SpawnPlayer(true); while (currentPhase == GamePhase.RESET && !IsPedInAnyVehicle(PlayerPedId(), false)) { await Delay(0); } } //else //{ // Game.EnableAllControlsThisFrame(0); // if (Game.IsDisabledControlJustPressed(0, Control.FrontendPause) || // Game.IsDisabledControlJustPressed(0, Control.FrontendPauseAlternate) || // Game.IsControlJustPressed(0, Control.FrontendPause) || // Game.IsControlJustPressed(0, Control.FrontendPauseAlternate)) // { // SetPauseMenuActive(true); // } //} }
public static async Task TransitionToCoords(Vector4 targetPosition, uint vehicleModel = 0) { RequestCollisionAtCoord(targetPosition.X, targetPosition.Y, targetPosition.Z); var tempPedHash = (uint)GetHashKey("S_M_Y_Clown_01"); // Thanks, you're a genius Mraes! RequestModel(tempPedHash); while (!HasModelLoaded(tempPedHash)) { await Delay(0); } var tempPed = CreatePed(4, tempPedHash, targetPosition.X, targetPosition.Y, targetPosition.Z, targetPosition.W, false, false); SetEntityVisible(tempPed, false, false); // Teleport into a new vehicle. if (vehicleModel != 0) { if (IsModelInCdimage(vehicleModel)) { RequestModel(vehicleModel); while (!HasModelLoaded(vehicleModel)) { await Delay(0); } } } //StartPlayerSwitch(PlayerPedId(), tempPed, 0, 1); StartPlayerSwitch(PlayerPedId(), tempPed, 0, 0); await Delay(10); DeleteEntity(ref tempPed); SetModelAsNoLongerNeeded(tempPedHash); var veh = 0; if (vehicleModel != 0) { veh = CreateVehicle(vehicleModel, targetPosition.X, targetPosition.Y, targetPosition.Z, targetPosition.W, true, false); SetVehicleHasBeenOwnedByPlayer(veh, true); SetModelAsNoLongerNeeded(vehicleModel); SetVehicleNeedsToBeHotwired(veh, false); var r = 0; var g = 0; var b = 0; var a = 0; GetHudColour((PlayerId() < 32 ? PlayerId() : PlayerId() % 30) + 28, ref r, ref g, ref b, ref a); SetVehicleCustomPrimaryColour(veh, r, g, b); SetVehicleCustomSecondaryColour(veh, r, g, b); } if (Gfx.LimboActive) { Gfx.ToggleLimbo(); } while (GetPlayerSwitchState() != 10 && GetPlayerSwitchState() != 8) { DisplayRadar(false); await Delay(0); } SetEntityCoords(PlayerPedId(), targetPosition.X, targetPosition.Y, targetPosition.Z, false, false, false, false); SetEntityHeading(PlayerPedId(), targetPosition.W); if (vehicleModel != 0 && DoesEntityExist(veh) && IsEntityAVehicle(veh) && !IsEntityDead(veh)) { SetPedIntoVehicle(PlayerPedId(), veh, -1); } SetGameplayCamRelativeHeading(0f); ClearAreaOfEverything(targetPosition.X, targetPosition.Y, targetPosition.Z, 500f, false, false, false, false); while (IsPlayerSwitchInProgress()) { DisplayRadar(false); Game.DisableAllControlsThisFrame(0); await Delay(0); } Game.EnableAllControlsThisFrame(0); DisplayRadar(IsRadarPreferenceSwitchedOn()); DisplayHud(IsHudPreferenceSwitchedOn()); var blip = GetMainPlayerBlipId(); SetBlipAsFriendly(blip, false); SetBlipColour(blip, 6 + PlayerId()); SetBlipHighDetail(blip, true); SetBlipFriend(blip, false); SetBlipBright(blip, true); PulseBlip(blip); ShowHeadingIndicatorOnBlip(blip, false); Debug.Write(DoesBlipExist(blip) + "\n"); SumoClient.currentPhase = SumoClient.GamePhase.WAITING; }
private async void SpawnPlayer(bool inVehicle = false) { if (IsPedInAnyVehicle(PlayerPedId(), false)) { var veh = GetVehiclePedIsIn(PlayerPedId(), true); SetEntityAsMissionEntity(veh, true, true); DeleteVehicle(ref veh); var pos = Game.PlayerPed.Position; ClearAreaOfEverything(pos.X, pos.Y, pos.Z, 500f, false, false, false, false); } //await Delay(500); //dynamic spawns = new Spawns().GetSpawns(); //var spawnPoint = spawns[PlayerId()]; uint model = (uint)GetHashKey("csb_mweather"); RequestModel(model); if (IsModelInCdimage(model)) { while (!HasModelLoaded(model)) { await Delay(0); } SetPlayerModel(PlayerId(), model); SetModelAsNoLongerNeeded(model); SetPedDefaultComponentVariation(PlayerPedId()); } //if (spawns.Count() > PlayerId()) //{ // var spawn = spawns[PlayerId()]; // Vector3 spawnCoords = new Vector3(float.Parse(spawn["x"].ToString()), float.Parse(spawn["y"].ToString()), float.Parse(spawn["z"].ToString())); // float spawnHeading = float.Parse(spawn["heading"].ToString()); // NetworkResurrectLocalPlayer(0f, 0f, 0f, 0f, false, false); //} //else //{ //} //NetworkResurrectLocalPlayer(spawnCoords.X, spawnCoords.Y, spawnCoords.Z, spawnHeading, false, false); //Newtonsoft.Json.Linq.JArray spawns = JsonConvert.DeserializeObject(Exports["spawnmanager"].getSpawns()); //if (spawns.Count() > 0) //{ // Debug.Write($"{spawns.ToString()}\n"); // var spawn = spawns[0]; // Vector3 spawnCoords = new Vector3(float.Parse(spawn["x"].ToString()), float.Parse(spawn["y"].ToString()), float.Parse(spawn["z"].ToString())); // float spawnHeading = float.Parse(spawn["heading"].ToString()); // NetworkResurrectLocalPlayer(spawnCoords.X, spawnCoords.Y, spawnCoords.Z, spawnHeading, false, false); //} //else //{ // Exports["spawnmanager"].spawnPlayer(1); // //NetworkResurrectLocalPlayer(0f, 0f, 0f, 0f, false, false); //} //SetEntityHealth(PlayerPedId(), 0); SetEntityHealth(PlayerPedId(), 200); SetEntityCoordsNoOffset(PlayerPedId(), 0f, 0f, 500f, false, false, false); //ResurrectPed(PlayerPedId()); NetworkResurrectLocalPlayer(0f, 0f, 500f, 0f, true, false); ClearPedTasksImmediately(PlayerPedId()); SetEntityHealth(PlayerPedId(), 300); RemoveAllPedWeapons(PlayerPedId(), true); ClearPlayerWantedLevel(PlayerId()); SetEntityCoordsNoOffset(PlayerPedId(), 0f, 0f, 500f, false, false, false); //SetEntityHealth(PlayerPedId(), 200); FreezeEntityPosition(PlayerPedId(), true); ShutdownLoadingScreen(); SetEntityVisible(PlayerPedId(), false, false); //if (currentPhase == GamePhase.WAITING || currentPhase == GamePhase.RESET) if (inVehicle) { Gfx.ToggleLimbo(); } await Delay(1000); DoScreenFadeIn(1000); EnableAllControlActions(0); }