Clear weapon pickups on enter/exit (for SA)

This commit is contained in:
Vortrex
2022-06-26 14:38:37 -05:00
parent 763241d2ce
commit 2181550618
4 changed files with 25 additions and 1 deletions

View File

@@ -72,7 +72,7 @@ function setElementPosition(elementId, position) {
// ===========================================================================
function deleteGameElement(elementId, position) {
function deleteGameElement(elementId, position = toVector3(0.0, 0.0, 0.0)) {
if (!getElementFromId(elementId).isOwner) {
return false;
}
@@ -82,6 +82,12 @@ function deleteGameElement(elementId, position) {
// ===========================================================================
function deleteLocalGameElement(element) {
destroyGameElement(element);
}
// ===========================================================================
function createGameVehicle(modelIndex, position, heading) {
return game.createVehicle(getGameConfig().vehicles[getGame()][modelIndex][0], position, heading);
}

View File

@@ -122,6 +122,7 @@ function addAllNetworkHandlers() {
addNetworkEventHandler("vrr.mouseCursor", toggleMouseCursor);
addNetworkEventHandler("vrr.mouseCamera", toggleMouseCamera);
addNetworkEventHandler("vrr.clearPeds", clearLocalPlayerOwnedPeds);
addNetworkEventHandler("vrr.clearPickups", clearLocalPlayerOwnedPickups);
addNetworkEventHandler("vrr.passenger", enterVehicleAsPassenger);
addNetworkEventHandler("vrr.logo", setServerLogoRenderState);
addNetworkEventHandler("vrr.ambience", setCityAmbienceState);
@@ -414,4 +415,13 @@ function sendLocaleSelectToServer(localeId) {
sendNetworkEventToServer("vrr.localeSelect", localeId);
}
// ===========================================================================
function clearLocalPlayerOwnedPickups() {
let pickups = getPickups().filter(pickup => pickup.isLocal == true);
for (let i in pickups) {
deleteLocalGameElement(pickups[i]);
}
}
// ===========================================================================

View File

@@ -323,6 +323,8 @@ function enterExitPropertyCommand(command, params, client) {
}
}
clearLocalPickupsForPlayer(client);
//setPlayerInCutsceneInterior(client, closestProperty.entranceCutscene);
stopRadioStreamForPlayer(client);
getPlayerData(client).streamingRadioStation = -1;

View File

@@ -1231,4 +1231,10 @@ function sendPlayerLocaleStrings(client) {
}
}
// ==========================================================================
function clearLocalPickupsForPlayer(client) {
sendNetworkEventToPlayer(client, "vrr.clearPickups");
}
// ==========================================================================