mirror of
https://github.com/jimathy/jim-consumables.git
synced 2026-08-17 06:26:03 +01:00
Pre Alpha upload
This commit is contained in:
331
client/client.lua
Normal file
331
client/client.lua
Normal file
@@ -0,0 +1,331 @@
|
||||
local QBCore = exports['qb-core']:GetCoreObject()
|
||||
|
||||
PlayerJob = {}
|
||||
local onDuty = false
|
||||
local alcoholCount = 0
|
||||
local drugCount = 0
|
||||
|
||||
local function loadAnimDict(dict) while (not HasAnimDictLoaded(dict)) do RequestAnimDict(dict) Wait(5) end end
|
||||
|
||||
function AlienEffect()
|
||||
StartScreenEffect("DrugsMichaelAliensFightIn", 3.0, 0)
|
||||
Wait(math.random(5000, 8000))
|
||||
local ped = PlayerPedId()
|
||||
RequestAnimSet("MOVE_M@DRUNK@VERYDRUNK")
|
||||
while not HasAnimSetLoaded("MOVE_M@DRUNK@VERYDRUNK") do
|
||||
Citizen.Wait(0)
|
||||
end
|
||||
SetPedCanRagdoll( ped, true )
|
||||
ShakeGameplayCam('DRUNK_SHAKE', 2.80)
|
||||
SetTimecycleModifier("Drunk")
|
||||
SetPedMovementClipset(ped, "MOVE_M@DRUNK@VERYDRUNK", true)
|
||||
SetPedMotionBlur(ped, true)
|
||||
SetPedIsDrunk(ped, true)
|
||||
Wait(1500)
|
||||
SetPedToRagdoll(ped, 5000, 1000, 1, false, false, false )
|
||||
Wait(13500)
|
||||
SetPedToRagdoll(ped, 5000, 1000, 1, false, false, false )
|
||||
Wait(120500)
|
||||
ClearTimecycleModifier()
|
||||
ResetScenarioTypesEnabled()
|
||||
ResetPedMovementClipset(ped, 0)
|
||||
SetPedIsDrunk(ped, false)
|
||||
SetPedMotionBlur(ped, false)
|
||||
AnimpostfxStopAll()
|
||||
ShakeGameplayCam('DRUNK_SHAKE', 0.0)
|
||||
StartScreenEffect("DrugsMichaelAliensFight", 3.0, 0)
|
||||
Wait(math.random(45000, 60000))
|
||||
StartScreenEffect("DrugsMichaelAliensFightOut", 3.0, 0)
|
||||
StopScreenEffect("DrugsMichaelAliensFightIn")
|
||||
StopScreenEffect("DrugsMichaelAliensFight")
|
||||
StopScreenEffect("DrugsMichaelAliensFightOut")
|
||||
end
|
||||
|
||||
--[[function HealDrug()
|
||||
if not healing then
|
||||
healing = true
|
||||
else
|
||||
return
|
||||
end
|
||||
|
||||
local count = 9
|
||||
while count > 0 do
|
||||
Wait(1000)
|
||||
count = count - 1
|
||||
SetEntityHealth(PlayerPedId(), GetEntityHealth(PlayerPedId()) + 6)
|
||||
end
|
||||
healing = false
|
||||
end
|
||||
|
||||
function MethBagEffect()
|
||||
local startStamina = 8
|
||||
--TrevorEffect()
|
||||
SetRunSprintMultiplierForPlayer(PlayerId(), 1.49)
|
||||
while startStamina > 0 do
|
||||
Wait(1000)
|
||||
if math.random(5, 100) < 10 then
|
||||
RestorePlayerStamina(PlayerId(), 1.0)
|
||||
end
|
||||
startStamina = startStamina - 1
|
||||
if math.random(5, 100) < 51 then
|
||||
--TrevorEffect()
|
||||
end
|
||||
end
|
||||
startStamina = 0
|
||||
SetRunSprintMultiplierForPlayer(PlayerId(), 1.0)
|
||||
end
|
||||
|
||||
function TrevorEffect()
|
||||
StartScreenEffect("DrugsTrevorClownsFightIn", 3.0, 0)
|
||||
Wait(3000)
|
||||
StartScreenEffect("DrugsTrevorClownsFight", 3.0, 0)
|
||||
Wait(3000)
|
||||
StartScreenEffect("DrugsTrevorClownsFightOut", 3.0, 0)
|
||||
StopScreenEffect("DrugsTrevorClownsFight")
|
||||
StopScreenEffect("DrugsTrevorClownsFightIn")
|
||||
StopScreenEffect("DrugsTrevorClownsFightOut")
|
||||
end
|
||||
|
||||
function EcstasyEffect()
|
||||
local startStamina = 30
|
||||
SetFlash(0, 0, 500, 7000, 500)
|
||||
while startStamina > 0 do
|
||||
Wait(1000)
|
||||
startStamina = startStamina - 1
|
||||
RestorePlayerStamina(PlayerId(), 1.0)
|
||||
if math.random(1, 100) < 51 then
|
||||
SetFlash(0, 0, 500, 7000, 500)
|
||||
ShakeGameplayCam('SMALL_EXPLOSION_SHAKE', 0.08)
|
||||
end
|
||||
end
|
||||
if IsPedRunning(PlayerPedId()) then
|
||||
SetPedToRagdoll(PlayerPedId(), math.random(1000, 3000), math.random(1000, 3000), 3, 0, 0, 0)
|
||||
end
|
||||
|
||||
startStamina = 0
|
||||
end
|
||||
|
||||
function JointEffect()
|
||||
-- if not onWeed then
|
||||
-- local RelieveOdd = math.random(35, 45)
|
||||
-- onWeed = true
|
||||
-- local weedTime = Config.JointEffectTime
|
||||
-- CreateThread(function()
|
||||
-- while onWeed do
|
||||
-- SetPlayerHealthRechargeMultiplier(PlayerId(), 1.8)
|
||||
-- Wait(1000)
|
||||
-- weedTime = weedTime - 1
|
||||
-- if weedTime == RelieveOdd then
|
||||
-- TriggerServerEvent('hud:Server:RelieveStress', math.random(14, 18))
|
||||
-- end
|
||||
-- if weedTime <= 0 then
|
||||
-- onWeed = false
|
||||
-- end
|
||||
-- end
|
||||
-- end)
|
||||
-- end
|
||||
end
|
||||
|
||||
function CrackBaggyEffect()
|
||||
local startStamina = 8
|
||||
local ped = PlayerPedId()
|
||||
--AlienEffect()
|
||||
SetRunSprintMultiplierForPlayer(PlayerId(), 1.3)
|
||||
while startStamina > 0 do
|
||||
Wait(1000)
|
||||
if math.random(1, 100) < 10 then
|
||||
RestorePlayerStamina(PlayerId(), 1.0)
|
||||
end
|
||||
startStamina = startStamina - 1
|
||||
if math.random(1, 100) < 60 and IsPedRunning(ped) then
|
||||
SetPedToRagdoll(ped, math.random(1000, 2000), math.random(1000, 2000), 3, 0, 0, 0)
|
||||
end
|
||||
if math.random(1, 100) < 51 then
|
||||
--AlienEffect()
|
||||
end
|
||||
end
|
||||
if IsPedRunning(ped) then
|
||||
SetPedToRagdoll(ped, math.random(1000, 3000), math.random(1000, 3000), 3, 0, 0, 0)
|
||||
end
|
||||
|
||||
startStamina = 0
|
||||
SetRunSprintMultiplierForPlayer(PlayerId(), 1.0)
|
||||
end
|
||||
|
||||
function CokeBaggyEffect()
|
||||
local startStamina = 20
|
||||
local ped = PlayerPedId()
|
||||
--AlienEffect()
|
||||
SetRunSprintMultiplierForPlayer(PlayerId(), 1.1)
|
||||
while startStamina > 0 do
|
||||
Wait(1000)
|
||||
if math.random(1, 100) < 20 then
|
||||
RestorePlayerStamina(PlayerId(), 1.0)
|
||||
end
|
||||
startStamina = startStamina - 1
|
||||
if math.random(1, 100) < 10 and IsPedRunning(ped) then
|
||||
SetPedToRagdoll(ped, math.random(1000, 3000), math.random(1000, 3000), 3, 0, 0, 0)
|
||||
end
|
||||
if math.random(1, 300) < 10 then
|
||||
--AlienEffect()
|
||||
Wait(math.random(3000, 6000))
|
||||
end
|
||||
end
|
||||
if IsPedRunning(ped) then
|
||||
SetPedToRagdoll(ped, math.random(1000, 3000), math.random(1000, 3000), 3, 0, 0, 0)
|
||||
end
|
||||
|
||||
startStamina = 0
|
||||
SetRunSprintMultiplierForPlayer(PlayerId(), 1.0)
|
||||
end]]
|
||||
|
||||
|
||||
local consuming = false
|
||||
local cancelled = false
|
||||
|
||||
RegisterNetEvent('jim-consumables:Consume', function(itemName, type)
|
||||
local Player = PlayerPedId()
|
||||
local emote = Config.Emotes[Config.Consumables[itemName].emote]
|
||||
local animDict = tostring(emote[1])
|
||||
local anim = tostring(emote[2])
|
||||
local model, bone, drugeffect = nil
|
||||
local P1, P2, P3, P4, P5, P6 = table.unpack({0.0, 0.0, 0.0, 0.0, 0.0, 0.0})
|
||||
if emote.AnimationOptions.Prop then
|
||||
model = tostring(emote.AnimationOptions.Prop)
|
||||
bone = GetPedBoneIndex(PlayerPedId(), emote.AnimationOptions.PropBone)
|
||||
P1, P2, P3, P4, P5, P6 = table.unpack(emote.AnimationOptions.PropPlacement)
|
||||
end
|
||||
local type = Config.Consumables[itemName].type
|
||||
|
||||
if type == "drink" or type == "alcohol" then string = "Drinking " end
|
||||
if type == "food" then string = "Eating " end
|
||||
if type == "drug" then string = "Using " end
|
||||
|
||||
if consuming then
|
||||
cancelled = true
|
||||
TriggerEvent("QBCore:Notify", "Stopped "..string, "error")
|
||||
consuming = not consuming
|
||||
return
|
||||
end
|
||||
|
||||
if emote.AnimationOptions then
|
||||
if emote.AnimationOptions.EmoteLoop then MovementType = 1
|
||||
if emote.AnimationOptions.EmoteMoving then MovementType = 51
|
||||
end
|
||||
elseif emote.AnimationOptions.EmoteMoving then MovementType = 51
|
||||
elseif emote.AnimationOptions.EmoteMoving == false then MovementType = 0
|
||||
elseif emote.AnimationOptions.EmoteStuck then MovementType = 50
|
||||
end
|
||||
|
||||
else MovementType = 0 end
|
||||
InVehicle = IsPedInAnyVehicle(PlayerPedId(), true)
|
||||
if InVehicle == 1 then MovementType = 51 end
|
||||
|
||||
loadAnimDict(animDict)
|
||||
|
||||
TaskPlayAnim(Player, animDict, anim, 1.0, 1.0, -1, MovementType, 0, 0, 0, 0)
|
||||
|
||||
--Prop Spawning
|
||||
local attachProp = CreateObject(GetHashKey(model), 1.0, 1.0, 1.0, 1, 1, 0)
|
||||
AttachEntityToEntity(attachProp, PlayerPedId(), bone, P1, P2, P3, P4, P5, P6, true, true, false, true, 1, true)
|
||||
|
||||
local time = math.random(1000, 2000)
|
||||
|
||||
TriggerEvent("QBCore:Notify", string..QBCore.Shared.Items[itemName].label.."..", "success", (time + 1000))
|
||||
|
||||
consuming = true
|
||||
while consuming do
|
||||
if time <= 0 then consuming = false print("complete") end
|
||||
if IsControlJustPressed(0, 21) then
|
||||
consuming = false
|
||||
cancelled = true
|
||||
end
|
||||
Wait(10)
|
||||
time = time - 10
|
||||
end
|
||||
|
||||
StopEntityAnim(Player, anim, animDict, 1.0)
|
||||
DeleteEntity(attachProp)
|
||||
|
||||
if not cancelled then
|
||||
TriggerEvent("inventory:client:ItemBox", QBCore.Shared.Items[itemName], "remove", 1)
|
||||
TriggerServerEvent("QBCore:Server:RemoveItem", itemName, 1)
|
||||
|
||||
if QBCore.Shared.Items[itemName].thirst then
|
||||
TriggerServerEvent("QBCore:Server:SetMetaData", "thirst", QBCore.Functions.GetPlayerData().metadata["thirst"] + QBCore.Shared.Items[itemName].thirst) end
|
||||
if QBCore.Shared.Items[itemName].hunger then
|
||||
TriggerServerEvent("QBCore:Server:SetMetaData", "hunger", QBCore.Functions.GetPlayerData().metadata["hunger"] + QBCore.Shared.Items[itemName].hunger) end
|
||||
|
||||
if not QBCore.Shared.Items[itemName].thirst and not QBCore.Shared.Items[itemName].hunger then
|
||||
if type == "food" then TriggerServerEvent("QBCore:Server:SetMetaData", "hunger", QBCore.Functions.GetPlayerData().metadata["hunger"] + math.random(10,20)) end
|
||||
if type == "drink" then TriggerServerEvent("QBCore:Server:SetMetaData", "thirst", QBCore.Functions.GetPlayerData().metadata["thirst"] + math.random(10,20)) end
|
||||
end
|
||||
|
||||
if stress then TriggerServerEvent('hud:server:RelieveStress', math.random(2, 4)) end
|
||||
|
||||
if type == "alcohol" then
|
||||
alcoholCount = alcoholCount + 1
|
||||
if alcoholCount > 1 and alcoholCount < 4 then
|
||||
TriggerEvent("evidence:client:SetStatus", "alcohol", 200)
|
||||
elseif alcoholCount >= 4 then
|
||||
TriggerEvent("evidence:client:SetStatus", "heavyalcohol", 200)
|
||||
AlienEffect()
|
||||
end
|
||||
end
|
||||
|
||||
--[[drugeffect = Config.Consumables[itemName].drugeffect
|
||||
|
||||
if drugeffect ~= nil then
|
||||
if drugeffect.canOD then
|
||||
drugCount = drugCount + 2
|
||||
if drugCount >= 4 then
|
||||
SetEntityHealth(PlayerPedId(), GetEntityHealth(PlayerPedId()) - math.random(20,40))
|
||||
if drugCount >= 6 then
|
||||
AlienEffect()
|
||||
end
|
||||
end
|
||||
end
|
||||
if drugeffect.armour then
|
||||
end
|
||||
if drugeffect.health then
|
||||
HealDrug()
|
||||
end
|
||||
if drugeffect.stamina then
|
||||
MethBagEffect()
|
||||
if drugCount >= 4 then
|
||||
TrevorEffect()
|
||||
end
|
||||
end
|
||||
if drugeffect.widepupils then
|
||||
TriggerEvent("evidence:client:SetStatus", "widepupils", 200)
|
||||
EcstasyEffect()
|
||||
end
|
||||
end]]
|
||||
|
||||
end
|
||||
cancelled = false
|
||||
consuming = false
|
||||
end)
|
||||
|
||||
CreateThread(function()
|
||||
while true do
|
||||
Wait(10)
|
||||
if alcoholCount > 0 then
|
||||
Wait(1000 * 60 * 15)
|
||||
alcoholCount = alcoholCount - 1
|
||||
else
|
||||
Wait(2000)
|
||||
end
|
||||
end
|
||||
end)
|
||||
--[[CreateThread(function()
|
||||
while true do
|
||||
Wait(10)
|
||||
if drugCount > 0 then
|
||||
Wait(1000 * 60 * 15)
|
||||
drugCount = drugCount - 1
|
||||
else
|
||||
Wait(2000)
|
||||
end
|
||||
end
|
||||
end)]]
|
||||
347
config.lua
Normal file
347
config.lua
Normal file
@@ -0,0 +1,347 @@
|
||||
print("Jim-Consumables v1.0 - Consumables Script by Jimathy")
|
||||
|
||||
-- If you need support I now have a discord available, it helps me keep track of issues and give better support.
|
||||
|
||||
-- https://discord.gg/xKgQZ6wZvS
|
||||
|
||||
Config = {}
|
||||
|
||||
Config.Debug = false -- false to remove green boxes
|
||||
|
||||
Config.Consumables = {
|
||||
--Normal Drinks
|
||||
["cranberry"] = { emote = "wine", stress = true, type = "drink", },
|
||||
["pinejuice"] = { emote = "coffee", stress = true, type = "drink", },
|
||||
|
||||
-- Default QB food item override
|
||||
["vodka"] = { emote = "vodkab", stress = true, type = "alcohol", },
|
||||
["beer"] = { emote = "beer", stress = true, type = "alcohol", },
|
||||
["whiskey"] = { emote = "whiskey", stress = true, type = "alcohol", },
|
||||
|
||||
["sandwich"] = { emote = "sandwich", stress = true, type = "food", },
|
||||
["twerks_candy"] = { emote = "egobar", stress = true, type = "food", },
|
||||
["snikkel_candy"] = { emote = "egobar", stress = true, type = "food", },
|
||||
["tosti"] = { emote = "sandwich", stress = true, type = "food", },
|
||||
|
||||
["coffee"] = { emote = "coffee", stress = true, type = "drink", },
|
||||
["water_bottle"] = { emote = "drink", stress = true, type = "drink", },
|
||||
["kurkakola"] = { emote = "ecola", stress = true, type = "drink", },
|
||||
|
||||
--[[ Not working yet
|
||||
--Drugs
|
||||
["cokebaggy"] = { emote = "coke", stress = true, type = "drug", effect = { armor = false, health = false, stamina = false, widepupils = false, canOD = true, screen = 1 } },
|
||||
["crackbaggy"] = { emote = "coke", stress = true, type = "drug", effect = { armor = false, health = false, stamina = false, widepupils = false, canOD = true, screen = 1 } },
|
||||
["xtcbaggy"] = { emote = "oxy", stress = true, type = "drug", effect = { armor = false, health = false, stamina = true, widepupils = false, canOD = true, screen = 1 } },
|
||||
["oxy"] = { emote = "oxy", stress = true, type = "drug", effect = { armor = false, health = true, stamina = false, widepupils = false, canOD = false, screen = 1 } },
|
||||
["meth"] = { emote = "coke", stress = true, type = "drug", effect = { armor = false, health = false, stamina = true, widepupils = false, canOD = true, screen = 1 } },
|
||||
["joint"] = { emote = "joint", stress = true, type = "drug", effect = { armor = true, health = false, stamina = false, widepupils = false, canOD = true, screen = 1 } },
|
||||
]]
|
||||
}
|
||||
|
||||
Config.Emotes = {
|
||||
["whiskeyb"] = {"anim@amb@nightclub@mini@drinking@drinking_shots@ped_b@normal@", "glass_hold", "Whiskey Bottle", AnimationOptions =
|
||||
{ Prop = "prop_cs_whiskey_bottle", PropBone = 60309, PropPlacement = {0.08, 0.0, 0.05, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true }},
|
||||
["rumb"] = {"anim@amb@nightclub@mini@drinking@drinking_shots@ped_b@normal@", "glass_hold", "Rum Bottle", AnimationOptions =
|
||||
{ Prop = "prop_rum_bottle", PropBone = 60309, PropPlacement = {-0.04, -0.18, 0.12, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true }},
|
||||
["icream"] = {"anim@amb@nightclub@mini@drinking@drinking_shots@ped_b@normal@", "glass_hold", "Irish Cream Bottle", AnimationOptions =
|
||||
{ Prop = "prop_bottle_brandy", PropBone = 60309, PropPlacement = {-0.04, -0.18, 0.12, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true }},
|
||||
["ginb"] = {"anim@amb@nightclub@mini@drinking@drinking_shots@ped_b@normal@", "glass_hold", "Gin Bottle", AnimationOptions =
|
||||
{ Prop = "prop_tequila_bottle", PropBone = 60309, PropPlacement = {-0.04, -0.18, 0.12, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true }},
|
||||
["vodkab"] = {"anim@amb@nightclub@mini@drinking@drinking_shots@ped_b@normal@", "glass_hold", "Vodka Bottle", AnimationOptions =
|
||||
{ Prop = 'prop_vodka_bottle', PropBone = 60309, PropPlacement = {-0.04, -0.18, 0.12, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true }},
|
||||
["crisps"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Chrisps", AnimationOptions =
|
||||
{ Prop = 'v_ret_ml_chips2', PropBone = 28422, PropPlacement = {0.01, -0.05, -0.1, 0.0, 0.0, 90.0},
|
||||
EmoteLoop = true, EmoteMoving = true, }},
|
||||
["beer1"] = {"mp_player_intdrink", "loop_bottle", "Dusche", AnimationOptions =
|
||||
{ Prop = "prop_beerdusche", PropBone = 18905, PropPlacement = {0.04, -0.14, 0.10, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
["beer2"] = {"mp_player_intdrink", "loop_bottle", "Logger", AnimationOptions =
|
||||
{ Prop = "prop_beer_logopen", PropBone = 18905, PropPlacement = {0.03, -0.18, 0.10, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
["beer3"] = {"mp_player_intdrink", "loop_bottle", "AM Beer", AnimationOptions =
|
||||
{ Prop = "prop_beer_amopen", PropBone = 18905, PropPlacement = {0.03, -0.18, 0.10, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
["beer4"] = {"mp_player_intdrink", "loop_bottle", "Pisswasser1", AnimationOptions =
|
||||
{ Prop = "prop_beer_pissh", PropBone = 18905, PropPlacement = {0.03, -0.18, 0.10, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
["beer5"] = {"mp_player_intdrink", "loop_bottle", "Pisswasser2", AnimationOptions =
|
||||
{ Prop = "prop_amb_beer_bottle", PropBone = 18905, PropPlacement = {0.12, 0.008, 0.03, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
["beer6"] = {"mp_player_intdrink", "loop_bottle", "Pisswasser3", AnimationOptions =
|
||||
{ Prop = "prop_cs_beer_bot_02", PropBone = 18905, PropPlacement = {0.12, 0.008, 0.03, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
["ecola"] = {"mp_player_intdrink", "loop_bottle", "E-cola", AnimationOptions =
|
||||
{ Prop = "prop_ecola_can", PropBone = 18905, PropPlacement = {0.12, 0.008, 0.03, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
["sprunk"] = {"mp_player_intdrink", "loop_bottle", "Sprunk", AnimationOptions =
|
||||
{ Prop = "v_res_tt_can03", PropBone = 18905, PropPlacement = {0.12, 0.008, 0.03, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
|
||||
--Jim-BeanMachine
|
||||
["bmcoffee1"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Coffee2", AnimationOptions =
|
||||
{ Prop = 'prop_fib_coffee', PropBone = 28422, PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
|
||||
EmoteLoop = true, EmoteMoving = true, }},
|
||||
|
||||
["bmcoffee2"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Coffee3", AnimationOptions =
|
||||
{ Prop = 'ng_proc_coffee_01a', PropBone = 28422, PropPlacement = {0.0, 0.0, -0.06, 0.0, 0.0, 0.0},
|
||||
EmoteLoop = true, EmoteMoving = true, }},
|
||||
|
||||
["bmcoffee3"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Coffee3", AnimationOptions =
|
||||
{ Prop = 'v_club_vu_coffeecup', PropBone = 28422, PropPlacement = {0.0, 0.0, -0.06, 0.0, 0.0, 0.0},
|
||||
EmoteLoop = true, EmoteMoving = true, }},
|
||||
|
||||
--Jim-PizzaThis
|
||||
["redwine"] = {"mp_player_intdrink", "loop_bottle", "Red Wine Bottle", AnimationOptions =
|
||||
{ Prop = "prop_wine_rose", PropBone = 18905, PropPlacement = {0.00, -0.26, 0.10, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
["whitewine"] = {"mp_player_intdrink", "loop_bottle", "White Wine Bottle", AnimationOptions =
|
||||
{ Prop = "prop_wine_white", PropBone = 18905, PropPlacement = {0.00, -0.26, 0.10, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
["pizza"] = {"mp_player_inteat@burger", "mp_player_int_eat_burger_fp", "Pizza", AnimationOptions =
|
||||
{ Prop = "v_res_tt_pizzaplate", PropBone = 18905, PropPlacement = {0.20, 0.038, 0.051, 15.0, 155.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
["bowl"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "bowl", AnimationOptions =
|
||||
{ Prop = "h4_prop_h4_coke_plasticbowl_01", PropBone = 28422, PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
["pineapple"] = {"mp_player_inteat@burger", "mp_player_int_eat_burger_fp", "Pizza", AnimationOptions =
|
||||
{ Prop = "prop_pineapple", PropBone = 18905, PropPlacement = {0.10, 0.038, 0.03, 15.0, 50.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
["foodbowl"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "bowl", AnimationOptions =
|
||||
{ Prop = "prop_cs_bowl_01", PropBone = 28422, PropPlacement = {0.0, 0.0, 0.050, 0.0, 0.0, 0.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
|
||||
--Jim-BurgerShot
|
||||
["milk"] = {"mp_player_intdrink", "loop_bottle", "Milk", AnimationOptions =
|
||||
{ Prop = "v_res_tt_milk", PropBone = 18905, PropPlacement = {0.10, 0.008, 0.07, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
["bscoke"] = {"mp_player_intdrink", "loop_bottle", "BS Coke", AnimationOptions =
|
||||
{ Prop = "prop_food_bs_juice01", PropBone = 18905, PropPlacement = {0.04, -0.10, 0.10, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
["bscoffee"] = {"mp_player_intdrink", "loop_bottle", "BS Coffee", AnimationOptions =
|
||||
{ Prop = "prop_food_bs_coffee", PropBone = 18905, PropPlacement = {0.08, -0.10, 0.10, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
["glass"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Tall Glass", AnimationOptions =
|
||||
{ Prop = 'prop_wheat_grass_glass', PropBone = 28422, PropPlacement = {0.0, 0.0, -0.1, 0.0, 0.0, 0.0},
|
||||
EmoteLoop = true, EmoteMoving = true, }},
|
||||
|
||||
["torpedo"] = {"mp_player_inteat@burger", "mp_player_int_eat_burger_fp", "Torpedo", AnimationOptions =
|
||||
{ Prop = "prop_food_bs_burger2", PropBone = 18905, PropPlacement = {0.10, -0.07, 0.091, 15.0, 135.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
["bsfries"] = {"mp_player_inteat@burger", "mp_player_int_eat_burger_fp", "Fries", AnimationOptions =
|
||||
{ Prop = "prop_food_bs_chips", PropBone = 18905, PropPlacement = {0.09, -0.06, 0.05, 300.0, 150.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
["donut2"] = {"mp_player_inteat@burger", "mp_player_int_eat_burger", "Donut2", AnimationOptions =
|
||||
{ Prop = 'prop_donut_02', PropBone = 18905, PropPlacement = {0.13, 0.05, 0.02, -50.0, 100.0, 270.0},
|
||||
EmoteMoving = true, EmoteLoop = true, }},
|
||||
|
||||
--Jim-CatCafe
|
||||
["boba1"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Boba 1", AnimationOptions =
|
||||
{ Prop = 'denis3d_catcafe_boobaA', PropBone = 28422, PropPlacement = {0.0, 0.0, -0.1, 0.0, 0.0, 0.0},
|
||||
EmoteLoop = true, EmoteMoving = true, }},
|
||||
["boba2"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Boba 2", AnimationOptions =
|
||||
{ Prop = 'denis3d_catcafe_boobaB', PropBone = 28422, PropPlacement = {0.0, 0.0, -0.1, 0.0, 0.0, 0.0},
|
||||
EmoteLoop = true, EmoteMoving = true, }},
|
||||
["boba3"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Boba 3", AnimationOptions =
|
||||
{ Prop = 'denis3d_catcafe_boobaC', PropBone = 28422, PropPlacement = {0.0, 0.0, -0.1, 0.0, 0.0, 0.0},
|
||||
EmoteLoop = true, EmoteMoving = true, }},
|
||||
["boba4"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Boba 4", AnimationOptions =
|
||||
{ Prop = 'denis3d_catcafe_boobaD', PropBone = 28422, PropPlacement = {0.0, 0.0, -0.1, 0.0, 0.0, 0.0},
|
||||
EmoteLoop = true, EmoteMoving = true, }},
|
||||
["mochi"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Mochi", AnimationOptions =
|
||||
{ Prop = 'denis3d_catcafe_plateD', PropBone = 28422, PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
|
||||
EmoteLoop = true, EmoteMoving = true, }},
|
||||
|
||||
--Jim-Tequilala
|
||||
["whiskeyb"] = {"anim@amb@nightclub@mini@drinking@drinking_shots@ped_b@normal@", "glass_hold", "Whiskey Bottle", AnimationOptions =
|
||||
{ Prop = "prop_cs_whiskey_bottle", PropBone = 60309, PropPlacement = {0.08, 0.0, 0.05, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true }},
|
||||
["rumb"] = {"anim@amb@nightclub@mini@drinking@drinking_shots@ped_b@normal@", "glass_hold", "Rum Bottle", AnimationOptions =
|
||||
{ Prop = "prop_rum_bottle", PropBone = 60309, PropPlacement = {-0.04, -0.18, 0.12, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true }},
|
||||
["icream"] = {"anim@amb@nightclub@mini@drinking@drinking_shots@ped_b@normal@", "glass_hold", "Irish Cream Bottle", AnimationOptions =
|
||||
{ Prop = "prop_bottle_brandy", PropBone = 60309, PropPlacement = {-0.04, -0.18, 0.12, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true }},
|
||||
["ginb"] = {"anim@amb@nightclub@mini@drinking@drinking_shots@ped_b@normal@", "glass_hold", "Gin Bottle", AnimationOptions =
|
||||
{ Prop = "prop_tequila_bottle", PropBone = 60309, PropPlacement = {-0.04, -0.18, 0.12, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true }},
|
||||
["vodkab"] = {"anim@amb@nightclub@mini@drinking@drinking_shots@ped_b@normal@", "glass_hold", "Vodka Bottle", AnimationOptions =
|
||||
{ Prop = 'prop_vodka_bottle', PropBone = 60309, PropPlacement = {-0.04, -0.18, 0.12, 240.0, -60.0},
|
||||
EmoteMoving = true, EmoteLoop = true }},
|
||||
|
||||
["browncup"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Brown Cup", AnimationOptions =
|
||||
{ Prop = 'v_serv_bs_mug', PropBone = 28422, PropPlacement = {0.03, -0.02, 0.0, 0.0, 0.0, 0.0},
|
||||
EmoteLoop = true, EmoteMoving = true, }},
|
||||
|
||||
["crisps"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Crisps", AnimationOptions =
|
||||
{ Prop = 'v_ret_ml_chips2', PropBone = 28422, PropPlacement = {0.01, -0.05, -0.1, 0.0, 0.0, 90.0},
|
||||
EmoteLoop = true, EmoteMoving = true, }},
|
||||
["smoke2"] = {"amb@world_human_aa_smoke@male@idle_a", "idle_c", "Smoke 2", AnimationOptions =
|
||||
{ Prop = 'prop_cs_ciggy_01', PropBone = 28422, PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
|
||||
EmoteLoop = true, EmoteMoving = true, }},
|
||||
["smoke3"] = {"amb@world_human_aa_smoke@male@idle_a", "idle_b", "Smoke 3", AnimationOptions =
|
||||
{ Prop = 'prop_cs_ciggy_01', PropBone = 28422, PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
|
||||
EmoteLoop = true, EmoteMoving = true, }},
|
||||
["smoke4"] = {"amb@world_human_smoking@female@idle_a", "idle_b", "Smoke 4", AnimationOptions =
|
||||
{
|
||||
Prop = 'prop_cs_ciggy_01',
|
||||
PropBone = 28422,
|
||||
PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
|
||||
EmoteLoop = true,
|
||||
EmoteMoving = true,
|
||||
}},
|
||||
["bong"] = {"anim@safehouse@bong", "bong_stage3", "Bong", AnimationOptions =
|
||||
{
|
||||
Prop = 'hei_heist_sh_bong_01',
|
||||
PropBone = 18905,
|
||||
PropPlacement = {0.10,-0.25,0.0,95.0,190.0,180.0},
|
||||
}},
|
||||
["coffee"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Coffee", AnimationOptions =
|
||||
{
|
||||
Prop = 'p_amb_coffeecup_01',
|
||||
PropBone = 28422,
|
||||
PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
|
||||
EmoteLoop = true,
|
||||
EmoteMoving = true,
|
||||
}},
|
||||
["whiskey"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Whiskey", AnimationOptions =
|
||||
{
|
||||
Prop = 'prop_drink_whisky',
|
||||
PropBone = 28422,
|
||||
PropPlacement = {0.01, -0.01, -0.06, 0.0, 0.0, 0.0},
|
||||
EmoteLoop = true,
|
||||
EmoteMoving = true,
|
||||
}},
|
||||
["beer"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Beer", AnimationOptions =
|
||||
{
|
||||
Prop = 'prop_amb_beer_bottle',
|
||||
PropBone = 28422,
|
||||
PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
|
||||
EmoteLoop = true,
|
||||
EmoteMoving = true,
|
||||
}},
|
||||
["cup"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Cup", AnimationOptions =
|
||||
{
|
||||
Prop = 'prop_plastic_cup_02',
|
||||
PropBone = 28422,
|
||||
PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
|
||||
EmoteLoop = true,
|
||||
EmoteMoving = true,
|
||||
}},
|
||||
["donut"] = {"mp_player_inteat@burger", "mp_player_int_eat_burger", "Donut", AnimationOptions =
|
||||
{
|
||||
Prop = 'prop_amb_donut',
|
||||
PropBone = 18905,
|
||||
PropPlacement = {0.13, 0.05, 0.02, -50.0, 16.0, 60.0},
|
||||
EmoteMoving = true,
|
||||
}},
|
||||
["burger"] = {"mp_player_inteat@burger", "mp_player_int_eat_burger", "Burger", AnimationOptions =
|
||||
{
|
||||
Prop = 'prop_cs_burger_01',
|
||||
PropBone = 18905,
|
||||
PropPlacement = {0.13, 0.05, 0.02, -50.0, 16.0, 60.0},
|
||||
EmoteMoving = true,
|
||||
}},
|
||||
["sandwich"] = {"mp_player_inteat@burger", "mp_player_int_eat_burger", "Sandwich", AnimationOptions =
|
||||
{
|
||||
Prop = 'prop_sandwich_01',
|
||||
PropBone = 18905,
|
||||
PropPlacement = {0.13, 0.05, 0.02, -50.0, 16.0, 60.0},
|
||||
EmoteMoving = true,
|
||||
}},
|
||||
["soda"] = {"amb@world_human_drinking@coffee@male@idle_a", "idle_c", "Soda", AnimationOptions =
|
||||
{
|
||||
Prop = 'prop_ecola_can',
|
||||
PropBone = 28422,
|
||||
PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 130.0},
|
||||
EmoteLoop = true,
|
||||
EmoteMoving = true,
|
||||
}},
|
||||
["egobar"] = {"mp_player_inteat@burger", "mp_player_int_eat_burger", "Ego Bar", AnimationOptions =
|
||||
{
|
||||
Prop = 'prop_choc_ego',
|
||||
PropBone = 60309,
|
||||
PropPlacement = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0},
|
||||
EmoteMoving = true,
|
||||
}},
|
||||
["wine"] = {"anim@heists@humane_labs@finale@keycards", "ped_a_enter_loop", "Wine", AnimationOptions =
|
||||
{
|
||||
Prop = 'prop_drink_redwine',
|
||||
PropBone = 18905,
|
||||
PropPlacement = {0.10, -0.03, 0.03, -100.0, 0.0, -10.0},
|
||||
EmoteMoving = true,
|
||||
EmoteLoop = true
|
||||
}},
|
||||
["flute"] = {"anim@heists@humane_labs@finale@keycards", "ped_a_enter_loop", "Flute", AnimationOptions =
|
||||
{
|
||||
Prop = 'prop_champ_flute',
|
||||
PropBone = 18905,
|
||||
PropPlacement = {0.10, -0.03, 0.03, -100.0, 0.0, -10.0},
|
||||
EmoteMoving = true,
|
||||
EmoteLoop = true
|
||||
}},
|
||||
["champagne"] = {"anim@heists@humane_labs@finale@keycards", "ped_a_enter_loop", "Champagne", AnimationOptions =
|
||||
{
|
||||
Prop = 'prop_drink_champ',
|
||||
PropBone = 18905,
|
||||
PropPlacement = {0.10, -0.03, 0.03, -100.0, 0.0, -10.0},
|
||||
EmoteMoving = true,
|
||||
EmoteLoop = true
|
||||
}},
|
||||
["cigar"] = {"amb@world_human_smoking@male@male_a@enter", "enter", "Cigar", AnimationOptions =
|
||||
{
|
||||
Prop = 'prop_cigar_02',
|
||||
PropBone = 47419,
|
||||
PropPlacement = {0.010, 0.0, 0.0, 50.0, 0.0, -80.0},
|
||||
EmoteMoving = true,
|
||||
EmoteDuration = 2600
|
||||
}},
|
||||
["cigar2"] = {"amb@world_human_smoking@male@male_a@enter", "enter", "Cigar 2", AnimationOptions =
|
||||
{
|
||||
Prop = 'prop_cigar_01',
|
||||
PropBone = 47419,
|
||||
PropPlacement = {0.010, 0.0, 0.0, 50.0, 0.0, -80.0},
|
||||
EmoteMoving = true,
|
||||
EmoteDuration = 2600
|
||||
}},
|
||||
["joint"] = {"amb@world_human_smoking@male@male_a@enter", "enter", "Joint", AnimationOptions =
|
||||
{
|
||||
Prop = 'p_cs_joint_02',
|
||||
PropBone = 47419,
|
||||
PropPlacement = {0.015, -0.009, 0.003, 55.0, 0.0, 110.0},
|
||||
EmoteMoving = true,
|
||||
EmoteDuration = 2600
|
||||
}},
|
||||
["cig"] = {"amb@world_human_smoking@male@male_a@enter", "enter", "Cig", AnimationOptions =
|
||||
{
|
||||
Prop = 'prop_amb_ciggy_01',
|
||||
PropBone = 47419,
|
||||
PropPlacement = {0.015, -0.009, 0.003, 55.0, 0.0, 110.0},
|
||||
EmoteMoving = true,
|
||||
EmoteDuration = 2600
|
||||
}},
|
||||
["clean"] = {"timetable@floyd@clean_kitchen@base", "base", "Clean", AnimationOptions =
|
||||
{
|
||||
Prop = "prop_sponge_01",
|
||||
PropBone = 28422,
|
||||
PropPlacement = {0.0, 0.0, -0.01, 90.0, 0.0, 0.0},
|
||||
EmoteLoop = true,
|
||||
EmoteMoving = true,
|
||||
}},
|
||||
["clean2"] = {"amb@world_human_maid_clean@", "base", "Clean 2", AnimationOptions =
|
||||
{
|
||||
Prop = "prop_sponge_01",
|
||||
PropBone = 28422,
|
||||
PropPlacement = {0.0, 0.0, -0.01, 90.0, 0.0, 0.0},
|
||||
EmoteLoop = true,
|
||||
EmoteMoving = true,
|
||||
}},
|
||||
["coke"] = { "switch@trevor@trev_smoking_meth", "trev_smoking_meth_loop", "Coke",
|
||||
AnimationOptions = { EmoteLoop = true, EmoteMoving = true, }},
|
||||
["oxy"] = { "mp_suicide", "pill", "Oxy",
|
||||
AnimationOptions = { EmoteLoop = true, EmoteMoving = true, }},
|
||||
}
|
||||
18
fxmanifest.lua
Normal file
18
fxmanifest.lua
Normal file
@@ -0,0 +1,18 @@
|
||||
name "Jim-Consumables"
|
||||
author "Jimathy"
|
||||
version "v1"
|
||||
description "Consumable Script By Jimathy"
|
||||
fx_version "cerulean"
|
||||
game "gta5"
|
||||
|
||||
client_scripts {
|
||||
'client/*.lua',
|
||||
}
|
||||
|
||||
server_scripts {
|
||||
'server/*.lua'
|
||||
}
|
||||
|
||||
shared_scripts {
|
||||
'config.lua',
|
||||
}
|
||||
17
server/server.lua
Normal file
17
server/server.lua
Normal file
@@ -0,0 +1,17 @@
|
||||
local QBCore = exports['qb-core']:GetCoreObject()
|
||||
|
||||
--Consumables
|
||||
CreateThread(function()
|
||||
for k,v in pairs(Config.Consumables) do
|
||||
QBCore.Functions.CreateUseableItem(k, function(source, item)
|
||||
TriggerClientEvent('jim-consumables:Consume', source, item.name)
|
||||
end)
|
||||
end
|
||||
local itemcheck = {}
|
||||
local emotecheck = {}
|
||||
for k,v in pairs(Config.Consumables) do
|
||||
QBCore.Functions.CreateUseableItem(k, function(source, item) TriggerClientEvent('jim-consumables:Consume', source, item.name) end)
|
||||
if not QBCore.Shared.Items[k] then print("Item check - '"..k.."' not found in the shared lua") elseif QBCore.Shared.Items[k] then end
|
||||
if not Config.Emotes[v.emote] then print("Emote check - '"..k.."' requested emote '"..v.emote.."' - not found in config.lua") elseif Config.Emotes[v.emote] then end
|
||||
end
|
||||
end)
|
||||
Reference in New Issue
Block a user