Check to make sure player data isn't null
This commit is contained in:
@@ -73,9 +73,11 @@ function onPlayerQuit(event, client, quitReasonId) {
|
|||||||
|
|
||||||
function onPlayerChat(event, client, messageText) {
|
function onPlayerChat(event, client, messageText) {
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
if(!getPlayerData(client).loggedIn) {
|
if(!isNull(getPlayerData(client))) {
|
||||||
messagePlayerError(client, "You need to login before you can chat!");
|
if(!getPlayerData(client).loggedIn) {
|
||||||
return false;
|
messagePlayerError(client, "You need to login before you can chat!");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
messageText = messageText.substring(0, 128);
|
messageText = messageText.substring(0, 128);
|
||||||
@@ -272,12 +274,20 @@ function onPlayerDeath(client, position) {
|
|||||||
let closestJail = getClosestJail(position);
|
let closestJail = getClosestJail(position);
|
||||||
getPlayerCurrentSubAccount(client).interior = closestJail.interior;
|
getPlayerCurrentSubAccount(client).interior = closestJail.interior;
|
||||||
getPlayerCurrentSubAccount(client).dimension = closestJail.dimension;
|
getPlayerCurrentSubAccount(client).dimension = closestJail.dimension;
|
||||||
spawnPlayer(client, closestJail.position, closestJail.heading, getPlayerCurrentSubAccount(client).skin);
|
if(getServerGame() == GAME_GTA_IV) {
|
||||||
|
spawnPlayer(client, closestJail.position, closestJail.heading, getPlayerCurrentSubAccount(client).skin);
|
||||||
|
} else {
|
||||||
|
spawnPlayer(client, closestJail.position, closestJail.heading, getPlayerCurrentSubAccount(client).skin, closestJail.interior, closestJail.dimension);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
let closestHospital = getClosestHospital(position);
|
let closestHospital = getClosestHospital(position);
|
||||||
getPlayerCurrentSubAccount(client).interior = closestHospital.interior;
|
getPlayerCurrentSubAccount(client).interior = closestHospital.interior;
|
||||||
getPlayerCurrentSubAccount(client).dimension = closestHospital.dimension;
|
getPlayerCurrentSubAccount(client).dimension = closestHospital.dimension;
|
||||||
spawnPlayer(client, closestHospital.position, closestHospital.heading, getPlayerCurrentSubAccount(client).skin);
|
if(getServerGame() == GAME_GTA_IV) {
|
||||||
|
spawnPlayer(client, closestHospital.position, closestHospital.heading, getPlayerCurrentSubAccount(client).skin);
|
||||||
|
} else {
|
||||||
|
spawnPlayer(client, closestHospital.position, closestHospital.heading, getPlayerCurrentSubAccount(client).skin, closestHospital.interior, closestHospital.dimension);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}, 2000);
|
}, 2000);
|
||||||
}, 1000);
|
}, 1000);
|
||||||
@@ -312,72 +322,72 @@ function onPlayerSpawn(client) {
|
|||||||
|
|
||||||
logToConsole(LOG_DEBUG, `[Asshat.Event] ${getPlayerDisplayForConsole(client)}'s player data is valid. Continuing spawn processing ...`);
|
logToConsole(LOG_DEBUG, `[Asshat.Event] ${getPlayerDisplayForConsole(client)}'s player data is valid. Continuing spawn processing ...`);
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `[Asshat.Event] Setting player skin for ${getPlayerDisplayForConsole(client)} to ${getPlayerCurrentSubAccount(client).skin}`);
|
//logToConsole(LOG_DEBUG, `[Asshat.Event] Setting player skin for ${getPlayerDisplayForConsole(client)} to ${getPlayerCurrentSubAccount(client).skin}`);
|
||||||
setPlayerSkin(client, getPlayerCurrentSubAccount(client).skin);
|
//setPlayerSkin(client, getPlayerCurrentSubAccount(client).skin);
|
||||||
|
|
||||||
restorePlayerCamera(client);
|
restorePlayerCamera(client);
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `Storing ${getPlayerDisplayForConsole(client)} ped in client data `);
|
//if(getServerGame() != GAME_GTA_IV) {
|
||||||
getPlayerData(client).ped = client.player;
|
logToConsole(LOG_DEBUG, `Storing ${getPlayerDisplayForConsole(client)} ped in client data `);
|
||||||
|
getPlayerData(client).ped = client.player;
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `Sending ${getPlayerDisplayForConsole(client)} the 'now playing as' message`);
|
logToConsole(LOG_DEBUG, `Sending ${getPlayerDisplayForConsole(client)} the 'now playing as' message`);
|
||||||
messagePlayerAlert(client, `You are now playing as: [#0099FF]${getCharacterFullName(client)}`, getColourByName("white"));
|
messagePlayerAlert(client, `You are now playing as: [#0099FF]${getCharacterFullName(client)}`, getColourByName("white"));
|
||||||
messagePlayerNormal(client, "This server is in early development and may restart at any time for updates.", getColourByName("orange"));
|
messagePlayerNormal(client, "This server is in early development and may restart at any time for updates.", getColourByName("orange"));
|
||||||
messagePlayerNormal(client, "Please report any bugs using /bug and suggestions using /idea", getColourByName("yellow"));
|
messagePlayerNormal(client, "Please report any bugs using /bug and suggestions using /idea", getColourByName("yellow"));
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `[Asshat.Event] Updating spawned state for ${getPlayerDisplayForConsole(client)} to true`);
|
logToConsole(LOG_DEBUG, `[Asshat.Event] Updating spawned state for ${getPlayerDisplayForConsole(client)} to true`);
|
||||||
updatePlayerSpawnedState(client, true);
|
updatePlayerSpawnedState(client, true);
|
||||||
|
|
||||||
|
//logToConsole(LOG_DEBUG, `[Asshat.Event] Setting player interior for ${getPlayerDisplayForConsole(client)} to ${getPlayerCurrentSubAccount(client).interior}`);
|
||||||
|
//setPlayerInterior(client, getPlayerCurrentSubAccount(client).interior);
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `[Asshat.Event] Setting player interior for ${getPlayerDisplayForConsole(client)} to ${getPlayerCurrentSubAccount(client).interior}`);
|
//logToConsole(LOG_DEBUG, `[Asshat.Event] Setting player dimension for ${getPlayerDisplayForConsole(client)} to ${getPlayerCurrentSubAccount(client).dimension}`);
|
||||||
setPlayerInterior(client, getPlayerCurrentSubAccount(client).interior);
|
//setPlayerDimension(client, getPlayerCurrentSubAccount(client).dimension);
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `[Asshat.Event] Setting player dimension for ${getPlayerDisplayForConsole(client)} to ${getPlayerCurrentSubAccount(client).dimension}`);
|
logToConsole(LOG_DEBUG, `[Asshat.Event] Updating all player name tags`);
|
||||||
setPlayerDimension(client, getPlayerCurrentSubAccount(client).dimension);
|
updateAllPlayerNameTags();
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `[Asshat.Event] Updating all player name tags`);
|
logToConsole(LOG_DEBUG, `[Asshat.Event] Syncing ${getPlayerDisplayForConsole(client)}'s cash ${getPlayerCurrentSubAccount(client).cash}`);
|
||||||
updateAllPlayerNameTags();
|
updatePlayerCash(client);
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `[Asshat.Event] Syncing ${getPlayerDisplayForConsole(client)}'s cash ${getPlayerCurrentSubAccount(client).cash}`);
|
logToConsole(LOG_DEBUG, `[Asshat.Event] Sending ${getPlayerDisplayForConsole(client)}'s job type to their client (${getJobIndexFromDatabaseId(getPlayerCurrentSubAccount(client))})`);
|
||||||
updatePlayerCash(client);
|
sendPlayerJobType(client, getPlayerCurrentSubAccount(client).job);
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `[Asshat.Event] Sending ${getPlayerDisplayForConsole(client)}'s job type to their client (${getJobIndexFromDatabaseId(getPlayerCurrentSubAccount(client))})`);
|
logToConsole(LOG_DEBUG, `[Asshat.Event] Enabling all rendering states for ${getPlayerDisplayForConsole(client)}`);
|
||||||
sendPlayerJobType(client, getPlayerCurrentSubAccount(client).job);
|
setPlayer2DRendering(client, true, true, true, true, true, true);
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `[Asshat.Event] Enabling all rendering states for ${getPlayerDisplayForConsole(client)}`);
|
logToConsole(LOG_DEBUG, `[Asshat.Event] Sending snow states to ${getPlayerDisplayForConsole(client)}`);
|
||||||
setPlayer2DRendering(client, true, true, true, true, true, true);
|
updatePlayerSnowState(client);
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `[Asshat.Event] Sending snow states to ${getPlayerDisplayForConsole(client)}`);
|
logToConsole(LOG_DEBUG, `[Asshat.Event] Sending ground snow excluded models to ${getPlayerDisplayForConsole(client)}`);
|
||||||
updatePlayerSnowState(client);
|
sendExcludedModelsForGroundSnowToPlayer(client);
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `[Asshat.Event] Sending ground snow excluded models to ${getPlayerDisplayForConsole(client)}`);
|
logToConsole(LOG_DEBUG, `[Asshat.Event] Sending removed world objects to ${getPlayerDisplayForConsole(client)}`);
|
||||||
sendExcludedModelsForGroundSnowToPlayer(client);
|
sendRemovedWorldObjectsToPlayer(client);
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `[Asshat.Event] Sending removed world objects to ${getPlayerDisplayForConsole(client)}`);
|
//setEntityData(client.player, "ag.scale", getPlayerCurrentSubAccount(client).pedScale, true);
|
||||||
sendRemovedWorldObjectsToPlayer(client);
|
|
||||||
|
|
||||||
//setEntityData(client.player, "ag.scale", getPlayerCurrentSubAccount(client).pedScale, true);
|
//setTimeout(function() {
|
||||||
|
// syncPlayerProperties(client);
|
||||||
|
//}, 1000);
|
||||||
|
|
||||||
//setTimeout(function() {
|
logToConsole(LOG_DEBUG, `[Asshat.Event] Updating logo state for ${getPlayerDisplayForConsole(client)}`);
|
||||||
// syncPlayerProperties(client);
|
if(getServerConfig().showLogo && doesPlayerHaveLogoEnabled(client)) {
|
||||||
//}, 1000);
|
updatePlayerShowLogoState(client, true);
|
||||||
|
}
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `[Asshat.Event] Updating logo state for ${getPlayerDisplayForConsole(client)}`);
|
logToConsole(LOG_DEBUG, `[Asshat.Event] Caching ${getPlayerDisplayForConsole(client)}'s hotbar items`);
|
||||||
if(getServerConfig().showLogo && doesPlayerHaveLogoEnabled(client)) {
|
cachePlayerHotBarItems(client);
|
||||||
updatePlayerShowLogoState(client, true);
|
|
||||||
}
|
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `[Asshat.Event] Caching ${getPlayerDisplayForConsole(client)}'s hotbar items`);
|
logToConsole(LOG_DEBUG, `[Asshat.Event] Syncing ${getPlayerDisplayForConsole(client)}'s hotbar`);
|
||||||
cachePlayerHotBarItems(client);
|
updatePlayerHotBar(client);
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `[Asshat.Event] Syncing ${getPlayerDisplayForConsole(client)}'s hotbar`);
|
logToConsole(LOG_DEBUG, `[Asshat.Event] Setting ${getPlayerDisplayForConsole(client)}'s switchchar state to false`);
|
||||||
updatePlayerHotBar(client);
|
getPlayerData(client).switchingCharacter = false;
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `[Asshat.Event] Setting ${getPlayerDisplayForConsole(client)}'s switchchar state to false`);
|
logToConsole(LOG_DEBUG, `[Asshat.Event] Setting ${getPlayerDisplayForConsole(client)}'s ped state to ready`);
|
||||||
getPlayerData(client).switchingCharacter = false;
|
getPlayerData(client).pedState = AG_PEDSTATE_READY;
|
||||||
|
|
||||||
logToConsole(LOG_DEBUG, `[Asshat.Event] Setting ${getPlayerDisplayForConsole(client)}'s ped state to ready`);
|
|
||||||
getPlayerData(client).pedState = AG_PEDSTATE_READY;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// ---------------------------------------------------------------------------
|
// ---------------------------------------------------------------------------
|
||||||
|
|||||||
Reference in New Issue
Block a user