mirror of
https://github.com/esx-framework/esx_core.git
synced 2026-09-04 08:13:21 +00:00
Add rare and canRemove flags on items
This commit is contained in:
+10
-7
@@ -1,12 +1,13 @@
|
||||
USE `essentialmode`;
|
||||
|
||||
ALTER TABLE `users`
|
||||
ADD COLUMN `name` VARCHAR(255) NULL DEFAULT '' AFTER `money`,
|
||||
ADD COLUMN `skin` LONGTEXT NULL AFTER `name`,
|
||||
ADD COLUMN `job` varchar(255) NULL DEFAULT 'unemployed' AFTER `skin`,
|
||||
ADD COLUMN `job_grade` INT NULL DEFAULT 0 AFTER `job`,
|
||||
ADD COLUMN `loadout` LONGTEXT NULL AFTER `job_grade`,
|
||||
ADD COLUMN `position` VARCHAR(255) NULL AFTER `loadout`;
|
||||
ADD COLUMN `name` VARCHAR(255) NULL DEFAULT '' AFTER `money`,
|
||||
ADD COLUMN `skin` LONGTEXT NULL AFTER `name`,
|
||||
ADD COLUMN `job` varchar(255) NULL DEFAULT 'unemployed' AFTER `skin`,
|
||||
ADD COLUMN `job_grade` INT NULL DEFAULT 0 AFTER `job`,
|
||||
ADD COLUMN `loadout` LONGTEXT NULL AFTER `job_grade`,
|
||||
ADD COLUMN `position` VARCHAR(255) NULL AFTER `loadout`
|
||||
;
|
||||
|
||||
CREATE TABLE `items` (
|
||||
|
||||
@@ -14,7 +15,9 @@ CREATE TABLE `items` (
|
||||
`name` varchar(255) NOT NULL,
|
||||
`label` varchar(255) NOT NULL,
|
||||
`limit` int(11) NOT NULL DEFAULT '-1',
|
||||
|
||||
`rare` int(11) NOT NULL DEFAULT '0',
|
||||
`can_remove` int(11) NOT NULL DEFAULT '1',
|
||||
|
||||
PRIMARY KEY (`id`)
|
||||
);
|
||||
|
||||
|
||||
@@ -972,20 +972,24 @@ ESX.ShowInventory = function()
|
||||
local elements = {}
|
||||
|
||||
table.insert(elements, {
|
||||
label = '[Cash] $' .. data.money,
|
||||
count = data.money,
|
||||
type = 'item_money',
|
||||
value = 'money',
|
||||
usable = false
|
||||
label = '[Cash] $' .. data.money,
|
||||
count = data.money,
|
||||
type = 'item_money',
|
||||
value = 'money',
|
||||
usable = false,
|
||||
rare = false,
|
||||
canRemove = true
|
||||
})
|
||||
|
||||
for i=1, #data.accounts, 1 do
|
||||
table.insert(elements, {
|
||||
label = '[' .. data.accounts[i].label .. '] $' .. data.accounts[i].money,
|
||||
count = data.accounts[i].money,
|
||||
type = 'item_account',
|
||||
value = data.accounts[i].name,
|
||||
usable = false
|
||||
label = '[' .. data.accounts[i].label .. '] $' .. data.accounts[i].money,
|
||||
count = data.accounts[i].money,
|
||||
type = 'item_account',
|
||||
value = data.accounts[i].name,
|
||||
usable = false,
|
||||
rare = false,
|
||||
canRemove = true
|
||||
})
|
||||
end
|
||||
|
||||
@@ -993,11 +997,13 @@ ESX.ShowInventory = function()
|
||||
|
||||
if data.inventory[i].count > 0 then
|
||||
table.insert(elements, {
|
||||
label = data.inventory[i].label .. ' x' .. data.inventory[i].count,
|
||||
count = data.inventory[i].count,
|
||||
type = 'item_standard',
|
||||
value = data.inventory[i].name,
|
||||
usable = data.inventory[i].usable
|
||||
label = data.inventory[i].label .. ' x' .. data.inventory[i].count,
|
||||
count = data.inventory[i].count,
|
||||
type = 'item_standard',
|
||||
value = data.inventory[i].name,
|
||||
usable = data.inventory[i].usable,
|
||||
rare = data.inventory[i].rare,
|
||||
canRemove = data.inventory[i].canRemove,
|
||||
})
|
||||
end
|
||||
|
||||
@@ -1012,11 +1018,13 @@ ESX.ShowInventory = function()
|
||||
local ammo = GetAmmoInPedWeapon(playerPed, weaponHash)
|
||||
|
||||
table.insert(elements, {
|
||||
label = Config.Weapons[i].label .. ' x1 [' .. ammo .. ']',
|
||||
count = 1,
|
||||
type = 'item_weapon',
|
||||
value = Config.Weapons[i].name,
|
||||
usable = false
|
||||
label = Config.Weapons[i].label .. ' x1 [' .. ammo .. ']',
|
||||
count = 1,
|
||||
type = 'item_weapon',
|
||||
value = Config.Weapons[i].name,
|
||||
usable = false,
|
||||
rare = false,
|
||||
canRemove = true
|
||||
})
|
||||
|
||||
end
|
||||
@@ -1041,8 +1049,11 @@ ESX.ShowInventory = function()
|
||||
table.insert(elements, {label = _U('use'), action = 'use', type = data.current.type, value = data.current.value})
|
||||
end
|
||||
|
||||
table.insert(elements, {label = _U('give'), action = 'give', type = data.current.type, value = data.current.value})
|
||||
table.insert(elements, {label = _U('remove'), action = 'remove', type = data.current.type, value = data.current.value})
|
||||
if data.current.canRemove then
|
||||
table.insert(elements, {label = _U('give'), action = 'give', type = data.current.type, value = data.current.value})
|
||||
table.insert(elements, {label = _U('remove'), action = 'remove', type = data.current.type, value = data.current.value})
|
||||
end
|
||||
|
||||
table.insert(elements, {label = _U('return'), action = 'return'})
|
||||
|
||||
ESX.UI.Menu.Open(
|
||||
|
||||
@@ -22,8 +22,10 @@ AddEventHandler('onMySQLReady', function ()
|
||||
|
||||
for i=1, #result, 1 do
|
||||
ESX.Items[result[i].name] = {
|
||||
label = result[i].label,
|
||||
limit = result[i].limit
|
||||
label = result[i].label,
|
||||
limit = result[i].limit,
|
||||
rare = (result[i].rare == 1 and true or false),
|
||||
canRemove = (result[i].can_remove == 1 and true or false),
|
||||
}
|
||||
end
|
||||
|
||||
|
||||
@@ -71,11 +71,13 @@ AddEventHandler('es:playerLoaded', function(source, _player)
|
||||
|
||||
for i=1, #inventory, 1 do
|
||||
table.insert(userData.inventory, {
|
||||
name = inventory[i].item,
|
||||
count = inventory[i].count,
|
||||
label = ESX.Items[inventory[i].item].label,
|
||||
limit = ESX.Items[inventory[i].item].limit,
|
||||
usable = ESX.UsableItemsCallbacks[inventory[i].item] ~= nil
|
||||
name = inventory[i].item,
|
||||
count = inventory[i].count,
|
||||
label = ESX.Items[inventory[i].item].label,
|
||||
limit = ESX.Items[inventory[i].item].limit,
|
||||
usable = ESX.UsableItemsCallbacks[inventory[i].item] ~= nil,
|
||||
rare = ESX.Items[inventory[i].item].rare,
|
||||
canRemove = ESX.Items[inventory[i].item].canRemove,
|
||||
})
|
||||
end
|
||||
|
||||
@@ -93,11 +95,13 @@ AddEventHandler('es:playerLoaded', function(source, _player)
|
||||
if not found then
|
||||
|
||||
table.insert(userData.inventory, {
|
||||
name = k,
|
||||
count = 0,
|
||||
label = ESX.Items[k].label,
|
||||
limit = ESX.Items[k].limit,
|
||||
usable = ESX.UsableItemsCallbacks[k] ~= nil
|
||||
name = k,
|
||||
count = 0,
|
||||
label = ESX.Items[k].label,
|
||||
limit = ESX.Items[k].limit,
|
||||
usable = ESX.UsableItemsCallbacks[k] ~= nil,
|
||||
rare = ESX.Items[k].rare,
|
||||
canRemove = ESX.Items[k].canRemove,
|
||||
})
|
||||
|
||||
MySQL.Async.execute(
|
||||
|
||||
Reference in New Issue
Block a user