Fix delete item util

This commit is contained in:
Vortrex
2022-02-05 00:13:26 -06:00
parent c6c77ac051
commit 83d0a9e2b5

View File

@@ -1244,57 +1244,74 @@ function cachePlayerHotBarItems(client) {
// =========================================================================== // ===========================================================================
function deleteItem(itemId) { function deleteItem(itemId) {
let owner = -1;
let ownerTypeString = "Unknown";
switch(getItemData(itemId).ownerType) { switch(getItemData(itemId).ownerType) {
case VRR_ITEM_OWNER_GROUND: case VRR_ITEM_OWNER_GROUND:
ownerTypeString = "Ground/Dropped";
deleteGroundItemObject(itemId); deleteGroundItemObject(itemId);
getServerData().groundItemCache.splice(getServerData().groundItemCache.indexOf(itemId), 1); getServerData().groundItemCache.splice(getServerData().groundItemCache.indexOf(itemId), 1);
break; break;
case VRR_ITEM_OWNER_PLAYER: case VRR_ITEM_OWNER_PLAYER:
if(getPlayerFromCharacterId(getItemData(itemId).ownerId)) { ownerTypeString = "Player";
switchPlayerActiveHotBarSlot(getPlayerFromCharacterId(getItemData(itemId).ownerId), -1); owner = getPlayerFromCharacterId(getItemData(itemId).ownerId);
getPlayerData(getPlayerFromCharacterId(getItemData(itemId).ownerId)).hotBarItems[getPlayerData(getPlayerFromCharacterId(getItemData(itemId).ownerId)).hotBarItems.indexOf(itemId)] = -1; if(getPlayerData(owner) != false) {
updatePlayerHotBar(getPlayerFromCharacterId(getItemData(itemId).ownerId)); switchPlayerActiveHotBarSlot(getPlayerData(owner), -1);
getPlayerData(owner).hotBarItems[getPlayerData(owner).hotBarItems.indexOf(itemId)] = -1;
updatePlayerHotBar(getPlayerData(owner));
} }
break; break;
case VRR_ITEM_OWNER_JOBLOCKER: case VRR_ITEM_OWNER_JOBLOCKER:
if(getPlayerFromCharacterId(getItemData(itemId).ownerId)) { ownerTypeString = "Job Locker";
getPlayerData(getPlayerFromCharacterId(getItemData(itemId).ownerId)).jobLockerCache.splice(getPlayerData(getPlayerFromCharacterId(getItemData(itemId).ownerId)).jobLockerCache.indexOf(itemId), 1); owner = getPlayerFromCharacterId(getItemData(itemId).ownerId);
if(getPlayerData(owner) != false) {
getPlayerData(owner).jobLockerCache.splice(getPlayerData(owner).jobLockerCache.indexOf(itemId), 1);
} }
break; break;
case VRR_ITEM_OWNER_LOCKER: case VRR_ITEM_OWNER_LOCKER:
if(getPlayerFromCharacterId(getItemData(itemId).ownerId)) { ownerTypeString = "Locker";
getPlayerData(getPlayerFromCharacterId(getItemData(itemId).ownerId)).lockerCache.splice(getPlayerData(getPlayerFromCharacterId(getItemData(itemId).ownerId)).lockerCache.indexOf(itemId), 1); owner = getPlayerFromCharacterId(getItemData(itemId).ownerId);
if(getPlayerData(owner) != false) {
getPlayerData(owner).lockerCache.splice(getPlayerData(owner).lockerCache.indexOf(itemId), 1);
} }
break; break;
case VRR_ITEM_OWNER_VEHTRUNK: case VRR_ITEM_OWNER_VEHTRUNK:
if(getVehicleDataIndex(getItemData(itemId).ownerId)) { ownerTypeString = "Vehicle Trunk";
getVehicleDataIndex(getItemData(itemId).ownerId).trunkItemCache.splice(getVehicleDataIndex(getItemData(itemId).ownerId).trunkItemCache.indexOf(itemId), 1); owner = getVehicleFromDatabaseId(getItemData(itemId).ownerId)
if(getVehicleData(owner) != false) {
getVehicleDataIndex(getItemData(itemId).ownerId).trunkItemCache.splice(getVehicleData(owner).trunkItemCache.indexOf(itemId), 1);
} }
break; break;
case VRR_ITEM_OWNER_BIZFLOOR: case VRR_ITEM_OWNER_BIZFLOOR:
if(getBusinessDataIndex(getItemData(itemId).ownerId)) { ownerTypeString = "Business Floor";
getBusinessDataIndex(getItemData(itemId).ownerId).floorItemCache.splice(getBusinessDataIndex(getItemData(itemId).ownerId).floorItemCache.indexOf(itemId), 1); owner = getBusinessIdFromDatabaseId(getItemData(itemId).ownerId);
if(getBusinessData(owner) != false) {
getBusinessData(owner).floorItemCache.splice(getBusinessData(owner).floorItemCache.indexOf(itemId), 1);
} }
break; break;
case VRR_ITEM_OWNER_BIZSTORAGE: case VRR_ITEM_OWNER_BIZSTORAGE:
if(getBusinessDataIndex(getItemData(itemId).ownerId)) { ownerTypeString = "Business Storage";
getBusinessDataIndex(getItemData(itemId).ownerId).storageItemCache.splice(getBusinessDataIndex(getItemData(itemId).ownerId).storageItemCache.indexOf(itemId), 1); owner = getBusinessIdFromDatabaseId(getItemData(itemId).ownerId);
if(getBusinessData(owner) != false) {
getBusinessData(owner).storageItemCache.splice(getBusinessData(owner).storageItemCache.indexOf(itemId), 1);
} }
break; break;
case VRR_ITEM_OWNER_HOUSE: case VRR_ITEM_OWNER_HOUSE:
if(getHouseDataIndex(getItemData(itemId).ownerId)) { ownerTypeString = "House";
getHouseDataIndex(getItemData(itemId).ownerId).itemCache.splice(getHouseDataIndex(getItemData(itemId).ownerId).itemCache.indexOf(itemId), 1); owner = getHouseIdFromDatabaseId(getItemData(itemId).ownerId);
if(getHouseData(owner) != false) {
getHouseData(owner).itemCache.splice(getHouseData(owner).itemCache.indexOf(itemId), 1);
} }
break; break;
} }
logToConsole(LOG_DEBUG, `Deleted item ${itemId} (DBID: ${getItemData(itemId).databaseId}, Owner Type: ${ownerTypeString}, Owner ID: ${getItemData(itemId).ownerId})`);
if(getItemData(itemId).databaseId > 0) { if(getItemData(itemId).databaseId > 0) {
quickDatabaseQuery(`DELETE FROM item_main WHERE item_id = ${getItemData(itemId).databaseId}`); quickDatabaseQuery(`DELETE FROM item_main WHERE item_id = ${getItemData(itemId).databaseId}`);
@@ -1896,7 +1913,7 @@ function showBusinessFloorInventoryToPlayer(client, businessId) {
messagePlayerNormal(client, makeChatBoxSectionHeader(getLocaleString(client, "HeaderBusinessFloorItemList"))); messagePlayerNormal(client, makeChatBoxSectionHeader(getLocaleString(client, "HeaderBusinessFloorItemList")));
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(client, chunkedList[i].join(`{MAINCOLOUR} `), COLOUR_WHITE);
} }
} }
@@ -1916,7 +1933,7 @@ function showBusinessStorageInventoryToPlayer(client, businessId) {
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(client, chunkedList[i].join(`{MAINCOLOUR} `), COLOUR_WHITE);
} }
} }
@@ -1936,7 +1953,7 @@ function showItemInventoryToPlayer(client, itemId) {
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(client, chunkedList[i].join(`{MAINCOLOUR} `), COLOUR_WHITE);
} }
} }
@@ -1965,7 +1982,7 @@ function showPlayerInventoryToPlayer(client, 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(client, chunkedList[i].join(`{MAINCOLOUR} `), COLOUR_WHITE);
} }
} }
@@ -1985,7 +2002,7 @@ function showHouseInventoryToPlayer(client, houseId) {
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(client, chunkedList[i].join(`{MAINCOLOUR} `), COLOUR_WHITE);
} }
} }