Fix item type data util returning undefined

This commit is contained in:
Vortrex
2022-05-20 17:35:16 -05:00
parent e11b465440
commit 374bbf63c9

View File

@@ -1586,12 +1586,14 @@ function getBestItemToTake(client, slot) {
*/ */
function listPlayerInventoryCommand(command, params, client) { function listPlayerInventoryCommand(command, params, client) {
let targetClient = client; let targetClient = client;
if(doesPlayerHaveStaffPermission(client, getStaffFlagValue("BasicModeration"))) {
if(!areParamsEmpty(client)) { if(!areParamsEmpty(client)) {
if(doesPlayerHaveStaffPermission(client, getStaffFlagValue("BasicModeration"))) {
if(targetClient == false) { if(targetClient == false) {
sendMessageToPlayer(client, getLocaleString(client, "InvalidPlayer")); sendMessageToPlayer(client, getLocaleString(client, "InvalidPlayer"));
return false; return false;
} }
targetClient = getPlayerFromParams(params); targetClient = getPlayerFromParams(params);
} }
} }
@@ -1717,6 +1719,7 @@ function getItemData(itemId) {
if(typeof getServerData().items[itemId] != "undefined") { if(typeof getServerData().items[itemId] != "undefined") {
return getServerData().items[itemId]; return getServerData().items[itemId];
} }
return false; return false;
} }
@@ -1727,7 +1730,11 @@ function getItemData(itemId) {
* @return {ItemTypeData} The item type's data (class instance) * @return {ItemTypeData} The item type's data (class instance)
*/ */
function getItemTypeData(itemTypeId) { function getItemTypeData(itemTypeId) {
return getServerData().itemTypes[itemTypeId]; if(typeof getServerData().itemTypes[itemTypeId] != "undefined") {
return getServerData().itemTypes[itemTypeId];
}
return false;
} }
// =========================================================================== // ===========================================================================
@@ -2278,7 +2285,7 @@ function showItemInventoryToPlayer(client, itemId) {
// =========================================================================== // ===========================================================================
function showPlayerInventoryToPlayer(client, targetClient) { function showPlayerInventoryToPlayer(showToClient, targetClient) {
resyncWeaponItemAmmo(targetClient); resyncWeaponItemAmmo(targetClient);
let itemDisplay = []; let itemDisplay = [];
for(let i in getPlayerData(targetClient).hotBarItems) { for(let i in getPlayerData(targetClient).hotBarItems) {
@@ -2289,19 +2296,24 @@ function showPlayerInventoryToPlayer(client, targetClient) {
if(getPlayerData(targetClient).hotBarItems[i] == -1) { if(getPlayerData(targetClient).hotBarItems[i] == -1) {
itemDisplay.push(`{MAINCOLOUR}${toInteger(i)+1}: ${colour}(Empty)`); itemDisplay.push(`{MAINCOLOUR}${toInteger(i)+1}: ${colour}(Empty)`);
} else { } else {
itemDisplay.push(`{MAINCOLOUR}${toInteger(i)+1}: ${colour}${getItemTypeData(getItemData(getPlayerData(targetClient).hotBarItems[i]).itemTypeIndex).name}`); let itemTypeData = getItemTypeData(getItemData(getPlayerData(targetClient).hotBarItems[i]).itemTypeIndex);
if(itemTypeData != false) {
itemDisplay.push(`{MAINCOLOUR}${toInteger(i)+1}: ${colour}${itemTypeData.name}`);
} else {
itemDisplay.push(`{MAINCOLOUR}${toInteger(i)+1}: ${colour}(Empty)`);
}
} }
} }
if(client == targetClient) { if(showToClient == targetClient) {
messagePlayerNormal(client, makeChatBoxSectionHeader(getLocaleString(client, "HeaderSelfItemList"))); messagePlayerNormal(showToClient, makeChatBoxSectionHeader(getLocaleString(showToClient, "HeaderSelfItemList")));
} else { } else {
messagePlayerNormal(client, makeChatBoxSectionHeader(getLocaleString(client, "HeaderPlayerItemList", getCharacterFullName(targetClient)))); messagePlayerNormal(showToClient, makeChatBoxSectionHeader(getLocaleString(showToClient, "HeaderPlayerItemList", getCharacterFullName(targetClient))));
} }
let chunkedList = splitArrayIntoChunks(itemDisplay, 5); let chunkedList = splitArrayIntoChunks(itemDisplay, 5);
for(let i in chunkedList) { for(let i in chunkedList) {
messagePlayerNormal(client, chunkedList[i].join(`{MAINCOLOUR} • `), COLOUR_WHITE); messagePlayerNormal(showToClient, chunkedList[i].join(`{MAINCOLOUR} • `), COLOUR_WHITE);
} }
} }