forked from Simnation/Main
edf
This commit is contained in:
parent
7f26844507
commit
a2990fe815
120 changed files with 0 additions and 0 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,174 +0,0 @@
|
|||
local admin = nil
|
||||
|
||||
---@return boolean
|
||||
function isPlayerAdmin()
|
||||
if admin == nil then
|
||||
admin = lib.callback.await("tgiann-inventory:server:isAdmin", false)
|
||||
end
|
||||
return admin
|
||||
end
|
||||
|
||||
---@param job string
|
||||
---@return boolean
|
||||
function isPolice(job)
|
||||
for i = 1, #config.weaponPoliceJobs do
|
||||
if config.weaponPoliceJobs[i] == job then
|
||||
return true
|
||||
end
|
||||
end
|
||||
return false
|
||||
end
|
||||
|
||||
---@param bool boolean
|
||||
function hotbarIsOpenEditable(bool)
|
||||
TriggerEvent("tgiann-inventory:hotbar", bool)
|
||||
end
|
||||
|
||||
---@return boolean
|
||||
function canOpen()
|
||||
if not PlayerData then PlayerData = exports["tgiann-core"]:getPlayerData() end
|
||||
return not IsNuiFocused() and not IsDisabledControlPressed(0, 19) and client.inventoryActive and not client.isDead and not IsPauseMenuActive() and client.playerLoaded and not PlayerData.metadata.kelepce and not PlayerData.metadata.pkelepce
|
||||
end
|
||||
|
||||
---@param text string
|
||||
---@param type? "me" | "do"
|
||||
function emote(text, type)
|
||||
if not config.autoEmote then return end
|
||||
ExecuteCommand((type or "me") .. " " .. text)
|
||||
end
|
||||
|
||||
RegisterNetEvent('tgiann-inventory:emote')
|
||||
AddEventHandler('tgiann-inventory:emote', emote)
|
||||
|
||||
function opened()
|
||||
TriggerEvent("tgiann-hud:ui", false)
|
||||
TriggerEvent("tgiann-lumihud:ui", false)
|
||||
end
|
||||
|
||||
function closed()
|
||||
TriggerEvent("tgiann-hud:ui", true)
|
||||
TriggerEvent("tgiann-lumihud:ui", true)
|
||||
end
|
||||
|
||||
---@return boolean
|
||||
function disableClotheButton()
|
||||
--[[ local onDuty = false
|
||||
if PlayerData.job.name == "police" then
|
||||
onDuty = PlayerData.job.onduty
|
||||
end
|
||||
return onDuty or (exports["tgiann-event"]:joinedAnyEvent() and true or false ) or exports["tgiann-clothing"]:isInspect() ]]
|
||||
return false
|
||||
end
|
||||
|
||||
---@param vehicle number
|
||||
---@return {maxweight: number, slots: number}
|
||||
function getTrunkData(vehicle)
|
||||
local modelData = config.vehicleModelSlotsMaxWeights[GetEntityModel(vehicle)]
|
||||
if modelData then
|
||||
return {
|
||||
maxweight = modelData.maxWeight,
|
||||
slots = modelData.slots,
|
||||
}
|
||||
end
|
||||
|
||||
local classData = config.vehicleClassSlotsMaxWeights[GetVehicleClass(vehicle)]
|
||||
if classData then
|
||||
return {
|
||||
maxweight = classData.maxWeight,
|
||||
slots = classData.slots,
|
||||
}
|
||||
end
|
||||
|
||||
return {
|
||||
maxweight = 10000,
|
||||
slots = 5,
|
||||
}
|
||||
end
|
||||
|
||||
---@return boolean
|
||||
function removeWeaponCustom()
|
||||
--[[ if exports["tgiann-pvpinventory"]:isActive() then
|
||||
SetCurrentWeapon()
|
||||
return true
|
||||
end ]]
|
||||
return false
|
||||
end
|
||||
|
||||
---@return boolean
|
||||
function dropWeaponWhenDieEditable()
|
||||
--[[ local zoneIsRed = exports["tgiann-safezone"]:getZoneType() == "red"
|
||||
if zoneIsRed and exports["tgiann-police"]:playerIsPolice() then
|
||||
return
|
||||
end
|
||||
|
||||
if zoneIsRed and PlayerData.metadata.vip.level == 2 and math.random(1, 100) >= 50 then -- 2 Level VIP Özelliği %50 silah düşme oranı
|
||||
TriggerEvent("inventory:client:removeWeapon")
|
||||
return
|
||||
end ]]
|
||||
|
||||
return true
|
||||
end
|
||||
|
||||
---@param status { hunger?:number, thirst?:number }
|
||||
function setPlayerStatus(status)
|
||||
if config.framework == "esx" then
|
||||
if status.hunger then
|
||||
TriggerEvent("esx_status:getStatus", "hunger", function(value)
|
||||
value.set(value.val + status.hunger)
|
||||
end)
|
||||
end
|
||||
if status.thirst then
|
||||
TriggerEvent("esx_status:getStatus", "thirst", function(value)
|
||||
value.set(value.val + status.thirst)
|
||||
end)
|
||||
end
|
||||
elseif config.framework == "qb" then
|
||||
if status.hunger then
|
||||
TriggerServerEvent("consumables:server:addHunger", tgiCore.core.Functions.GetPlayerData().metadata.hunger + status.hunger)
|
||||
end
|
||||
if status.thirst then
|
||||
TriggerServerEvent("consumables:server:addThirst", tgiCore.core.Functions.GetPlayerData().metadata.thirst + status.thirst)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
---@param itemConfig table
|
||||
---@param itemName string
|
||||
function editableAddCarryItem(itemConfig, itemName)
|
||||
-- LocalPlayer.state:set('hrCarry', itemName, false)
|
||||
end
|
||||
|
||||
---@param carryItem {object:number, item:string}
|
||||
function editableRemoveCarryItem(carryItem)
|
||||
-- LocalPlayer.state:set('hrCarry', nil, false)
|
||||
end
|
||||
|
||||
---@return boolean
|
||||
function canUseRealisticArmor()
|
||||
return true
|
||||
end
|
||||
|
||||
---@param targetPlayerPed number PlayerPedId
|
||||
---@param targetPlayerServerId number PlayerServerId
|
||||
function canRobTarget(targetPlayerPed, targetPlayerServerId)
|
||||
local isDead = tgiCore.IsTargetDead(targetPlayerServerId)
|
||||
if isDead then return config.searchPlayer.deadPlayer, lang.robDeadError end
|
||||
|
||||
if not config.searchPlayer.animation.active then return true end
|
||||
|
||||
for i = 1, #config.searchPlayer.animation.list do
|
||||
local data = config.searchPlayer.animation.list[i]
|
||||
if IsEntityPlayingAnim(targetPlayerPed, data.name, data.anim, 3) then
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
return false, lang.robAnimationError
|
||||
end
|
||||
|
||||
---@param enable boolean
|
||||
function setFastSlotsEnable(enable)
|
||||
client.fastSlotsEnable = enable
|
||||
end
|
||||
|
||||
exports("SetFastSlotsEnable", setFastSlotsEnable)
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,29 +0,0 @@
|
|||
-- headerClickMainFunction and headerClickShopFunction are test functions, you may need to edit them or delete them from config
|
||||
function headerClickMainFunction()
|
||||
--[[
|
||||
-- Example
|
||||
CloseInventory()
|
||||
while IsNuiFocused() do Wait(100) end
|
||||
exports["tgiann-esc"]:open() ]]
|
||||
tgiCore.notif("I'm test button please edit me from client/topHeader.lua", 10000, "error")
|
||||
end
|
||||
|
||||
function headerClickShopFunction()
|
||||
--exports["tgiann-coinshop"]:openUi() -- Example
|
||||
tgiCore.notif("I'm test button please edit me from client/topHeader.lua", 10000, "error")
|
||||
end
|
||||
|
||||
function headerClickSettingsFunction()
|
||||
CloseInventory()
|
||||
while IsNuiFocused() do Wait(100) end
|
||||
ActivateFrontendMenu(`FE_MENU_VERSION_LANDING_MENU`, 0, -1)
|
||||
end
|
||||
|
||||
function headerClickCraftFunction()
|
||||
TriggerEvent("tgiann-inventory:craft:openDefault")
|
||||
end
|
||||
|
||||
RegisterNUICallback("headerClick", function(funcName, cb)
|
||||
_G[funcName]()
|
||||
cb("")
|
||||
end)
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,409 +0,0 @@
|
|||
--[[
|
||||
- this script needs tgiann-core script to work, you can download the script from your keymaster account
|
||||
Start tgiann-core script after es_extented/qb-core script and before tgiann-* scripts
|
||||
Adjust the tgiann-core config file according to the framework you are using
|
||||
|
||||
Docs: https://tgiann.gitbook.io/tgiann/scripts/tgiann-inventory
|
||||
Other Language Files: https://discord.com/channels/813192868906532905/1307000341547454595 (Discord > Translations Thread)
|
||||
]]
|
||||
|
||||
tgiCoreExports = exports["tgiann-core"]
|
||||
config = tgiCoreExports:getConfig()
|
||||
config.lang = "en"
|
||||
|
||||
-- The config.locale value is retrieved from tgiann-core.
|
||||
config.locale.symbol = "$"
|
||||
|
||||
-- Recommendation:
|
||||
-- It is recommended to use the needRegisterStash setting or disableClientOpenInventory setting to true.
|
||||
-- If needRegisterStash is true, inventories not registered by the client cannot be opened
|
||||
-- If disableClientOpenInventory is true, the client will not be able to trigger openinventory events or exports, so cheaters will not be able to open inventories on client side.
|
||||
-- if you activate these two settings, you should edit all your scripts and move the openinventory exports or events to the server side.
|
||||
-- while doing this, you must first register the inventory with register stash and write extra protections in your server side event that opens the inventory.
|
||||
-- for example, if it is a police stash, checking the player's job first is an extra precaution against cheaters.
|
||||
config.needRegisterStash = false -- When true, the inventory must be registered with RegisterStash for stash and craft inventories. if the inventory is not registered. you cannot open the inventory with openInventory
|
||||
config.disableClientOpenInventory = {
|
||||
disabled = false, -- When true, openinventory events and exports triggered from client will not work
|
||||
ignoreTypeList = { -- When the type is in this list, it will not be disabled
|
||||
glovebox = true, -- Don't remove this
|
||||
trunk = true, -- Don't remove this
|
||||
drop = true, -- Don't remove this
|
||||
crafting = true,
|
||||
--shop = true
|
||||
}
|
||||
}
|
||||
|
||||
config.moneyAsItem = { -- https://docs.tgiann.com/scripts/tgiann-inventory/how-do-money-as-item
|
||||
active = true,
|
||||
items = {
|
||||
-- item name / money type
|
||||
qb = { -- for qb and qbox
|
||||
money_item = "cash",
|
||||
-- black_money = "black_money" -- for black money
|
||||
},
|
||||
esx = { -- for esx
|
||||
money_item = "money",
|
||||
-- black_money = "black_money" -- for black money
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
config.blockWeaponWheel = true -- If you don't have a script that blocks weaponwheel make it true, if you do have a script than false
|
||||
config.preventHandWeaponChangingSlots = true -- prevents the player from changing the slot of the weapon they are using
|
||||
config.showItemLabelOnMainInventory = false -- turn on/off the label of items in the main inventory
|
||||
config.accessDropWhenInVehicle = false -- if true, players can drop items and access drop inventory while in the vehicle
|
||||
config.kickPlayerWhenHackingDatected = false -- if true, the player will be kicked when the inventory hack is detected (U can edit ban function from editable)
|
||||
config.autoEmote = true -- if true, the player will automatically me and do the emote when the trunk etc is opened
|
||||
config.inventorySaveTime = 10 -- How often should updated inventory data be saved to the database? (Minute)
|
||||
config.createDropWhenPlayerFull = true -- if true, when the player is full, the item will be dropped to the ground (only work with AddItem export)
|
||||
|
||||
-- false - "serverid" - "citizenid"
|
||||
-- citizenid: QB: citizenid, ESX: identifier
|
||||
config.contextGiveItemId = "serverid"
|
||||
config.contextGiveShowPlayerName = false -- if true, the player name will be shown in the context menu when giving an item to another player
|
||||
|
||||
config.openOwner = {
|
||||
trunk = {
|
||||
active = false, -- When set to true, only the vehicle owner can open the trunk.
|
||||
openNpc = true, -- When the setting is active, the trunk can be used if the vehicle doesn't belong to anyone.
|
||||
},
|
||||
glovebox = {
|
||||
active = false, -- When set to true, only the vehicle owner can open the glovebox.
|
||||
openNpc = false, -- When the setting is active, the glovebox can be used if the vehicle doesn't belong to anyone.
|
||||
}
|
||||
}
|
||||
|
||||
config.searchPlayer = {
|
||||
askTarget = {
|
||||
active = true, -- If true, when a player is searched, a request is sent to the other player to accept the search.
|
||||
keys = {
|
||||
accept = { key = 246, label = "Y" },
|
||||
cancel = { key = 249, label = "N" },
|
||||
}
|
||||
},
|
||||
animation = {
|
||||
active = true, -- If true, the target player should play one of the following animations. if it's not playing one of the animations, it can't be searched.
|
||||
list = { -- animation list
|
||||
{ name = "missminuteman_1ig_2", anim = "handsup_base", },
|
||||
{ name = "mp_arresting", anim = "idle", },
|
||||
},
|
||||
},
|
||||
deadPlayer = false, -- if true, the player can be searched while dead.
|
||||
}
|
||||
|
||||
config.openMaxDistance = {
|
||||
player = 5, -- The distance the player can open the other player inventory
|
||||
trunk = 10, -- The distance the player can open the trunk
|
||||
}
|
||||
|
||||
config.defaultSettings = {
|
||||
blurbg = true, -- Sets the background blur setting of the player entering the server for the first time to the value in config.
|
||||
blurMenu = false, -- Sets the menu background blur setting of the player entering the server for the first time to the value in config. (causes these players to make the screen flicker)
|
||||
character = true, -- Sets the character visibility setting for the first player to enter the server to the value in config.
|
||||
|
||||
-- if you leave only one color the player will not change the color of the ui
|
||||
-- if you are using tgiann-lumihud this setting will not work. colors will be changed from the /hud menu of lumihud
|
||||
-- only use hex color
|
||||
defaultColors = {
|
||||
{ label = "Green", background = config.defaultColor.background, color = config.defaultColor.color }, -- The first index is set as the default color of the inventory.
|
||||
{ label = "Lime Green", background = "#32CD32", color = "#252525" },
|
||||
{ label = "Sea Green", background = "#2E8B57", color = "#fff" },
|
||||
{ label = "Bright Blue", background = "#00BFFF", color = "#252525" },
|
||||
{ label = "Electric Blue", background = "#7DF9FF", color = "#252525" },
|
||||
{ label = "Neon Red", background = "#FF073A", color = "#fff" },
|
||||
{ label = "Electric Red", background = "#FF3333", color = "#fff" },
|
||||
{ label = "Neon Orange", background = "#FF4500", color = "#fff" },
|
||||
{ label = "Bright Orange", background = "#FFA500", color = "#252525" },
|
||||
{ label = "Fluorescent Yellow", background = "#CCFF00", color = "#252525" },
|
||||
{ label = "Hot Pink", background = "#FF69B4", color = "#fff" },
|
||||
{ label = "Deep Pink", background = "#FF1493", color = "#fff" },
|
||||
{ label = "Fuchsia", background = "#FF00FF", color = "#fff" },
|
||||
{ label = "Violet", background = "#8A2BE2", color = "#fff" },
|
||||
{ label = "Plum", background = "#DDA0DD", color = "#252525" },
|
||||
{ label = "Lavender", background = "#E6E6FA", color = "#252525" },
|
||||
{ label = "Light Green", background = "#90EE90", color = "#252525" },
|
||||
{ label = "Light Blue", background = "#ADD8E6", color = "#252525" },
|
||||
{ label = "Golden", background = "#FFD700", color = "#252525" },
|
||||
{ label = "Cobalt Blue", background = "#0047AB", color = "#fff" },
|
||||
{ label = "Rose Red", background = "#FFC0CB", color = "#252525" },
|
||||
{ label = "Peach", background = "#FFDAB9", color = "#252525" },
|
||||
{ label = "Copper", background = "#B87333", color = "#252525" },
|
||||
{ label = "Cream", background = "#FFFDD0", color = "#252525" },
|
||||
}
|
||||
}
|
||||
|
||||
--[[
|
||||
-- Set this setting to false if you are not using tgiann-clothing or do not want clothes to be items
|
||||
-- if you are using tgiann-clothing, make this and the config.clothingAsItem setting in clothing the same
|
||||
-- false version; https://youtu.be/o7ZofZZ00fo
|
||||
-- If config.clothingAsItem is true, make sure the following items are added to your item list
|
||||
c_necklace = { name = "c_necklace", label = "Necklace (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_bproof = { name = "c_bproof", label = "Bullet Proof (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_decal = { name = "c_decal", label = "Decals (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_torso = { name = "c_torso", label = "Torso (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_mask = { name = "c_mask", label = "Mask (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_helmet = { name = "c_helmet", label = "Hat (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_glasses = { name = "c_glasses", label = "Glasses (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_bag = { name = "c_bag", label = "Bag (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_pants = { name = "c_pants", label = "Pants (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_shoes = { name = "c_shoes", label = "Shoes (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_bracelet = { name = "c_bracelet", label = "Bracelet (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_watch = { name = "c_watch", label = "Watch (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_ear = { name = "c_ear", label = "Ear (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
kposet = { name = "kposet", label = "Clothes Bag", weight = 100, type = "item", unique = true, useable = true, shouldClose = false, description = "Special Bag to Store Your Clothes" }, -- Clothe small bag item
|
||||
bkposet = { name = "bkposet", label = "Clothes Bag Plus", weight = 300, type = "item", unique = true, useable = true, shouldClose = false, description = "Special Bag to Store Your Clothes" }, -- Clothe big bag item
|
||||
clothe_set = { name = 'clothe_set', label = 'Clothe Set', weight = 0, type = 'item', image = 'clothe_set.png', clothe = true, unique = true, useable = true, shouldClose = false, description = '' }, -- Clothe set item
|
||||
]]
|
||||
config.clothingAsItem = false
|
||||
|
||||
-- Only works when clothingAsItem is false or Custom Script Clothe is active(https://docs.tgiann.com/scripts/tgiann-clothing/events-exports#custom-script-clothe)
|
||||
config.naked = {
|
||||
male = {
|
||||
c_torso = {
|
||||
{ componentId = 8, prop = 15, texture = 0 }, --tshirt
|
||||
{ componentId = 11, prop = 15, texture = 0 }, -- torso
|
||||
{ componentId = 3, prop = 15, texture = 0 } -- arms
|
||||
},
|
||||
c_pants = {
|
||||
{ componentId = 4, prop = 61, texture = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 } }
|
||||
},
|
||||
c_shoes = { { componentId = 6, prop = 34, texture = 0 } },
|
||||
c_decal = { { componentId = 10, prop = 0, texture = 0 } },
|
||||
c_bag = { { componentId = 5, prop = 0, texture = 0 } },
|
||||
c_ear = { { componentId = 2, prop = -1, texture = -1 } },
|
||||
c_necklace = { { componentId = 7, prop = 0, texture = 0 } },
|
||||
c_bproof = { { componentId = 9, prop = 0, texture = 0 } },
|
||||
c_bracelet = { { componentId = 7, prop = -1, texture = -1 } },
|
||||
c_watch = { { componentId = 6, prop = -1, texture = -1 } },
|
||||
c_glasses = { { componentId = 1, prop = -1, texture = -1 } },
|
||||
c_helmet = { { componentId = 0, prop = -1, texture = -1 } },
|
||||
c_mask = { { componentId = 1, prop = 0, texture = 0 } },
|
||||
},
|
||||
female = {
|
||||
c_torso = {
|
||||
{ componentId = 8, prop = 15, texture = 0 }, --tshirt
|
||||
{ componentId = 11, prop = 15, texture = 0 }, -- torso
|
||||
{ componentId = 3, prop = 15, texture = 0 } -- arms
|
||||
},
|
||||
c_pants = {
|
||||
{ componentId = 4, prop = 62, texture = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 } }
|
||||
},
|
||||
c_shoes = { { componentId = 6, prop = 35, texture = 0 } },
|
||||
c_decal = { { componentId = 10, prop = 0, texture = 0 } },
|
||||
c_bag = { { componentId = 5, prop = 0, texture = 0 } },
|
||||
c_ear = { { componentId = 2, prop = -1, texture = -1 } },
|
||||
c_necklace = { { componentId = 7, prop = 0, texture = 0 } },
|
||||
c_bproof = { { componentId = 9, prop = 0, texture = 0 } },
|
||||
c_bracelet = { { componentId = 7, prop = -1, texture = -1 } },
|
||||
c_watch = { { componentId = 6, prop = -1, texture = -1 } },
|
||||
c_glasses = { { componentId = 1, prop = -1, texture = -1 } },
|
||||
c_helmet = { { componentId = 0, prop = -1, texture = -1 } },
|
||||
c_mask = { { componentId = 1, prop = 0, texture = 0 } },
|
||||
}
|
||||
}
|
||||
|
||||
-- You can make the inventory, trunk and glovebox keys the same if you want
|
||||
config.keys = {
|
||||
inventoryClose = { "Escape", "F2" }, --JS event code, https://www.toptal.com/developers/keycode
|
||||
inventory = "F2",
|
||||
glovebox = "G",
|
||||
trunk = "G",
|
||||
hotbar = "TAB",
|
||||
getGround = {
|
||||
label = "H",
|
||||
key = 74 -- https://docs.fivem.net/docs/game-references/controls/
|
||||
}
|
||||
}
|
||||
|
||||
config.openTrunkDistance = { -- is checked when the trunk key is pressed
|
||||
default = 1.5, -- Default open distance
|
||||
models = { -- if the vehicle is too big and you have difficulty opening the trunk, you can increase the distance by adding models here
|
||||
[`tug`] = 8.0
|
||||
}
|
||||
}
|
||||
|
||||
config.jerryCan = {
|
||||
ammoKey = "ammo",
|
||||
item = "weapon_petrolcan",
|
||||
removeAmmoZero = true, -- if true, the item will be removed when the ammo is 0
|
||||
disableAmmoZero = true, -- if true, the item will not be used when the ammo is 0
|
||||
invSetAmmoData = true, -- If true, it sets Jerry Can's data into an inventory
|
||||
}
|
||||
config.jerryCan.metadata = { [config.jerryCan.ammoKey] = 10000 }
|
||||
|
||||
-- Additions to this config will activate rare on items.
|
||||
-- Add the key name as rareName="weaponPlus" to the item in your items.lua file
|
||||
-- EXAMPLE: stungun_ammo = { rareName="weaponPlus", name = 'stungun_ammo', label = 'Stungun ammo', weight = 200, type = 'item', image = 'stungun_ammo.webp', unique = false, useable = true, shouldClose = true, description = 'Ammo for Stungun' },
|
||||
config.rare = {
|
||||
weaponPlus = {
|
||||
color = { r = 255, g = 235, b = 59 },
|
||||
label = "Plus Weapon"
|
||||
},
|
||||
weaponPolice = {
|
||||
color = { r = 40, g = 217, b = 241 },
|
||||
label = "Police Weapon"
|
||||
},
|
||||
weaponPoliceAmmo = {
|
||||
color = { r = 40, g = 217, b = 241 },
|
||||
label = "Police Ammo"
|
||||
}
|
||||
}
|
||||
|
||||
-- the buttons at the top when you open the inventory.
|
||||
config.topHeaderIcons = {
|
||||
{
|
||||
icon = "qrcode", -- fontawasome icon name (https://fontawesome.com/icons)
|
||||
click = "headerClickMainFunction", -- u can edit this function from topHeader.lua
|
||||
style = { -- css style
|
||||
color = "#ffffff7f" -- icon color
|
||||
}
|
||||
},
|
||||
{
|
||||
icon = "pen-ruler", -- fontawasome icon name (https://fontawesome.com/icons))
|
||||
click = "headerClickCraftFunction", -- u can edit this function from topHeader.lua
|
||||
style = { -- css style
|
||||
color = "var(--green)" -- icon color
|
||||
}
|
||||
},
|
||||
{
|
||||
icon = "cart-shopping", -- fontawasome icon name (https://fontawesome.com/icons)
|
||||
webpage = "https://tgiann.com", -- u can edit this function from topHeader.lua
|
||||
style = { -- css style
|
||||
color = "#fce93dd9" -- icon color
|
||||
}
|
||||
},
|
||||
--[[
|
||||
{ -- for tgiann-coinshop https://tgiann.tebex.io/package/6001460
|
||||
icon = "shop", -- fontawasome icon name (https://fontawesome.com/icons)
|
||||
click = "headerClickShopFunction", -- u can edit this function from topHeader.lua
|
||||
style = { -- css style
|
||||
color = "#ffffff7f" -- icon color
|
||||
}
|
||||
},
|
||||
]]
|
||||
}
|
||||
|
||||
config.dropWhenDie = {
|
||||
weapons = true, -- when you die, the gun in your hand falls to the ground
|
||||
money = true, -- when you die, your money falls to the ground
|
||||
|
||||
dropMinMoney = 100, -- if the player's money is above this value, it drop to the ground
|
||||
dropMaxMoney = 25000, -- if the player's money is above this value, the max drops by this value
|
||||
|
||||
distance = {
|
||||
propRender = 50,
|
||||
drawTextDist = 8,
|
||||
pressDist = 1.8
|
||||
},
|
||||
}
|
||||
|
||||
config.slotsMaxWeights = {
|
||||
player = {
|
||||
slots = 55,
|
||||
maxWeight = 100000
|
||||
},
|
||||
drop = {
|
||||
slots = 20,
|
||||
maxWeight = 1000000
|
||||
},
|
||||
default = { -- These values will be active if maxweight and slots data is not sent in the stash event
|
||||
slots = 100,
|
||||
maxWeight = 1000000
|
||||
},
|
||||
trunk = { -- These values will be active if maxweight and slots data is not sent in the trunk event
|
||||
slots = 5,
|
||||
maxWeight = 10000
|
||||
},
|
||||
glovebox = { -- These values will be active if maxweight and slots data is not sent in the glovebox event
|
||||
slots = 1,
|
||||
maxWeight = 4000
|
||||
}
|
||||
}
|
||||
|
||||
config.vehicleClassSlotsMaxWeights = {
|
||||
[0] = { slots = 10, maxWeight = 50000 }, -- Compacts
|
||||
[1] = { slots = 10, maxWeight = 100000 }, -- Sedans
|
||||
[2] = { slots = 10, maxWeight = 75000 }, -- SUVs
|
||||
[3] = { slots = 10, maxWeight = 30000 }, -- Coupes
|
||||
[4] = { slots = 10, maxWeight = 30000 }, -- Muscle
|
||||
[5] = { slots = 5, maxWeight = 10000 }, -- Sports Classics
|
||||
[6] = { slots = 5, maxWeight = 25000 }, -- Sports
|
||||
[7] = { slots = 5, maxWeight = 5000 }, -- Super
|
||||
[8] = { slots = 1, maxWeight = 2000 }, -- Motorcycles
|
||||
[9] = { slots = 10, maxWeight = 75000 }, -- Off-road
|
||||
[10] = { slots = 5, maxWeight = 10000 }, -- Industrial
|
||||
[11] = { slots = 5, maxWeight = 10000 }, -- Utility
|
||||
[12] = { slots = 25, maxWeight = 500000 }, -- Vans
|
||||
[13] = { slots = 1, maxWeight = 2000 }, -- Cycles
|
||||
[14] = { slots = 5, maxWeight = 10000 }, -- Boats
|
||||
[15] = { slots = 5, maxWeight = 10000 }, -- Helicopters
|
||||
[16] = { slots = 5, maxWeight = 10000 }, -- Planes
|
||||
[17] = { slots = 5, maxWeight = 10000 }, -- Service
|
||||
[18] = { slots = 5, maxWeight = 10000 }, -- Emergency
|
||||
[19] = { slots = 5, maxWeight = 10000 }, -- Military
|
||||
[20] = { slots = 40, maxWeight = 800000 }, -- Commercial
|
||||
[21] = { slots = 5, maxWeight = 10000 }, -- Trains
|
||||
[22] = { slots = 5, maxWeight = 10000 }, -- Open Wheel
|
||||
}
|
||||
|
||||
config.vehicleModelSlotsMaxWeights = {
|
||||
[`bcat`] = { slots = 200, maxWeight = 10000000 }
|
||||
}
|
||||
|
||||
-- backpack command settings "(/backpack)"
|
||||
config.backpack = {
|
||||
{ -- Default (Level 1)
|
||||
weight = config.slotsMaxWeights.player.maxWeight,
|
||||
slots = config.slotsMaxWeights.player.slots,
|
||||
},
|
||||
{ -- Level 2
|
||||
weight = config.slotsMaxWeights.player.maxWeight + 50000,
|
||||
slots = config.slotsMaxWeights.player.slots + 30,
|
||||
},
|
||||
{ -- Level 3
|
||||
weight = config.slotsMaxWeights.player.maxWeight + 100000,
|
||||
slots = config.slotsMaxWeights.player.slots + 55,
|
||||
}
|
||||
}
|
||||
|
||||
config.BackEngineVehicles = {
|
||||
[`ninef`] = 4,
|
||||
[`adder`] = 4,
|
||||
[`vagner`] = 5,
|
||||
[`t20`] = 5,
|
||||
[`infernus`] = 4,
|
||||
[`zentorno`] = 4,
|
||||
[`reaper`] = 4,
|
||||
[`comet2`] = 4,
|
||||
[`comet3`] = 5,
|
||||
[`jester`] = 4,
|
||||
[`jester2`] = 4,
|
||||
[`cheetah`] = 5,
|
||||
[`cheetah2`] = 5,
|
||||
[`prototipo`] = 5,
|
||||
[`turismor`] = 5,
|
||||
[`pfister811`] = 5,
|
||||
[`ardent`] = 5,
|
||||
[`nero`] = 4,
|
||||
[`nero2`] = 4,
|
||||
[`tempesta`] = 5,
|
||||
[`vacca`] = 4,
|
||||
[`bullet`] = 4,
|
||||
[`osiris`] = 5,
|
||||
[`entityxf`] = 4,
|
||||
[`turismo2`] = 5,
|
||||
[`fmj`] = 4,
|
||||
[`re7b`] = 4,
|
||||
[`tyrus`] = 5,
|
||||
[`italigtb`] = 4,
|
||||
[`penetrator`] = 4,
|
||||
[`monroe`] = 4,
|
||||
[`ninef2`] = 4,
|
||||
[`stingergt`] = 5,
|
||||
[`gp1`] = 5,
|
||||
[`autarch`] = 5,
|
||||
[`tyrant`] = 4
|
||||
}
|
||||
|
||||
config.langs = {} -- don't change
|
||||
config.strengthDivision = 100 -- for my server :(
|
|
@ -1,97 +0,0 @@
|
|||
--[[
|
||||
Update Video: https://youtu.be/DeWn_e7cZwE
|
||||
1 : To load bullets into the gun, you must use the bullet item. When used, it will load bullets based on the `config.ammo.ammo` value.
|
||||
2 : Pressing the R key reloads bullets from your inventory up to the weapon's magazine limit. For example, if the magazine limit is 30, it will deduct 30 bullets from your inventory and load them into the clip.
|
||||
]]
|
||||
config.ammoSystem = 2 -- 1 or 2
|
||||
|
||||
config.clearAnimationWhenReload = false -- when true, the animation will be cleared when reloading
|
||||
config.disableStunGunAmmo = false -- when true, stungun works like in gta
|
||||
|
||||
config.reloadProgressbarBar = {
|
||||
time = 2000,
|
||||
disables = {
|
||||
disableMovement = false,
|
||||
disableCarMovement = false,
|
||||
disableMouse = false,
|
||||
disableCombat = true,
|
||||
}
|
||||
}
|
||||
|
||||
config.ammo = {
|
||||
{
|
||||
ammoType = "AMMO_STUNGUN",
|
||||
item = "stungun_ammo",
|
||||
ammo = 2, -- Only works on ammoSystem 1
|
||||
maxAmmoInWeapon = 2, -- Only works on ammoSystem 1
|
||||
isStunGun = true,
|
||||
},
|
||||
{
|
||||
ammoType = "AMMO_PISTOL",
|
||||
item = "pistol_ammo",
|
||||
ammo = 30, -- Only works on ammoSystem 1
|
||||
maxAmmoInWeapon = 250 -- Only works on ammoSystem 1
|
||||
},
|
||||
{
|
||||
ammoType = "AMMO_SMG",
|
||||
item = "smg_ammo",
|
||||
ammo = 30, -- Only works on ammoSystem 1
|
||||
maxAmmoInWeapon = 250 -- Only works on ammoSystem 1
|
||||
},
|
||||
{
|
||||
ammoType = "AMMO_SHOTGUN",
|
||||
item = "shotgun_ammo",
|
||||
ammo = 30, -- Only works on ammoSystem 1
|
||||
maxAmmoInWeapon = 250 -- Only works on ammoSystem 1
|
||||
},
|
||||
{
|
||||
ammoType = "AMMO_RIFLE",
|
||||
item = "rifle_ammo",
|
||||
ammo = 30, -- Only works on ammoSystem 1
|
||||
maxAmmoInWeapon = 250 -- Only works on ammoSystem 1
|
||||
},
|
||||
{
|
||||
ammoType = "AMMO_SNIPER",
|
||||
item = "snp_ammo",
|
||||
ammo = 4, -- Only works on ammoSystem 1
|
||||
maxAmmoInWeapon = 250 -- Only works on ammoSystem 1
|
||||
},
|
||||
{
|
||||
ammoType = "AMMO_MG",
|
||||
item = "mg_ammo",
|
||||
ammo = 120, -- Only works on ammoSystem 1
|
||||
maxAmmoInWeapon = 250 -- Only works on ammoSystem 1
|
||||
},
|
||||
-- POLICE
|
||||
{
|
||||
ammoType = "AMMO_POLICE_STUNGUN",
|
||||
item = "police_stungun_ammo",
|
||||
ammo = 2, -- Only works on ammoSystem 1
|
||||
maxAmmoInWeapon = 2, -- Only works on ammoSystem 1
|
||||
isStunGun = true,
|
||||
},
|
||||
{
|
||||
ammoType = "AMMO_POLICE_PISTOL",
|
||||
item = "police_pistol_ammo",
|
||||
ammo = 120, -- Only works on ammoSystem 1
|
||||
maxAmmoInWeapon = 250 -- Only works on ammoSystem 1
|
||||
},
|
||||
{
|
||||
ammoType = "AMMO_POLICE_SMG",
|
||||
item = "police_smg_ammo",
|
||||
ammo = 120, -- Only works on ammoSystem 1
|
||||
maxAmmoInWeapon = 250 -- Only works on ammoSystem 1
|
||||
},
|
||||
{
|
||||
ammoType = "AMMO_POLICE_SHOTGUN",
|
||||
item = "police_shotgun_ammo",
|
||||
ammo = 30, -- Only works on ammoSystem 1
|
||||
maxAmmoInWeapon = 250 -- Only works on ammoSystem 1
|
||||
},
|
||||
{
|
||||
ammoType = "AMMO_POLICE_RIFLE",
|
||||
item = "police_rifle_ammo",
|
||||
ammo = 120, -- Only works on ammoSystem 1
|
||||
maxAmmoInWeapon = 250 -- Only works on ammoSystem 1
|
||||
},
|
||||
}
|
|
@ -1,6 +0,0 @@
|
|||
config.antiSwimingItems = { -- Added items are deleted when you enter the water and their broken state is added to the inventory
|
||||
["phone_black"] = "broken_phone",
|
||||
["phone_green"] = "broken_phone",
|
||||
["phone_red"] = "broken_phone",
|
||||
["phone_purple"] = "broken_phone",
|
||||
}
|
File diff suppressed because it is too large
Load diff
|
@ -1,52 +0,0 @@
|
|||
config.attachment.tintLabel = {
|
||||
normal = {
|
||||
["tint_0"] = "Default/Black",
|
||||
["tint_1"] = "Green",
|
||||
["tint_2"] = "Gold",
|
||||
["tint_3"] = "Pink",
|
||||
["tint_4"] = "Army",
|
||||
["tint_5"] = "LSPD",
|
||||
["tint_6"] = "Orange",
|
||||
["tint_7"] = "Platinum",
|
||||
},
|
||||
mk2 = {
|
||||
["tint_0"] = "Classic Black",
|
||||
["tint_1"] = "Classic Gray",
|
||||
["tint_2"] = "Classic Two-Tone",
|
||||
["tint_3"] = "Classic White",
|
||||
["tint_4"] = "Classic Beige",
|
||||
["tint_5"] = "Classic Green",
|
||||
["tint_6"] = "Classic Blue",
|
||||
["tint_7"] = "Classic Earth",
|
||||
["tint_8"] = "Classic Brown & Black",
|
||||
["tint_9"] = "Red Contrast",
|
||||
["tint_10"] = "Blue Contrast",
|
||||
["tint_11"] = "Yellow Contrast",
|
||||
["tint_12"] = "Orange Contrast",
|
||||
["tint_13"] = "Bold Pink",
|
||||
["tint_14"] = "Bold Purple & Yellow",
|
||||
["tint_15"] = "Bold Orange",
|
||||
["tint_16"] = "Bold Green & Purple",
|
||||
["tint_17"] = "Bold Red Features",
|
||||
["tint_18"] = "Bold Green Features",
|
||||
["tint_19"] = "Bold Cyan Features",
|
||||
["tint_20"] = "Bold Yellow Features",
|
||||
["tint_21"] = "Bold Red & White",
|
||||
["tint_22"] = "Bold Blue & White",
|
||||
["tint_23"] = "Metallic Gold",
|
||||
["tint_24"] = "Metallic Platinum",
|
||||
["tint_25"] = "Metallic Gray & Lilac",
|
||||
["tint_26"] = "Metallic Purple & Lime",
|
||||
["tint_27"] = "Metallic Red",
|
||||
["tint_28"] = "Metallic Green",
|
||||
["tint_29"] = "Metallic Blue",
|
||||
["tint_30"] = "Metallic White & Aqua",
|
||||
["tint_31"] = "Metallic Orange & Yellow",
|
||||
["tint_32"] = "Mettalic Red and Yellow",
|
||||
}
|
||||
}
|
||||
|
||||
-- attachments names are set automatically but if you have an addon weapon or want to change the names of attachment you can add them here
|
||||
config.attachment.labels = {
|
||||
--["COMPONENT_SNSPISTOL_MK2_CAMO_IND_01"] = "American Camo",
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
-- The interaction of the items you add here is limited. for example, you can add items here that you do not want to be transferred to someone else
|
||||
config.blockItems = {
|
||||
["testitem"] = { -- Item name
|
||||
drop = true, -- if true, player can't drop the item
|
||||
glovebox = true, -- if true the player cannot put the item in the glovebox
|
||||
trunk = true, -- if true the player cannot put the item in the trunk
|
||||
stash = true, -- if true the player cannot put the item in the any stash
|
||||
give = true, -- if true the player cannot give the item to someone else
|
||||
player = true, -- cannot take or give an item from another player when true
|
||||
throw = true, -- if true, the player cannot throw the item
|
||||
},
|
||||
}
|
|
@ -1,50 +0,0 @@
|
|||
-- Update Video: https://youtu.be/-0E_XY2L4rY
|
||||
config.canCarryMultipleItems = false -- If false, the player cannot pick up any other carryable item while already holding one.
|
||||
config.carryItmes = {
|
||||
television = { -- Item name
|
||||
model = `xs_prop_arena_screen_tv_01`,
|
||||
bone = 28252,
|
||||
offset = vector3(0.2600, 0.1100, -0.1400),
|
||||
rot = vector3(96.1620, 168.9069, 84.2402),
|
||||
anim = {
|
||||
dict = "beachanims@molly",
|
||||
name = "beachanim_surf_clip"
|
||||
},
|
||||
disableKeys = { -- https://docs.fivem.net/docs/game-references/controls/
|
||||
21, -- INPUT_SPRINT
|
||||
22, -- INPUT_JUMP
|
||||
},
|
||||
moveRate = 0.5, -- https://docs.fivem.net/natives/?_0x085BF80FA50A39D1 (1.0 Default)
|
||||
},
|
||||
pdbag = {
|
||||
model = `xm_prop_x17_bag_01d`,
|
||||
bone = 28422,
|
||||
offset = vector3(0.15, -0.05, -0.10),
|
||||
rot = vector3(100.0, -50.0, 220.0),
|
||||
anim = {
|
||||
dict = "missfbi4prepp1",
|
||||
name = "idle" -- Neutrale Stehanimation
|
||||
},
|
||||
disableKeys = {
|
||||
21, -- INPUT_SPRINT
|
||||
},
|
||||
moveRate = 1.0
|
||||
},
|
||||
food_bag = {
|
||||
model = `prop_food_bag1`,
|
||||
bone = 28422,
|
||||
offset = vector3(0.15, -0.05, -0.10),
|
||||
rot = vector3(100.0, -50.0, 220.0),
|
||||
anim = {
|
||||
dict = "missfbi4prepp1",
|
||||
name = "idle" -- Neutrale Stehanimation
|
||||
},
|
||||
disableKeys = {
|
||||
21, -- INPUT_SPRINT
|
||||
},
|
||||
moveRate = 1.0
|
||||
},
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -1,26 +0,0 @@
|
|||
-- Update Video: https://youtu.be/wNt_8OQ_CUQ
|
||||
|
||||
config.clotheBackpack = {
|
||||
active = true, --if you have a backpack in a suit, the weight limit and the number of slots of your inventory increases.
|
||||
-- I don't recommend increasing the number of slots. if the player removes the backpack, the slots will be deleted and the player's belongings will remain in invisible slots
|
||||
[`mp_m_freemode_01`] = { -- Male Ped
|
||||
[40] = { weight = 50000, slots = 0 }, -- increases the player's default weight limit by 50000
|
||||
[41] = { weight = 60000, slots = 0 },
|
||||
[44] = { weight = 50000, slots = 0 },
|
||||
[45] = { weight = 30000, slots = 0 },
|
||||
[81] = { weight = 60000, slots = 0 },
|
||||
[82] = { weight = 80000, slots = 0 },
|
||||
[85] = { weight = 150000, slots = 0 },
|
||||
[86] = { weight = 100000, slots = 0 },
|
||||
},
|
||||
[`mp_f_freemode_01`] = { -- Female ped
|
||||
[40] = { weight = 50000, slots = 0 }, -- increases the player's default weight limit by 50000
|
||||
[41] = { weight = 60000, slots = 0 },
|
||||
[44] = { weight = 50000, slots = 0 },
|
||||
[45] = { weight = 30000, slots = 0 },
|
||||
[81] = { weight = 60000, slots = 0 },
|
||||
[82] = { weight = 80000, slots = 0 },
|
||||
[85] = { weight = 150000, slots = 0 },
|
||||
[86] = { weight = 100000, slots = 0 },
|
||||
}
|
||||
}
|
|
@ -1,38 +0,0 @@
|
|||
config.commands = {
|
||||
admin = {
|
||||
giveitem = "giveitem",
|
||||
setitem = "setitem",
|
||||
clearinv = "clearinv",
|
||||
backpack = "backpack",
|
||||
deleteinv = "deleteinv",
|
||||
openinv = "openinv",
|
||||
checkitem = "checkitem",
|
||||
items = "items"
|
||||
},
|
||||
player = {
|
||||
givecash = {
|
||||
active = true,
|
||||
command = "givecash"
|
||||
},
|
||||
rob = { -- You can edit canRobTarget function in tgiann-inventory/client/editable.lua
|
||||
active = true,
|
||||
command = "rob",
|
||||
progressTime = {
|
||||
min = 5000,
|
||||
max = 7000
|
||||
},
|
||||
animation = {
|
||||
animDict = 'random@shop_robbery',
|
||||
anim = 'robbery_action_b',
|
||||
flags = 16,
|
||||
}
|
||||
}
|
||||
},
|
||||
convert = {
|
||||
convertItemsFile = "convertitems", -- imports qb items.lua and esx items table into enventerin's items table
|
||||
convertqb = "convertqb", -- convert inventory data such as player, stash, glovebox to tgiann inventory
|
||||
convertox = "convertox", -- convert inventory data such as player, stash, glovebox to tgiann inventory
|
||||
convertqsinv = "convertqsinv", -- convert inventory data such as player, stash, glovebox to tgiann inventory
|
||||
convertcodeminv = "convertcodeminv", -- convert inventory data such as player, stash, glovebox to tgiann inventory
|
||||
}
|
||||
}
|
|
@ -1,170 +0,0 @@
|
|||
config.craft = {}
|
||||
config.defaultCraftJob = {}
|
||||
|
||||
local function registerCraft(category, label, items)
|
||||
assert(type(category) == "string", "Category must be a string")
|
||||
assert(type(label) == "string", "Label must be a string")
|
||||
assert(type(items) == "table", "Items must be a table")
|
||||
|
||||
config.craft[#config.craft + 1] = {
|
||||
category = category,
|
||||
label = label,
|
||||
items = items
|
||||
}
|
||||
end
|
||||
exports("RegisterCraft", registerCraft)
|
||||
|
||||
local function registerJobCraft(jobName, label, items)
|
||||
assert(type(jobName) == "string", "Job name must be a string")
|
||||
assert(config.defaultCraftJob[jobName] == nil, ("Job %s already exists in defaultCraftJob").format(jobName))
|
||||
assert(type(label) == "string", "Label must be a string")
|
||||
assert(type(items) == "table", "Items must be a table")
|
||||
|
||||
config.defaultCraftJob[jobName] = {
|
||||
label = label,
|
||||
items = items
|
||||
}
|
||||
end
|
||||
exports("RegisterJobCraft", registerJobCraft)
|
||||
|
||||
-- Default crafting
|
||||
registerCraft("defaultCraft", "Main Craft", {
|
||||
{
|
||||
giveAmount = 24,
|
||||
name = 'ecola_dose',
|
||||
costs = {
|
||||
['pack_ecola'] = 1,
|
||||
|
||||
},
|
||||
duration = 5000, -- 5 seconds crafting times (optional)
|
||||
info = {
|
||||
label = "Auspacken"
|
||||
}
|
||||
},
|
||||
--[[
|
||||
{
|
||||
giveAmount = 1,
|
||||
name = 'lockpick',
|
||||
costs = {
|
||||
['metalscrap'] = 22,
|
||||
['plastic'] = 32,
|
||||
},
|
||||
},
|
||||
{
|
||||
giveAmount = 1,
|
||||
name = 'screwdriverset',
|
||||
costs = {
|
||||
['metalscrap'] = 30,
|
||||
['plastic'] = 42,
|
||||
},
|
||||
},
|
||||
{
|
||||
giveAmount = 1,
|
||||
name = 'electronickit',
|
||||
costs = {
|
||||
['metalscrap'] = 30,
|
||||
['plastic'] = 45,
|
||||
['aluminum'] = 28,
|
||||
},
|
||||
},
|
||||
{
|
||||
giveAmount = 1,
|
||||
name = 'radioscanner',
|
||||
costs = {
|
||||
['electronickit'] = 2,
|
||||
['plastic'] = 52,
|
||||
['steel'] = 40,
|
||||
},
|
||||
},
|
||||
{
|
||||
giveAmount = 1,
|
||||
name = 'gatecrack',
|
||||
costs = {
|
||||
['metalscrap'] = 10,
|
||||
['plastic'] = 50,
|
||||
['aluminum'] = 30,
|
||||
['iron'] = 17,
|
||||
['electronickit'] = 2,
|
||||
},
|
||||
},
|
||||
]]
|
||||
})
|
||||
|
||||
-- Example for police
|
||||
registerJobCraft("police", "Police Crafting", {
|
||||
{
|
||||
giveAmount = 1,
|
||||
name = 'handcuffs',
|
||||
costs = {
|
||||
['metalscrap'] = 36,
|
||||
['steel'] = 24,
|
||||
['aluminum'] = 28,
|
||||
},
|
||||
},
|
||||
{
|
||||
giveAmount = 1,
|
||||
name = 'repairkit',
|
||||
costs = {
|
||||
['metalscrap'] = 32,
|
||||
['steel'] = 43,
|
||||
['plastic'] = 61,
|
||||
},
|
||||
},
|
||||
{
|
||||
giveAmount = 1,
|
||||
name = 'pistol_ammo',
|
||||
costs = {
|
||||
['metalscrap'] = 50,
|
||||
['steel'] = 37,
|
||||
['copper'] = 26,
|
||||
},
|
||||
},
|
||||
{
|
||||
giveAmount = 1,
|
||||
name = 'ironoxide',
|
||||
costs = {
|
||||
['iron'] = 60,
|
||||
['glass'] = 30,
|
||||
},
|
||||
},
|
||||
{
|
||||
giveAmount = 1,
|
||||
name = 'aluminumoxide',
|
||||
costs = {
|
||||
['aluminum'] = 60,
|
||||
['glass'] = 30,
|
||||
},
|
||||
},
|
||||
{
|
||||
giveAmount = 1,
|
||||
name = 'armor',
|
||||
costs = {
|
||||
['iron'] = 33,
|
||||
['steel'] = 44,
|
||||
['plastic'] = 55,
|
||||
['aluminum'] = 22,
|
||||
},
|
||||
},
|
||||
{
|
||||
giveAmount = 1,
|
||||
name = 'drill',
|
||||
costs = {
|
||||
['iron'] = 50,
|
||||
['steel'] = 50,
|
||||
['screwdriverset'] = 3,
|
||||
['advancedlockpick'] = 2,
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
local craftCategory = {}
|
||||
for i = 1, #config.craft do
|
||||
craftCategory[i] = {
|
||||
craft = i,
|
||||
label = config.craft[i].label
|
||||
}
|
||||
end
|
||||
|
||||
exports("CraftCategory", function()
|
||||
return craftCategory
|
||||
end)
|
|
@ -1,13 +0,0 @@
|
|||
-- Update video: https://youtu.be/pd9llsg_mAg
|
||||
-- Items on this list cannot be used after a certain number of days after they are created!
|
||||
-- Added items need to be set to 'uniq = true' in item list
|
||||
config.removeDecayableItem = false --When true, if the item has zero durability when you use it, it deletes the item directly
|
||||
config.removeDecayableItemWhenInventoryCreated = false --When true, if the item has zero durability when inventory data created in the script, it deletes the item directly
|
||||
config.decayableItems = {
|
||||
--[[
|
||||
key: item name
|
||||
value: second
|
||||
]]
|
||||
food_bag = 864000,
|
||||
kurkakola = 30,
|
||||
}
|
|
@ -1,45 +0,0 @@
|
|||
config.objectDrop = {
|
||||
active = true, -- if true, the first item dropped on the ground appears as a prop, if false, it appears as a marker
|
||||
defaultObject = { -- For items not added in itemToObject
|
||||
hash = `prop_paper_bag_01`, -- prop Hash
|
||||
groundRotation = { 0.0, 0.0, 0.0 },
|
||||
handRotation = {
|
||||
{ 0.13140606098295, 0.022559683884654, -0.082663316658163 }, -- pos
|
||||
{ -40.18882271093, -0.24538857512052, 16.85144585768 } -- rot
|
||||
}
|
||||
},
|
||||
multipleItemsObject = { -- this prop appears if there is more than one item on the floor
|
||||
hash = `ng_proc_box_01a`, -- prop Hash
|
||||
groundRotation = { 90.0, 0.0, 0.0 },
|
||||
handRotation = {
|
||||
{ 0.13140606098295, 0.022559683884654, -0.082663316658163 }, -- pos
|
||||
{ -40.18882271093, -0.24538857512052, 16.85144585768 } -- rot
|
||||
}
|
||||
},
|
||||
itemToObject = { -- itemName, hash
|
||||
goldbar = {
|
||||
hash = `hei_prop_heist_gold_bar`,
|
||||
groundRotation = { 0.0, 0.0, 0.0 },
|
||||
handRotation = {
|
||||
{ 0.065023312703829, 0.018979799071576, -0.032637740797306 }, -- pos
|
||||
{ 23.929631747246, -4.040881842375, -12.166237375715 } -- rot
|
||||
}
|
||||
},
|
||||
television = {
|
||||
hash = `xs_prop_arena_screen_tv_01`,
|
||||
groundRotation = { -90.0, 0.0, 0.0 },
|
||||
handRotation = {
|
||||
{ 0.065023312703829, 0.018979799071576, 0.032637740797306 }, -- pos
|
||||
{ 23.929631747246, -4.040881842375, -12.166237375715 } -- rot
|
||||
}
|
||||
},
|
||||
present = {
|
||||
hash = `xm3_prop_xm3_present_01a`,
|
||||
groundRotation = { 00.0, 0.0, 0.0 },
|
||||
handRotation = {
|
||||
{ 0.065023312703829, 0.018979799071576, 0.032637740797306 }, -- pos
|
||||
{ 23.929631747246, -4.040881842375, -12.166237375715 } -- rot
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,78 +0,0 @@
|
|||
config.dumpsterSearch = {
|
||||
active = true,
|
||||
cd = 120, -- second
|
||||
progressBarTime = 2, -- second
|
||||
animation = {
|
||||
animDict = "amb@prop_human_bum_bin@base",
|
||||
anim = "base",
|
||||
flags = 33,
|
||||
},
|
||||
items = {
|
||||
{ item = "bread", min = 1, max = 3 },
|
||||
{ item = "water", min = 1, max = 2 },
|
||||
},
|
||||
models = {
|
||||
1437508529,
|
||||
-819563011,
|
||||
-289082718,
|
||||
1437508529,
|
||||
1614656839,
|
||||
-289082718,
|
||||
1437508529,
|
||||
1614656839,
|
||||
-130812911,
|
||||
-93819890,
|
||||
1329570871,
|
||||
1143474856,
|
||||
-228596739,
|
||||
-468629664,
|
||||
-1426008804,
|
||||
-1187286639,
|
||||
-1096777189,
|
||||
-413198204,
|
||||
437765445,
|
||||
122303831,
|
||||
1748268526,
|
||||
998415499,
|
||||
234941195,
|
||||
-2096124444,
|
||||
1792999139,
|
||||
-341442425,
|
||||
-329415894,
|
||||
-1830793175,
|
||||
-654874323,
|
||||
1010534896,
|
||||
651101403,
|
||||
909943734,
|
||||
1919238784,
|
||||
274859350,
|
||||
751349707,
|
||||
1627301588,
|
||||
1388415578,
|
||||
1813879595,
|
||||
1098827230,
|
||||
1388308576,
|
||||
600967813,
|
||||
1948359883,
|
||||
-1681329307,
|
||||
-96647174,
|
||||
811169045,
|
||||
-14708062,
|
||||
354692929,
|
||||
673826957,
|
||||
375956747,
|
||||
1233216915,
|
||||
-85604259,
|
||||
-115771139,
|
||||
-1998455445,
|
||||
577432224,
|
||||
684586828,
|
||||
218085040,
|
||||
666561306,
|
||||
-58485588,
|
||||
-206690185,
|
||||
1511880420,
|
||||
682791951,
|
||||
-1587184881
|
||||
}
|
||||
}
|
|
@ -1,7 +0,0 @@
|
|||
-- players can edit items added to the list by right-clicking on their name or image
|
||||
config.editableItems = {
|
||||
clothe_set = { label = true, img = true },
|
||||
bandage = { label = true, img = true },
|
||||
weapon_pistol = { label = true, img = false },
|
||||
polaroid = { label = true, img = false },
|
||||
}
|
|
@ -1,204 +0,0 @@
|
|||
config.Filter = {}
|
||||
|
||||
config.Filter.health = {
|
||||
icon = "kit-medical",
|
||||
items = {
|
||||
"policebandage",
|
||||
"bandage",
|
||||
"bandageplus",
|
||||
"medikit",
|
||||
}
|
||||
}
|
||||
|
||||
config.Filter.juice = {
|
||||
icon = "bottle-water",
|
||||
items = {
|
||||
"water",
|
||||
}
|
||||
}
|
||||
|
||||
config.Filter.clothe = {
|
||||
icon = "shirt",
|
||||
items = {
|
||||
"kposet",
|
||||
"bkposet",
|
||||
"c_necklace",
|
||||
"c_bproof",
|
||||
"c_decal",
|
||||
"c_torso",
|
||||
"c_mask",
|
||||
"c_helmet",
|
||||
"c_glasses",
|
||||
"c_bag",
|
||||
"c_pants",
|
||||
"c_shoes",
|
||||
"c_bracelet",
|
||||
"c_watch",
|
||||
"c_ear",
|
||||
}
|
||||
}
|
||||
|
||||
config.Filter.fight = {
|
||||
icon = "person-rifle",
|
||||
items = {
|
||||
"weapon_stungun",
|
||||
"weapon_pistol",
|
||||
"weapon_pistol_mk2",
|
||||
"weapon_combatpistol",
|
||||
"weapon_appistol",
|
||||
"weapon_pistol50",
|
||||
"weapon_snspistol",
|
||||
"weapon_heavypistol",
|
||||
"weapon_vintagepistol",
|
||||
"weapon_flaregun",
|
||||
"weapon_marksmanpistol",
|
||||
"weapon_revolver",
|
||||
"weapon_revolver_mk2",
|
||||
"weapon_doubleaction",
|
||||
"weapon_snspistol_mk2",
|
||||
"weapon_raypistol",
|
||||
"weapon_ceramicpistol",
|
||||
"weapon_navyrevolver",
|
||||
"weapon_gadgetpistol",
|
||||
"weapon_pistolxm3",
|
||||
"weapon_microsmg",
|
||||
"weapon_smg",
|
||||
"weapon_smg_mk2",
|
||||
"weapon_assaultsmg",
|
||||
"weapon_combatpdw",
|
||||
"weapon_machinepistol",
|
||||
"weapon_minismg",
|
||||
"weapon_raycarbine",
|
||||
"weapon_pumpshotgun",
|
||||
"weapon_sawnoffshotgun",
|
||||
"weapon_assaultshotgun",
|
||||
"weapon_bullpupshotgun",
|
||||
"weapon_musket",
|
||||
"weapon_heavyshotgun",
|
||||
"weapon_dbshotgun",
|
||||
"weapon_autoshotgun",
|
||||
"weapon_pumpshotgun_mk2",
|
||||
"weapon_combatshotgun",
|
||||
"weapon_assaultrifle",
|
||||
"weapon_assaultrifle_mk2",
|
||||
"weapon_carbinerifle",
|
||||
"weapon_carbinerifle_mk2",
|
||||
"weapon_advancedrifle",
|
||||
"weapon_specialcarbine",
|
||||
"weapon_bullpuprifle",
|
||||
"weapon_compactrifle",
|
||||
"weapon_specialcarbine_mk2",
|
||||
"weapon_bullpuprifle_mk2",
|
||||
"weapon_militaryrifle",
|
||||
"weapon_mg",
|
||||
"weapon_combatmg",
|
||||
"weapon_gusenberg",
|
||||
"weapon_combatmg_mk2",
|
||||
"weapon_sniperrifle",
|
||||
"weapon_heavysniper",
|
||||
"weapon_marksmanrifle",
|
||||
"weapon_remotesniper",
|
||||
"weapon_heavysniper_mk2",
|
||||
"weapon_marksmanrifle_mk2",
|
||||
"weapon_rpg",
|
||||
"weapon_grenadelauncher",
|
||||
"weapon_grenadelauncher_smoke",
|
||||
"weapon_minigun",
|
||||
"weapon_firework",
|
||||
"weapon_railgun",
|
||||
"weapon_railgunxm3",
|
||||
"weapon_hominglauncher",
|
||||
"weapon_compactlauncher",
|
||||
"weapon_rayminigun",
|
||||
--police
|
||||
"weapon_police_stungun",
|
||||
"weapon_police_pistol",
|
||||
"weapon_police_pistol_mk2",
|
||||
"weapon_police_combatpistol",
|
||||
"weapon_police_appistol",
|
||||
"weapon_police_pistol50",
|
||||
"weapon_police_snspistol",
|
||||
"weapon_police_heavypistol",
|
||||
"weapon_police_vintagepistol",
|
||||
"weapon_police_flaregun",
|
||||
"weapon_police_marksmanpistol",
|
||||
"weapon_police_revolver",
|
||||
"weapon_police_revolver_mk2",
|
||||
"weapon_police_doubleaction",
|
||||
"weapon_police_snspistol_mk2",
|
||||
"weapon_police_raypistol",
|
||||
"weapon_police_ceramicpistol",
|
||||
"weapon_police_navyrevolver",
|
||||
"weapon_police_gadgetpistol",
|
||||
"weapon_police_pistolxm3",
|
||||
"weapon_police_microsmg",
|
||||
"weapon_police_smg",
|
||||
"weapon_police_smg_mk2",
|
||||
"weapon_police_assaultsmg",
|
||||
"weapon_police_combatpdw",
|
||||
"weapon_police_machinepistol",
|
||||
"weapon_police_minismg",
|
||||
"weapon_police_raycarbine",
|
||||
"weapon_police_pumpshotgun",
|
||||
"weapon_police_sawnoffshotgun",
|
||||
"weapon_police_assaultshotgun",
|
||||
"weapon_police_bullpupshotgun",
|
||||
"weapon_police_musket",
|
||||
"weapon_police_heavyshotgun",
|
||||
"weapon_police_dbshotgun",
|
||||
"weapon_police_autoshotgun",
|
||||
"weapon_police_pumpshotgun_mk2",
|
||||
"weapon_police_combatshotgun",
|
||||
"weapon_police_assaultrifle",
|
||||
"weapon_police_assaultrifle_mk2",
|
||||
"weapon_police_carbinerifle",
|
||||
"weapon_police_carbinerifle_mk2",
|
||||
"weapon_police_advancedrifle",
|
||||
"weapon_police_specialcarbine",
|
||||
"weapon_police_bullpuprifle",
|
||||
"weapon_police_compactrifle",
|
||||
"weapon_police_specialcarbine_mk2",
|
||||
"weapon_police_bullpuprifle_mk2",
|
||||
"weapon_police_militaryrifle",
|
||||
"weapon_police_mg",
|
||||
"weapon_police_combatmg",
|
||||
"weapon_police_gusenberg",
|
||||
"weapon_police_combatmg_mk2",
|
||||
"weapon_police_sniperrifle",
|
||||
"weapon_police_heavysniper",
|
||||
"weapon_police_marksmanrifle",
|
||||
"weapon_police_remotesniper",
|
||||
"weapon_police_heavysniper_mk2",
|
||||
"weapon_police_marksmanrifle_mk2",
|
||||
"weapon_police_rpg",
|
||||
"weapon_police_grenadelauncher",
|
||||
"weapon_police_grenadelauncher_smoke",
|
||||
"weapon_police_minigun",
|
||||
"weapon_police_firework",
|
||||
"weapon_police_railgun",
|
||||
"weapon_police_railgunxm3",
|
||||
"weapon_police_hominglauncher",
|
||||
"weapon_police_compactlauncher",
|
||||
"weapon_police_rayminigun",
|
||||
|
||||
"snp_ammo",
|
||||
"shotgun_ammo",
|
||||
"pistol_ammo",
|
||||
"rifle_ammo",
|
||||
"smg_ammo",
|
||||
"mg_ammo",
|
||||
"police_pistol_ammo",
|
||||
"police_rifle_ammo",
|
||||
"police_smg_ammo",
|
||||
"armor",
|
||||
"armorplus",
|
||||
"policearmor",
|
||||
"armorbox",
|
||||
"policearmorbox",
|
||||
"armorpartplus",
|
||||
"policebandage",
|
||||
"bandage",
|
||||
"bandageplus",
|
||||
"medikit",
|
||||
}
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
-- U can edit function from server/editable.lua
|
||||
-- using added items opens a secondary inventory
|
||||
config.itemStash = {
|
||||
{
|
||||
item = "kposet",
|
||||
maxweight = 0,
|
||||
slots = 15,
|
||||
whitelist = { "c_necklace", "c_bproof", "c_decal", "c_torso", "c_mask", "c_helmet", "c_glasses", "c_bag", "c_pants", "c_shoes", "c_bracelet", "c_watch", "c_ear", "clothe_set" }
|
||||
},
|
||||
{
|
||||
item = "pdbag",
|
||||
maxweight = 100000,
|
||||
slots = 10,
|
||||
},
|
||||
}
|
|
@ -1,37 +0,0 @@
|
|||
-- Update Vide: https://youtu.be/BmUAN9OFQhY
|
||||
|
||||
-- 0 = no limit
|
||||
|
||||
config.defaultMaxStackAmount = 100 -- Sets the max limit for each item not in the config.maxStacks table
|
||||
|
||||
config.weaponMaxStack = {
|
||||
active = true, -- if true, the max stack of all weapons will be set to maxStack value.
|
||||
amount = 1, -- if you add the weapon to the config.maxStacks table, this setting will be invalid for the weapon you added
|
||||
}
|
||||
|
||||
config.maxStacks = {
|
||||
-- item name / max stack amount
|
||||
testitem = 10,
|
||||
money = 0, -- no limit
|
||||
money_item = 0, -- no limit
|
||||
black_money = 0, -- no limit
|
||||
black_money_item = 0, -- no limit
|
||||
weapon_petrolcan = 1,
|
||||
|
||||
c_necklace = 1,
|
||||
c_bproof = 1,
|
||||
c_decal = 1,
|
||||
c_torso = 1,
|
||||
c_mask = 1,
|
||||
c_helmet = 1,
|
||||
c_glasses = 1,
|
||||
c_bag = 1,
|
||||
c_pants = 1,
|
||||
c_shoes = 1,
|
||||
c_bracelet = 1,
|
||||
c_watch = 1,
|
||||
c_ear = 1,
|
||||
kposet = 1,
|
||||
bkposet = 1,
|
||||
clothe_set = 1,
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
-- Update video: https://youtu.be/DeWn_e7cZwE
|
||||
-- Each time you use an item in config, the number of uses decreases by one. when the number is 0, the item is deleted.
|
||||
-- example use: if you set the max usage of a repair kit to 5. after repairing the vehicle 5 times the repair kit will be deleted
|
||||
-- Added items need to be set to 'uniq = true' in item list
|
||||
config.maxUseAmount = {
|
||||
testitemuniq = {
|
||||
amount = 5,
|
||||
autoDecreases = true -- When set to true, the number decreases by one when you use the item.
|
||||
--if it is set to false, you need to trigger x event after using the item "TriggerServerEvent("tgiann-inventory:decreaseMaxUseAmount", itemSlot)"
|
||||
},
|
||||
}
|
|
@ -1,188 +0,0 @@
|
|||
config.metadata = {
|
||||
id_card = {
|
||||
{ metadata = "citizenid", value = "CSN:" },
|
||||
{ metadata = "firstname", value = "First Name:" },
|
||||
{ metadata = "lastname", value = "Last Name:" },
|
||||
{ metadata = "birthdate", value = "Birth Date:" },
|
||||
{ metadata = "gender", value = "Gender:" },
|
||||
{ metadata = "nationality", value = "Nationality:" },
|
||||
{ metadata = "quality", value = "Quality:" },
|
||||
},
|
||||
driver_license = {
|
||||
{ metadata = "firstname", value = "First Name:" },
|
||||
{ metadata = "lastname", value = "Last Name:" },
|
||||
{ metadata = "birthdate", value = "Birth Date:" },
|
||||
{ metadata = "type", value = "Licenses:" },
|
||||
},
|
||||
driver_licenseb = {
|
||||
{ metadata = "firstname", value = "First Name:" },
|
||||
{ metadata = "lastname", value = "Last Name:" },
|
||||
{ metadata = "birthdate", value = "Birth Date:" },
|
||||
{ metadata = "type", value = "Licenses:" },
|
||||
},
|
||||
driver_licensec = {
|
||||
{ metadata = "firstname", value = "First Name:" },
|
||||
{ metadata = "lastname", value = "Last Name:" },
|
||||
{ metadata = "birthdate", value = "Birth Date:" },
|
||||
{ metadata = "type", value = "Licenses:" },
|
||||
},
|
||||
weaponlicense = {
|
||||
{ metadata = "firstname", value = "First Name:" },
|
||||
{ metadata = "lastname", value = "Last Name:" },
|
||||
{ metadata = "birthdate", value = "Birth Date:" },
|
||||
{ metadata = "thc", value = "Thc:" },
|
||||
{ metadata = "quality", value = "Quality:" },
|
||||
},
|
||||
marijuana_1oz_low = {
|
||||
{ metadata = "strain", value = "Strain:" },
|
||||
{ metadata = "potency", value = "Potency:" },
|
||||
{ metadata = "type", value = "Type:" },
|
||||
{ metadata = "thc", value = "Thc:" },
|
||||
},
|
||||
marijuana_1oz_mid = {
|
||||
{ metadata = "strain", value = "Strain:" },
|
||||
{ metadata = "potency", value = "Potency:" },
|
||||
{ metadata = "type", value = "Type:" },
|
||||
{ metadata = "thc", value = "Thc:" },
|
||||
},
|
||||
marijuana_1oz_high = {
|
||||
{ metadata = "strain", value = "Strain:" },
|
||||
{ metadata = "potency", value = "Potency:" },
|
||||
{ metadata = "type", value = "Type:" },
|
||||
{ metadata = "thc", value = "Thc:" },
|
||||
},
|
||||
marijuana_3_5_low = {
|
||||
{ metadata = "strain", value = "Strain:" },
|
||||
{ metadata = "potency", value = "Potency:" },
|
||||
{ metadata = "type", value = "Type:" },
|
||||
{ metadata = "thc", value = "Thc:" },
|
||||
},
|
||||
marijuana_3_5_mid = {
|
||||
{ metadata = "strain", value = "Strain:" },
|
||||
{ metadata = "potency", value = "Potency:" },
|
||||
{ metadata = "type", value = "Type:" },
|
||||
{ metadata = "thc", value = "Thc:" },
|
||||
},
|
||||
marijuana_3_5_high = {
|
||||
{ metadata = "strain", value = "Strain:" },
|
||||
{ metadata = "potency", value = "Potency:" },
|
||||
{ metadata = "type", value = "Type:" },
|
||||
{ metadata = "thc", value = "Thc:" },
|
||||
},
|
||||
lawyerpass = {
|
||||
{ metadata = "id", value = "Pass-ID:" },
|
||||
{ metadata = "firstname", value = "First Name:" },
|
||||
{ metadata = "lastname", value = "Last Name:" },
|
||||
{ metadata = "citizenid", value = "CSN:" },
|
||||
},
|
||||
harness = {
|
||||
{ metadata = "uses", value = "uses left." },
|
||||
},
|
||||
filled_evidence_bag_casing = {
|
||||
{ metadata = "label", value = "Evidence material:" },
|
||||
{ metadata = "ammotype", value = "Type number:" },
|
||||
{ metadata = "ammolabel", value = "Caliber:" },
|
||||
{ metadata = "serie", value = "Serial:" },
|
||||
{ metadata = "street", value = "Crime scene:" },
|
||||
},
|
||||
filled_evidence_bag_blood = {
|
||||
{ metadata = "label", value = "Evidence material:" },
|
||||
{ metadata = "bloodtype", value = "Blood type:" },
|
||||
{ metadata = "dnalabel", value = "DNA Code:" },
|
||||
{ metadata = "street", value = "Crime scene:" },
|
||||
},
|
||||
filled_evidence_bag_fingerprint = {
|
||||
{ metadata = "label", value = "Evidence material:" },
|
||||
{ metadata = "fingerprint", value = "Fingerprint:" },
|
||||
{ metadata = "street", value = "Crime Scene:" },
|
||||
},
|
||||
filled_evidence_bag_dna = {
|
||||
{ metadata = "label", value = "Evidence material:" },
|
||||
{ metadata = "dnalabel", value = "DNA Code:" },
|
||||
},
|
||||
stickynote = {
|
||||
{ metadata = "quality", value = "Quality:" },
|
||||
},
|
||||
moneybag = {
|
||||
{ metadata = "cash", value = "Amount of cash:" },
|
||||
{ metadata = "quality", value = "Quality:" },
|
||||
},
|
||||
markedbills = {
|
||||
{ metadata = "worth", value = "Worth:" },
|
||||
{ metadata = "quality", value = "Quality:" },
|
||||
},
|
||||
|
||||
labkey = {
|
||||
{ metadata = "quality", value = "Quality:" },
|
||||
},
|
||||
visa = {
|
||||
{ metadata = "ownerName", value = "Card Owner:" },
|
||||
{ metadata = "cardType", value = "Firstname:" },
|
||||
{ metadata = "cardNumber", value = "Lastname:" },
|
||||
},
|
||||
creditcard = {
|
||||
{ metadata = "ownerName", value = "Card Owner:" },
|
||||
{ metadata = "cardType", value = "Firstname:" },
|
||||
{ metadata = "cardNumber", value = "Lastname:" },
|
||||
},
|
||||
car_insurance = {
|
||||
{ metadata = "name", value = "Name:" },
|
||||
{ metadata = "plate", value = "Plate:" },
|
||||
{ metadata = "model", value = "Vehicle Model:" },
|
||||
{ metadata = "expire", value = "Expires:" },
|
||||
},
|
||||
car_registration = {
|
||||
{ metadata = "name", value = "Name:" },
|
||||
{ metadata = "plate", value = "Plate:" },
|
||||
{ metadata = "model", value = "Vehicle Model:" },
|
||||
{ metadata = "expire", value = "Expires:" },
|
||||
},
|
||||
health_insurance = {
|
||||
{ metadata = "name", value = "Name:" },
|
||||
{ metadata = "expire", value = "Expires:" },
|
||||
},
|
||||
home_insurance = {
|
||||
{ metadata = "name", value = "Name:" },
|
||||
{ metadata = "expire", value = "Expires:" },
|
||||
},
|
||||
car_camera = {
|
||||
{ metadata = "plate", value = "Plate:" },
|
||||
},
|
||||
vehiclekeys = {
|
||||
{ metadata = "plate", value = "Plate:" },
|
||||
{ metadata = "description", value = "Model:" },
|
||||
},
|
||||
}
|
||||
|
||||
local qs_vehiclekeys = GetResourceState("qs-vehiclekeys") == "started";
|
||||
if qs_vehiclekeys then
|
||||
config.metadata.plate = {
|
||||
{ metadata = "plate", value = "Plate:" },
|
||||
}
|
||||
config.metadata.vehiclekeys = {
|
||||
{ metadata = "plate", value = "Plate:" },
|
||||
{ metadata = "description", value = "Model:" },
|
||||
}
|
||||
end
|
||||
|
||||
local qs_smartphone_pro = GetResourceState("qs-smartphone-pro") == "started";
|
||||
if qs_smartphone_pro then
|
||||
local phoneItems = { "phone", "black_phone", "yellow_phone", "red_phone", "green_phone", }
|
||||
for _, item in ipairs(phoneItems) do
|
||||
config.metadata[item] = {
|
||||
{ metadata = "phoneNumber", value = "Phone Number" },
|
||||
{ metadata = "charinfo.firstname", value = "Firstname:" },
|
||||
{ metadata = "charinfo.lastname", value = "Lastname:" },
|
||||
}
|
||||
end
|
||||
end
|
||||
|
||||
local qs_banking = GetResourceState("qs-banking") == "started";
|
||||
if qs_banking then
|
||||
config.metadata.creditcard = {
|
||||
{ metadata = "ownerName", value = "Card Owner:" },
|
||||
{ metadata = "cardType", value = "Card Type:" },
|
||||
{ metadata = "bank_type", value = "Bank Type:" },
|
||||
{ metadata = "cardNumber", value = "Card Number:" },
|
||||
}
|
||||
end
|
|
@ -1,40 +0,0 @@
|
|||
const metadataAdvance = {
|
||||
// Example of a metadata advance item
|
||||
testitem: (metadata) => {
|
||||
return `<div class="item_info_container">
|
||||
<div class="item_info_row">
|
||||
<div class="item_info_row_left">Test Item Label:</div>
|
||||
<div class="item_info_row_right">3x</div>
|
||||
</div>
|
||||
</div>`;
|
||||
},
|
||||
testitem2: (metadata) => {
|
||||
return `<div class="item_info_container">
|
||||
<div class="item_info_row">
|
||||
<div class="item_info_row_left">${metadata.testValue}</div>
|
||||
<div class="item_info_row_right">${metadata.TestValueAmount}x</div>
|
||||
</div>
|
||||
</div>`;
|
||||
},
|
||||
};
|
||||
|
||||
const getItemMetadata = (itemName, metadata) => {
|
||||
if (!metadata) return "";
|
||||
if (!metadataAdvance[itemName]) return "";
|
||||
|
||||
return metadataAdvance[itemName](metadata);
|
||||
};
|
||||
|
||||
RegisterNuiCallback("GetItemMetadata", (data, cb) => {
|
||||
const { itemName, metadata } = data;
|
||||
const html = getItemMetadata(itemName, metadata);
|
||||
SendNUIMessage({
|
||||
app: "app-inventory",
|
||||
method: "GetItemMetadataSuccess",
|
||||
data: html,
|
||||
});
|
||||
cb("");
|
||||
});
|
||||
|
||||
const getMetadataAdvanceList = () => Object.keys(metadataAdvance);
|
||||
exports("GetMetadataAdvanceList", getMetadataAdvanceList);
|
|
@ -1,86 +0,0 @@
|
|||
--[[
|
||||
Update Video: https://youtu.be/q4L8zVDOIus
|
||||
To ensure the system works, add the default item list to the items.lua file or configure the settings below. Make sure the item is unique and usable.
|
||||
|
||||
t_armor_heavy = { name = 't_armor_heavy', label = 'Heavy Armor', weight = 100, type = 'item', image = 't_armor_heavy.png', unique = true, useable = true, shouldClose = true, description = '' },
|
||||
t_armor_light = { name = 't_armor_light', label = 'Light Armor', weight = 100, type = 'item', image = 't_armor_light.png', unique = true, useable = true, shouldClose = true, description = '' },
|
||||
]]
|
||||
config.realisticArmor = {
|
||||
active = false, -- If set to `true`, this system will be activated.
|
||||
checkClothe = false, -- If true, if the player has no armor value and is wearing armor as an outfit, it will remove this outfit
|
||||
removeWhenArmorZero = true, -- If set to `true`, armor will be removed when its value is 0 when removing armor slot.
|
||||
items = {
|
||||
t_armor_heavy = { -- Item name
|
||||
armor = 100, -- The armor value that will be added when the player equips armor.
|
||||
progressbar = {
|
||||
active = true, -- If set to `true`, a progress bar will be displayed when the player equips armor.
|
||||
label = "wearingArmor", -- u can change from language file
|
||||
time = 1500, -- Progress bar time
|
||||
anims = {
|
||||
animDict = "missmic4",
|
||||
anim = "michael_tux_fidget",
|
||||
flags = 49,
|
||||
},
|
||||
disables = {
|
||||
disableMovement = false,
|
||||
disableCarMovement = true,
|
||||
disableMouse = false,
|
||||
disableCombat = true,
|
||||
}
|
||||
},
|
||||
clothe = {
|
||||
active = true, -- If set to `true`, the player will wear the clothe armor.
|
||||
data = {
|
||||
jobs = {
|
||||
-- job with grade
|
||||
['police'] = {
|
||||
[1] = {
|
||||
[`mp_m_freemode_01`] = { drawable = 15, texture = 2 }, -- Male
|
||||
[`mp_f_freemode_01`] = { drawable = 9, texture = 0 } -- Female
|
||||
},
|
||||
[2] = {
|
||||
[`mp_m_freemode_01`] = { drawable = 57, texture = 2 }, -- Male
|
||||
[`mp_f_freemode_01`] = { drawable = 9, texture = 0 } -- Female
|
||||
},
|
||||
other = {
|
||||
[`mp_m_freemode_01`] = { drawable = 15, texture = 0 }, -- Male
|
||||
[`mp_f_freemode_01`] = { drawable = 9, texture = 0 } -- Female
|
||||
}
|
||||
},
|
||||
-- Job without grade
|
||||
['ambulance'] = {
|
||||
other = {
|
||||
[`mp_m_freemode_01`] = { drawable = 58, texture = 0 },
|
||||
[`mp_f_freemode_01`] = { drawable = 9, texture = 0 }
|
||||
}
|
||||
},
|
||||
},
|
||||
-- If the player does not meet any of the values in the jobs config section, the clothing data will change according to these values.
|
||||
other = {
|
||||
[`mp_m_freemode_01`] = { drawable = 1, texture = 1 }, -- Male
|
||||
[`mp_f_freemode_01`] = { drawable = 9, texture = 0 } -- Female
|
||||
},
|
||||
}
|
||||
}
|
||||
},
|
||||
t_armor_light = {
|
||||
armor = 50,
|
||||
progressbar = {
|
||||
active = true,
|
||||
label = "wearingArmor", -- u can change from language file
|
||||
time = 1500,
|
||||
anims = {
|
||||
animDict = "missmic4",
|
||||
anim = "michael_tux_fidget",
|
||||
flags = 49,
|
||||
},
|
||||
disables = {
|
||||
disableMovement = false,
|
||||
disableCarMovement = true,
|
||||
disableMouse = false,
|
||||
disableCombat = true,
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,115 +0,0 @@
|
|||
config.shopMoneyType = "cash"
|
||||
|
||||
config.ShopLocations = {
|
||||
{
|
||||
job = "police", -- job name or null (delete this line if you want everyone to be able to open it)
|
||||
productsName = "weapons", -- config.Products object key name
|
||||
text = "Police Weapon Shop",
|
||||
maxDistance = 3,
|
||||
pressDistance = 2,
|
||||
blip = {
|
||||
sprite = 16,
|
||||
scale = 0.7,
|
||||
color = 2,
|
||||
label = "Police Weapon Shop"
|
||||
},
|
||||
locations = {
|
||||
{
|
||||
ped = `ig_terry`,
|
||||
coords = vector4(16.6227, -1110.8431, 29.7970, 243.8756),
|
||||
|
||||
},
|
||||
{
|
||||
ped = `ig_terry`,
|
||||
coords = vector4(427.2638, -985.6949, 30.7112, 356.5403),
|
||||
blipDisable = true
|
||||
},
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
--[[
|
||||
requiredJob Example:
|
||||
{ name = 'weapon_bat', price = 250, amount = 250, type = 'weapon', requiredJob = { 'mechanic', 'police' } },
|
||||
{ name = 'weapon_bat', price = 250, amount = 250, type = 'weapon', requiredJob = 'mechanic' },
|
||||
|
||||
requiredGrade Example:
|
||||
{ name = 'weapon_bat', price = 250, amount = 250, type = 'weapon', requiredGrade = 3 },
|
||||
|
||||
requiredLicense Example: (QB - playerData.metadata.licences, ESX: esx_licanse)
|
||||
{ name = 'weapon_bat', price = 250, amount = 250, type = 'weapon', requiredLicense = { 'weapon', 'air' } },
|
||||
{ name = 'weapon_bat', price = 250, amount = 250, type = 'weapon', requiredLicense = 'weapon' },
|
||||
|
||||
requiredGang Example (Onyl For QB - playerData.gang.name)
|
||||
{ name = 'weapon_bat', price = 250, amount = 250, type = 'weapon', requiredGang = { 'mechanic', 'police' } },
|
||||
{ name = 'weapon_bat', price = 250, amount = 250, type = 'weapon', requiredGang = 'mechanic' },
|
||||
|
||||
]]
|
||||
|
||||
config.Products = {
|
||||
['normal'] = {
|
||||
{ name = 'tosti', price = 2, amount = 50, type = 'item' },
|
||||
{ name = 'water_bottle', price = 2, amount = 50, type = 'item' },
|
||||
{ name = 'kurkakola', price = 2, amount = 50, type = 'item' },
|
||||
{ name = 'twerks_candy', price = 2, amount = 50, type = 'item' },
|
||||
{ name = 'snikkel_candy', price = 2, amount = 50, type = 'item' },
|
||||
{ name = 'sandwich', price = 2, amount = 50, type = 'item' },
|
||||
{ name = 'beer', price = 7, amount = 50, type = 'item' },
|
||||
{ name = 'whiskey', price = 10, amount = 50, type = 'item' },
|
||||
{ name = 'vodka', price = 12, amount = 50, type = 'item' },
|
||||
{ name = 'bandage', price = 100, amount = 50, type = 'item' },
|
||||
{ name = 'lighter', price = 2, amount = 50, type = 'item' },
|
||||
{ name = 'rolling_paper', price = 2, amount = 5000, type = 'item' },
|
||||
},
|
||||
['liquor'] = {
|
||||
{ name = 'beer', price = 7, amount = 50, type = 'item' },
|
||||
{ name = 'whiskey', price = 10, amount = 50, type = 'item' },
|
||||
{ name = 'vodka', price = 12, amount = 50, type = 'item' },
|
||||
},
|
||||
['hardware'] = {
|
||||
{ name = 'lockpick', price = 200, amount = 50, type = 'item' },
|
||||
{ name = 'weapon_wrench', price = 250, amount = 250, type = 'item' },
|
||||
{ name = 'weapon_hammer', price = 250, amount = 250, type = 'item' },
|
||||
{ name = 'repairkit', price = 250, amount = 50, type = 'item' },
|
||||
{ name = 'screwdriverset', price = 350, amount = 50, type = 'item' },
|
||||
{ name = 'phone', price = 850, amount = 50, type = 'item' },
|
||||
{ name = 'radio', price = 250, amount = 50, type = 'item' },
|
||||
{ name = 'binoculars', price = 50, amount = 50, type = 'item' },
|
||||
{ name = 'firework1', price = 50, amount = 50, type = 'item' },
|
||||
{ name = 'firework2', price = 50, amount = 50, type = 'item' },
|
||||
{ name = 'firework3', price = 50, amount = 50, type = 'item' },
|
||||
{ name = 'firework4', price = 50, amount = 50, type = 'item' },
|
||||
{ name = 'fitbit', price = 400, amount = 150, type = 'item' },
|
||||
{ name = 'cleaningkit', price = 150, amount = 150, type = 'item' },
|
||||
{ name = 'advancedrepairkit', price = 500, amount = 50, type = 'item' },
|
||||
},
|
||||
['weedshop'] = {
|
||||
{ name = 'joint', price = 10, amount = 50, type = 'item' },
|
||||
{ name = 'weapon_poolcue', price = 100, amount = 50, type = 'item' },
|
||||
{ name = 'weed_nutrition', price = 20, amount = 50, type = 'item' },
|
||||
{ name = 'empty_weed_bag', price = 2, amount = 1000, type = 'item' },
|
||||
{ name = 'rolling_paper', price = 2, amount = 1000, type = 'item' },
|
||||
},
|
||||
['gearshop'] = {
|
||||
{ name = 'diving_gear', price = 2500, amount = 10, type = 'item' },
|
||||
{ name = 'jerry_can', price = 200, amount = 50, type = 'item' },
|
||||
},
|
||||
['leisureshop'] = {
|
||||
{ name = 'parachute', price = 2500, amount = 10, type = 'item' },
|
||||
{ name = 'binoculars', price = 50, amount = 50, type = 'item' },
|
||||
{ name = 'diving_gear', price = 2500, amount = 10, type = 'item' },
|
||||
{ name = 'diving_fill', price = 500, amount = 10, type = 'item' },
|
||||
},
|
||||
['weapons'] = {
|
||||
{ name = 'weapon_knife', price = 250, amount = 250, type = 'weapon' },
|
||||
{ name = 'weapon_bat', price = 250, amount = 250, type = 'weapon', requiredJob = { 'mechanic', 'police' } },
|
||||
{ name = 'weapon_hatchet', price = 250, amount = 250, type = 'weapon' },
|
||||
{ name = 'pistol_ammo', price = 250, amount = 250, type = 'item' },
|
||||
{ name = 'weapon_pistol', price = 2500, amount = 99, type = 'weapon' },
|
||||
{ name = 'weapon_snspistol', price = 1500, amount = 5, type = 'weapon', requiredJob = 'mechanic' },
|
||||
{ name = 'weapon_vintagepistol', price = 4000, amount = 5, type = 'weapon' },
|
||||
},
|
||||
['casino'] = {
|
||||
{ name = 'casinochips', price = 1, amount = 999999, type = 'item' }
|
||||
}
|
||||
}
|
|
@ -1,43 +0,0 @@
|
|||
config.stashes = {
|
||||
active = false,
|
||||
locations = {
|
||||
{
|
||||
coords = vec3(452.3, -991.4, 30.7),
|
||||
textUiLabel = 'Open personal locker',
|
||||
name = 'policelocker', -- uniq name
|
||||
label = 'Personal locker',
|
||||
slots = 70,
|
||||
weight = 70000,
|
||||
owner = true, -- if true, it creates a player-specific stash.
|
||||
jobs = { police = true } -- only 9 ranks for police job
|
||||
},
|
||||
{
|
||||
coords = vec3(301.3, -600.23, 43.28),
|
||||
textUiLabel = 'Open personal locker',
|
||||
name = 'emslocker', -- uniq name
|
||||
label = 'Personal Locker',
|
||||
slots = 70,
|
||||
weight = 70000,
|
||||
owner = true,
|
||||
jobs = { ambulance = true } -- all ranks for ambulance job
|
||||
},
|
||||
{
|
||||
coords = vec3(0.0, 0.0, 0.0),
|
||||
textUiLabel = 'Open test locker',
|
||||
name = 'testlocker', -- uniq name
|
||||
label = 'Personal Locker',
|
||||
slots = 70,
|
||||
weight = 70000,
|
||||
owner = false,
|
||||
jobs = { ambulance = true, police = { 1, 2, 3, 4, 5, 6, 7, 8, 9 } } -- all ranks for ambulance job, only 9 ranks for police job
|
||||
},
|
||||
{
|
||||
coords = vec3(443.6447, -975.7927, 30.6896),
|
||||
textUiLabel = 'Open Global Stash',
|
||||
name = 'globalstash', -- uniq name
|
||||
label = 'Global Stash',
|
||||
slots = 70,
|
||||
weight = 70000,
|
||||
},
|
||||
}
|
||||
}
|
|
@ -1,22 +0,0 @@
|
|||
-- Update Video: https://youtu.be/NfPocBranmQ
|
||||
config.throwableAnyItem = {
|
||||
active = true, -- allows you to throw items from your inventory
|
||||
defaultObject = { -- For items not added in itemToObject
|
||||
hash = `prop_paper_bag_01`, -- prop Hash
|
||||
groundRotation = { 90.0, 0.0, 0.0 },
|
||||
handRotation = {
|
||||
{ 0.13140606098295, 0.022559683884654, -0.082663316658163 }, -- pos
|
||||
{ -40.18882271093, -0.24538857512052, 16.85144585768 } -- rot
|
||||
}
|
||||
},
|
||||
itemToObject = { -- itemName, hash
|
||||
goldbar = {
|
||||
hash = `hei_prop_heist_gold_bar`,
|
||||
groundRotation = { 0.0, 0.0, 0.0 },
|
||||
handRotation = {
|
||||
{ 0.065023312703829, 0.018979799071576, -0.032637740797306 }, -- pos
|
||||
{ 23.929631747246, -4.040881842375, -12.166237375715 } -- rot
|
||||
}
|
||||
},
|
||||
}
|
||||
}
|
|
@ -1,25 +0,0 @@
|
|||
config.vendingMachine = {
|
||||
active = true,
|
||||
machines = {
|
||||
{
|
||||
objects = {
|
||||
'prop_vend_soda_01',
|
||||
'prop_vend_soda_02',
|
||||
},
|
||||
items = {
|
||||
{ name = 'kurkakola', price = 4, amount = 50 },
|
||||
{ name = 'water_bottle', price = 4, amount = 50 },
|
||||
}
|
||||
},
|
||||
{
|
||||
objects = {
|
||||
'prop_vend_water_01',
|
||||
'prop_vend_coffe_01',
|
||||
},
|
||||
items = {
|
||||
{ name = 'kurkakola', price = 7, amount = 50 },
|
||||
{ name = 'water_bottle', price = 2, amount = 50 },
|
||||
}
|
||||
},
|
||||
}
|
||||
}
|
|
@ -1,236 +0,0 @@
|
|||
config.throwableWeapons = {
|
||||
weapon_grenade = true,
|
||||
weapon_bzgas = true,
|
||||
weapon_molotov = true,
|
||||
weapon_flare = true,
|
||||
weapon_stickybomb = true,
|
||||
weapon_proxmine = true,
|
||||
weapon_snowball = true,
|
||||
weapon_pipebomb = true,
|
||||
weapon_ball = true,
|
||||
weapon_smokegrenade = true,
|
||||
weapon_acidpackage = true,
|
||||
weapon_throwingshoered = true
|
||||
}
|
||||
|
||||
config.removeWeaponWhenEnteringVehicle = false -- Remove the weapon when entering the vehicle
|
||||
|
||||
-- Required for police weapons. If the police weapon is added in your items.lua, the assigned jobs can use this weapon. (Police weapons are automatically added to your item list.)
|
||||
-- Normal weapon: weapon_pistol
|
||||
-- Police weapon: weapon_police_pistol
|
||||
config.weaponPoliceJobs = { "police" } -- Jobs that can use police weapons
|
||||
|
||||
config.disableWeaponWhip = true -- Disabling weapon whipping
|
||||
config.disableWeaponAnimation = true -- Make this true if you want to disable the holster animation
|
||||
config.disableWeaponsAnimation = { -- Holster animation is disabled for weapons added to the list
|
||||
weapon_snowball = true,
|
||||
}
|
||||
|
||||
config.weaponAnimation = {
|
||||
police = { -- Job name
|
||||
add = { -- Animation of grabbing the weapon in hand and duration (in ms)
|
||||
animDictionary = "rcmjosh4",
|
||||
animationName = "josh_leadout_cop2",
|
||||
time = 300
|
||||
},
|
||||
remove = { -- Animation of putting the weapon back from hand and duration (in ms)
|
||||
animDictionary = "reaction@intimidation@cop@unarmed",
|
||||
animationName = "intro",
|
||||
time = 250
|
||||
},
|
||||
},
|
||||
otherJobs = { -- OTHER JOBS than the ones above ^
|
||||
add = { -- Animation of grabbing the weapon in hand and duration (in ms)
|
||||
animDictionary = "reaction@intimidation@1h",
|
||||
animationName = "intro",
|
||||
time = 1200
|
||||
},
|
||||
remove = { -- Animation of putting the weapon back from hand and duration (in ms)
|
||||
animDictionary = "reaction@intimidation@1h",
|
||||
animationName = "outro",
|
||||
time = 1200
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
-- Add here the weapons that cannot be picked up in the vehicle in gta, that is, weapons that cannot be fired from inside the vehicle
|
||||
-- You can pick up the weapons you add here while you are in the vehicle, so that when you get out of the vehicle, the weapon is in your hand.
|
||||
config.bigWeapons = {
|
||||
[`weapon_smg`] = true,
|
||||
[`weapon_smg_mk2`] = true,
|
||||
[`weapon_assaultsmg`] = true,
|
||||
[`weapon_combatpdw`] = true,
|
||||
[`weapon_raycarbine`] = true,
|
||||
[`weapon_pumpshotgun`] = true,
|
||||
[`weapon_pumpshotgun_mk2`] = true,
|
||||
[`weapon_sawnoffshotgun`] = true,
|
||||
[`weapon_assaultshotgun`] = true,
|
||||
[`weapon_bullpupshotgun`] = true,
|
||||
[`weapon_musket`] = true,
|
||||
[`weapon_heavyshotgun`] = true,
|
||||
[`weapon_dbshotgun`] = true,
|
||||
[`weapon_autoshotgun`] = true,
|
||||
[`weapon_assaultrifle`] = true,
|
||||
[`weapon_assaultrifle_mk2`] = true,
|
||||
[`weapon_carbinerifle`] = true,
|
||||
[`weapon_carbinerifle_mk2`] = true,
|
||||
[`weapon_advancedrifle`] = true,
|
||||
[`weapon_specialcarbine`] = true,
|
||||
[`weapon_specialcarbine_mk2`] = true,
|
||||
[`weapon_bullpuprifle`] = true,
|
||||
[`weapon_bullpuprifle_mk2`] = true,
|
||||
[`weapon_compactrifle`] = true,
|
||||
[`weapon_mg`] = true,
|
||||
[`weapon_combatmg`] = true,
|
||||
[`weapon_combatmg_mk2`] = true,
|
||||
[`weapon_gusenberg`] = true,
|
||||
[`weapon_sniperrifle`] = true,
|
||||
[`weapon_heavysniper`] = true,
|
||||
[`weapon_heavysniper_mk2`] = true,
|
||||
[`weapon_marksmanrifle`] = true,
|
||||
[`weapon_marksmanrifle_mk2`] = true,
|
||||
[`weapon_rpg`] = true,
|
||||
[`weapon_grenadelauncher`] = true,
|
||||
[`weapon_grenadelauncher_smoke`] = true,
|
||||
[`weapon_minigun`] = true,
|
||||
[`weapon_firework`] = true,
|
||||
[`weapon_railgun`] = true,
|
||||
[`weapon_hominglauncher`] = true,
|
||||
[`weapon_compactlauncher`] = true,
|
||||
[`weapon_rayminigun`] = true,
|
||||
[`weapon_dagger`] = true,
|
||||
[`weapon_bat`] = true,
|
||||
[`weapon_bottle`] = true,
|
||||
[`weapon_crowbar`] = true,
|
||||
[`weapon_unarmed`] = true,
|
||||
[`weapon_flashlight`] = true,
|
||||
[`weapon_golfclub`] = true,
|
||||
[`weapon_hammer`] = true,
|
||||
[`weapon_hatchet`] = true,
|
||||
[`weapon_knuckle`] = true,
|
||||
[`weapon_knife`] = true,
|
||||
[`weapon_machete`] = true,
|
||||
[`weapon_switchblade`] = true,
|
||||
[`weapon_nightstick`] = true,
|
||||
[`weapon_wrench`] = true,
|
||||
[`weapon_battleaxe`] = true,
|
||||
[`weapon_poolcue`] = true,
|
||||
[`weapon_stone_hatchet`] = true,
|
||||
}
|
||||
|
||||
-- Weapon Durabilty Values (Shooting max ammo before breaking)
|
||||
local weaponList = {
|
||||
-- Handguns
|
||||
weapon_stungun = 100,
|
||||
weapon_pistol = 500,
|
||||
weapon_pistol_mk2 = 500,
|
||||
weapon_combatpistol = 500,
|
||||
weapon_appistol = 500,
|
||||
weapon_pistol50 = 500,
|
||||
weapon_snspistol = 500,
|
||||
weapon_heavypistol = 500,
|
||||
weapon_vintagepistol = 500,
|
||||
weapon_flaregun = 500,
|
||||
weapon_marksmanpistol = 500,
|
||||
weapon_revolver = 500,
|
||||
weapon_revolver_mk2 = 500,
|
||||
weapon_doubleaction = 500,
|
||||
weapon_snspistol_mk2 = 500,
|
||||
weapon_raypistol = 500,
|
||||
weapon_ceramicpistol = 500,
|
||||
weapon_navyrevolver = 500,
|
||||
weapon_gadgetpistol = 500,
|
||||
weapon_pistolxm3 = 500,
|
||||
-- Submachine Guns
|
||||
weapon_microsmg = 1000,
|
||||
weapon_smg = 1000,
|
||||
weapon_smg_mk2 = 1000,
|
||||
weapon_assaultsmg = 1000,
|
||||
weapon_combatpdw = 1000,
|
||||
weapon_machinepistol = 1000,
|
||||
weapon_minismg = 1000,
|
||||
weapon_raycarbine = 1000,
|
||||
-- Shotguns
|
||||
weapon_pumpshotgun = 150,
|
||||
weapon_sawnoffshotgun = 150,
|
||||
weapon_assaultshotgun = 150,
|
||||
weapon_bullpupshotgun = 150,
|
||||
weapon_musket = 150,
|
||||
weapon_heavyshotgun = 150,
|
||||
weapon_dbshotgun = 150,
|
||||
weapon_autoshotgun = 150,
|
||||
weapon_pumpshotgun_mk2 = 150,
|
||||
weapon_combatshotgun = 150,
|
||||
-- Assault Rifles
|
||||
weapon_assaultrifle = 2000,
|
||||
weapon_assaultrifle_mk2 = 2000,
|
||||
weapon_carbinerifle = 2000,
|
||||
weapon_carbinerifle_mk2 = 2000,
|
||||
weapon_advancedrifle = 2000,
|
||||
weapon_specialcarbine = 2000,
|
||||
weapon_bullpuprifle = 2000,
|
||||
weapon_compactrifle = 2000,
|
||||
weapon_specialcarbine_mk2 = 2000,
|
||||
weapon_bullpuprifle_mk2 = 2000,
|
||||
weapon_militaryrifle = 2000,
|
||||
-- Light Machine Guns
|
||||
weapon_mg = 3000,
|
||||
weapon_combatmg = 3000,
|
||||
weapon_gusenberg = 3000,
|
||||
weapon_combatmg_mk2 = 3000,
|
||||
-- Sniper Rifles
|
||||
weapon_sniperrifle = 50,
|
||||
weapon_heavysniper = 50,
|
||||
weapon_marksmanrifle = 50,
|
||||
weapon_remotesniper = 50,
|
||||
weapon_heavysniper_mk2 = 50,
|
||||
weapon_marksmanrifle_mk2 = 50,
|
||||
-- Heavy Weapons
|
||||
weapon_rpg = 10,
|
||||
weapon_grenadelauncher = 10,
|
||||
weapon_grenadelauncher_smoke = 10,
|
||||
weapon_minigun = 10,
|
||||
weapon_firework = 10,
|
||||
weapon_railgun = 10,
|
||||
weapon_railgunxm3 = 10,
|
||||
weapon_hominglauncher = 10,
|
||||
weapon_compactlauncher = 10,
|
||||
weapon_rayminigun = 10,
|
||||
}
|
||||
|
||||
-- Melee Weapons Durabilty Values (second)
|
||||
local meleeList = {
|
||||
weapon_dagger = 432000,
|
||||
weapon_bat = 432000,
|
||||
weapon_bottle = 432000,
|
||||
weapon_crowbar = 432000,
|
||||
weapon_unarmed = 432000,
|
||||
weapon_flashlight = 432000,
|
||||
weapon_golfclub = 432000,
|
||||
weapon_hammer = 432000,
|
||||
weapon_hatchet = 432000,
|
||||
weapon_knuckle = 432000,
|
||||
weapon_knife = 432000,
|
||||
weapon_machete = 432000,
|
||||
weapon_switchblade = 432000,
|
||||
weapon_nightstick = 432000,
|
||||
weapon_wrench = 432000,
|
||||
weapon_battleaxe = 432000,
|
||||
weapon_poolcue = 432000,
|
||||
weapon_stone_hatchet = 432000,
|
||||
weapon_candycane = 432000,
|
||||
weapon_stunrod = 432000,
|
||||
}
|
||||
|
||||
config.weaponBreakAmount = {} -- Don't change
|
||||
config.maleeWeaponBreakAmount = {} -- Don't change
|
||||
|
||||
for weapon, int in pairs(weaponList) do
|
||||
config.weaponBreakAmount[weapon] = int
|
||||
config.weaponBreakAmount[weapon:gsub("weapon_", "weapon_police_")] = int
|
||||
end
|
||||
|
||||
for weapon, int in pairs(meleeList) do
|
||||
config.maleeWeaponBreakAmount[weapon] = int
|
||||
config.maleeWeaponBreakAmount[weapon:gsub("weapon_", "weapon_police_")] = int
|
||||
end
|
|
@ -1,121 +0,0 @@
|
|||
fx_version "cerulean"
|
||||
game "gta5"
|
||||
lua54 "yes"
|
||||
version '1.29.0'
|
||||
|
||||
dependencies {
|
||||
"/server:10488",
|
||||
"ox_lib",
|
||||
"tgiann-core",
|
||||
"clothes_images",
|
||||
"inventory_images",
|
||||
"/onesync",
|
||||
}
|
||||
|
||||
ui_page "ui/build/index.html"
|
||||
|
||||
files {
|
||||
"ui/icon/**.*",
|
||||
"ui/build/**.*",
|
||||
}
|
||||
|
||||
file("json/weapons.json")
|
||||
|
||||
escrow_ignore {
|
||||
"client/editable.lua",
|
||||
"client/topHeader.lua",
|
||||
"configs/*.lua",
|
||||
"languages/*.lua",
|
||||
"server/editable.lua",
|
||||
"server/webhooks.lua",
|
||||
"server/commands.lua",
|
||||
"server/convert.lua",
|
||||
"items/*.lua"
|
||||
}
|
||||
|
||||
shared_scripts {
|
||||
"@ox_lib/init.lua",
|
||||
"items/*.lua",
|
||||
"configs/config.lua",
|
||||
"languages/*.lua",
|
||||
"configs/configAmmo.lua",
|
||||
"configs/configAntiSwimingItems.lua",
|
||||
"configs/configAttachment.lua",
|
||||
"configs/configAttachmentName.lua",
|
||||
"configs/configBlockItems.lua",
|
||||
"configs/configCarryItems.lua",
|
||||
"configs/configClotheBackpack.lua",
|
||||
"configs/configCommands.lua",
|
||||
"configs/configCraft.lua",
|
||||
"configs/configDecayableItems.lua",
|
||||
"configs/configDumpsterSearch.lua",
|
||||
"configs/configDrop.lua",
|
||||
"configs/configEditableItems.lua",
|
||||
"configs/configFilter.lua",
|
||||
"configs/configItemStash.lua",
|
||||
"configs/configMaxUseAmount.lua",
|
||||
"configs/configRealisticArmor.lua",
|
||||
"configs/configShop.lua",
|
||||
"configs/configStashes.lua",
|
||||
"configs/configThrowableItems.lua",
|
||||
"configs/configVendingMachine.lua",
|
||||
"configs/configWeapon.lua",
|
||||
"configs/configMaxStack.lua",
|
||||
"configs/configMetadata.lua",
|
||||
"shared/shared.lua"
|
||||
}
|
||||
|
||||
client_scripts {
|
||||
"shared/itemList.lua",
|
||||
"configs/configMetadataAdvance.js",
|
||||
"client/exports.lua",
|
||||
"client/dev.lua",
|
||||
"client/client.lua",
|
||||
"client/ammo.lua",
|
||||
"client/attachments.lua",
|
||||
"client/craft.lua",
|
||||
"client/dropWhenDie.lua",
|
||||
"client/playerRender.lua",
|
||||
"client/topHeader.lua",
|
||||
"client/useItem.lua",
|
||||
"client/metadata.lua",
|
||||
"client/editable.lua",
|
||||
"client/weapdraw.lua",
|
||||
"client/stungunAmmo.lua",
|
||||
"client/clothing.lua",
|
||||
"client/throwItem.lua",
|
||||
"client/drop.lua",
|
||||
"client/carryItems.lua",
|
||||
"client/realisticArmor.lua",
|
||||
"client/commands.lua",
|
||||
"client/vendingMachine.lua",
|
||||
"client/stashes.lua",
|
||||
"client/dumpsterSearch.lua",
|
||||
}
|
||||
|
||||
server_scripts {
|
||||
"@oxmysql/lib/MySQL.lua",
|
||||
"shared/itemList.lua",
|
||||
"server/hooks.lua",
|
||||
"server/webhooks.lua",
|
||||
"server/server.lua",
|
||||
"server/commands.lua",
|
||||
"server/attachments.lua",
|
||||
"server/carryItems.lua",
|
||||
"server/dropWhenDie.lua",
|
||||
"server/craft.lua",
|
||||
"server/FWFunctions.lua",
|
||||
"server/utils.lua",
|
||||
"server/ammo.lua",
|
||||
"server/realisticArmor.lua",
|
||||
"server/editable.lua",
|
||||
"server/convert.lua",
|
||||
"server/control.lua",
|
||||
"server/clothe.lua",
|
||||
"server/vendingMachine.lua",
|
||||
"server/stashes.lua",
|
||||
"server/dumpsterSearch.lua",
|
||||
"server/bridge/*.lua"
|
||||
}
|
||||
|
||||
dependency '/assetpacks'
|
|
@ -1,388 +0,0 @@
|
|||
itemsData = {
|
||||
-- Clothe items
|
||||
c_necklace = { name = "c_necklace", label = "Necklace (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_bproof = { name = "c_bproof", label = "Bullet Proof (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_decal = { name = "c_decal", label = "Decals (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_torso = { name = "c_torso", label = "Torso (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_mask = { name = "c_mask", label = "Mask (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_helmet = { name = "c_helmet", label = "Hat (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_glasses = { name = "c_glasses", label = "Glasses (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_bag = { name = "c_bag", label = "Bag (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_pants = { name = "c_pants", label = "Pants (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_shoes = { name = "c_shoes", label = "Shoes (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_bracelet = { name = "c_bracelet", label = "Bracelet (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_watch = { name = "c_watch", label = "Watch (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
c_ear = { name = "c_ear", label = "Ear (Clothe)", clothe = true, weight = 0, type = "item", unique = true, useable = false, shouldClose = false, description = "" },
|
||||
kposet = { name = "kposet", label = "Clothes Bag", weight = 100, type = "item", unique = true, useable = true, shouldClose = false, description = "Special Bag to Store Your Clothes" }, -- Clothe small bag item
|
||||
bkposet = { name = "bkposet", label = "Clothes Bag Plus", weight = 300, type = "item", unique = true, useable = true, shouldClose = false, description = "Special Bag to Store Your Clothes" }, -- Clothe big bag item
|
||||
clothe_set = { name = 'clothe_set', label = 'Clothe Set', weight = 0, type = 'item', image = 'clothe_set.png', clothe = true, unique = true, useable = true, shouldClose = false, description = '' }, -- Clothe set item
|
||||
|
||||
-- Police ammo items
|
||||
police_stungun_ammo = { rareName = "weaponPoliceAmmo", name = 'police_stungun_ammo', label = 'Pollice Stungun ammo', weight = 200, type = 'item', image = 'stungun_ammo.webp', unique = false, useable = true, shouldClose = true, description = 'Ammo for Stungun' },
|
||||
police_pistol_ammo = { rareName = "weaponPoliceAmmo", name = 'police_pistol_ammo', label = 'Pollice Pistol ammo', weight = 200, type = 'item', image = 'pistol_ammo.webp', unique = false, useable = true, shouldClose = true, description = 'Ammo for Pistols' },
|
||||
police_rifle_ammo = { rareName = "weaponPoliceAmmo", name = 'police_rifle_ammo', label = 'Pollice Rifle ammo', weight = 1000, type = 'item', image = 'rifle_ammo.webp', unique = false, useable = true, shouldClose = true, description = 'Ammo for Rifles' },
|
||||
police_smg_ammo = { rareName = "weaponPoliceAmmo", name = 'police_smg_ammo', label = 'Pollice SMG ammo', weight = 500, type = 'item', image = 'smg_ammo.webp', unique = false, useable = true, shouldClose = true, description = 'Ammo for Sub Machine Guns' },
|
||||
police_shotgun_ammo = { rareName = "weaponPoliceAmmo", name = 'police_shotgun_ammo', label = 'Pollice Shotgun ammo', weight = 500, type = 'item', image = 'shotgun_ammo.webp', unique = false, useable = true, shouldClose = true, description = 'Ammo for Shotguns' },
|
||||
police_mg_ammo = { rareName = "weaponPoliceAmmo", name = 'police_mg_ammo', label = 'Pollice MG ammo', weight = 1000, type = 'item', image = 'mg_ammo.webp', unique = false, useable = true, shouldClose = true, description = 'Ammo for Machine Guns' },
|
||||
police_snp_ammo = { rareName = "weaponPoliceAmmo", name = 'police_snp_ammo', label = 'Pollice Sniper ammo', weight = 1000, type = 'item', image = 'rifle_ammo.webp', unique = false, useable = true, shouldClose = true, description = 'Ammo for Sniper Rifles' },
|
||||
police_emp_ammo = { rareName = "weaponPoliceAmmo", name = 'police_emp_ammo', label = 'Pollice EMP Ammo', weight = 200, type = 'item', image = 'emp_ammo.webp', unique = false, useable = true, shouldClose = true, description = 'Ammo for EMP Launcher' },
|
||||
|
||||
-- Ammo items
|
||||
pistol_ammo = { name = 'pistol_ammo', label = 'Pistol ammo', weight = 200, type = 'item', image = 'pistol_ammo.png', unique = false, useable = true, shouldClose = true, description = 'Ammo for Pistols' },
|
||||
rifle_ammo = { name = 'rifle_ammo', label = 'Rifle ammo', weight = 1000, type = 'item', image = 'rifle_ammo.png', unique = false, useable = true, shouldClose = true, description = 'Ammo for Rifles' },
|
||||
smg_ammo = { name = 'smg_ammo', label = 'SMG ammo', weight = 500, type = 'item', image = 'smg_ammo.png', unique = false, useable = true, shouldClose = true, description = 'Ammo for Sub Machine Guns' },
|
||||
shotgun_ammo = { name = 'shotgun_ammo', label = 'Shotgun ammo', weight = 500, type = 'item', image = 'shotgun_ammo.png', unique = false, useable = true, shouldClose = true, description = 'Ammo for Shotguns' },
|
||||
mg_ammo = { name = 'mg_ammo', label = 'MG ammo', weight = 1000, type = 'item', image = 'mg_ammo.png', unique = false, useable = true, shouldClose = true, description = 'Ammo for Machine Guns' },
|
||||
snp_ammo = { name = 'snp_ammo', label = 'Sniper ammo', weight = 1000, type = 'item', image = 'rifle_ammo.png', unique = false, useable = true, shouldClose = true, description = 'Ammo for Sniper Rifles' },
|
||||
emp_ammo = { name = 'emp_ammo', label = 'EMP Ammo', weight = 200, type = 'item', image = 'emp_ammo.png', unique = false, useable = true, shouldClose = true, description = 'Ammo for EMP Launcher' },
|
||||
|
||||
-- Test Items
|
||||
testburger = {
|
||||
name = "testburger",
|
||||
label = 'Test Burger',
|
||||
weight = 220,
|
||||
useable = true,
|
||||
client = {
|
||||
image = 'burger_chicken.png',
|
||||
status = { hunger = 200000, thirst = 10000 },
|
||||
anim = { dict = 'missheistdockssetup1clipboard@idle_a', clip = 'idle_a', flag = 49 },
|
||||
prop = { model = `prop_rolled_sock_02`, pos = vec3(-0.14, -0.14, -0.08), rot = vec3(-50.0, -50.0, 0.0) },
|
||||
usetime = 2500,
|
||||
export = 'tgiann_inventory_examples.testburger' -- Script Name . Function name
|
||||
},
|
||||
server = {
|
||||
export = 'tgiann_inventory_examples.testburger', -- Script Name . Function name
|
||||
},
|
||||
unique = true
|
||||
},
|
||||
testbandage = {
|
||||
name = "testbandage",
|
||||
label = 'Bandage',
|
||||
weight = 115,
|
||||
useable = true,
|
||||
client = {
|
||||
anim = { dict = 'missheistdockssetup1clipboard@idle_a', clip = 'idle_a', flag = 49 },
|
||||
prop = { model = `prop_rolled_sock_02`, pos = vec3(-0.14, -0.14, -0.08), rot = vec3(-50.0, -50.0, 0.0) },
|
||||
disable = { move = true, car = true, combat = true },
|
||||
usetime = 2500,
|
||||
},
|
||||
buttons = {
|
||||
{
|
||||
label = 'Custom Button',
|
||||
action = function(slot)
|
||||
print('Custom Button', slot)
|
||||
end
|
||||
}
|
||||
},
|
||||
add = function(amount)
|
||||
print('Added', amount)
|
||||
end,
|
||||
remove = function(amount)
|
||||
print('Removed', amount)
|
||||
end
|
||||
},
|
||||
--Money as Item
|
||||
money_item = { name = 'money_item', label = 'Money', weight = 0, type = 'item', image = 'money.webp', unique = false, useable = false, shouldClose = false, description = 'Green Paper' },
|
||||
|
||||
television = { name = 'television', label = 'Television', weight = 100, type = 'item', image = 'television.png', unique = false, useable = true, shouldClose = true, description = '' },
|
||||
present = { name = 'present', label = 'Present', weight = 100, type = 'item', image = 'present.png', unique = false, useable = true, shouldClose = true, description = '' },
|
||||
phone = { name = 'phone', label = 'phone', weight = 100, type = 'item', image = 'phone.png', unique = true, useable = true, shouldClose = true, description = '' },
|
||||
|
||||
testitem = { name = 'testitem', label = 'Test Item', weight = 0, type = 'item', image = 'testitem.png', unique = false, useable = true, shouldClose = true, description = 'testitem' },
|
||||
testitemuniq = { name = 'testitemuniq', label = 'Test Item Uniq', weight = 10, type = 'item', image = 'testitemuniq.png', unique = true, useable = true, shouldClose = true, description = 'testitemuniq' },
|
||||
testitemlong = { name = 'testitemlong', label = 'Test Item Long Long Long Name', weight = 0, type = 'item', image = 'testitemlong.png', unique = false, useable = true, shouldClose = true, description = 'testitemlong' },
|
||||
|
||||
kurkakola = { name = 'kurkakola', label = 'Cola', weight = 100, type = 'item', image = 'kurkakola.png', unique = false, useable = true, shouldClose = true, description = '' },
|
||||
water_bottle = { name = 'water_bottle', label = 'Water bottle', weight = 100, type = 'item', image = 'water_bottle.png', unique = false, useable = true, shouldClose = true, description = '' },
|
||||
bread = { name = 'bread', label = 'Bread', weight = 100, type = 'item', image = 'bread.png', unique = false, useable = true, shouldClose = true, description = '' },
|
||||
water = { name = 'water', label = 'Water bottle', weight = 100, type = 'item', image = 'water.png', unique = false, useable = true, shouldClose = true, description = '' },
|
||||
radio = { name = 'radio', label = 'Radio', weight = 100, type = 'item', image = 'radio.png', unique = false, useable = true, shouldClose = true, description = '' },
|
||||
t_armor_heavy = { name = 't_armor_heavy', label = 'Heavy Armor', weight = 100, type = 'item', image = 't_armor_heavy.png', unique = true, useable = true, shouldClose = true, description = '' },
|
||||
t_armor_light = { name = 't_armor_light', label = 'Heavy Armor', weight = 100, type = 'item', image = 't_armor_light.png', unique = true, useable = true, shouldClose = true, description = '' },
|
||||
car_key = { name = 'car_key', label = 'Car Key', weight = 100, type = 'item', image = 'car_key.png', unique = true, useable = true, shouldClose = true, description = '' },
|
||||
|
||||
-- tgiann bank
|
||||
creditcard_lvl_1 = { name = 'creditcard_lvl_1', label = 'Lost Credit Cards Normal', weight = 100, type = 'item', image = 'creditcard_lvl_1.png', unique = false, useable = true, shouldClose = true, description = '' },
|
||||
creditcard_lvl_2 = { name = 'creditcard_lvl_2', label = 'Lost Credit Cards Gold', weight = 100, type = 'item', image = 'creditcard_lvl_2.png', unique = false, useable = true, shouldClose = true, description = '' },
|
||||
creditcard_lvl_3 = { name = 'creditcard_lvl_3', label = 'Lost Credit Cards Platinum', weight = 100, type = 'item', image = 'creditcard_lvl_3.png', unique = false, useable = true, shouldClose = true, description = '' },
|
||||
|
||||
-- tgiann-animpos-photo-cam
|
||||
polaroid = { name = 'polaroid', label = 'Polaroid Image', weight = 100, type = 'item', image = 'polaroid_image.png', unique = true, useable = true, shouldClose = true, description = '' },
|
||||
polaroid_empty = { name = 'polaroid_empty', label = 'Empty Polaroid', weight = 100, type = 'item', image = 'polaroid_image.png', unique = false, useable = false, shouldClose = false, description = '' },
|
||||
|
||||
-- tgiann-food-jobs
|
||||
packetlumipier = { name = "packetlumipier", label = "Lumi Cafe", image = 'packetlumipier.png', weight = 100, type = "item", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
packetbahama = { name = "packetbahama", label = "Bahama Mamas", image = 'packetbahama.png', weight = 100, type = "item", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
packetbeanmachine = { name = "packetbeanmachine", label = "Bean Machine Cafe", image = 'packetbeanmachine.png', weight = 100, type = "item", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
packetburger = { name = "packetburger", label = "Burger Shot", image = 'packetburger.png', weight = 100, type = "item", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
packethornys = { name = "packethornys", label = "Hornys", image = 'packethornys.png', weight = 100, type = "item", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
packetkoi = { name = "packetkoi", label = "KOI", image = 'packetkoi.png', weight = 100, type = "item", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
packetpearls = { name = "packetpearls", label = "Pearls", image = 'packetpearls.png', weight = 100, type = "item", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
packetpizza = { name = "packetpizza", label = "Pizza This", image = 'packetpizza.png', weight = 100, type = "item", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
packetdinner = { name = "packetdinner", label = "Pops Dinner", image = 'packetdinner.png', weight = 100, type = "item", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
packettriads = { name = "packettriads", label = "Triads", image = 'packettriads.png', weight = 100, type = "item", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
packetatom = { name = "packetatom", label = "Up un Atom", image = 'packetatom.png', weight = 100, type = "item", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
packetuwu = { name = "packetuwu", label = "Cat Cafe", image = 'packetuwu.png', weight = 100, type = "item", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
packetvanillaunicorn = { name = "packetvanillaunicorn", label = "Vanilla Unicorn", image = 'packetvanillaunicorn.png', weight = 100, type = "item", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
packettequilala = { name = "packettequilala", label = "Tequi-la-la", image = 'packettequilala.png', weight = 100, type = "item", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
packeticecream = { name = "packeticecream", label = "Dondurmacı", image = 'packeticecream.png', weight = 100, type = "item", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
-- Cocktail
|
||||
blue_lagoon = { name = "blue_lagoon", label = "Blue Lagoon", weight = 100, type = "item", image = "blue_lagoon.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
midori_sour = { name = "midori_sour", label = "Midori Sour", weight = 100, type = "item", image = "midori_sour.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
moscow_mule = { name = "moscow_mule", label = "Moscow Mule", weight = 100, type = "item", image = "moscow_mule.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
pina_colada = { name = "pina_colada", label = "Pina Colada", weight = 100, type = "item", image = "pina_colada.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
tom_collins = { name = "tom_collins", label = "Tom Collins", weight = 100, type = "item", image = "tom_collins.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
espresso_martini = { name = "espresso_martini", label = "Espresso Martini", weight = 100, type = "item", image = "espresso_martini.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
grey_hound = { name = "grey_hound", label = "Grey Hound", weight = 100, type = "item", image = "grey_hound.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
sex_on_the_beach = { name = "sex_on_the_beach", label = "Sex On The Beach", weight = 100, type = "item", image = "sex_on_the_beach.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
mojito = { name = "mojito", label = "Mojito", weight = 100, type = "item", image = "mojito.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
tequila_sunrise = { name = "tequila_sunrise", label = "Tequila Sunrise", weight = 100, type = "item", image = "tequila_sunrise.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
old_fashioned = { name = "old_fashioned", label = "Old Fashioned", weight = 100, type = "item", image = "old_fashioned.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
harvey_wallbanger = { name = "harvey_wallbanger", label = "Harvey Wallbanger", weight = 100, type = "item", image = "harvey_wallbanger.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
bellini = { name = "bellini", label = "Bellini", weight = 100, type = "item", image = "bellini.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
bloody_mary = { name = "bloody_mary", label = "Bloody Mary", weight = 100, type = "item", image = "bloody_mary.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
caiprinha = { name = "caiprinha", label = "Caiprinha", weight = 100, type = "item", image = "caiprinha.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
cosmopolitan = { name = "cosmopolitan", label = "Cosmopolitan", weight = 100, type = "item", image = "cosmopolitan.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
cuba_libre = { name = "cuba_libre", label = "Cuba Libre", weight = 100, type = "item", image = "cuba_libre.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
gin_gimlit = { name = "gin_gimlit", label = "Gin Gimlit", weight = 100, type = "item", image = "gin_gimlit.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
gin_tonic = { name = "gin_tonic", label = "Gin & Tonic", weight = 100, type = "item", image = "gin_tonic.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
irish_coffee = { name = "irish_coffee", label = "Irish Coffee", weight = 100, type = "item", image = "irish_coffee.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
mai_tai = { name = "mai_tai", label = "Mai Tai", weight = 100, type = "item", image = "mai_tai.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
manhattan_martini = { name = "manhattan_martini", label = "Manhattan Martini", weight = 100, type = "item", image = "manhattan_martini.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
mimosa = { name = "mimosa", label = "Mimosa", weight = 100, type = "item", image = "mimosa.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
mint_julep = { name = "mint_julep", label = "Mint JuleP", weight = 100, type = "item", image = "mint_julep.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
raki = { name = "raki", label = "Raki", weight = 100, type = "item", image = "raki.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
--Bear
|
||||
ale = { name = "ale", label = "Ale", weight = 100, type = "item", image = "ale.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
blonde = { name = "blonde", label = "Blonde", weight = 100, type = "item", image = "blonde.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
larger = { name = "larger", label = "Larger", weight = 100, type = "item", image = "larger.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
pilsner = { name = "pilsner", label = "Pilsner", weight = 100, type = "item", image = "pilsner.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
ryes = { name = "ryes", label = "Ryes", weight = 100, type = "item", image = "ryes.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
--Wine
|
||||
bordeaux = { name = "bordeaux", label = "Bordeaux", weight = 100, type = "item", image = "bordeaux.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
burgundy = { name = "burgundy", label = "Burgundy", weight = 100, type = "item", image = "burgundy.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
cabernet = { name = "cabernet", label = "Cabernet", weight = 100, type = "item", image = "cabernet.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
champ = { name = "champ", label = "Champ", weight = 100, type = "item", image = "champ.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
chardonnay = { name = "chardonnay", label = "Chardonnay", weight = 100, type = "item", image = "chardonnay.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
pinot_nior = { name = "pinot_nior", label = "Pinot Nior", weight = 100, type = "item", image = "pinot_nior.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
white = { name = "white", label = "White", weight = 100, type = "item", image = "white.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
zifandel = { name = "zifandel", label = "Zifandel", weight = 100, type = "item", image = "zifandel.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
stout = { name = "stout", label = "stout", weight = 100, type = "item", image = "stout.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
-- coffee
|
||||
nekolatte = { name = "nekolatte", label = "Neko Latte", weight = 100, type = "item", image = "nekolatte.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
mocha = { name = "mocha", label = "Mocha", weight = 100, type = "item", image = "mocha.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
cappuccino = { name = "cappuccino", label = "cappuccino", weight = 100, type = "item", image = "cappuccino.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
latte = { name = "latte", label = "Latte", weight = 100, type = "item", image = "latte.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
latte_macchiato = { name = "latte_macchiato", label = "Latte Macchiato", weight = 100, type = "item", image = "latte_macchiato.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
coffee = { name = "coffee", label = "coffee", weight = 0, type = "item", image = "coffee.png", unique = true, useable = true, shouldClose = true, description = "", },
|
||||
coffee_1x = { name = "coffee_1x", label = "small coffee", weight = 100, type = "item", image = "coffee_1x.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
coffee_2x = { name = "coffee_2x", label = "medium coffee", weight = 100, type = "item", image = "coffee_2x.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
coffee_3x = { name = "coffee_3x", label = "large coffee", weight = 100, type = "item", image = "coffee_3x.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
-- Cola
|
||||
sprunk = { name = "sprunk", label = "Sprite", weight = 100, type = "item", image = "sprunk.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
ecola = { name = "ecola", label = "Cola", weight = 100, type = "item", image = "ecola.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
sprunklight = { name = "sprunklight", label = "Sprite Light", weight = 100, type = "item", image = "sprunklight.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
ecolalight = { name = "ecolalight", label = "Cola Light", weight = 100, type = "item", image = "ecolalight.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
-- Juices
|
||||
orange_juice = { name = "orange_juice", label = "Orange Juice", weight = 100, type = "item", image = "orange_juice.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
watermelon_juice = { name = "watermelon_juice", label = "Watermelon Juice", weight = 100, type = "item", image = "watermelon_juice.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
pineapple_juice = { name = "pineapple_juice", label = "Pineapple Juice", weight = 100, type = "item", image = "pineapple_juice.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
carrot_juice = { name = "carrot_juice", label = "Carrot Juice", weight = 100, type = "item", image = "carrot_juice.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
tomato_juice = { name = "tomato_juice", label = "Tomato Juice", weight = 100, type = "item", image = "tomato_juice.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
cranberry_juice = { name = "cranberry_juice", label = "Cranberry Juice", weight = 100, type = "item", image = "cranberry_juice.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
lemonade_juice = { name = "lemonade_juice", label = "Lemonade Juice", weight = 100, type = "item", image = "lemonade_juice.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
--bubbletea
|
||||
bubbletea_strawberry = { name = "bubbletea_strawberry", label = "Strawberry Bubble Tea", weight = 100, type = "item", image = "bubbletea_strawberry.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
bubbletea_cola = { name = "bubbletea_cola", label = "Cola Bubble Tea", weight = 100, type = "item", image = "bubbletea_cola.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
bubbletea_green = { name = "bubbletea_green", label = "Green Bubble Tea", weight = 100, type = "item", image = "bubbletea_green.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
bubbletea_milk = { name = "bubbletea_milk", label = "Milky Bubble Tea", weight = 100, type = "item", image = "bubbletea_milk.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
bubbletea_caramel = { name = "bubbletea_caramel", label = "Caramel Bubble Tea", weight = 100, type = "item", image = "bubbletea_caramel.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
-- icecream
|
||||
berry_icecream = { name = "berry_icecream", label = "Berry Ice cream", weight = 100, type = "item", image = "berry_icecream.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
bubblegum_icecream = { name = "bubblegum_icecream", label = "Bubblegum Ice cream", weight = 100, type = "item", image = "bubblegum_icecream.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
caramel_icecream = { name = "caramel_icecream", label = "Caramel Ice cream", weight = 100, type = "item", image = "caramel_icecream.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
chocolate_icecream = { name = "chocolate_icecream", label = "Chocolate Ice cream", weight = 100, type = "item", image = "chocolate_icecream.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
chocolate_strawberry_icecream = { name = "chocolate_strawberry_icecream", label = "Strawberry&Chocolate Ice cream", weight = 100, type = "item", image = "chocolate_strawberry_icecream.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
mint_icecream = { name = "mint_icecream", label = "Mint Ice cream", weight = 100, type = "item", image = "mint_icecream.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
strawberry_icecream = { name = "strawberry_icecream", label = "Strawberry Ice cream", weight = 100, type = "item", image = "strawberry_icecream.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
strawberry_mint_icecream = { name = "strawberry_mint_icecream", label = "Strawberry&Mint Ice cream", weight = 100, type = "item", image = "strawberry_mint_icecream.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
strawberry_vanilla_icecream = { name = "strawberry_vanilla_icecream", label = "Strawberry&Vanilla Ice cream", weight = 100, type = "item", image = "strawberry_vanilla_icecream.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
vanilla_icecream = { name = "vanilla_icecream", label = "Vanilla Ice cream", weight = 100, type = "item", image = "vanilla_icecream.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
vanilla_berry_icecream = { name = "vanilla_berry_icecream", label = "Berry&Vanilla Ice cream", weight = 100, type = "item", image = "vanilla_berry_icecream.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
vanilla_mint_icecream = { name = "vanilla_mint_icecream", label = "Mint&Vanilla Ice cream", weight = 100, type = "item", image = "vanilla_mint_icecream.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
--food craft items
|
||||
carrot = { name = "carrot", label = "Carrot", weight = 100, type = "item", image = "carrot.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
cranberry = { name = "cranberry", label = "Cranberry", weight = 100, type = "item", image = "cranberry.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
boba = { name = "boba", label = "Boba", weight = 100, type = "item", image = "boba.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
sugar = { name = "sugar", label = "Sugar", weight = 100, type = "item", image = "sugar.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
blueberry = { name = "blueberry", label = "Blueberry", weight = 100, type = "item", image = "blueberry.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
mint = { name = "mint", label = "Mint", weight = 100, type = "item", image = "mint.png", unique = false, useable = true, shouldClose = false, description = "" },
|
||||
orange = { name = "orange", label = "Orange", weight = 100, type = "item", image = "orange.png", unique = false, useable = true, shouldClose = false, description = "" },
|
||||
strawberry = { name = "strawberry", label = "Strawberry", weight = 100, type = "item", image = "strawberry.png", unique = false, useable = true, shouldClose = false, description = "" },
|
||||
rice = { name = "rice", label = "Rice", weight = 100, type = "item", image = "rice.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
nori = { name = "nori", label = "Nori", weight = 100, type = "item", image = "nori.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
tofu = { name = "tofu", label = "Tofu", weight = 100, type = "item", image = "tofu.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
onion = { name = "onion", label = "Onion", weight = 500, type = "item", image = "onion.png", unique = false, useable = false, shouldClose = false, description = "" },
|
||||
avokado = { name = "avokado", label = "Avokado", weight = 500, type = "item", image = "avokado.png", unique = false, useable = false, shouldClose = false, description = "" },
|
||||
raw_sausagepizza = { name = "raw_sausagepizza", label = "Raw Sausage Pizza", weight = 100, type = "item", image = "raw_sucuklu.png", unique = false, useable = true, shouldClose = false, description = "" },
|
||||
raw_margaritapizza = { name = "raw_margaritapizza", label = "Raw Margaritalı Pizza", weight = 100, type = "item", image = "raw_margaritapizza.png", unique = false, useable = true, shouldClose = false, description = "" },
|
||||
raw_mushroompizza = { name = "raw_mushroompizza", label = "Raw Mushroom Pizza", weight = 100, type = "item", image = "raw_mushroompizza.png", unique = false, useable = true, shouldClose = false, description = "" },
|
||||
raw_chickenpizza = { name = "raw_chickenpizza", label = "Raw Chicken Pizza", weight = 100, type = "item", image = "raw_chickenpizza.png", unique = false, useable = true, shouldClose = false, description = "" },
|
||||
raw_tunapizza = { name = "raw_tunapizza", label = "Raw Tuna Pizza", weight = 100, type = "item", image = "raw_tunapizza.png", unique = false, useable = true, shouldClose = false, description = "" },
|
||||
milk = { name = "milk", label = "Milk", weight = 300, type = "item", image = "milk.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
rawcoffee = { name = "rawcoffee", label = "Raw Coffee", weight = 100, type = "item", image = "rawcoffee.png", unique = false, useable = true, shouldClose = true, description = "", },
|
||||
sausage = { name = 'sausage', label = 'Sausage', weight = 100, type = 'item', image = 'sausage.png', unique = false, useable = true, shouldClose = true, description = '' },
|
||||
sausage_brat = { name = 'sausage_brat', label = 'Sausage', weight = 100, type = 'item', image = 'sausage_brat.png', unique = false, useable = true, shouldClose = true, description = '' },
|
||||
tuna = { name = 'tuna', label = 'Tuna', weight = 100, type = 'item', image = 'tuna.png', unique = false, useable = true, shouldClose = false, description = '' },
|
||||
chicken = { name = 'chicken', label = 'Chicken', weight = 100, type = 'item', image = 'chicken.png', unique = false, useable = true, shouldClose = false, description = '' },
|
||||
dough2 = { name = 'dough2', label = 'Dough', weight = 100, type = 'item', image = 'dough2.png', unique = false, useable = true, shouldClose = false, description = '' },
|
||||
food_mushroom = { name = 'food_mushroom', label = 'Mushroom', weight = 100, type = 'item', image = 'food_mushroom.png', unique = false, useable = true, shouldClose = true, description = '' },
|
||||
spice = { name = "spice", label = "Spice", weight = 100, type = "item", image = "spice.png", unique = false, useable = true, shouldClose = false, description = "" },
|
||||
tomatoes = { name = 'tomatoes', label = 'Tomato', weight = 100, type = 'item', image = 'tomatoes.png', unique = false, useable = true, shouldClose = false, description = '' },
|
||||
tomatoes2 = { name = 'tomatoes2', label = 'Cut Tomato', weight = 100, type = 'item', image = 'tomatoes2.png', unique = false, useable = true, shouldClose = false, description = '' },
|
||||
dough = { name = 'dough', label = 'Dough', weight = 100, type = 'item', image = 'dough.png', unique = false, useable = true, shouldClose = false, description = '' },
|
||||
tomatopaste = { name = 'tomatopaste', label = 'Tomatopaste', weight = 100, type = 'item', image = 'tomatopaste.png', unique = false, useable = true, shouldClose = false, description = '' },
|
||||
flour = { name = "flour", label = "Flour", weight = 100, type = "item", image = "flour.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
egg = { name = 'egg', label = 'Eggs', weight = 100, type = 'item', image = 'egg.png', unique = false, useable = true, shouldClose = false, description = '' },
|
||||
kiwi = { name = "kiwi", label = "Kiwi", weight = 100, type = "item", image = "kiwi.png", unique = false, useable = true, shouldClose = false, description = "" },
|
||||
berry = { name = "berry", label = "Berry", weight = 100, type = "item", image = "berry.png", unique = false, useable = true, shouldClose = false, description = "" },
|
||||
lemon = { name = "lemon", label = "Lemon", weight = 100, type = "item", image = "lemon.png", unique = false, useable = true, shouldClose = false, description = "" },
|
||||
watermelon = { name = "watermelon", label = "Watermelon", weight = 100, type = "item", image = "watermelon.png", unique = false, useable = true, shouldClose = false, description = "" },
|
||||
banana = { name = "banana", label = "Banana", weight = 100, type = "item", image = "banana.png", unique = false, useable = true, shouldClose = false, description = "" },
|
||||
cherry = { name = "cherry", label = "Cherry", weight = 100, type = "item", image = "cherry.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
maracuja = { name = "maracuja", label = "Maracuja", weight = 100, type = "item", image = "maracuja.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
apple = { name = "apple", label = "Apple", weight = 100, type = "item", image = "apple.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
burgerbread = { name = "burgerbread", label = "Burger Bread", weight = 100, type = "item", image = "burgerbread.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
sandwichbread = { name = "sandwichbread", label = "Sandwich Bread", weight = 100, type = "item", image = "sandwichbread.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
meat = { name = "meat", label = "Raw Meat", weight = 100, type = "item", image = "meat.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
meat2 = { name = "meat2", label = "Cooked Meat", weight = 100, type = "item", image = "meat2.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
pickle = { name = "pickle", label = "Pickle", weight = 100, type = "item", image = "pickle.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
pickle2 = { name = "pickle2", label = "Cut Pickle", weight = 100, type = "item", image = "pickle2.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
ketchup = { name = "ketchup", label = "Ketchup", weight = 100, type = "item", image = "ketchup.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
mustard = { name = "mustard", label = "Mustard", weight = 100, type = "item", image = "mustard.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
nugget = { name = "nugget", label = "Raw Nugget", weight = 100, type = "item", image = "nugget.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
nugget2 = { name = "nugget2", label = "Cooked Nugget", weight = 100, type = "item", image = "nugget2.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
lettuce = { name = "lettuce", label = "Lettuce", weight = 100, type = "item", image = "lettuce.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
lettuce2 = { name = "lettuce2", label = "Cut Lettuce", weight = 100, type = "item", image = "lettuce2.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
mayonnaise = { name = "mayonnaise", label = "Mayonnaise", weight = 100, type = "item", image = "mayonnaise.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
potato = { name = "potato", label = "Potato", weight = 100, type = "item", image = "potato.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
potato2 = { name = "potato2", label = "Cut Potato", weight = 100, type = "item", image = "potato2.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
grapefruit = { name = "grapefruit", label = "Greyfurt", weight = 100, type = "item", image = "grapefruit.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
peach = { name = "peach", label = "Peach", weight = 100, type = "item", image = "peach.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
pear = { name = "pear", label = "Pear", weight = 100, type = "item", image = "pear.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
plum = { name = "plum", label = "Plum", weight = 100, type = "item", image = "plum.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
cheese = { name = "cheese", label = "Pizza Cheese", weight = 100, type = "item", image = "cheese.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
cheese2 = { name = "cheese2", label = "Cut Pizza Cheese", weight = 100, type = "item", image = "cheese2.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
ice = { name = "ice", label = "Ice", weight = 100, type = "item", image = "ice.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
lime = { name = "lime", label = "Lime", weight = 100, type = "item", image = "lime.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
alcohol = { name = "alcohol", label = "Alcohol", weight = 100, type = "item", image = "alcohol.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
soda = { name = "soda", label = "Soda", weight = 100, type = "item", image = "soda.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
pineapple = { name = "pineapple", label = "Pineapple", weight = 100, type = "item", image = "pineapple.png", unique = false, useable = true, shouldClose = true, description = "" },
|
||||
coconut = { name = "coconut", label = "Coconut", weight = 100, type = "item", image = "coconut.png", unique = false, useable = true, shouldClose = false, description = "" },
|
||||
espresso = { name = "espresso", label = "Espresso", weight = 100, type = "item", image = "espresso.png", unique = false, useable = true, shouldClose = false, description = "" },
|
||||
grape = { name = 'grape', label = 'Grape', weight = 100, type = 'item', image = 'grape.png', unique = false, useable = true, shouldClose = false, description = "" },
|
||||
vanilla = { name = 'vanilla', label = 'Vanilya', weight = 100, type = 'item', image = 'vanilla.png', unique = false, useable = true, shouldClose = false, description = "" },
|
||||
pepper = { name = 'pepper', label = 'Pepper', weight = 100, type = 'item', image = 'pepper.png', unique = false, useable = true, shouldClose = false, description = "" },
|
||||
noodles = { name = "noodles", label = "Noodle", weight = 100, type = "item", image = "noodles.png", unique = false, useable = false, shouldClose = true, description = "" },
|
||||
chocolate = { name = "chocolate", label = "Chocolate", weight = 100, type = "item", image = "chocolate.png", unique = false, useable = false, shouldClose = true, description = "" },
|
||||
caramel = { name = "caramel", label = "Caramel", weight = 100, type = "item", image = "caramel.png", unique = false, useable = false, shouldClose = true, description = "" },
|
||||
tortilla = { name = "tortilla", label = "Tortilla", weight = 100, type = "item", image = "tortilla.png", unique = false, useable = false, shouldClose = true, description = "" },
|
||||
cheddarcheese = { name = "cheddarcheese", label = "Cheddar Cheese", weight = 100, type = "item", image = "cheddarcheese.png", unique = false, useable = false, shouldClose = true, description = "" },
|
||||
tacosauce = { name = "tacosauce", label = "Taco Sauce", weight = 100, type = "item", image = "tacosauce.png", unique = false, useable = false, shouldClose = true, description = "" },
|
||||
--Food
|
||||
sandwich = { name = 'sandwich', label = 'Sandwich', weight = 200, type = 'item', image = 'sandwich.png', unique = true, useable = true, shouldClose = true, description = 'Nice bread for your stomach' },
|
||||
bento = { name = "bento", label = "Bento Box", weight = 500, type = "item", image = "bento.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
miso = { name = "miso", label = "Miso Soup", weight = 100, type = "item", image = "miso.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
spagetti = { name = "spagetti", label = "Spagetti", weight = 100, type = "item", image = "spagetti.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
salad = { name = "salad", label = "Salad", weight = 100, type = "item", image = "salad.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
hotdog = { name = "hotdog", label = "Hotdog", weight = 100, type = "item", image = "hotdog.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
--sushi
|
||||
avosushi = { name = "avosushi", label = "Avokado Sushi", weight = 100, type = "item", image = "avosushi.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
tonsushi = { name = "tonsushi", label = "Tuna Sushi", weight = 100, type = "item", image = "tonsushi.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
--mochi
|
||||
pmochi = { name = "pmochi", label = "Pink Mochi", weight = 100, type = "item", image = "pmochi.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
omochi = { name = "omochi", label = "Orange Mochi", weight = 100, type = "item", image = "omochi.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
gmochi = { name = "gmochi", label = "Green Mochi", weight = 100, type = "item", image = "gmochi.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
bmochi = { name = "bmochi", label = "Blue Mochi", weight = 100, type = "item", image = "bmochi.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
--fires
|
||||
frenchfries = { name = "frenchfries", label = "French fries", weight = 100, type = "item", image = "frenchfries.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
serratedfrenchfries = { name = "serratedfrenchfries", label = "Serrated French fries", weight = 100, type = "item", image = "serratedfrenchfries.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
--donut
|
||||
chocolate_donut = { name = "chocolate_donut", label = "Chocolate Donut", weight = 100, type = "item", image = "chocolate_donut.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
strawberry_donut = { name = "strawberry_donut", label = "Strawberry Donut", weight = 100, type = "item", image = "strawberry_donut.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
lemon_donut = { name = "lemon_donut", label = "Lemon Donut", weight = 100, type = "item", image = "lemon_donut.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
mint_donut = { name = "mint_donut", label = "Mint Donut", weight = 100, type = "item", image = "mint_donut.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
cherry_donut = { name = "cherry_donut", label = "Cherry Donut", weight = 100, type = "item", image = "cherry_donut.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
creme_donut = { name = "creme_donut", label = "Cream Donut", weight = 100, type = "item", image = "creme_donut.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
blueberry_donut = { name = "blueberry_donut", label = "Blueberry Donut", weight = 100, type = "item", image = "blueberry_donut.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
--Pizza
|
||||
uwupizza = { name = "uwupizza", label = "Uwu Pizza", weight = 100, type = "item", image = "uwupizza.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
sausagepizza = { name = "sausagepizza", label = "Sausage Pizza", weight = 100, type = "item", image = "sausagepizza.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
tunapizza = { name = "tunapizza", label = "Tuna Pizza", weight = 100, type = "item", image = "tunapizza.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
chickenpizza = { name = "chickenpizza", label = "Chicken Pizza", weight = 100, type = "item", image = "chickenpizza.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
mushroompizza = { name = "mushroompizza", label = "Mushroom Pizza", weight = 100, type = "item", image = "mushroompizza.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
margaritapizza = { name = "margaritapizza", label = "Margarita Pizza", weight = 100, type = "item", image = "margaritapizza.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
--brownies
|
||||
whitechocolate_brownies = { name = "whitechocolate_brownies", label = "White Chocolate Brownie", weight = 100, type = "item", image = "whitechocolate_brownies.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
strawberry_brownies = { name = "strawberry_brownies", label = "Strawberry Brownie", weight = 100, type = "item", image = "strawberry_brownies.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
raspberry_brownies = { name = "raspberry_brownies", label = "Raspberry Brownie", weight = 100, type = "item", image = "raspberry_brownies.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
classic_brownies = { name = "classic_brownies", label = "Brownie", weight = 100, type = "item", image = "classic_brownies.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
--Cheesecake
|
||||
tiramisu = { name = "tiramisu", label = "Tiramisu", weight = 100, type = "item", image = "tiramisu.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
chocolate_cheesecake = { name = "chocolate_cheesecake", label = "White Chocolate Cheesecake", weight = 100, type = "item", image = "chocolate_cheesecake.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
lemon_cheesecake = { name = "lemon_cheesecake", label = "Lemon Cheesecake", weight = 100, type = "item", image = "lemon_cheesecake.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
berry_cheesecake = { name = "berry_cheesecake", label = "Berry Cheesecake", weight = 100, type = "item", image = "berry_cheesecake.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
strawberry_cheesecake = { name = "strawberry_cheesecake", label = "Strawberry Cheesecake", weight = 100, type = "item", image = "strawberry_cheesecake.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
--Smoothie
|
||||
strawberry_smoothie = { name = "strawberry_smoothie", label = "Strawberry Smoothie", weight = 100, type = "item", image = "strawberry_smoothie.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
kiwi_smoothie = { name = "kiwi_smoothie", label = "Kiwi Smoothie", weight = 100, type = "item", image = "kiwi_smoothie.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
berry_smoothie = { name = "berry_smoothie", label = "Raspberry Smoothie", weight = 100, type = "item", image = "berry_smoothie.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
orange_smoothie = { name = "orange_smoothie", label = "Orange Smoothie", weight = 100, type = "item", image = "orange_smoothie.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
banana_smoothie = { name = "banana_smoothie", label = "Banana Smoothie", weight = 100, type = "item", image = "banana_smoothie.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
--bagel
|
||||
bacon_egg_cheese_bagel = { name = "bacon_egg_cheese_bagel", label = "Patırma, Yumurta ve Peynirli Simit", weight = 100, type = "item", image = "bacon_egg_cheese_bagel.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
salmon_cream_bagel = { name = "salmon_cream_bagel", label = "Salamlı Simit", weight = 100, type = "item", image = "salmon_cream_bagel.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
--cake
|
||||
strawberry_cake = { name = "strawberry_cake", label = "Strawberry Cake", weight = 100, type = "item", image = "strawberry_cake.png", unique = true, useable = true, shouldClose = true, description = "" },
|
||||
vanilla_cake = { name = "vanilla_cake", label = "Vanilla Cake", weight = 100, type = "item", image = "vanilla_cake.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
chocolate_cake = { name = "chocolate_cake", label = "Chocolate Cake", weight = 100, type = "item", image = "chocolate_cake.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
--burger
|
||||
cheeseburger = { name = "cheeseburger", label = "Cheese Burger", weight = 100, type = "item", image = "cheeseburger.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
chickenburger = { name = "chickenburger", label = "Chicken Burger", weight = 100, type = "item", image = "chickenburger.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
burger_2x = { name = "burger_2x", label = "Double Hamburger", weight = 100, type = "item", image = "burger_2x.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
burger_3x = { name = "burger_3x", label = "Tripple Hamburger", weight = 100, type = "item", image = "burger_3x.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
burger_4x = { name = "burger_4x", label = "Stack Hamburger", weight = 100, type = "item", image = "burger_4x.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
--kebab
|
||||
beef_kebab = { name = "beef_kebab", label = "Beef Kebap", weight = 100, type = "item", image = "beef_kebab.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
chicken_kebab = { name = "chicken_kebab", label = "Chicken Kebap", weight = 100, type = "item", image = "chicken_kebab.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
--taco
|
||||
beeftaco = { name = "beeftaco", label = "Beef Taco", weight = 100, type = "item", image = "beeftaco.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
chickentaco = { name = "chickentaco", label = "Chicken Taco", weight = 100, type = "item", image = "chickentaco.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
quesadilla = { name = "quesadilla", label = "Quesadilla", weight = 100, type = "item", image = "quesadilla.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
--ramen
|
||||
ramen = { name = "ramen", label = "Ramen", weight = 100, type = "item", image = "ramen.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
beef_ramen = { name = "beef_ramen", label = "Beef Ramen", weight = 100, type = "item", image = "beef_ramen.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
chicken_ramen = { name = "chicken_ramen", label = "Chicken Ramen", weight = 100, type = "item", image = "chicken_ramen.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
duck_ramen = { name = "duck_ramen", label = "Duck Ramen", weight = 100, type = "item", image = "duck_ramen.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
shrimp_ramen = { name = "shrimp_ramen", label = "Shrimp Ramen", weight = 100, type = "item", image = "shrimp_ramen.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
vegetable_ramen = { name = "vegetable_ramen", label = "Vegetable Ramen", weight = 100, type = "item", image = "vegetable_ramen.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
--Soup
|
||||
pumpkin_soup = { name = "pumpkin_soup", label = "Pumpkin Soup", weight = 100, type = "item", image = "pumpkin_soup.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
vegetable_soup = { name = "vegetable_soup", label = "Vegetable Soup", weight = 100, type = "item", image = "vegetable_soup.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
chicken_noodle_soup = { name = "chicken_noodle_soup", label = "Chicken noodle Soup", weight = 100, type = "item", image = "chicken_noodle_soup.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
creamy_chicken_soup = { name = "creamy_chicken_soup", label = "Creamy Chicken Soup", weight = 100, type = "item", image = "creamy_chicken_soup.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
tomato_soup = { name = "tomato_soup", label = "Tomato Soupsı", weight = 100, type = "item", image = "tomato_soup.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
mushroom_soup = { name = "mushroom_soup", label = "Mushroom Soup", weight = 100, type = "item", image = "mushroom_soup.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
--macaroon
|
||||
banana_macaroon = { name = "banana_macaroon", label = "Banana Macaroon", weight = 100, type = "item", image = "banana_macaroon.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
orange_macaroon = { name = "orange_macaroon", label = "Orange Macaroon", weight = 100, type = "item", image = "orange_macaroon.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
strawberry_macaroon = { name = "strawberry_macaroon", label = "Strawberry Macaroon", weight = 100, type = "item", image = "strawberry_macaroon.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
mint_macaroon = { name = "mint_macaroon", label = "Mint Macaroon", weight = 100, type = "item", image = "mint_macaroon.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
blueberry_macaroon = { name = "blueberry_macaroon", label = "Blueberry Macaroon", weight = 100, type = "item", image = "blueberry_macaroon.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
--muffin
|
||||
banana_muffin = { name = "banana_muffin", label = "Banana muffin", weight = 100, type = "item", image = "banana_muffin.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
orange_muffin = { name = "orange_muffin", label = "Orange muffin", weight = 100, type = "item", image = "orange_muffin.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
strawberry_muffin = { name = "strawberry_muffin", label = "Strawberry muffin", weight = 100, type = "item", image = "strawberry_muffin.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
mint_muffin = { name = "mint_muffin", label = "Mint muffin", weight = 100, type = "item", image = "mint_muffin.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
berry_muffin = { name = "berry_muffin", label = "Berry muffin", weight = 100, type = "item", image = "berry_muffin.png", unique = true, useable = true, shouldClose = false, description = "" },
|
||||
}
|
|
@ -1,152 +0,0 @@
|
|||
local weaponsList = {
|
||||
-- Melee
|
||||
weapon_unarmed = { name = 'weapon_unarmed', label = 'Fists', weight = 1000, ammotype = nil, image = 'placeholder.webp', description = 'Fisticuffs' },
|
||||
weapon_dagger = { name = 'weapon_dagger', label = 'Dagger', weight = 1000, ammotype = nil, image = 'weapon_dagger.webp', description = 'A short knife with a pointed and edged blade, used as a weapon' },
|
||||
weapon_bat = { name = 'weapon_bat', label = 'Bat', weight = 1000, ammotype = nil, image = 'weapon_bat.webp', description = 'Used for hitting a ball in sports (or other things)' },
|
||||
weapon_bottle = { name = 'weapon_bottle', label = 'Broken Bottle', weight = 1000, ammotype = nil, image = 'weapon_bottle.webp', description = 'A broken bottle' },
|
||||
weapon_crowbar = { name = 'weapon_crowbar', label = 'Crowbar', weight = 1000, ammotype = nil, image = 'weapon_crowbar.webp', description = 'An iron bar with a flattened end, used as a lever' },
|
||||
weapon_flashlight = { name = 'weapon_flashlight', label = 'Flashlight', weight = 1000, ammotype = nil, image = 'weapon_flashlight.webp', description = 'A battery-operated portable light' },
|
||||
weapon_golfclub = { name = 'weapon_golfclub', label = 'Golfclub', weight = 1000, ammotype = nil, image = 'weapon_golfclub.webp', description = 'A club used to hit the ball in golf' },
|
||||
weapon_hammer = { name = 'weapon_hammer', label = 'Hammer', weight = 1000, ammotype = nil, image = 'weapon_hammer.webp', description = 'Used for jobs such as breaking things (legs) and driving in nails' },
|
||||
weapon_hatchet = { name = 'weapon_hatchet', label = 'Hatchet', weight = 1000, ammotype = nil, image = 'weapon_hatchet.webp', description = 'A small axe with a short handle for use in one hand' },
|
||||
weapon_knuckle = { name = 'weapon_knuckle', label = 'Knuckle', weight = 1000, ammotype = nil, image = 'weapon_knuckle.webp', description = 'A metal guard worn over the knuckles in fighting, especially to increase the effect of the blows' },
|
||||
weapon_knife = { name = 'weapon_knife', label = 'Knife', weight = 1000, ammotype = nil, image = 'weapon_knife.webp', description = 'An instrument composed of a blade fixed into a handle, used for cutting or as a weapon' },
|
||||
weapon_machete = { name = 'weapon_machete', label = 'Machete', weight = 1000, ammotype = nil, image = 'weapon_machete.webp', description = 'A broad, heavy knife used as a weapon' },
|
||||
weapon_switchblade = { name = 'weapon_switchblade', label = 'Switchblade', weight = 1000, ammotype = nil, image = 'weapon_switchblade.webp', description = 'A knife with a blade that springs out from the handle when a button is pressed' },
|
||||
weapon_nightstick = { name = 'weapon_nightstick', label = 'Nightstick', weight = 1000, ammotype = nil, image = 'weapon_nightstick.webp', description = 'A police officer\'s club or billy' },
|
||||
weapon_wrench = { name = 'weapon_wrench', label = 'Wrench', weight = 1000, ammotype = nil, image = 'weapon_wrench.webp', description = 'A tool used for gripping and turning nuts, bolts, pipes, etc' },
|
||||
weapon_battleaxe = { name = 'weapon_battleaxe', label = 'Battle Axe', weight = 1000, ammotype = nil, image = 'weapon_battleaxe.webp', description = 'A large broad-bladed axe used in ancient warfare' },
|
||||
weapon_poolcue = { name = 'weapon_poolcue', label = 'Poolcue', weight = 1000, ammotype = nil, image = 'weapon_poolcue.webp', description = 'A stick used to strike a ball, usually the cue ball (or other things)' },
|
||||
weapon_briefcase = { name = 'weapon_briefcase', label = 'Briefcase', weight = 1000, ammotype = nil, image = 'weapon_briefcase.webp', description = 'A briefcase for storing important documents' },
|
||||
weapon_briefcase_02 = { name = 'weapon_briefcase_02', label = 'Suitcase', weight = 1000, ammotype = nil, image = 'weapon_briefcase2.webp', description = 'Wonderfull for nice vacation to Liberty City' },
|
||||
weapon_garbagebag = { name = 'weapon_garbagebag', label = 'Garbage Bag', weight = 1000, ammotype = nil, image = 'weapon_garbagebag.webp', description = 'A garbage bag' },
|
||||
weapon_handcuffs = { name = 'weapon_handcuffs', label = 'Handcuffs', weight = 1000, ammotype = nil, image = 'weapon_handcuffs.webp', description = 'A pair of lockable linked metal rings for securing a prisoner\'s wrists' },
|
||||
weapon_bread = { name = 'weapon_bread', label = 'Baquette', weight = 1000, ammotype = nil, image = 'baquette.webp', description = 'Bread...?' },
|
||||
weapon_stone_hatchet = { name = 'weapon_stone_hatchet', label = 'Stone Hatchet', weight = 1000, ammotype = nil, image = 'weapon_stone_hatchet.webp', description = 'Stone Hatchet' },
|
||||
weapon_candycane = { name = 'weapon_candycane', label = 'Candy Cane', weight = 1000, ammotype = nil, image = 'weapon_candycane', description = 'Candy Cane' },
|
||||
|
||||
-- Handguns
|
||||
weapon_pistol = { name = 'weapon_pistol', label = 'Walther P99', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_pistol.webp', description = 'A small firearm designed to be held in one hand' },
|
||||
weapon_pistol_mk2 = { name = 'weapon_pistol_mk2', label = 'Pistol Mk II', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_pistol_mk2.webp', description = 'An upgraded small firearm designed to be held in one hand' },
|
||||
weapon_combatpistol = { name = 'weapon_combatpistol', label = 'Combat Pistol', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_combatpistol.webp', description = 'A combat version small firearm designed to be held in one hand' },
|
||||
weapon_appistol = { name = 'weapon_appistol', label = 'AP Pistol', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_appistol.webp', description = 'A small firearm designed to be held in one hand that is automatic' },
|
||||
weapon_stungun = { name = 'weapon_stungun', label = 'Taser', weight = 1000, ammotype = 'AMMO_STUNGUN', image = 'weapon_stungun.webp', description = 'A weapon firing barbs attached by wires to batteries, causing temporary paralysis' },
|
||||
weapon_pistol50 = { name = 'weapon_pistol50', label = 'Pistol .50', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_pistol50.webp', description = 'A .50 caliber firearm designed to be held with both hands' },
|
||||
weapon_snspistol = { name = 'weapon_snspistol', label = 'SNS Pistol', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_snspistol.webp', description = 'A very small firearm designed to be easily concealed' },
|
||||
weapon_heavypistol = { name = 'weapon_heavypistol', label = 'Heavy Pistol', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_heavypistol.webp', description = 'A hefty firearm designed to be held in one hand (or attempted)' },
|
||||
weapon_vintagepistol = { name = 'weapon_vintagepistol', label = 'Vintage Pistol', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_vintagepistol.webp', description = 'An antique firearm designed to be held in one hand' },
|
||||
weapon_flaregun = { name = 'weapon_flaregun', label = 'Flare Gun', weight = 1000, ammotype = 'AMMO_FLARE', image = 'weapon_flaregun.webp', description = 'A handgun for firing signal rockets' },
|
||||
weapon_marksmanpistol = { name = 'weapon_marksmanpistol', label = 'Marksman Pistol', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_marksmanpistol.webp', description = 'A very accurate small firearm designed to be held in one hand' },
|
||||
weapon_revolver = { name = 'weapon_revolver', label = 'Revolver', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_revolver.webp', description = 'A pistol with revolving chambers enabling several shots to be fired without reloading' },
|
||||
weapon_revolver_mk2 = { name = 'weapon_revolver_mk2', label = 'Violence', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_revolver_mk2.webp', description = 'da Violence' },
|
||||
weapon_doubleaction = { name = 'weapon_doubleaction', label = 'Double Action Revolver', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_doubleaction.webp', description = 'Double Action Revolver' },
|
||||
weapon_snspistol_mk2 = { name = 'weapon_snspistol_mk2', label = 'SNS Pistol Mk II', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_snspistol_mk2.webp', description = 'SNS Pistol MK2' },
|
||||
weapon_raypistol = { name = 'weapon_raypistol', label = 'Up-n-Atomizer', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_raypistol.webp', description = 'Weapon Raypistol' },
|
||||
weapon_ceramicpistol = { name = 'weapon_ceramicpistol', label = 'Ceramic Pistol', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_ceramicpistol.webp', description = 'Weapon Ceramicpistol' },
|
||||
weapon_navyrevolver = { name = 'weapon_navyrevolver', label = 'Navy Revolver', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_navyrevolver.webp', description = 'Weapon Navyrevolver' },
|
||||
weapon_gadgetpistol = { name = 'weapon_gadgetpistol', label = 'Perico Pistol', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_gadgetpistol.webp', description = 'Weapon Gadgetpistol' },
|
||||
weapon_pistolxm3 = { name = 'weapon_pistolxm3', label = 'Pistol XM3', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_pistolxm3.webp', description = 'Pistol XM3' },
|
||||
|
||||
-- Submachine Guns
|
||||
weapon_microsmg = { name = 'weapon_microsmg', label = 'Micro SMG', weight = 1000, ammotype = 'AMMO_SMG', image = 'weapon_microsmg.webp', description = 'A handheld light weight machine gun' },
|
||||
weapon_smg = { name = 'weapon_smg', label = 'SMG', weight = 1000, ammotype = 'AMMO_SMG', image = 'weapon_smg.webp', description = 'A handheld light weight machine gun' },
|
||||
weapon_smg_mk2 = { name = 'weapon_smg_mk2', label = 'SMG Mk II', weight = 1000, ammotype = 'AMMO_SMG', image = 'weapon_smg_mk2.webp', description = 'SMG MK2' },
|
||||
weapon_assaultsmg = { name = 'weapon_assaultsmg', label = 'Assault SMG', weight = 1000, ammotype = 'AMMO_SMG', image = 'weapon_assaultsmg.webp', description = 'An assault version of a handheld light weight machine gun' },
|
||||
weapon_combatpdw = { name = 'weapon_combatpdw', label = 'Combat PDW', weight = 1000, ammotype = 'AMMO_SMG', image = 'weapon_combatpdw.webp', description = 'A combat version of a handheld light weight machine gun' },
|
||||
weapon_machinepistol = { name = 'weapon_machinepistol', label = 'Tec-9', weight = 1000, ammotype = 'AMMO_PISTOL', image = 'weapon_machinepistol.webp', description = 'A self-loading pistol capable of burst or fully automatic fire' },
|
||||
weapon_minismg = { name = 'weapon_minismg', label = 'Mini SMG', weight = 1000, ammotype = 'AMMO_SMG', image = 'weapon_minismg.webp', description = 'A mini handheld light weight machine gun' },
|
||||
weapon_raycarbine = { name = 'weapon_raycarbine', label = 'Unholy Hellbringer', weight = 1000, ammotype = 'AMMO_SMG', image = 'weapon_raycarbine.webp', description = 'Weapon Raycarbine' },
|
||||
|
||||
-- Shotguns
|
||||
weapon_pumpshotgun = { name = 'weapon_pumpshotgun', label = 'Pump Shotgun', weight = 1000, ammotype = 'AMMO_SHOTGUN', image = 'weapon_pumpshotgun.webp', description = 'A pump-action smoothbore gun for firing small shot at short range' },
|
||||
weapon_sawnoffshotgun = { name = 'weapon_sawnoffshotgun', label = 'Sawn-off Shotgun', weight = 1000, ammotype = 'AMMO_SHOTGUN', image = 'weapon_sawnoffshotgun.webp', description = 'A sawn-off smoothbore gun for firing small shot at short range' },
|
||||
weapon_assaultshotgun = { name = 'weapon_assaultshotgun', label = 'Assault Shotgun', weight = 1000, ammotype = 'AMMO_SHOTGUN', image = 'weapon_assaultshotgun.webp', description = 'An assault version of asmoothbore gun for firing small shot at short range' },
|
||||
weapon_bullpupshotgun = { name = 'weapon_bullpupshotgun', label = 'Bullpup Shotgun', weight = 1000, ammotype = 'AMMO_SHOTGUN', image = 'weapon_bullpupshotgun.webp', description = 'A compact smoothbore gun for firing small shot at short range' },
|
||||
weapon_musket = { name = 'weapon_musket', label = 'Musket', weight = 1000, ammotype = 'AMMO_SHOTGUN', image = 'weapon_musket.webp', description = 'An infantryman\'s light gun with a long barrel, typically smooth-bored, muzzleloading, and fired from the shoulder' },
|
||||
weapon_heavyshotgun = { name = 'weapon_heavyshotgun', label = 'Heavy Shotgun', weight = 1000, ammotype = 'AMMO_SHOTGUN', image = 'weapon_heavyshotgun.webp', description = 'A large smoothbore gun for firing small shot at short range' },
|
||||
weapon_dbshotgun = { name = 'weapon_dbshotgun', label = 'Double-barrel Shotgun', weight = 1000, ammotype = 'AMMO_SHOTGUN', image = 'weapon_dbshotgun.webp', description = 'A shotgun with two parallel barrels, allowing two single shots to be fired in quick succession' },
|
||||
weapon_autoshotgun = { name = 'weapon_autoshotgun', label = 'Auto Shotgun', weight = 1000, ammotype = 'AMMO_SHOTGUN', image = 'weapon_autoshotgun.webp', description = 'A shotgun capable of rapid continous fire' },
|
||||
weapon_pumpshotgun_mk2 = { name = 'weapon_pumpshotgun_mk2', label = 'Pumpshotgun Mk II', weight = 1000, ammotype = 'AMMO_SHOTGUN', image = 'weapon_pumpshotgun_mk2.webp', description = 'Pumpshotgun MK2' },
|
||||
weapon_combatshotgun = { name = 'weapon_combatshotgun', label = 'Combat Shotgun', weight = 1000, ammotype = 'AMMO_SHOTGUN', image = 'weapon_combatshotgun.webp', description = 'Weapon Combatshotgun' },
|
||||
|
||||
-- Assault Rifles
|
||||
weapon_assaultrifle = { name = 'weapon_assaultrifle', label = 'Assault Rifle', weight = 1000, ammotype = 'AMMO_RIFLE', image = 'weapon_assaultrifle.webp', description = 'A rapid-fire, magazine-fed automatic rifle designed for infantry use' },
|
||||
weapon_assaultrifle_mk2 = { name = 'weapon_assaultrifle_mk2', label = 'Assault Rifle Mk II', weight = 1000, ammotype = 'AMMO_RIFLE', image = 'weapon_assaultrifle_mk2.webp', description = 'Assault Rifle MK2' },
|
||||
weapon_carbinerifle = { name = 'weapon_carbinerifle', label = 'Carbine Rifle', weight = 1000, ammotype = 'AMMO_RIFLE', image = 'weapon_carbinerifle.webp', description = 'A light weight automatic rifle' },
|
||||
weapon_carbinerifle_mk2 = { name = 'weapon_carbinerifle_mk2', label = 'Carbine Rifle Mk II', weight = 1000, ammotype = 'AMMO_RIFLE', image = 'weapon_carbinerifle_mk2.webp', description = 'Carbine Rifle MK2' },
|
||||
weapon_advancedrifle = { name = 'weapon_advancedrifle', label = 'Advanced Rifle', weight = 1000, ammotype = 'AMMO_RIFLE', image = 'weapon_advancedrifle.webp', description = 'An assault version of a rapid-fire, magazine-fed automatic rifle designed for infantry use' },
|
||||
weapon_specialcarbine = { name = 'weapon_specialcarbine', label = 'Special Carbine', weight = 1000, ammotype = 'AMMO_RIFLE', image = 'weapon_specialcarbine.webp', description = 'An extremely versatile assault rifle for any combat situation' },
|
||||
weapon_bullpuprifle = { name = 'weapon_bullpuprifle', label = 'Bullpup Rifle', weight = 1000, ammotype = 'AMMO_RIFLE', image = 'weapon_bullpuprifle.webp', description = 'A compact automatic assault rifle' },
|
||||
weapon_compactrifle = { name = 'weapon_compactrifle', label = 'Compact Rifle', weight = 1000, ammotype = 'AMMO_RIFLE', image = 'weapon_compactrifle.webp', description = 'A compact version of an assault rifle' },
|
||||
weapon_specialcarbine_mk2 = { name = 'weapon_specialcarbine_mk2', label = 'Special Carbine Mk II', weight = 1000, ammotype = 'AMMO_RIFLE', image = 'weapon_specialcarbine_mk2.webp', description = 'Weapon Wpecialcarbine MK2' },
|
||||
weapon_bullpuprifle_mk2 = { name = 'weapon_bullpuprifle_mk2', label = 'Bullpup Rifle Mk II', weight = 1000, ammotype = 'AMMO_RIFLE', image = 'weapon_bullpuprifle_mk2.webp', description = 'Bull Puprifle MK2' },
|
||||
weapon_militaryrifle = { name = 'weapon_militaryrifle', label = 'Military Rifle', weight = 1000, ammotype = 'AMMO_RIFLE', image = 'weapon_militaryrifle.webp', description = 'Weapon Militaryrifle' },
|
||||
|
||||
-- Light Machine Guns
|
||||
weapon_mg = { name = 'weapon_mg', label = 'Machinegun', weight = 1000, ammotype = 'AMMO_MG', image = 'weapon_mg.webp', description = 'An automatic gun that fires bullets in rapid succession for as long as the trigger is pressed' },
|
||||
weapon_combatmg = { name = 'weapon_combatmg', label = 'Combat MG', weight = 1000, ammotype = 'AMMO_MG', image = 'weapon_combatmg.webp', description = 'A combat version of an automatic gun that fires bullets in rapid succession for as long as the trigger is pressed' },
|
||||
weapon_gusenberg = { name = 'weapon_gusenberg', label = 'Thompson SMG', weight = 1000, ammotype = 'AMMO_MG', image = 'weapon_gusenberg.webp', description = 'An automatic rifle commonly referred to as a tommy gun' },
|
||||
weapon_combatmg_mk2 = { name = 'weapon_combatmg_mk2', label = 'Combat MG Mk II', weight = 1000, ammotype = 'AMMO_MG', image = 'weapon_combatmg_mk2.webp', description = 'Weapon Combatmg MK2' },
|
||||
|
||||
-- Sniper Rifles
|
||||
weapon_sniperrifle = { name = 'weapon_sniperrifle', label = 'Sniper Rifle', weight = 1000, ammotype = 'AMMO_SNIPER', image = 'weapon_sniperrifle.webp', description = 'A high-precision, long-range rifle' },
|
||||
weapon_heavysniper = { name = 'weapon_heavysniper', label = 'Heavy Sniper', weight = 1000, ammotype = 'AMMO_SNIPER', image = 'weapon_heavysniper.webp', description = 'An upgraded high-precision, long-range rifle' },
|
||||
weapon_marksmanrifle = { name = 'weapon_marksmanrifle', label = 'Marksman Rifle', weight = 1000, ammotype = 'AMMO_SNIPER', image = 'weapon_marksmanrifle.webp', description = 'A very accurate single-fire rifle' },
|
||||
weapon_remotesniper = { name = 'weapon_remotesniper', label = 'Remote Sniper', weight = 1000, ammotype = 'AMMO_SNIPER_REMOTE', image = 'weapon_remotesniper.webp', description = 'A portable high-precision, long-range rifle' },
|
||||
weapon_heavysniper_mk2 = { name = 'weapon_heavysniper_mk2', label = 'Heavy Sniper Mk II', weight = 1000, ammotype = 'AMMO_SNIPER', image = 'weapon_heavysniper_mk2.webp', description = 'Weapon Heavysniper MK2' },
|
||||
weapon_marksmanrifle_mk2 = { name = 'weapon_marksmanrifle_mk2', label = 'Marksman Rifle Mk II', weight = 1000, ammotype = 'AMMO_SNIPER', image = 'weapon_marksmanrifle_mk2.webp', description = 'Weapon Marksmanrifle MK2' },
|
||||
|
||||
-- Heavy Weapons
|
||||
weapon_rpg = { name = 'weapon_rpg', label = 'RPG', weight = 1000, ammotype = 'AMMO_RPG', image = 'weapon_rpg.webp', description = 'A rocket-propelled grenade launcher' },
|
||||
weapon_grenadelauncher = { name = 'weapon_grenadelauncher', label = 'Grenade Launcher', weight = 1000, ammotype = 'AMMO_GRENADELAUNCHER', image = 'weapon_grenadelauncher.webp', description = 'A weapon that fires a specially-designed large-caliber projectile, often with an explosive, smoke or gas warhead' },
|
||||
weapon_grenadelauncher_smoke = { name = 'weapon_grenadelauncher_smoke', label = 'Smoke Grenade Launcher', weight = 1000, ammotype = 'AMMO_GRENADELAUNCHER', image = 'weapon_smokegrenade.webp', description = 'A bomb that produces a lot of smoke when it explodes' },
|
||||
weapon_minigun = { name = 'weapon_minigun', label = 'Minigun', weight = 1000, ammotype = 'AMMO_MINIGUN', image = 'weapon_minigun.webp', description = 'A portable machine gun consisting of a rotating cluster of six barrels and capable of variable rates of fire of up to 6,000 rounds per minute' },
|
||||
weapon_firework = { name = 'weapon_firework', label = 'Firework Launcher', weight = 1000, ammotype = nil, image = 'weapon_firework.webp', description = 'A device containing gunpowder and other combustible chemicals that causes a spectacular explosion when ignited' },
|
||||
weapon_railgun = { name = 'weapon_railgun', label = 'Railgun', weight = 1000, ammotype = nil, image = 'weapon_railgun.webp', description = 'A weapon that uses electromagnetic force to launch high velocity projectiles' },
|
||||
weapon_railgunxm3 = { name = 'weapon_railgunxm3', label = 'Railgun XM3', weight = 1000, ammotype = nil, image = 'weapon_railgunxm3.webp', description = 'A weapon that uses electromagnetic force to launch high velocity projectiles' },
|
||||
weapon_hominglauncher = { name = 'weapon_hominglauncher', label = 'Homing Launcher', weight = 1000, ammotype = 'AMMO_STINGER', image = 'weapon_hominglauncher.webp', description = 'A weapon fitted with an electronic device that enables it to find and hit a target' },
|
||||
weapon_compactlauncher = { name = 'weapon_compactlauncher', label = 'Compact Launcher', weight = 1000, ammotype = nil, image = 'weapon_compactlauncher.webp', description = 'A compact grenade launcher' },
|
||||
weapon_rayminigun = { name = 'weapon_rayminigun', label = 'Widowmaker', weight = 1000, ammotype = 'AMMO_MINIGUN', image = 'weapon_rayminigun.webp', description = 'Weapon Rayminigun' },
|
||||
|
||||
-- Throwables
|
||||
weapon_grenade = { name = 'weapon_grenade', label = 'Grenade', weight = 1000, ammotype = nil, image = 'weapon_grenade.webp', description = 'A handheld throwable bomb' },
|
||||
weapon_bzgas = { name = 'weapon_bzgas', label = 'BZ Gas', weight = 1000, ammotype = nil, image = 'weapon_bzgas.webp', description = 'A cannister of gas that causes extreme pain' },
|
||||
weapon_molotov = { name = 'weapon_molotov', label = 'Molotov', weight = 1000, ammotype = nil, image = 'weapon_molotov.webp', description = 'A crude bomb made of a bottle filled with a flammable liquid and fitted with a wick for lighting' },
|
||||
weapon_stickybomb = { name = 'weapon_stickybomb', label = 'C4', weight = 1000, ammotype = nil, image = 'weapon_stickybomb.webp', description = 'An explosive charge covered with an adhesive that when thrown against an object sticks until it explodes' },
|
||||
weapon_proxmine = { name = 'weapon_proxmine', label = 'Proxmine Grenade', weight = 1000, ammotype = nil, image = 'weapon_proximitymine.webp', description = 'A bomb placed on the ground that detonates when going within its proximity' },
|
||||
weapon_snowball = { name = 'weapon_snowball', label = 'Snowball', weight = 1000, ammotype = nil, image = 'weapon_snowball.webp', description = 'A ball of packed snow, especially one made for throwing at other people for fun' },
|
||||
weapon_pipebomb = { name = 'weapon_pipebomb', label = 'Pipe Bomb', weight = 1000, ammotype = nil, image = 'weapon_pipebomb.webp', description = 'A homemade bomb, the components of which are contained in a pipe' },
|
||||
weapon_ball = { name = 'weapon_ball', label = 'Ball', weight = 1000, ammotype = 'AMMO_BALL', image = 'weapon_ball.webp', description = 'A solid or hollow spherical or egg-shaped object that is kicked, thrown, or hit in a game' },
|
||||
weapon_smokegrenade = { name = 'weapon_smokegrenade', label = 'Smoke Grenade', weight = 1000, ammotype = nil, image = 'weapon_c4.webp', description = 'An explosive charge that can be remotely detonated' },
|
||||
weapon_flare = { name = 'weapon_flare', label = 'Flare pistol', weight = 1000, ammotype = 'AMMO_FLARE', image = 'weapon_flare.webp', description = 'A small pyrotechnic devices used for illumination and signalling' },
|
||||
|
||||
-- Miscellaneous
|
||||
weapon_petrolcan = { name = 'weapon_petrolcan', label = 'Petrol Can', weight = 1000, ammotype = 'AMMO_PETROLCAN', image = 'weapon_petrolcan.webp', description = 'A robust liquid container made from pressed steel' },
|
||||
weapon_fireextinguisher = { name = 'weapon_fireextinguisher', label = 'Fire Extinguisher', weight = 1000, ammotype = nil, image = 'weapon_fireextinguisher.webp', description = 'A portable device that discharges a jet of water, foam, gas, or other material to extinguish a fire' },
|
||||
weapon_hazardcan = { name = 'weapon_hazardcan', label = 'Hazardous Jerry Can', weight = 1000, ammotype = 'AMMO_PETROLCAN', image = 'weapon_hazardcan.webp', description = 'Weapon Hazardcan' },
|
||||
|
||||
}
|
||||
local ammoTypeToPolice = {
|
||||
AMMO_SMG = "AMMO_POLICE_SMG",
|
||||
AMMO_SNIPER = "AMMO_POLICE_SNIPER",
|
||||
AMMO_SHOTGUN = "AMMO_POLICE_SHOTGUN",
|
||||
AMMO_PISTOL = "AMMO_POLICE_PISTOL",
|
||||
AMMO_MG = "AMMO_POLICE_MG",
|
||||
AMMO_RIFLE = "AMMO_POLICE_RIFLE",
|
||||
AMMO_STUNGUN = "AMMO_POLICE_STUNGUN",
|
||||
}
|
||||
|
||||
weaponsData = {}
|
||||
for name, data in pairs(weaponsList) do
|
||||
data.name = name
|
||||
data.type = "weapon"
|
||||
data.unique = true
|
||||
weaponsData[data.name] = data
|
||||
|
||||
local newData = json.decode(json.encode(data))
|
||||
newData.name = name:gsub("weapon_", "weapon_police_")
|
||||
newData.label = "Police " .. newData.label
|
||||
newData.ammotype = ammoTypeToPolice[newData.ammotype]
|
||||
newData.rareName = "weaponPolice"
|
||||
weaponsData[newData.name] = newData
|
||||
end
|
File diff suppressed because it is too large
Load diff
|
@ -1,265 +0,0 @@
|
|||
config.langs.en = {
|
||||
urInventoryFull = "Dein Inventar ist voll!",
|
||||
inventoryFullItemDropped = "Inventar voll! Gegenstand wurde fallengelassen!",
|
||||
inventoryFull = "Inventar voll!",
|
||||
cantCarryMoreCarryItems = "Du kannst keine weiteren Gegenstände tragen! Lege zuerst den aktuellen Gegenstand ab!",
|
||||
cantCarryMoreCarryItemsItemDropped = "Du kannst nichts mehr tragen! Gegenstand fallengelassen!",
|
||||
otherPlayerInventoryFull = "Der Spieler hat keinen Platz im Inventar!",
|
||||
otherPlayerCantCarryMoreCarryItems = "Der andere Spieler kann nichts mehr tragen! Erst ablegen!",
|
||||
wrongClothe = "Dieses Outfit passt dir nicht!",
|
||||
wrongClotheOtherPlayer = "Dieses Outfit passt dem anderen Spieler nicht!",
|
||||
alreadyClothe = "Du trägst das bereits",
|
||||
alreadyClotheOtherPlayer = "Der Spieler trägt das bereits",
|
||||
noMoneyCash = "Du hast nicht genug Bargeld!",
|
||||
noMoneyBank = "Du hast nicht genug Geld auf der Bank!",
|
||||
noItem = "Du hast den benötigten Gegenstand nicht!",
|
||||
noItemAmount = "Du hast nicht genug der benötigten Gegenstände!",
|
||||
bought = "Gekauft",
|
||||
noClosestPlayer = "Niemand in der Nähe!",
|
||||
getItemOtherPlayer = "%s Spieler hat dir %s x %s gegeben",
|
||||
giveItemOtherPlayer = "Du hast %s Spieler %s x %s gegeben",
|
||||
wrongPassword = "Falsches Passwort",
|
||||
dontHaveNecessaryItem = "Du hast den benötigten Gegenstand nicht",
|
||||
dontHaveAmountNecessaryItem = "Du hast nicht genug von dem benötigten Gegenstand",
|
||||
itemCrafted = "Gegenstand hergestellt",
|
||||
notSuccesCraft = "Mist, das Crafting ist fehlgeschlagen",
|
||||
craftingItem = "%s wird hergestellt",
|
||||
cantOpenFromBackSeat = "Du kannst das Handschuhfach nicht vom Rücksitz aus öffnen!",
|
||||
trunkLocked = "Kofferraum ist verschlossen",
|
||||
noTrunk = "Dieses Fahrzeug hat keinen Kofferraum",
|
||||
cantUseDead = "Du kannst das nicht machen, wenn du tot bist... TOT!",
|
||||
cantUseOffDuty = "Du kannst Polizeiwaffen nicht im Dienstfrei-Modus nutzen!",
|
||||
cantUsePoliceWeapon = "Du darfst keine Polizeiwaffen verwenden!",
|
||||
durabilityZero = "Die Haltbarkeit dieser Waffe ist zu schlecht, um sie zu benutzen",
|
||||
attachmentNonMk2CamoError = "Vorschau für MK2-Tarnaufsätze funktioniert nicht, aber du kannst sie trotzdem kaufen",
|
||||
attachmentPurchased = "Gekauft!",
|
||||
filterAll = "Alle",
|
||||
filterScrollIt = "Scrollen!",
|
||||
noAmmoStunGun = "Kartusche leer",
|
||||
cantOpenAttachments = "Du kannst das Anbauteil-Menü an diesem Ort nicht öffnen",
|
||||
throwItem = "Wegwerfen",
|
||||
editItem = "Bearbeiten",
|
||||
giveClosest = "Dem Nächsten geben",
|
||||
cantUseThisItem = "Du kannst diesen Gegenstand nicht mehr benutzen!",
|
||||
cantThrowWhenUsingWeapon = "Du kannst keine Gegenstände werfen, während du eine Waffe in der Hand hast",
|
||||
customImgUrl = "Benutzerdefinierte Bild-URL",
|
||||
customLabel = "Benutzerdefinierte Bezeichnung",
|
||||
customConfirm = "Bestätigen",
|
||||
customImgUrlPlaceholder = "Neue Bild-URL",
|
||||
customLabelPlaceholder = "Neuer Gegenstandstitel",
|
||||
cantChangeOnHandWeapon = "Du kannst den Slot der Waffe in deiner Hand nicht ändern!",
|
||||
cantChangeOtherPlayerOnHandWeapon = "Du kannst den Slot der Waffe eines anderen Spielers nicht ändern, wenn er sie in der Hand hält!",
|
||||
isNotUrCar = "Dieses Fahrzeug gehört dir nicht",
|
||||
uCantStoreItem = "Du kannst diesen Gegenstand hier nicht lagern",
|
||||
blockItem = "Dieser Gegenstand ist vom Server für diese Aktion gesperrt",
|
||||
vehicleItemDropError = "Du kannst im Fahrzeug keine Gegenstände fallengelassen",
|
||||
maxAmountReached = "Maximale Menge des Gegenstands erreicht",
|
||||
clotheSetError = "Du kannst kein Outfit-Set anziehen, während du Kleidung trägst",
|
||||
clotheSetWearingError = "Du kannst kein Outfit-Set anziehen, während du bereits etwas trägst",
|
||||
closeInventoryFirst = "Schließe zuerst das bereits geöffnete Inventar!",
|
||||
cantStackMore = "Du kannst nicht mehr davon auf diesen Slot legen! Max: %s",
|
||||
searchPlayerAskTarget = "Ein Spieler will dich durchsuchen! Drücke %s zum Annehmen oder %s zum Ablehnen.",
|
||||
searchAskTimeout = "Suchanfrage abgelaufen",
|
||||
searchAskRefused = "Suchanfrage abgelehnt",
|
||||
searchPlayerCantSearch = "Du kannst diesen Spieler nicht durchsuchen! Nicht bewusstlos oder Hände nicht oben!",
|
||||
searchPlayerSelf = "Du kannst dich nicht selbst durchsuchen",
|
||||
searchPlayerAlreadyActive = "Dieser Spieler wird bereits durchsucht",
|
||||
jerryCanLabel = "Prozentsatz",
|
||||
jerryCanEmpty = "Benzinkanister ist leer",
|
||||
|
||||
reloadkeyMapping = "Munition nachladen",
|
||||
reloadAmmo = "Lädt Munition nach",
|
||||
ammoFull = "Deine Munition ist bereits voll",
|
||||
wrongAmmo = "Diese Munitionsart passt nicht zu dieser Waffe",
|
||||
noWeaponHand = "Du hast keine Waffe in der Hand!",
|
||||
weaponHand = "Waffe in die Hand genommen",
|
||||
removeWeaponHand = "Waffe weggepackt",
|
||||
cantPickupGround = "Du kannst das nicht aufheben",
|
||||
pickUpGround = "Aufheben",
|
||||
pickUpGroundMoney = "Geld aufheben",
|
||||
pickUpGorundItems = "Gegenstand nehmen",
|
||||
pickUp = "Hebt auf...",
|
||||
|
||||
takeOffArmor = "Schutzweste ausziehen",
|
||||
wearingArmor = "Zieht Schutzweste an...",
|
||||
takeOffArmorSlotFull = "Der Slot für die Weste ist belegt.",
|
||||
|
||||
-- Einstellungen
|
||||
settingsHeader = "Inventar-Einstellungen",
|
||||
settingsOn = "An",
|
||||
settingsOff = "Aus",
|
||||
settingsBlurBg = "Hintergrundunschärfe (Inventar)",
|
||||
settingsBlurBgDesc = "Macht den Inventarhintergrund unscharf, um Inhalte hervorzuheben.",
|
||||
settingsBlurMenu = "Hintergrundunschärfe (Menü)",
|
||||
settingsBlurMenuDesc = "Unschärfe in bestimmten Menüs aktivieren.",
|
||||
settingsCharacter = "3D-Charakteranzeige",
|
||||
settingsCharacterDesc = "Zeigt deinen Charakter in 3D im Inventar.",
|
||||
settingMainColor = "Hauptfarbe",
|
||||
settingMainColorDesc = "Hauptfarbe ändern",
|
||||
|
||||
-- Tastenzuweisung
|
||||
keyMappingInventory = "Inventar öffnen",
|
||||
keyMappingTrunk = "Inventar [Kofferraum]",
|
||||
keyMappingGlovebox = "Inventar [Handschuhfach]",
|
||||
keyMappingHotbar = "Schnellzugriffsleiste",
|
||||
keyMappingHotbarUse = "Gegenstand benutzen [%s]",
|
||||
|
||||
-- UI
|
||||
inventoryName = "INVENTAR",
|
||||
yourInventory = "Dein Inventar",
|
||||
otherPlayerInventory = "Inventar des Spielers",
|
||||
searchItem = "Gegenstand suchen",
|
||||
amountItem = "Menge",
|
||||
buyItem = "Kaufen",
|
||||
craftItem = "Herstellen",
|
||||
removeOnFastSlot = "Vom Schnellslot entfernen",
|
||||
addFastSlot = "Zum Schnellslot hinzufügen",
|
||||
useItem = "Benutzen",
|
||||
takeOffClothe = "Kleidung ausziehen",
|
||||
putOnClothe = "Kleidung anziehen",
|
||||
putOnClotheOtherPlayer = "Anderen Spieler ankleiden",
|
||||
getItem = "Nehmen",
|
||||
putItem = "Ablegen",
|
||||
giveItem = "Spieler in der Nähe geben",
|
||||
itemAttachments = "Anbauteile",
|
||||
cancelMenu = "Abbrechen",
|
||||
kg = "Kg",
|
||||
escClose = "<b>ESC</b> zum Schließen",
|
||||
added = "Hinzugefügt",
|
||||
removed = "Entfernt",
|
||||
copySerialNumber = "Seriennummer kopieren",
|
||||
serialNumberCopied = "Seriennummer kopiert",
|
||||
|
||||
-- Info-Menü
|
||||
infoInventory = "Inventar",
|
||||
info2xMouseLeft = "Doppelklick für Schnellaktion",
|
||||
infoShiftMouseRight = "Schnell bewegen",
|
||||
infoShop = "Shop",
|
||||
infoShopMouseRight = "Kaufen",
|
||||
infoShopShiftMouseRight = "Schnell kaufen",
|
||||
infoCraft = "Herstellung",
|
||||
infoCraftMouseRight = "Herstellen",
|
||||
infoCraftShiftMouseRight = "Schnell herstellen",
|
||||
infoShiftSplitMove = "Teilt beim Ziehen die Hälfte ab",
|
||||
infotAltOne = "Nimmt 1 beim Ziehen",
|
||||
infoMouseLeft = "Linksklick",
|
||||
infoMouseRight = "Rechtsklick",
|
||||
infoKeyboardShift = "Umschalttaste",
|
||||
infoKeyboardAlt = "Alt-Taste",
|
||||
|
||||
-- Kleidung
|
||||
c_helmet = "Hut",
|
||||
c_ear = "Ohr",
|
||||
c_mask = "Maske",
|
||||
c_glasses = "Brille",
|
||||
c_necklace = "Halskette",
|
||||
c_decal = "Aufkleber",
|
||||
c_torso = "Oberkörper",
|
||||
c_bproof = "Schutzweste",
|
||||
c_bproof_for_realistic = "Schutzweste(C)",
|
||||
c_bag = "Tasche",
|
||||
c_bracelet = "Rechte Hand",
|
||||
c_watch = "Linke Hand",
|
||||
c_pants = "Hose",
|
||||
c_shoes = "Schuhe",
|
||||
realisticArmor = "Schutzwert",
|
||||
|
||||
-- Anbauteile
|
||||
alreadyPreviewAttachment = "Du siehst diesen Anbauteil bereits an",
|
||||
alreadyBoughtAttachment = "Du hast diesen Anbauteil bereits an deiner Waffe",
|
||||
attachmentDefault = "Standard",
|
||||
attachmentPreview = "Vorschau",
|
||||
attachmentFree = "Kostenlos",
|
||||
attachmentApply = "Anwenden",
|
||||
attachmentDamage = "Schaden",
|
||||
attachmentSpeed = "Feuergeschwindigkeit",
|
||||
attachmentCapacitiy = "Munitionskapazität",
|
||||
attachmentAccuracy = "Genauigkeit",
|
||||
attachmentRange = "Reichweite",
|
||||
attachmentMuzle = "Mündung",
|
||||
attachmentBarrel = "Lauf",
|
||||
attachmentScope = "Visier",
|
||||
attachmentStock = "Schaft",
|
||||
attachmentGrip = "Griff",
|
||||
attachmentMagazine = "Magazin",
|
||||
attachmentCamo = "Tarnung",
|
||||
attachmentTint = "Farbe",
|
||||
attachmentFlashlight = "Taschenlampe",
|
||||
|
||||
-- Metadaten
|
||||
metadataTotalReapirAmount = "Reparaturen insgesamt:",
|
||||
metadataSerieNumber = "Serien-Nr.:",
|
||||
metadataNotFoundSerie = "Unbekannt",
|
||||
metadataAmmo = "Munition:",
|
||||
metadataTotalFiredAmmo = "Abgefeuerte Munition:",
|
||||
metadataBorken = "BESCHÄDIGT",
|
||||
metadataArmorValue = "Schutzwert:",
|
||||
metadataMan = "Mann",
|
||||
metadataWoman = "Frau",
|
||||
metadataModel = "Modell:",
|
||||
metadataClothe = "Kleidung:",
|
||||
metadataClotheType = "Typ:",
|
||||
metadataClotheColor = "Farbe:",
|
||||
metadataDurability = "Haltbarkeit",
|
||||
metadataMaxUseAmount = "Verbleibende Nutzung:",
|
||||
metadataRealisticArmor = "Rüstungswert",
|
||||
|
||||
-- Emotes
|
||||
emoteGiveItem = "Gibt %s von %s",
|
||||
emoteGetItem = "Nimmt den Gegenstand",
|
||||
emoteOpenGlovebox = "Öffnet das Handschuhfach",
|
||||
emoteOpenTrunk = "Öffnet den Kofferraum",
|
||||
|
||||
-- Geld geben
|
||||
giveCashNoUser = "Spieler nicht gefunden",
|
||||
giveCashInvalidAmount = "Ungültiger Betrag",
|
||||
giveCashToofar = "Du bist zu weit weg",
|
||||
giveCashNoMoney = "Nicht genug Geld",
|
||||
giveCashSuccesGive = "$%s Bargeld gegeben",
|
||||
giveCashSuccesGet = "$%s Bargeld erhalten",
|
||||
|
||||
-- Ausrauben
|
||||
robNoPlayer = "Niemand in der Nähe!",
|
||||
robRobbing = "Person wird ausgeraubt...",
|
||||
robDeadError = "Du kannst keine tote Person ausrauben!",
|
||||
robAnimationError = "Der Spieler muss die Hände heben, um ausgeraubt zu werden!",
|
||||
|
||||
-- Verkaufsautomat
|
||||
vendingMachine = "Getränkeautomat",
|
||||
|
||||
-- Mülltonne durchsuchen
|
||||
dumpsterSearch = "Mülltonne durchsuchen",
|
||||
dumpsterSearchCooldown = "Du musst %s Sekunden warten, bevor du erneut suchst",
|
||||
dumpsterSearching = "Durchsucht die Mülltonne...",
|
||||
dumpsterSearchSuccess = "Du hast %sx %s gefunden",
|
||||
|
||||
-- Logs
|
||||
logGiveItem = "Gegenstand gegeben! %s %s",
|
||||
logUseItem = "Gegenstand benutzt! %s",
|
||||
logDeleteItem = "Gegenstand gelöscht | Inventar: %s | Menge: %s | Gegenstand: %s",
|
||||
logSwapItem = "Gegenstand getauscht! | Gegenstand: %s | Menge: %s | Inventar 1: %s | Inventar 2: %s",
|
||||
logBoughtItem = "Gegenstand gekauft! | Inventar: %s | %sx %s | Preis $%s",
|
||||
logDropWeapon = "Waffe fallengelassen %s",
|
||||
logDropMoney = "Geld fallengelassen $%s",
|
||||
logDropItems = "Gegenstände fallengelassen",
|
||||
logGetWeapon = "Waffe aufgehoben %s",
|
||||
logGetMoney = "Geld aufgehoben $%s",
|
||||
logGetItems = "Gegenstände aufgehoben",
|
||||
logAddItem = "Gegenstand hinzugefügt | Gegenstand: %s | Menge: %s | Slot: %s | Skript: %s",
|
||||
logRemoveItem = "Gegenstand entfernt | Gegenstand: %s | Menge: %s | Slot: %s | Skript: %s",
|
||||
logDumpsterSearch = "Mülltonne durchsucht | Gegenstand: %s | Menge: %s",
|
||||
|
||||
-- CMD Log
|
||||
printWeaponNoDurability = "WAFFE HAT KEINE HALTBARKEIT! %s! Bitte überprüfe die Datei configWeapon.lua",
|
||||
printNoItem = "NICHT IN items.lua! %s! Bitte füge den Gegenstand in items/items.lua hinzu",
|
||||
|
||||
-- Bann-Log
|
||||
banOpenOtherPlayerInventory = "Inventar eines anderen Spielers ohne Erlaubnis geöffnet | ID des Inventarbesitzers: %s",
|
||||
banGiveItemSelf = "Sich selbst einen Gegenstand gegeben",
|
||||
banGiveMinusAmount = "Negativen Wert gegeben | Gegenstand: %s Menge: %s",
|
||||
banRemoveMinusAmount = "Negativen Wert gelöscht | Gegenstand: %s Menge: %s",
|
||||
banCustomShop = "Nicht erlaubter Shop geöffnet! Shop: %s",
|
||||
banOpeningOtherPlayerInventoryFromDistance = "Inventar eines Spielers aus der Ferne geöffnet | ID: %s | Distanz: %s",
|
||||
banClientOpenInventory = "Inventar vom Client geöffnet",
|
||||
}
|
||||
|
|
@ -1,265 +0,0 @@
|
|||
config.langs.tr = {
|
||||
urInventoryFull = "Envanterinde Yeterli Alan Yok!",
|
||||
inventoryFullItemDropped = "Envanterinde Yeterli Alan Yok! Eşya Yere Düştü!",
|
||||
inventoryFull = "Envaterde Yeterli Alan Yok!",
|
||||
cantCarryMoreCarryItems = "Daha Fazla Taşınabilir Eşya Taşıyamazsın! Önce Taşıdığın Eşyayı Bırakmalısın!",
|
||||
cantCarryMoreCarryItemsItemDropped = "Daha Fazla Taşınabilir Eşya Taşıyamazsın! Eşya Yere Düştü!",
|
||||
otherPlayerInventoryFull = "Diğer Oyuncunun Envanterinde Yeterli Alan Yok!",
|
||||
otherPlayerCantCarryMoreCarryItems = "Diğer Oyuncu Daha Fazla Taşınabilir Eşya Taşıyamaz! Önce Taşıdığı Eşyayı Bırakmalı!",
|
||||
wrongClothe = "Bu Kıyafet Sana Uygun Değil!",
|
||||
wrongClotheOtherPlayer = "Bu Kıyafet Diğer Oyuncuya Uygun Değil!",
|
||||
alreadyClothe = "Zaten Bu Tarz Bir Kıyafet Giyiyorsun",
|
||||
alreadyClotheOtherPlayer = "Diğer Oyuncu Zaten Bu Tarz Bir Kıyafet Giyiyor",
|
||||
noMoneyCash = "Yeterli Miktarda Nakit Para Yok!",
|
||||
noMoneyBank = "Bankanda Yeterli Miktarda Para Yok!",
|
||||
noItem = "Gerekli Eşyaya Sahip Değilsin!",
|
||||
noItemAmount = "Yeterli Sayıda Eşyaya Sahip Değilsin",
|
||||
bought = "Satın Alındı",
|
||||
noClosestPlayer = "Yakınlarında Biri Yok!",
|
||||
getItemOtherPlayer = "%s Oyuncusundan %s Adet %s Aldın",
|
||||
giveItemOtherPlayer = "%s Oyuncusundan %s Adet %s Verdin",
|
||||
wrongPassword = "Şifre Yanlış",
|
||||
dontHaveNecessaryItem = "Gerekli Eşyaya Sahip Değilsin",
|
||||
dontHaveAmountNecessaryItem = "Yeteri Kadar Sayıda Eşyaya Sahip Değilsin",
|
||||
itemCrafted = "Eşya Üretildi",
|
||||
notSuccesCraft = "Tüh Üretim Yandı",
|
||||
craftingItem = "%s Üretiliyor",
|
||||
cantOpenFromBackSeat = "Arka Koltuktan Torpidoyu Açamazsın!",
|
||||
trunkLocked = "Bagaj Kilitli",
|
||||
noTrunk = "Bu Aracın Bagajı Yok",
|
||||
cantUseDead = "Ölüyken Bunu Yapamazsın!",
|
||||
cantUseOffDuty = "Polis Silahını Mesai Dışında Kullanamazsın!",
|
||||
cantUsePoliceWeapon = "Polis Silahını Kullanamazsın!",
|
||||
durabilityZero = "Bu Silah Kullanılamayacak Kadar Kötü Durumda",
|
||||
attachmentNonMk2CamoError = "MK2 Olmayan silahlarda önizleme çalışmıyor fakat yinede satın alabilirsin",
|
||||
attachmentPurchased = "Satın Alındı!",
|
||||
filterAll = "Tümü",
|
||||
filterScrollIt = "Scrolla!",
|
||||
noAmmoStunGun = "Kartuş Bitti",
|
||||
cantOpenAttachments = "Bu konumda eklenti menüsünü açamazsın",
|
||||
throwItem = "Fırlat",
|
||||
editItem = "Düzenle",
|
||||
giveClosest = "En Yakındaki",
|
||||
cantUseThisItem = "Artık bunu kullanamazsın!",
|
||||
cantThrowWhenUsingWeapon = "Elinde silah varken eşya fırlatamazsın",
|
||||
customImgUrl = "Özel Resim Linki",
|
||||
customLabel = "Özel İsim",
|
||||
customConfirm = "Onaya",
|
||||
customImgUrlPlaceholder = "Yeni Resim Linki",
|
||||
customLabelPlaceholder = "Yeni Eşya İsmi",
|
||||
cantChangeOnHandWeapon = "Elindeki Silahın Yerini Değiştiremezsin!",
|
||||
cantChangeOtherPlayerOnHandWeapon = "Başka Oyuncunun Elindeki Silahın Yerini Değiştiremezsin",
|
||||
isNotUrCar = "Bu Araç Sana Ait Değil",
|
||||
uCantStoreItem = "Bu eşyayı bu envanterde depolayamazsın",
|
||||
blockItem = "bu eşyanın bu işlemi yapması yöneticiler tarafından yasaklandı",
|
||||
vehicleItemDropError = "Araç içindeyken eşya bırakamazsın",
|
||||
maxAmountReached = "Eşya miktarı maksimuma ulaştı",
|
||||
clotheSetError = "Bir kıyafet giyiyorken kıyafet seti giyemezsin",
|
||||
clotheSetWearingError = "Kıyafet seti giyerken bir kıyafet giyemezsin",
|
||||
closeInventoryFirst = "Önce açık olan ikincil envanteri kapatmalısın!",
|
||||
cantStackMore = "Aynı slot'a üst üste bu eşyadan daha fazlasını koyamazsın! Maks: %s",
|
||||
searchPlayerAskTarget = "Bir oyncu üstünü aramak istiyor! Kabul etmek için %s, Reddetmek için %s tuşuna basın?",
|
||||
searchAskTimeout = "Üst Arama isteği zaman aşımına uğradı",
|
||||
searchAskRefused = "Üst Arama isteği reddedildi",
|
||||
searchPlayerCantSearch = "Bu oyuncunun üstünü arayamazsın! Yaralı değil veya ellerini kaldırmamış",
|
||||
searchPlayerSelf = "Kendini arayamazsın",
|
||||
searchPlayerAlreadyActive = "Bu oyuncu için zaten bir üst arama işlemi var",
|
||||
jerryCanLabel = "Kalan Yüzde",
|
||||
jerryCanEmpty = "Benzin Bidonu Boş",
|
||||
|
||||
reloadkeyMapping = "Mermi Doldur",
|
||||
reloadAmmo = "Mermi Dolduruluyor",
|
||||
ammoFull = "Silahın Mermisi Zaten Dolu",
|
||||
wrongAmmo = "Bu Silaha Bu Mermiyi Doldurmazsın",
|
||||
noWeaponHand = "Elinde Silah Yok!",
|
||||
weaponHand = "Silahı Eline Aldın; ",
|
||||
removeWeaponHand = "Silahı Elinden Bıraktın; ",
|
||||
|
||||
cantPickupGround = "Alamazsın",
|
||||
pickUpGround = "Yerden Al",
|
||||
pickUpGroundMoney = "Yerden Parayı Al",
|
||||
pickUpGorundItems = "Yerden Eşyayı Al",
|
||||
pickUp = "Alıyorsun...",
|
||||
|
||||
takeOffArmor = "Zırhı Çıkar",
|
||||
wearingArmor = "Zırhı Giyiyorsun...",
|
||||
takeOffArmorSlotFull = "Çıkarmak istediğin slot dolu",
|
||||
|
||||
-- Settings
|
||||
settingsHeader = "Envanter Ayarlar",
|
||||
settingsOn = "Aktif",
|
||||
settingsOff = "Pasif",
|
||||
settingsBlurBg = "Envanter Arka Plan Bulanıklaştırma",
|
||||
settingsBlurBgDesc = "Envanter ekranının arka planını bulanıklaştırır. Bu ayar açık olduğunda, envanterin arka planı bulanık görünür, böylece envanter içeriği daha net bir şekilde öne çıkar. Kapalı olduğunda, arka plan net ve normal görünür.",
|
||||
settingsBlurMenu = "Menu Arka Plan Bulanıklaştırma",
|
||||
settingsBlurMenuDesc = "Envanterde belirli menülerin arka planını bulanıklaştırır. Bu ayar açık olduğunda, bazı menülerin arka planı bulanık görünür, böylece ön plandaki içerik daha belirgin hale gelir. Kapalı olduğunda, arka plan normal görünür",
|
||||
settingsCharacter = "3D Karakter Göstergesi",
|
||||
settingsCharacterDesc = "Envanterde karakterinizi 3D olarak görüp göremeyeceğinizi belirler. Bu ayar kapalı olduğunda, karakteriniz envanter ekranında görünmez. Açık olduğunda, karakterinizi 3D olarak görebilirsiniz.",
|
||||
settingMainColor = "Ana Renk",
|
||||
settingMainColorDesc = "Göstergelerin ana rengini değiştir",
|
||||
|
||||
--Key Mapping
|
||||
keyMappingInventory = "Envanteri Aç",
|
||||
keyMappingTrunk = "Inventory [Bagaj]",
|
||||
keyMappingGlovebox = "Inventory [Torpido]",
|
||||
keyMappingHotbar = "Hotbar",
|
||||
keyMappingHotbarUse = "Eşyayı Kullan [%s]",
|
||||
|
||||
--UI
|
||||
inventoryName = "ENVANTER",
|
||||
yourInventory = "Envanterin",
|
||||
otherPlayerInventory = "Diğer Oyuncunun Envanteri",
|
||||
searchItem = "Eşya Ara",
|
||||
amountItem = "Adet",
|
||||
buyItem = "Satın Al",
|
||||
craftItem = "Eşyayı Üret",
|
||||
removeOnFastSlot = "Hızlı Kullan Slotundan Kaldır",
|
||||
addFastSlot = "Hızlı Kullan Slotuna Ekle",
|
||||
useItem = "Kullan",
|
||||
takeOffClothe = "Kıyafeti Çıkar",
|
||||
putOnClothe = "Kıyafeti Giy",
|
||||
putOnClotheOtherPlayer = "Kıyafeti Giydir",
|
||||
getItem = "Al",
|
||||
putItem = "Bırak",
|
||||
giveItem = "Yakınındakine Ver",
|
||||
itemAttachments = "Eklentiler",
|
||||
cancelMenu = "İptal",
|
||||
kg = "Kg",
|
||||
escClose = "<b>ESC</b> İle Kapat",
|
||||
added = "Eklendi",
|
||||
removed = "Silindi",
|
||||
copySerialNumber = "Seri Numarasını Kopyala",
|
||||
serialNumberCopied = "Seri Numarası Kopyalandı",
|
||||
|
||||
-- Info Menu
|
||||
infoInventory = "Envanter",
|
||||
info2xMouseLeft = "Çift Tıklayarak Hızlı Kullan",
|
||||
infoShiftMouseRight = "Hızlı Taşı",
|
||||
infoShop = "Mağaza",
|
||||
infoShopMouseRight = "Eşya Satın Al",
|
||||
infoShopShiftMouseRight = "Hızlı Satın Al",
|
||||
infoCraft = "Üretim",
|
||||
infoCraftMouseRight = "Üret",
|
||||
infoCraftShiftMouseRight = "Hızlı Üret",
|
||||
infoShiftSplitMove = "Taşırken yarısını al",
|
||||
infotAltOne = "Taşırken 1 adet al",
|
||||
infoMouseLeft = "Sol Fare",
|
||||
infoMouseRight = "Sağ Fare",
|
||||
infoKeyboardShift = "Sol Shift",
|
||||
infoKeyboardAlt = "Sol Alt",
|
||||
|
||||
-- Clothe Box
|
||||
c_helmet = "Şapka",
|
||||
c_ear = "Küpe",
|
||||
c_mask = "Maske",
|
||||
c_glasses = "Gözlük",
|
||||
c_necklace = "Kolye",
|
||||
c_decal = "Çıkartma",
|
||||
c_torso = "Gövde",
|
||||
c_bproof = "Zırh",
|
||||
c_bproof_for_realistic = "Zırh(K)",
|
||||
c_bag = "Çanta",
|
||||
c_bracelet = "Sağ Bilek",
|
||||
c_watch = "Sol Bilek",
|
||||
c_pants = "Pantolon",
|
||||
c_shoes = "Ayakkabı",
|
||||
realisticArmor = "Zırh",
|
||||
|
||||
-- Attachments
|
||||
alreadyPreviewAttachment = "Zaten Silahında Bu Eklentiyi İnceliyorsun",
|
||||
alreadyBoughtAttachment = "Zaten Silahta Bu Eklenti Takılı",
|
||||
attachmentDefault = "Varsayılan",
|
||||
attachmentPreview = "İncele",
|
||||
attachmentFree = "Ücretsiz",
|
||||
attachmentApply = "Uygula",
|
||||
attachmentDamage = "Hasar",
|
||||
attachmentSpeed = "Atış Hızı",
|
||||
attachmentCapacitiy = "Mermi Kapasitesi",
|
||||
attachmentAccuracy = "İsabetliliği",
|
||||
attachmentRange = "Menzil",
|
||||
attachmentMuzle = "Namlu Ucu",
|
||||
attachmentBarrel = "Namlu",
|
||||
attachmentScope = "Dürbün",
|
||||
attachmentStock = "Dipçik",
|
||||
attachmentGrip = "Tutamaç",
|
||||
attachmentMagazine = "Sarjör",
|
||||
attachmentCamo = "Kamuflaj",
|
||||
attachmentTint = "Boya",
|
||||
attachmentFlashlight = "Fener",
|
||||
|
||||
--metaData.js
|
||||
metadataTotalReapirAmount = "Toplam Tamir Sayısı:",
|
||||
metadataSerieNumber = "Seri No.:",
|
||||
metadataNotFoundSerie = "Bilinmiyor",
|
||||
metadataAmmo = "Mermi:",
|
||||
metadataTotalFiredAmmo = "Toplam Sıkılan Mermi:",
|
||||
metadataBorken = "KIRIK",
|
||||
metadataArmorValue = "Zırh Değeri:",
|
||||
metadataMan = "Erkek",
|
||||
metadataWoman = "Kadın",
|
||||
metadataModel = "Model:",
|
||||
metadataClothe = "Kıyafet:",
|
||||
metadataClotheType = "Tip:",
|
||||
metadataClotheColor = "Renk:",
|
||||
metadataDurability = "Dayanıklılık",
|
||||
metadataMaxUseAmount = "Kalan Kullanılabilir Adet:",
|
||||
metadataRealisticArmor = "Zırh Değeri",
|
||||
|
||||
--Emote
|
||||
emoteGiveItem = "%s Adet %s Uzatır",
|
||||
emoteGetItem = "Uzatılan Eşyayı Alır",
|
||||
emoteOpenGlovebox = "Torpidoya Uzanır",
|
||||
emoteOpenTrunk = "Bagajı Açar",
|
||||
|
||||
--Givecash
|
||||
giveCashNoUser = "Oyuncu Bulunamadı",
|
||||
giveCashInvalidAmount = "Geçersiz Miktar",
|
||||
giveCashToofar = "Oyuncu çok fazla uzakta",
|
||||
giveCashNoMoney = "Yeterli Paran Yok",
|
||||
giveCashSuccesGive = "$%s nakit verildi",
|
||||
giveCashSuccesGet = "$%s nakit alındı",
|
||||
|
||||
--Rob
|
||||
robNoPlayer = "Yakınlarında kimse yok!",
|
||||
robRobbing = "Soyuluyor...",
|
||||
robDeadError = "Ölü oyuncuyu soyamazsın!",
|
||||
robAnimationError = "Oyuncuyu soyabilmen için ellerini kaldırması gerekiyor!",
|
||||
|
||||
--Vending Machine
|
||||
vendingMachine = "Otomat",
|
||||
|
||||
--Dumpster Search
|
||||
dumpsterSearch = "Çöp Kutusunu Ara",
|
||||
dumpsterSearchCooldown = "Tekrar arama yapmadan önce %s saniye beklemeniz gerekiyor",
|
||||
dumpsterSearching = "Çöp kutusunu arıyorsun...",
|
||||
dumpsterSearchSuccess = "%s Adet %s Eşya Bulundu",
|
||||
|
||||
--Log
|
||||
logGiveItem = "Eşya Verdi! %s %s",
|
||||
logUseItem = "Eşya Kullandı! %s",
|
||||
logDeleteItem = "Eşyasını Sildi! | Envanter: %s | Adet: %s | Eşya: %s",
|
||||
logSwapItem = "Eşya Taşıdı! | Item: %s | Adet: %s | Envanter 1: %s | Envanter 2: %s",
|
||||
logBoughtItem = "Eşya Satın Aldı! | Envanter: %s | %sx %s | Fiyat $%s",
|
||||
logDropWeapon = "Yere Silahı Düştü %s",
|
||||
logDropMoney = "Yere Parası Düştü $%s",
|
||||
logDropItems = "Yere Eşyaları Düştü",
|
||||
logGetWeapon = "Yerden Silah Aldı %s",
|
||||
logGetMoney = "Yerden Para Aldı $%s",
|
||||
logGetItems = "Yerden Eşyalar Aldı",
|
||||
logAddItem = "Add Item Function | Item: %s | Adet: %s | Slot: %s | Script: %s",
|
||||
logRemoveItem = "Remove Item Function | Item: %s | Adet: %s | Slot: %s | Script: %s",
|
||||
logDumpsterSearch = "Çöp Kutusunu Aradı | Eşya: %s | Adet: %s",
|
||||
|
||||
--Cmd Log
|
||||
printWeaponNoDurability = "SİLAHIN KIRLMA ORANI YOK! %s! Lütfen configWeapon.lua dosyasını kontrol edin",
|
||||
printNoItem = "EŞYA ITEMS.LUA DOSYASINDA YOK! %s! Lütfen eşyayı items/items.lua dosyasına ekleyin",
|
||||
|
||||
--Ban log
|
||||
banOpenOtherPlayerInventory = "İzinsiz Oyuncuya Ait Envanteri Açmak | Envanterin Sahibnin ID'si: %s",
|
||||
banGiveItemSelf = "Kendi Kendine Eşya Verme",
|
||||
banGiveMinusAmount = "Eksi Değerde Eşya Ekleme | İtem: %s Adet: %s",
|
||||
banRemoveMinusAmount = "Eksi Değerde Eşya Silme | İtem: %s Adet: %s",
|
||||
banCustomShop = "Configde Olmayan Shop Açımı! Shop: %s",
|
||||
banOpeningOtherPlayerInventoryFromDistance = "Uzak Mesafeden Oyuncunun Envanterini Açmak | Envanterin Sahibnin ID'si: %s | Mesafe: %s",
|
||||
banClientOpenInventory = "Client'dan Envanter Açımı"
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,244 +0,0 @@
|
|||
local adminPerm = config.tgiannServer and { "tgi" } or config.framework == "qb" and "god" or "admin"
|
||||
|
||||
tgiCore.CommandsAdd(config.commands.admin.giveitem, "Give An Item (Admin Only)", { { name = "id", help = "Player ID" }, { name = "item", help = "Name of the item (not a label)" }, { name = "amount", help = "Amount of items" } }, false, function(source, args)
|
||||
local src = source
|
||||
local id = tonumber(args[1])
|
||||
local Player = config.tgiannServer and tgiCore.getPlayerById(id) or tgiCore.getPlayer(id)
|
||||
local amount = tonumber(args[3]) or 1
|
||||
local itemData = itemList[tostring(args[2]):lower()]
|
||||
if not Player then return tgiCore.notif(src, "Player Offline", "error") end
|
||||
local targetSrc = tgiCore.getSource(Player)
|
||||
if not itemData then return tgiCore.notif(src, "There is no such item", "error") end
|
||||
if not AddItem(targetSrc, itemData.name, amount) then return tgiCore.notif(src, "Player Is Full", "error") end
|
||||
|
||||
tgiCore.notif(src, "Item Given ID:" .. tgiCore.getCid(Player) .. " | " .. amount .. "x " .. itemData.name .. "", "success")
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.adminLog, string.format("/giveitem %s %s %s", id, args[2], amount), src, targetSrc)
|
||||
end, adminPerm)
|
||||
|
||||
tgiCore.CommandsAdd(config.commands.admin.setitem, "Set An Item (Admin Only)", { { name = "id", help = "Player ID" }, { name = "item", help = "Name of the item (not a label)" }, { name = "amount", help = "Amount of items" } }, false, function(source, args)
|
||||
local src = source
|
||||
local id = tonumber(args[1])
|
||||
local Player = config.tgiannServer and tgiCore.getPlayerById(id) or tgiCore.getPlayer(id)
|
||||
local amount = tonumber(args[3]) or 1
|
||||
local itemData = itemList[tostring(args[2]):lower()]
|
||||
if not Player then return tgiCore.notif(src, "Player Offline", "error") end
|
||||
local targetSrc = tgiCore.getSource(Player)
|
||||
local pInventory = GetInventory(targetSrc, "player")
|
||||
if not itemData then return tgiCore.notif(src, "There is no such item", "error") end
|
||||
if not pInventory.Functions.SetItem(itemData.name, amount) then return tgiCore.notif(src, "Player Is Full", "error") end
|
||||
|
||||
pInventory.Functions.Save()
|
||||
tgiCore.notif(src, "Item Given ID:" .. tgiCore.getCid(Player) .. " | " .. amount .. "x " .. itemData.name .. "", "success")
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.adminLog, string.format("/giveitem %s %s %s", id, args[2], amount), src, targetSrc)
|
||||
end, adminPerm)
|
||||
|
||||
tgiCore.CommandsAdd(config.commands.admin.clearinv, 'Clear Players Inventory (Admin Only)', { { name = 'id', help = 'Player ID' } }, false, function(source, args)
|
||||
local src = source
|
||||
if args[1] then
|
||||
local Player = config.tgiannServer and tgiCore.getPlayerById(tonumber(args[1])) or tgiCore.getPlayer(tonumber(args[1]))
|
||||
if Player then
|
||||
local targetSrc = tgiCore.getSource(Player)
|
||||
local pInventory = GetInventory(targetSrc, "player")
|
||||
pInventory.Functions.ClearInventory()
|
||||
tgiCore.notif(src, "Player's Inventory Deleted", "error")
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.adminLog, string.format("/clearinv %s (Target Online)", args[1]), src, targetSrc)
|
||||
else
|
||||
local row = MySQL.single.await('SELECT `inventory`, `citizenid` FROM `tgiann_inventory_player` WHERE `citizenid` = ? LIMIT 1', { args[1] })
|
||||
if row then
|
||||
MySQL.update('UPDATE tgiann_inventory_player SET inventory = ? WHERE citizenid = ?', { "[]", row.citizenid })
|
||||
tgiCore.notif(src, "Player's Inventory Deleted", "error")
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.adminLog, string.format("/clearinv %s (Target Offline)", args[1]), src)
|
||||
else
|
||||
tgiCore.notif(src, "There is no such player", "error")
|
||||
end
|
||||
end
|
||||
else
|
||||
local Player = tgiCore.getPlayer(src)
|
||||
if not Player then return tgiCore.notif(src, "Player Offline", "error") end
|
||||
local pInventory = GetInventory(tgiCore.getSource(Player), "player")
|
||||
pInventory.Functions.ClearInventory()
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.adminLog, "/clearinv (Self Inventory)", src)
|
||||
end
|
||||
end, adminPerm)
|
||||
|
||||
tgiCore.CommandsAdd(config.commands.admin.backpack, "Set Backpack Level", { { name = "id", help = "Player ID" }, { name = "level", help = "1-2-3" } }, true, function(source, args)
|
||||
local src = source
|
||||
local backpack = tonumber(args[2])
|
||||
if not backpack then return tgiCore.notif(src, "You Have To Write a Level", "error") end
|
||||
local max = #config.backpack
|
||||
if backpack <= 0 and backpack > max then return tgiCore.notif(src, string.format("Backpack Level Can Be Max %s Min 1", max), "error") end
|
||||
local xPlayer = config.tgiannServer and tgiCore.getPlayerById(tonumber(args[1])) or tgiCore.getPlayer(tonumber(args[1]))
|
||||
if not xPlayer then return tgiCore.notif(src, "Player Offline", "error") end
|
||||
local targetSrc = tgiCore.getSource(xPlayer)
|
||||
MySQL.insert('INSERT INTO tgiann_inventory_player (citizenid, lvl) VALUES (:citizenid, :lvl) ON DUPLICATE KEY UPDATE citizenid = :citizenid, lvl = :lvl', {
|
||||
citizenid = tgiCore.getCid(xPlayer),
|
||||
lvl = backpack,
|
||||
})
|
||||
local pInventory = GetInventory(targetSrc, "player")
|
||||
if pInventory then
|
||||
local data = config.backpack[backpack]
|
||||
pInventory.Functions.UpdateData({
|
||||
MaxSlots = data.slots,
|
||||
MaxWeight = data.weight
|
||||
})
|
||||
end
|
||||
tgiCore.notif(src, "Backpack Level Seted", "success")
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.adminLog, string.format("/backpack %s %s", args[1], backpack), src, targetSrc)
|
||||
end, adminPerm)
|
||||
|
||||
tgiCore.CommandsAdd(config.commands.admin.deleteinv, "Deletes Inventory", { { name = "id", help = "Inventory Name/Plate" }, { name = "invType", help = "Inventory Type(trunk, glovebox, stash)" } }, true, function(source, args)
|
||||
local src = source
|
||||
local invType = args[2]
|
||||
local invId = args[1]
|
||||
if DeleteInventory(invType, invId) then
|
||||
tgiCore.notif(src, "Inventory Deleted! " .. secondInventoryId, "success")
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.adminLog, string.format("/deleteinv %s %s", invType, invId), src)
|
||||
else
|
||||
tgiCore.notif(src, "There Is No Such Inventory!", "error")
|
||||
end
|
||||
end, adminPerm)
|
||||
|
||||
tgiCore.CommandsAdd(config.commands.admin.openinv, "Open a Inventory", { { name = "id", help = "Inventory Name/Plate" }, { name = "invType", help = "Inventory Type(trunk, glovebox, stash)" } }, true, function(source, args)
|
||||
local src = source
|
||||
local invType = args[2]
|
||||
local invId = args[1]
|
||||
OpenInventory(src, invType, invId, {
|
||||
maxweight = 999999999999,
|
||||
slots = 1000,
|
||||
})
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.adminLog, string.format("/openinv %s %s", invType, invId), src)
|
||||
end, adminPerm)
|
||||
|
||||
local checkItemAmount = 0
|
||||
local checkItemTotalAmount = 0
|
||||
local function checkItemListAdd(name, amount, findItem)
|
||||
if name == findItem then
|
||||
checkItemAmount = checkItemAmount + amount
|
||||
end
|
||||
end
|
||||
|
||||
local function checkItemListPrint(inventoryType, inventoryName, findItem, findAmount)
|
||||
if checkItemAmount > findAmount then
|
||||
tgiCore.DebugLog(string.format("Env Type: %s | %s | Item: %s | Amount: %s", inventoryType, inventoryName, findItem, checkItemAmount))
|
||||
checkItemTotalAmount = checkItemTotalAmount + checkItemAmount
|
||||
end
|
||||
checkItemAmount = 0
|
||||
end
|
||||
|
||||
tgiCore.CommandsAdd(config.commands.admin.checkitem, "Checks One Item in All Inventories", { { name = "item", help = "Item Name" }, { name = "minamount", help = "Min Amount" } }, true, function(source, args)
|
||||
local findItem = args[1]
|
||||
local findAmount = tonumber(args[2])
|
||||
local src = source
|
||||
checkItemTotalAmount = 0
|
||||
if itemList[findItem] then
|
||||
local result = MySQL.query.await('SELECT inventory, citizenid, citizenid FROM tgiann_inventory_player')
|
||||
if result then
|
||||
for i = 1, #result do
|
||||
local resultData = result[i]
|
||||
resultData.inventory = json.decode(resultData.inventory)
|
||||
if resultData.inventory then
|
||||
for _, data in pairs(resultData.inventory) do
|
||||
checkItemListAdd(data.name, data.amount, findItem)
|
||||
end
|
||||
checkItemListPrint("Player", resultData.citizenid, findItem, findAmount)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
local result = MySQL.query.await('SELECT * FROM tgiann_inventory_stashitems')
|
||||
if result then
|
||||
for i = 1, #result do
|
||||
local resultData = result[i]
|
||||
resultData.items = json.decode(resultData.items)
|
||||
for _, data in pairs(resultData.items) do
|
||||
checkItemListAdd(data.name, data.amount, findItem)
|
||||
end
|
||||
checkItemListPrint("stash", resultData.stash, findItem, findAmount)
|
||||
end
|
||||
end
|
||||
|
||||
local result = MySQL.query.await('SELECT * FROM tgiann_inventory_trunkitems')
|
||||
if result then
|
||||
for i = 1, #result do
|
||||
local resultData = result[i]
|
||||
resultData.items = json.decode(resultData.items)
|
||||
for _, data in pairs(resultData.items) do
|
||||
checkItemListAdd(data.name, data.amount, findItem)
|
||||
end
|
||||
checkItemListPrint("trunk", resultData.plate, findItem, findAmount)
|
||||
end
|
||||
end
|
||||
|
||||
local result = MySQL.query.await('SELECT * FROM tgiann_inventory_gloveboxitems')
|
||||
if result then
|
||||
for i = 1, #result do
|
||||
local resultData = result[i]
|
||||
resultData.items = json.decode(resultData.items)
|
||||
for _, data in pairs(resultData.items) do
|
||||
checkItemListAdd(data.name, data.amount, findItem)
|
||||
end
|
||||
checkItemListPrint("glovebox", resultData.plate, findItem, findAmount)
|
||||
end
|
||||
end
|
||||
|
||||
--[[ local result = MySQL.query.await('SELECT id, item, amount FROM tgiann_market_sell')
|
||||
if result then
|
||||
for i=1, #result do
|
||||
local resultData = result[i]
|
||||
checkItemListAdd(resultData.item, resultData.amount, findItem)
|
||||
checkItemListPrint("tgiann_market_sell", resultData.id, findItem, findAmount)
|
||||
end
|
||||
end
|
||||
|
||||
local result = MySQL.query.await('SELECT id, item, amount FROM tgiann_market_item_storage')
|
||||
if result then
|
||||
for i=1, #result do
|
||||
local resultData = result[i]
|
||||
checkItemListAdd(resultData.item, resultData.amount, findItem)
|
||||
checkItemListPrint("tgiann_market_item_storage", resultData.id, findItem, findAmount)
|
||||
end
|
||||
end
|
||||
]]
|
||||
tgiCore.DebugLog(string.format("Total Amount: %s", checkItemTotalAmount))
|
||||
else
|
||||
tgiCore.notif(src, "There is no such item!", "error")
|
||||
end
|
||||
end, adminPerm)
|
||||
|
||||
tgiCore.CommandsAdd(config.commands.admin.items, "Lists all Items available in the server", {}, false, function(source, args)
|
||||
OpenShop(source, "admin")
|
||||
end, adminPerm)
|
||||
|
||||
-- PLAYER COMMANDS
|
||||
|
||||
-- https://github.com/qbcore-framework/qb-banking/blob/main/server.lua#L493
|
||||
if config.commands.player.givecash.active then
|
||||
tgiCore.CommandsAdd(config.commands.player.givecash.command, 'Give Cash', { { name = 'id', help = 'Player ID' }, { name = 'amount', help = 'Amount' } }, true, function(source, args)
|
||||
local src = source
|
||||
local xPlayer = tgiCore.getPlayer(src)
|
||||
if not xPlayer then return end
|
||||
local playerPed = GetPlayerPed(src)
|
||||
local playerCoords = GetEntityCoords(playerPed)
|
||||
local tPlayer = tgiCore.getPlayer(tonumber(args[1]))
|
||||
if not tPlayer then return tgiCore.notif(src, lang.giveCashNoUser, 'error') end
|
||||
local targetPed = GetPlayerPed(tonumber(args[1]))
|
||||
local targetCoords = GetEntityCoords(targetPed)
|
||||
local amount = tonumber(args[2])
|
||||
if not amount then return tgiCore.notif(src, lang.giveCashInvalidAmount, 'error') end
|
||||
if amount <= 0 then return tgiCore.notif(src, lang.giveCashInvalidAmount, 'error') end
|
||||
if #(playerCoords - targetCoords) > 5 then return tgiCore.notif(src, lang.giveCashToofar, 'error') end
|
||||
if tgiCore.getMoney(xPlayer, "cash") < amount then return tgiCore.notif(src, lang.giveCashNoMoney, 'error') end
|
||||
tgiCore.removeMoney(xPlayer, 'cash', amount, 'cash transfer')
|
||||
tgiCore.addMoney(tPlayer, 'cash', amount, 'cash transfer')
|
||||
tgiCore.notif(src, string.format(lang.giveCashSuccesGive, amount), 'success')
|
||||
tgiCore.notif(tgiCore.getSource(tPlayer), string.format(lang.giveCashSuccesGet, amount), 'success')
|
||||
end)
|
||||
end
|
||||
|
||||
if config.commands.player.rob.active then
|
||||
tgiCore.CommandsAdd(config.commands.player.rob.command, 'Rob Closest Player', {}, false, function(source, args)
|
||||
local targetPlayer = lib.callback.await("tgiann-inventory:robPlayer", source)
|
||||
if not targetPlayer then return end
|
||||
OpenInventoryById(source, targetPlayer, true)
|
||||
end)
|
||||
end
|
Binary file not shown.
|
@ -1,339 +0,0 @@
|
|||
-- with this command you can integrate your qb inventories into the new system
|
||||
-- if you write a code for different inventories please share it with us
|
||||
-- Commands only available from cmd/live consol
|
||||
|
||||
local function convertItemsFile()
|
||||
local addedAnyItems = false
|
||||
if config.framework == "qb" then
|
||||
local QBCore = exports['qb-core']:GetCoreObject({ "Shared" })
|
||||
local items = QBCore.Shared.Items
|
||||
if items and table.type(items) ~= 'empty' then
|
||||
for k, item in pairs(items) do
|
||||
if type(item) == 'table' then
|
||||
item.name = tgiCore.trim(string.lower(item.name or k))
|
||||
if not string.find(item.name, "weapon_") and not itemsData[item.name] then
|
||||
item.type = item.type or 'item'
|
||||
item.image = item.image or item.name .. ".webp"
|
||||
item.unique = item.unique or false
|
||||
item.useable = item.useable or false
|
||||
item.shouldClose = item.shouldClose or false
|
||||
item.description = item.description or ""
|
||||
itemsData[item.name] = item
|
||||
addedAnyItems = true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
elseif config.framework == "esx" then
|
||||
local items = MySQL.query.await("SELECT * FROM items")
|
||||
if items and table.type(items) ~= 'empty' then
|
||||
for _, item in pairs(items) do
|
||||
item.name = tgiCore.trim(string.lower(item.name))
|
||||
if not string.find(item.name, "weapon_") and not itemsData[item.name] then
|
||||
itemsData[item.name] = {
|
||||
name = item.name, label = item.label, weight = item.weight, type = 'item', image = item.name .. '.webp', unique = false, useable = true, shouldClose = true, description = ''
|
||||
}
|
||||
addedAnyItems = true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
if not addedAnyItems then
|
||||
return tgiCore.DebugLog('No items added to items.lua file! Your tgiann-inventory items file already converted!')
|
||||
end
|
||||
|
||||
local fileContent = "itemsData = " .. tgiCore.SerializeTable(itemsData)
|
||||
SaveResourceFile("tgiann-inventory", 'items/items.lua', fileContent, -1)
|
||||
if config.framework == "qb" then
|
||||
tgiCore.DebugLog('Your items have been copied from the QBCore.Shared.Items! You should restart the resource to load the new items! You can edit your items from items/items.lua file.')
|
||||
else
|
||||
tgiCore.DebugLog('Your items have been copied from the items database! You should restart the resource to load the new items! You can edit your items from items/items.lua file.')
|
||||
end
|
||||
end
|
||||
|
||||
local function convertItems(items)
|
||||
if not items then return "[]" end
|
||||
items = json.decode(items)
|
||||
if not items then return "[]" end
|
||||
for _, itemData in pairs(items) do
|
||||
if itemData then
|
||||
itemData.info = itemData.metadata or itemData.info
|
||||
itemData.amount = itemData.count or itemData.amount
|
||||
if string.find(itemData.name, "weapon_") then itemData.info = nil end
|
||||
end
|
||||
end
|
||||
return json.encode(items)
|
||||
end
|
||||
|
||||
local function checkTableExist(table)
|
||||
return MySQL.single.await("SHOW TABLES LIKE ?", { table })
|
||||
end
|
||||
|
||||
RegisterCommand(config.commands.convert.convertItemsFile, function(source)
|
||||
if source > 0 then return tgiCore.DebugErrorLog("Pls use on server cmd") end
|
||||
convertItemsFile()
|
||||
end)
|
||||
|
||||
-- Qb Inventory
|
||||
RegisterCommand(config.commands.convert.convertqb, function(source)
|
||||
if source > 0 then return tgiCore.DebugErrorLog("Pls use on server cmd") end
|
||||
|
||||
local newQb = checkTableExist("inventories")
|
||||
if newQb then
|
||||
local result = MySQL.query.await('SELECT * FROM inventories')
|
||||
if result and #result > 0 then
|
||||
for i = 1, #result do
|
||||
local inventory = result[i]
|
||||
local items = inventory.items
|
||||
local identifier = inventory.identifier
|
||||
if identifier:find('trunk-') then
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_trunkitems` (plate, items) VALUES (?, ?) ON DUPLICATE KEY UPDATE items = VALUES(items)', {
|
||||
string.gsub(identifier, "trunk-", ""), items
|
||||
})
|
||||
elseif identifier:find('glovebox-') then
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_gloveboxitems` (plate, items) VALUES (?, ?) ON DUPLICATE KEY UPDATE items = VALUES(items)', {
|
||||
string.gsub(identifier, "glovebox-", ""), items
|
||||
})
|
||||
else
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_stashitems` (stash, items) VALUES (?, ?) ON DUPLICATE KEY UPDATE items = VALUES(items)', {
|
||||
identifier, items
|
||||
})
|
||||
end
|
||||
end
|
||||
end
|
||||
tgiCore.DebugLog("New Qb inventories converted")
|
||||
else
|
||||
local response = MySQL.query.await('SELECT * FROM `stashitems`')
|
||||
if response and next(response) then
|
||||
for i = 1, #response do
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_stashitems` (stash, items) VALUES (?, ?) ON DUPLICATE KEY UPDATE items = VALUES(items)', {
|
||||
response[i].stash, response[i].items
|
||||
})
|
||||
end
|
||||
tgiCore.DebugLog("stashitems converted")
|
||||
end
|
||||
|
||||
local response = MySQL.query.await('SELECT * FROM `trunkitems`')
|
||||
if response and next(response) then
|
||||
for i = 1, #response do
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_trunkitems` (plate, items) VALUES (?, ?) ON DUPLICATE KEY UPDATE items = VALUES(items)', {
|
||||
response[i].plate, response[i].items
|
||||
})
|
||||
end
|
||||
tgiCore.DebugLog("trunkitems converted")
|
||||
end
|
||||
|
||||
local response = MySQL.query.await('SELECT * FROM `gloveboxitems`')
|
||||
if response and next(response) then
|
||||
for i = 1, #response do
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_gloveboxitems` (plate, items) VALUES (?, ?) ON DUPLICATE KEY UPDATE items = VALUES(items)', {
|
||||
response[i].plate, response[i].items
|
||||
})
|
||||
end
|
||||
tgiCore.DebugLog("gloveboxitems converted")
|
||||
end
|
||||
end
|
||||
|
||||
if checkTableExist("players") then
|
||||
local response = MySQL.query.await('SELECT citizenid, inventory FROM `players`')
|
||||
if response and next(response) then
|
||||
for i = 1, #response do
|
||||
if response[i].inventory then
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_player` (citizenid, inventory, clotheinventory) VALUES (?, ?, ?) ON DUPLICATE KEY UPDATE inventory = VALUES(inventory), clotheinventory = VALUES(clotheinventory)', {
|
||||
response[i].citizenid, response[i].inventory, "[]"
|
||||
})
|
||||
end
|
||||
end
|
||||
tgiCore.DebugLog("Player inventorys converted")
|
||||
end
|
||||
end
|
||||
|
||||
convertItemsFile()
|
||||
|
||||
tgiCore.DebugLog("Finished")
|
||||
end)
|
||||
|
||||
-- Ox Inventory
|
||||
RegisterCommand(config.commands.convert.convertox, function(source)
|
||||
if source > 0 then return tgiCore.DebugErrorLog("Pls use on server cmd") end
|
||||
if not checkTableExist("ox_inventory") then
|
||||
return tgiCore.DebugErrorLog("Ox Inventory not found")
|
||||
end
|
||||
|
||||
local response = MySQL.query.await('SELECT name, data FROM `ox_inventory`')
|
||||
if response and next(response) then
|
||||
for i = 1, #response do
|
||||
local owner = response[i].owner or ""
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_stashitems` (stash, items) VALUES (?, ?) ON DUPLICATE KEY UPDATE items = VALUES(items)', {
|
||||
response[i].name .. "_" .. owner, convertItems(response[i].data)
|
||||
})
|
||||
if response[i].owner then
|
||||
tgiCore.DebugWarningLog(string.format("%s Converted but u need the edit open event! When opening the stash you need to send the player id in the stash name! Example: TriggerServerEvent('inventory:server:OpenInventory', 'stash', %s_PlayerData.citizenid)", response[i].name, response[i].name))
|
||||
end
|
||||
end
|
||||
tgiCore.DebugLog("stashitems converted")
|
||||
end
|
||||
|
||||
if config.framework == "qb" then
|
||||
local response = MySQL.query.await('SELECT glovebox, trunk, plate FROM `player_vehicles`')
|
||||
if response and next(response) then
|
||||
for i = 1, #response do
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_gloveboxitems` (plate, items) VALUES (?, ?) ON DUPLICATE KEY UPDATE items = VALUES(items)', {
|
||||
response[i].plate, convertItems(response[i].glovebox)
|
||||
})
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_trunkitems` (plate, items) VALUES (?, ?) ON DUPLICATE KEY UPDATE items = VALUES(items)', {
|
||||
response[i].plate, convertItems(response[i].trunk)
|
||||
})
|
||||
end
|
||||
tgiCore.DebugLog("gloveboxitems and trunkitems converted")
|
||||
end
|
||||
else
|
||||
local response = MySQL.query.await('SELECT glovebox, trunk, plate FROM `owned_vehicles`')
|
||||
if response and next(response) then
|
||||
for i = 1, #response do
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_gloveboxitems` (plate, items) VALUES (?, ?) ON DUPLICATE KEY UPDATE items = VALUES(items)', {
|
||||
response[i].plate, convertItems(response[i].glovebox)
|
||||
})
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_trunkitems` (plate, items) VALUES (?, ?) ON DUPLICATE KEY UPDATE items = VALUES(items)', {
|
||||
response[i].plate, convertItems(response[i].trunk)
|
||||
})
|
||||
end
|
||||
tgiCore.DebugLog("gloveboxitems and trunkitems converted")
|
||||
end
|
||||
end
|
||||
|
||||
if config.framework == "qb" then
|
||||
local response = MySQL.query.await('SELECT citizenid, inventory FROM `players`')
|
||||
if response and next(response) then
|
||||
for i = 1, #response do
|
||||
if response[i].inventory then
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_player` (citizenid, inventory, clotheinventory) VALUES (?, ?, ?) ON DUPLICATE KEY UPDATE inventory = VALUES(inventory), clotheinventory = VALUES(clotheinventory)', {
|
||||
response[i].citizenid, convertItems(response[i].inventory), "[]"
|
||||
})
|
||||
end
|
||||
end
|
||||
tgiCore.DebugLog("Player inventorys converted")
|
||||
end
|
||||
else
|
||||
local response = MySQL.query.await('SELECT identifier, inventory FROM `users`')
|
||||
if response and next(response) then
|
||||
for i = 1, #response do
|
||||
if response[i].inventory then
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_player` (citizenid, inventory, clotheinventory) VALUES (?, ?, ?) ON DUPLICATE KEY UPDATE inventory = VALUES(inventory), clotheinventory = VALUES(clotheinventory)', {
|
||||
response[i].identifier, convertItems(response[i].inventory), "[]"
|
||||
})
|
||||
end
|
||||
end
|
||||
tgiCore.DebugLog("Player inventorys converted")
|
||||
end
|
||||
end
|
||||
|
||||
tgiCore.DebugLog("Finished")
|
||||
end)
|
||||
|
||||
-- qs_inventory
|
||||
RegisterCommand(config.commands.convert.convertqsinv, function(source)
|
||||
if source > 0 then return tgiCore.DebugErrorLog("Pls use on server cmd") end
|
||||
|
||||
local response = MySQL.query.await('SELECT * FROM `inventory_stash`')
|
||||
if response and next(response) then
|
||||
for i = 1, #response do
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_stashitems` (stash, items) VALUES (?, ?) ON DUPLICATE KEY UPDATE items = VALUES(items)', {
|
||||
response[i].stash, response[i].items
|
||||
})
|
||||
end
|
||||
tgiCore.DebugLog("inventory_stash converted")
|
||||
end
|
||||
|
||||
local response = MySQL.query.await('SELECT * FROM `inventory_trunk`')
|
||||
if response and next(response) then
|
||||
for i = 1, #response do
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_trunkitems` (plate, items) VALUES (?, ?) ON DUPLICATE KEY UPDATE items = VALUES(items)', {
|
||||
response[i].plate, response[i].items
|
||||
})
|
||||
end
|
||||
tgiCore.DebugLog("inventory_trunk converted")
|
||||
end
|
||||
|
||||
local response = MySQL.query.await('SELECT * FROM `inventory_glovebox`')
|
||||
if response and next(response) then
|
||||
for i = 1, #response do
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_gloveboxitems` (plate, items) VALUES (?, ?) ON DUPLICATE KEY UPDATE items = VALUES(items)', {
|
||||
response[i].plate, response[i].items
|
||||
})
|
||||
end
|
||||
tgiCore.DebugLog("inventory_glovebox converted")
|
||||
end
|
||||
|
||||
if config.framework == "qb" then
|
||||
local response = MySQL.query.await('SELECT citizenid, inventory FROM `players`')
|
||||
if response and next(response) then
|
||||
for i = 1, #response do
|
||||
if response[i].inventory then
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_player` (citizenid, inventory, clotheinventory) VALUES (?, ?, ?) ON DUPLICATE KEY UPDATE inventory = VALUES(inventory), clotheinventory = VALUES(clotheinventory)', {
|
||||
response[i].citizenid, convertItems(response[i].inventory), "[]"
|
||||
})
|
||||
end
|
||||
end
|
||||
tgiCore.DebugLog("Player inventorys converted")
|
||||
end
|
||||
else
|
||||
local response = MySQL.query.await('SELECT identifier, inventory FROM `users`')
|
||||
if response and next(response) then
|
||||
for i = 1, #response do
|
||||
if response[i].inventory then
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_player` (citizenid, inventory, clotheinventory) VALUES (?, ?, ?) ON DUPLICATE KEY UPDATE inventory = VALUES(inventory), clotheinventory = VALUES(clotheinventory)', {
|
||||
response[i].identifier, convertItems(response[i].inventory), "[]"
|
||||
})
|
||||
end
|
||||
end
|
||||
tgiCore.DebugLog("Player inventorys converted")
|
||||
end
|
||||
end
|
||||
|
||||
tgiCore.DebugLog("Finished")
|
||||
end)
|
||||
|
||||
-- codem-inventory
|
||||
RegisterCommand(config.commands.convert.convertcodeminv, function(source)
|
||||
if source > 0 then return tgiCore.DebugErrorLog("Pls use on server cmd") end
|
||||
|
||||
local response = MySQL.query.await('SELECT * FROM `codem_new_stash`')
|
||||
if response and next(response) then
|
||||
for i = 1, #response do
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_stashitems` (stash, items) VALUES (?, ?) ON DUPLICATE KEY UPDATE items = VALUES(items)', {
|
||||
response[i].stashname, response[i].items
|
||||
})
|
||||
end
|
||||
tgiCore.DebugLog("codem_new_stash converted")
|
||||
end
|
||||
|
||||
local response = MySQL.query.await('SELECT * FROM `codem_new_vehicleandglovebox`')
|
||||
if response and next(response) then
|
||||
for i = 1, #response do
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_gloveboxitems` (plate, items) VALUES (?, ?) ON DUPLICATE KEY UPDATE items = VALUES(items)', {
|
||||
response[i].plate, response[i].glovebox
|
||||
})
|
||||
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_trunkitems` (plate, items) VALUES (?, ?) ON DUPLICATE KEY UPDATE items = VALUES(items)', {
|
||||
response[i].plate, response[i].trunk
|
||||
})
|
||||
end
|
||||
tgiCore.DebugLog("codem_new_vehicleandglovebox converted")
|
||||
end
|
||||
|
||||
local response = MySQL.query.await('SELECT identifier, inventory FROM `codem_new_inventory`')
|
||||
if response and next(response) then
|
||||
for i = 1, #response do
|
||||
if response[i].inventory then
|
||||
MySQL.query.await('INSERT INTO `tgiann_inventory_player` (citizenid, inventory, clotheinventory) VALUES (?, ?, ?) ON DUPLICATE KEY UPDATE inventory = VALUES(inventory), clotheinventory = VALUES(clotheinventory)', {
|
||||
response[i].identifier, convertItems(response[i].inventory), "[]"
|
||||
})
|
||||
end
|
||||
end
|
||||
tgiCore.DebugLog("Player inventorys converted")
|
||||
end
|
||||
|
||||
tgiCore.DebugLog("Finished")
|
||||
end)
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,242 +0,0 @@
|
|||
---@param src number
|
||||
---@param banLogType "banOpenOtherPlayerInventory" | "banGiveItemSelf" | "banGiveMinusAmount" | "banRemoveMinusAmount" | "banCustomShop" | "banOpeningOtherPlayerInventoryFromDistance" | "banClientOpenInventory"
|
||||
---@param msg string
|
||||
function ban(src, banLogType, msg)
|
||||
banLog(src, banLogType, msg)
|
||||
if config.kickPlayerWhenHackingDatected then DropPlayer(tostring(src), "Cheating For Inventory System") end
|
||||
--[[
|
||||
-- Example ban event
|
||||
TriggerClientEvent("tgiann-anticheat:ban", src, { -- Example Code
|
||||
adminMessage = msg,
|
||||
ban = 131487,
|
||||
kickMessage = "Cheating!"
|
||||
}) ]]
|
||||
end
|
||||
|
||||
---@param plate string
|
||||
---@return string | false
|
||||
function isPlayerVehicle(plate)
|
||||
local table = config.framework == "qb" and "player_vehicles" or "owned_vehicles"
|
||||
local owner = config.framework == "qb" and "citizenid" or "owner"
|
||||
local result = MySQL.single.await('SELECT ' .. owner .. ' from ' .. table .. ' WHERE plate = ?', { plate })
|
||||
return result and result[owner] or false
|
||||
end
|
||||
|
||||
---@param src number
|
||||
---@return boolean
|
||||
function isAdmin(src)
|
||||
if config.framework == "qb" then
|
||||
return IsPlayerAceAllowed(tostring(src), "command") -- refarance: https://github.com/qbcore-framework/qb-adminmenu/blob/main/server/server.lua#L52
|
||||
else
|
||||
local xPlayer = tgiCore.getPlayer(src)
|
||||
return xPlayer.getGroup(src) == "admin"
|
||||
end
|
||||
end
|
||||
|
||||
lib.callback.register("tgiann-inventory:server:isAdmin", isAdmin)
|
||||
|
||||
--- @param moneyType string
|
||||
--- @return boolean, string | nil
|
||||
function isMoneyItem(moneyType)
|
||||
if not config.moneyAsItem.active then return false end
|
||||
for itemName, mType in pairs(config.moneyAsItem.items[config.framework]) do
|
||||
if mType == moneyType then
|
||||
return true, itemName
|
||||
end
|
||||
end
|
||||
return false
|
||||
end
|
||||
|
||||
exports("IsMoneyItem", isMoneyItem)
|
||||
|
||||
--- For money as item
|
||||
---@param src number
|
||||
---@param itemName string
|
||||
local function setMoney(src, itemName)
|
||||
if not config.moneyAsItem.active then return end
|
||||
local moneyType = config.moneyAsItem.items[config.framework][itemName]
|
||||
if not moneyType then return end
|
||||
local pInventory = GetInventory(src, "player")
|
||||
if not pInventory then return end
|
||||
local xPlayer = tgiCore.getPlayer(src)
|
||||
if not xPlayer then return end
|
||||
local totalAmount = pInventory.Functions.GetItemTotalAmount(itemName)
|
||||
if config.framework == "esx" then
|
||||
xPlayer.setAccountMoney(moneyType, totalAmount, "inventory money as item", true)
|
||||
elseif config.framework == "qb" then
|
||||
if config.qbx then
|
||||
exports["qbx_core"]:SetMoney(src, moneyType, totalAmount, "inventory money as item", true)
|
||||
else
|
||||
xPlayer.Functions.SetMoney(moneyType, totalAmount, "inventory money as item", true)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--- if the value is false, the use of the item is canceled
|
||||
---@param src number
|
||||
---@param itemData table
|
||||
---@param itemSharedData table
|
||||
---@diagnostic disable-next-line: unused-local
|
||||
function useItemEditable(src, itemData, itemSharedData)
|
||||
local decayableItemsData = IsDecayableItem(itemData.name)
|
||||
if decayableItemsData then
|
||||
local durability = itemData.info?.durability and GetDurabilityPercent(itemData.info.durability, decayableItemsData, os.time()) or 1
|
||||
if durability <= 0 then
|
||||
if config.removeDecayableItem then
|
||||
RemoveItem(src, itemData.name, 1, itemData.slot)
|
||||
end
|
||||
tgiCore.notif(src, lang.cantUseThisItem, "error")
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
if itemData.name == "myCustomUseItem" then
|
||||
TriggerClientEvent('myCustomEvent', src, itemData.name)
|
||||
return false -- We make it false because we do not want the main use item function to continue
|
||||
end
|
||||
|
||||
return true
|
||||
end
|
||||
|
||||
---@param src number
|
||||
---@param itemData table
|
||||
---@param amount number
|
||||
function addItemDetect(src, itemData, amount)
|
||||
if not itemData then return end
|
||||
|
||||
itemData.itemAddRemoveLog = "added"
|
||||
TriggerClientEvent("tgiann-inventory:itemAddRemoveLog", src, itemData, amount)
|
||||
|
||||
if string.match(itemData.name:lower(), "weapon") then
|
||||
TriggerClientEvent('inventory:client:addWeapon', src, true, true, itemData.slot)
|
||||
else
|
||||
if config.moneyAsItem.active then setMoney(src, itemData.name) end
|
||||
TriggerClientEvent('tgiann-inventory:addedItem', src, itemData.name)
|
||||
end
|
||||
end
|
||||
|
||||
---@param src number
|
||||
---@param itemData table
|
||||
---@param amount number
|
||||
function removeItemDetect(src, itemData, amount)
|
||||
if not itemData then return end
|
||||
|
||||
itemData.itemAddRemoveLog = "removed"
|
||||
TriggerClientEvent("tgiann-inventory:itemAddRemoveLog", src, itemData, amount)
|
||||
|
||||
if string.match(itemData.name:lower(), "weapon") then
|
||||
TriggerClientEvent('inventory:client:removeWeapon', src, true, true, itemData.slot)
|
||||
elseif itemData.name:lower() == "kemer" then
|
||||
TriggerClientEvent('tgiann-hud:removeKemer', src)
|
||||
elseif itemData.name:lower() == "megaphone" then
|
||||
TriggerClientEvent('tgiann-megaphone:drop', src)
|
||||
elseif itemData.name:lower() == "scooter" then
|
||||
TriggerClientEvent('tgiann-scooter:drop', src)
|
||||
else
|
||||
if config.moneyAsItem then setMoney(src, itemData.name) end
|
||||
TriggerClientEvent('tgiann-inventory:dropItem', src, itemData.name)
|
||||
end
|
||||
end
|
||||
|
||||
---@param payload { source:number, shopType: string, itemName: string, metadata: table, count:number, price: number }
|
||||
function itemBought(payload)
|
||||
buyItemLog(payload.shopType, payload.itemName, payload.count, payload.price, payload.source)
|
||||
|
||||
if config.tgiannServer and payload.shopType == "police" then
|
||||
local itemName = payload.itemName
|
||||
if string.find(itemName, "weapon") then
|
||||
local label = itemList[itemName].label
|
||||
local xPlayer = tgiCore.getPlayer(payload.source)
|
||||
if not xPlayer then return end
|
||||
MySQL.insert('INSERT INTO tgiann_mdt_shop (name, itemname, itemserial, time) VALUES (?, ?, ?, ?) ', { xPlayer.PlayerData.charinfo.firstname .. " " .. xPlayer.PlayerData.charinfo.lastname, label, payload.metadata.serie or "Eşya", os.time() })
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
---@param itemData table
|
||||
---@param info? table
|
||||
---@param Player? table
|
||||
local function setQbItemInfo(itemData, info, Player)
|
||||
if config.framework == "esx" then return info end
|
||||
if itemData.name == "id_card" then
|
||||
if Player then
|
||||
info.citizenid = Player.PlayerData.citizenid
|
||||
info.firstname = Player.PlayerData.charinfo.firstname
|
||||
info.lastname = Player.PlayerData.charinfo.lastname
|
||||
info.birthdate = Player.PlayerData.charinfo.birthdate
|
||||
info.gender = Player.PlayerData.charinfo.gender
|
||||
info.nationality = Player.PlayerData.charinfo.nationality
|
||||
end
|
||||
elseif itemData.name == "driver_license" then
|
||||
if Player then
|
||||
info.firstname = Player.PlayerData.charinfo.firstname
|
||||
info.lastname = Player.PlayerData.charinfo.lastname
|
||||
info.birthdate = Player.PlayerData.charinfo.birthdate
|
||||
end
|
||||
info.type = "Class C Driver License"
|
||||
elseif itemData.name == "harness" then
|
||||
info.uses = 20
|
||||
elseif itemData.name == "markedbills" then
|
||||
info.worth = math.random(5000, 10000)
|
||||
elseif itemData.name == "labkey" then
|
||||
info.lab = exports["qb-methlab"]:GenerateRandomLab()
|
||||
elseif itemData.name == "printerdocument" then
|
||||
info.url = "https://cdn.discordapp.com/attachments/870094209783308299/870104331142189126/Logo_-_Display_Picture_-_Stylized_-_Red.png"
|
||||
end
|
||||
return info
|
||||
end
|
||||
|
||||
---@param itemData table
|
||||
---@param info? table
|
||||
---@param Player? table
|
||||
function setItemInfo(itemData, info, Player)
|
||||
if not info or info == "" or (type(info) == "table" and not next(info)) then
|
||||
info = {}
|
||||
local decayableItemsData = IsDecayableItem(itemData.name)
|
||||
if itemData.name == config.jerryCan.item then
|
||||
info = config.jerryCan.metadata
|
||||
elseif decayableItemsData then
|
||||
info.type = "decayableItems"
|
||||
info.durability = os.time()
|
||||
info.durabilitySecond = decayableItemsData
|
||||
elseif itemData.type == 'weapon' then
|
||||
info = {
|
||||
serie = GetRandomItemId(),
|
||||
durabilityPercent = 100,
|
||||
ammo = 0,
|
||||
usedTotalAmmo = 0
|
||||
}
|
||||
elseif GetResourceState("tgiann-food-jobs") == "started" and exports["tgiann-food-jobs"]:items()[itemData.name] and Player then
|
||||
info = exports["tgiann-food-jobs"]:customItemMetadata(tgiCore.getSource(Player), tgiCore.getCid(Player))
|
||||
elseif config.maxUseAmount[itemData.name] then
|
||||
info.type = "maxUseAmount"
|
||||
info.maxUseAmount = config.maxUseAmount[itemData.name].amount
|
||||
elseif config.realisticArmor.active and config.realisticArmor.items[itemData.name] then
|
||||
info.durabilityPercent = config.realisticArmor.items[itemData.name].armor
|
||||
info.realisticArmor = true
|
||||
else
|
||||
info = setQbItemInfo(itemData, info, Player)
|
||||
end
|
||||
end
|
||||
return info
|
||||
end
|
||||
|
||||
for i = 1, #config.itemStash do
|
||||
local stashData = config.itemStash[i]
|
||||
tgiCore.CreateUseableItem(stashData.item, function(source, item)
|
||||
local src = source
|
||||
if openedAnySecondaryInventory(src) then
|
||||
return tgiCore.notif(src, lang.closeInventoryFirst, "error", 5000)
|
||||
end
|
||||
if not item.info.id then
|
||||
local xPlayer = tgiCore.getPlayer(src)
|
||||
item.info = { id = stashData.item .. tgiCore.getCid(xPlayer) .. GetRandomItemId() }
|
||||
UpdateItemMetadata(src, stashData.item, item.slot, item.info)
|
||||
end
|
||||
OpenInventory(src, "stash", item.info.id, {
|
||||
maxweight = stashData.maxweight,
|
||||
slots = stashData.slots,
|
||||
whitelist = stashData.whitelist
|
||||
})
|
||||
end)
|
||||
end
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,89 +0,0 @@
|
|||
webhooks = {
|
||||
use = "",
|
||||
giveOtherPlayer = "",
|
||||
buyItem = "",
|
||||
transfer = "",
|
||||
delete = "",
|
||||
adminLog = "",
|
||||
addItem = "",
|
||||
banLog = "",
|
||||
dumpsterSearch = "",
|
||||
|
||||
-- drop when die
|
||||
dropWeapon = "",
|
||||
dropMoney = "",
|
||||
dropItems = "", -- Also using throw item
|
||||
pickUpWeapon = "",
|
||||
pickUpCash = "",
|
||||
pickUpItems = "", -- Also using throw item
|
||||
}
|
||||
|
||||
-- u can edit commands logs from server/commands.lua
|
||||
|
||||
function dropMoneyLog(cash, src)
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.dropMoney, string.format(lang.logDropMoney, cash), src)
|
||||
end
|
||||
|
||||
function dropWeaponLog(val, src)
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.dropWeapon, string.format(lang.logDropWeapon, val.namecash), src)
|
||||
end
|
||||
|
||||
function dropItemsLog(dropItemList, src)
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.dropItems, string.format("%s: %s", lang.logDropItems, json.encode(dropItemList)), src)
|
||||
end
|
||||
|
||||
function pickUpWeaponLog(data, src)
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.pickUpWeapon, string.format(lang.logGetWeapon, data.weapon.name), src)
|
||||
end
|
||||
|
||||
function pickUpCashLog(data, src)
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.pickUpCash, string.format(lang.logGetMoney, data.cash), src)
|
||||
end
|
||||
|
||||
function pickUpItemsLog(data, src)
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.pickUpItems, string.format("%s: %s", lang.logGetItems, json.encode(data.dropItemList)), src)
|
||||
end
|
||||
|
||||
function openAdminShopLog(src)
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.adminLog, "Open Admin Shop", src)
|
||||
end
|
||||
|
||||
function giveOtherPlayer(inputVal, label, src, OtherPlayerSrc)
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.giveOtherPlayer, string.format(lang.logGiveItem, inputVal, label), src, OtherPlayerSrc)
|
||||
end
|
||||
|
||||
function buyItemLog(shopType, itemName, count, price, src)
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.buyItem, string.format(lang.logBoughtItem, shopType, count, GetItemLabel(itemName), price), src)
|
||||
end
|
||||
|
||||
function transferLog(itemName, amount, dragDataInvKeyName, dropDataInvKeyName, src)
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.transfer, string.format(lang.logSwapItem, itemName, amount, dragDataInvKeyName, dropDataInvKeyName), src)
|
||||
end
|
||||
|
||||
function addItemLog(src, itemName, amount, slot, invokingResource)
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.addItem, string.format(lang.logAddItem, itemName, amount, slot, invokingResource), src)
|
||||
end
|
||||
|
||||
function removeItemLog(src, itemName, amount, slot, invokingResource)
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.removeItem, string.format(lang.logRemoveItem, itemName, amount, slot, invokingResource), src)
|
||||
end
|
||||
|
||||
function deleteItemLog(data, src) --Not Using
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.delete, string.format(lang.logDeleteItem, data.invKeyName, data.itemData.amount, GetItemLabel(data.itemData.name)), src)
|
||||
end
|
||||
|
||||
function useLog(label, src)
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.use, string.format(lang.logUseItem, label), src)
|
||||
end
|
||||
|
||||
function dumpsterSearch(src, item, amount)
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.dumpsterSearch, string.format(lang.logDumpsterSearch, item, amount), src)
|
||||
end
|
||||
|
||||
function banLog(src, banLogType, msg)
|
||||
local playerName = GetPlayerName(src) or "Unknown Player Name"
|
||||
banLogType = banLogType or "Unknown Ban Type"
|
||||
msg = msg or "Unknown Reason"
|
||||
tgiCore.DebugErrorLog("^1[ANTICHEAT] ^0 [ " .. src .. " ]" .. playerName .. " Has been kicked for " .. msg .. " (" .. banLogType .. ")")
|
||||
TriggerEvent("tgiann-core:discordLog", webhooks.banLog, msg, src)
|
||||
end
|
Binary file not shown.
Binary file not shown.
|
@ -1,39 +0,0 @@
|
|||
CREATE TABLE IF NOT EXISTS `tgiann_inventory_gloveboxitems` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`plate` varchar(255) NOT NULL,
|
||||
`items` longtext DEFAULT NULL,
|
||||
`lastopen` int(11) DEFAULT NULL,
|
||||
PRIMARY KEY (`plate`),
|
||||
KEY `id` (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `tgiann_inventory_player` (
|
||||
`citizenid` varchar(50) NOT NULL,
|
||||
`lvl` int(11) DEFAULT NULL,
|
||||
`clotheinventory` longtext DEFAULT '[]',
|
||||
`realisticArmorInventory` longtext NOT NULL DEFAULT '[]',
|
||||
`inventory` longtext DEFAULT '[]',
|
||||
`fastSlots` longtext DEFAULT '[]',
|
||||
UNIQUE KEY `citizenid` (`citizenid`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `tgiann_inventory_stashitems` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`stash` varchar(255) NOT NULL,
|
||||
`items` longtext DEFAULT NULL,
|
||||
`lastopen` int(11) DEFAULT NULL,
|
||||
`player` longtext DEFAULT NULL,
|
||||
`family` int(11) DEFAULT NULL,
|
||||
`password` longtext DEFAULT NULL,
|
||||
PRIMARY KEY (`stash`),
|
||||
KEY `id` (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `tgiann_inventory_trunkitems` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`plate` varchar(255) NOT NULL,
|
||||
`items` longtext DEFAULT NULL,
|
||||
`lastopen` int(11) DEFAULT NULL,
|
||||
PRIMARY KEY (`plate`),
|
||||
KEY `id` (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue