forked from Simnation/Main
381 lines
14 KiB
Lua
381 lines
14 KiB
Lua
![]() |
Config = {}
|
||
|
|
||
|
-- Debugmodes
|
||
|
Config.Debugmode = false -- General debugging, shows what seats/beds you can sit/lay on and the direction you will be facing, also enables debugging commands. (Only shows seats nearby)
|
||
|
Config.DebugPoly = false -- This is not advised unless you have set your PolyZone script set to only render polys nearby, the prefeered way is to go into list.lua and set the debug on the polyzone group instead! (see gabz_atom)
|
||
|
|
||
|
-- What framework you use. Supported frameworks are: "QBCore", "TMC" or false (false = standalone)
|
||
|
Config.Framework = false
|
||
|
|
||
|
-- Just like Config.Framework; What framework/libary you use for the notifications. Supported values: "QBCore", "TMC", "OX" or false (false = standalone)
|
||
|
-- IMPORTANT NOTE: If you use OX you NEED to add '@ox_lib/init.lua', under client_scripts in fxmanifest.lua!
|
||
|
Config.Notifications = false
|
||
|
|
||
|
-- The targeting solution (3rd eye) to use.
|
||
|
-- false = don't use any targeting solution. ('false'/"false" will NOT work, false NEEDS to be a boolean.)
|
||
|
-- 'qb-target' = qb-target by BerkieBb and its many other contributors. (https://github.com/BerkieBb/qb-target)
|
||
|
-- 'qtarget' = qTarget by Linden (thelindat), Noms (OfficialNoms) and its many other contributors. (https://github.com/overextended/qtarget)
|
||
|
-- 'ox_target' = ox_target by Linden (thelindat) and its many other contributors. (https://github.com/overextended/ox_target)
|
||
|
Config.Target = 'qb-target'
|
||
|
|
||
|
-- Teleport to the last position before getting seated when we found no way to get to the seat
|
||
|
Config.TeleportToLastPosWhenNoRoute = true
|
||
|
|
||
|
-- Always teleport in/out of the seat
|
||
|
Config.AlwaysTeleportToSeat = false
|
||
|
Config.AlwaysTeleportOutOfSeat = false
|
||
|
|
||
|
-- Tthe interaction and prompts distance, used for max distance the 3rd eye can see, how far the /sit command will look for entites and how close you have to be for a prompt to be showed if you use those.
|
||
|
Config.MaxInteractionDist = 2.0
|
||
|
Config.MaxPromptDist = 1.8
|
||
|
|
||
|
-- The maximum amount of tilt a object can have before it is rendered unsuitable to sit on
|
||
|
Config.MaxTilt = 20.0
|
||
|
|
||
|
-- These will be the default keys/buttons
|
||
|
Config.DefaultKeybinds = {
|
||
|
GetUp = {
|
||
|
Keyboard = 'X',
|
||
|
PadAnalog = 'RRIGHT_INDEX'
|
||
|
},
|
||
|
|
||
|
-- Only used in the prompts system
|
||
|
SitDown = {
|
||
|
SitKeyboard = 'E',
|
||
|
LayKeyboard = 'G',
|
||
|
SitPadAnalog = 'LLEFT_INDEX',
|
||
|
LayPadAnalog = 'LRIGHT_INDEX'
|
||
|
}
|
||
|
}
|
||
|
|
||
|
-- Whether or not to add chat suggestion.
|
||
|
Config.AddChatSuggestions = true
|
||
|
|
||
|
-- Whether or not to use the prompt system. NOTE: this uses extra resources.
|
||
|
Config.UsePrompts = false
|
||
|
|
||
|
-- If true, instructions on how to get up form the seat/bed will be displayed in the top left corner of your screen
|
||
|
Config.ShowHelpText = true
|
||
|
|
||
|
-- The script will ATTEMPT (no guarantee) to prevent showing help text when other scripts are allready showing help texts, this will stop some of the annoying pling sounds.
|
||
|
Config.PreventHelpTextOverwrites = true
|
||
|
|
||
|
-- Whether or not trigger an reduce stress event/export when sitting/laying down. You wil have to add a event/export yourself for this to work.
|
||
|
Config.ReduceStress = false
|
||
|
|
||
|
-- Invalidates the idle cam while you are seated/laying down.
|
||
|
Config.InvalidateIdleCam = true
|
||
|
|
||
|
-- Use the coords of where the 3rd eye intersects with the object to find the closest seat. If set to false the coords of the player ped will be used instead.
|
||
|
Config.UseTargetingCoords = true
|
||
|
|
||
|
-- Sets if the targeting scripts should draw sprites in the center of the sit poly zones (This option is only supported by ox_target)
|
||
|
Config.TargetDrawSprite = true
|
||
|
|
||
|
-- These are the icons/labels if we use a targeting solution.
|
||
|
Config.Targeting = {
|
||
|
SitIcon = "fas fa-chair",
|
||
|
LayIcon = "fas fa-bed",
|
||
|
SitLabel = "Sit Down",
|
||
|
LayLabel = "Lay Down"
|
||
|
}
|
||
|
-- The localization for the notifications, chat suggestions and keymapping.
|
||
|
Config.Lang = {
|
||
|
-- Notifications
|
||
|
Notification = {
|
||
|
OccupiedSit = "Dieser Sitz ist bereits besetzt!",
|
||
|
OccupiedLay = "Du kannst dich hier nicht hinlegen!",
|
||
|
NoAvailable = "Kein freier Sitzplatz verfügbar!",
|
||
|
NoFound = "Keine Sitzplätze gefunden!",
|
||
|
NoBedFound = "Nichts zum Hinlegen gefunden!",
|
||
|
TooTilted = "Dieser Sitz ist zu schräg!",
|
||
|
CannotReachSeat = "Du kommst nicht an diesen Sitz ran!",
|
||
|
CannotSitInSeat = "Du kannst dich auf diesen Sitz nicht setzen!",
|
||
|
CannotReachBed = "Du kommst nicht an dieses Bett/diese Bank ran!",
|
||
|
AlreadyAttemptingToSit = "Du versuchst bereits, dich hinzusetzen!",
|
||
|
AlreadyAttemptingToLay = "Du versuchst bereits, dich hinzulegen!",
|
||
|
InVehicleSit = "Du kannst dich im Fahrzeug nicht hinsetzen!",
|
||
|
InVehicleLay = "Du kannst dich im Fahrzeug nicht hinlegen!"
|
||
|
},
|
||
|
|
||
|
-- Chat Suggestions
|
||
|
ChatSuggestions = {
|
||
|
Sit = "Setz dich auf den nächstgelegenen Sitz",
|
||
|
Lay = "Leg dich auf das nächstgelegene Bett/die nächstgelegene Bank"
|
||
|
},
|
||
|
|
||
|
-- Key Mapping
|
||
|
KeyMapping = {
|
||
|
-- %s is automatically replaced with the key they need to press.
|
||
|
SitDown = "Drücke %s, um dich hinzusetzen",
|
||
|
LayDown = "Drücke %s, um dich hinzulegen",
|
||
|
GetUp = "Drücke %s, um aufzustehen"
|
||
|
},
|
||
|
|
||
|
-- Description in Settings>Key Bindings>Fivem
|
||
|
KeyBindingDesc = {
|
||
|
Keyboard = {
|
||
|
SitDown = "Sit - Hinsetzen (Sitz)",
|
||
|
LayDown = "Sit - Hinlegen (Bett/Bank)",
|
||
|
GetUp = "Sit - Aufstehen"
|
||
|
},
|
||
|
PadAnalog = {
|
||
|
SitDown = "Sit - Hinsetzen (Sitz) - Controller",
|
||
|
LayDown = "Sit - Hinlegen (Bett/Bank) - Controller",
|
||
|
GetUp = "Sit - Aufstehen - Controller"
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
--[[ -- The localization for the notifications, chat suggestions and keymapping.
|
||
|
Config.Lang = {
|
||
|
-- Notifications
|
||
|
Notification = {
|
||
|
OccupiedSit = "This seat is already occupied!",
|
||
|
OccupiedLay = "You can't lay down here!",
|
||
|
NoAvailable = "No seat is avalible!",
|
||
|
NoFound = "No seats were found!",
|
||
|
NoBedFound = "Nothing to lay down on was found!",
|
||
|
TooTilted = "This seat is too tilted!",
|
||
|
CannotReachSeat = "You can't reach this seat!",
|
||
|
CannotSitInSeat = "You can't sit in this seat!",
|
||
|
CannotReachBed = "You can't reach this bed/bench!",
|
||
|
AlreadyAttemptingToSit = "You are already attempting to sit down!",
|
||
|
AlreadyAttemptingToLay = "You are already attempting to lay down!",
|
||
|
InVehicleSit = "You cannot sit down while you are in a vehicle!",
|
||
|
InVehicleLay = "You cannot lay down while you are in a vehicle!"
|
||
|
},
|
||
|
|
||
|
-- Chat Suggestions
|
||
|
ChatSuggestions = {
|
||
|
Sit = "Sit down on the closest seat",
|
||
|
Lay = "Lay down on the closest bed/bench"
|
||
|
},
|
||
|
|
||
|
-- Key Mapping
|
||
|
KeyMapping = {
|
||
|
-- %s is automatically replaced with the key they need to press.
|
||
|
SitDown = "Press %s to sit down",
|
||
|
LayDown = "Press %s to lay down",
|
||
|
GetUp = "Press %s to get up"
|
||
|
},
|
||
|
|
||
|
-- Description in Settings>Key Bindings>Fivem
|
||
|
KeyBindingDesc = {
|
||
|
Keyboard = {
|
||
|
SitDown = "Sit - Sit Down (Seat)",
|
||
|
LayDown = "Sit - Lay Down (Bed/Bench)",
|
||
|
GetUp = "Sit - Get Up"
|
||
|
},
|
||
|
PadAnalog = {
|
||
|
SitDown = "Sit - Sit Down (Seat) - Controller",
|
||
|
LayDown = "Sit - Lay Down (Bed/Bench) - Controller",
|
||
|
GetUp = "Sit - Get Up - Controller"
|
||
|
}
|
||
|
}
|
||
|
--} ]]
|
||
|
|
||
|
|
||
|
-- The diffrent sitting settings, don't touch unless you know what you are doing.
|
||
|
Config.SitTypes = {
|
||
|
['default'] = { -- Default settings, if non has been spesified, don't touch! (unless you really know what you are doing)
|
||
|
skipGoStraightTask = false,
|
||
|
teleportIn = false,
|
||
|
teleportOut = false,
|
||
|
timeout = 8,
|
||
|
scenarios = {
|
||
|
[1] = { name = "PROP_HUMAN_SEAT_CHAIR_MP_PLAYER", offset = vector4(0.0, 0.0, 0.0, 0.0) }
|
||
|
}
|
||
|
-- animation = { dict = "timetable@jimmy@mics3_ig_15@", name = "idle_a_jimmy", offset = vector4(0.0, 0.0, 0.0, 0.0), flag = 1 }
|
||
|
},
|
||
|
['chair'] = {
|
||
|
scenarios = {
|
||
|
[1] = { name = "PROP_HUMAN_SEAT_CHAIR_MP_PLAYER" }
|
||
|
}
|
||
|
},
|
||
|
['chair2'] = {
|
||
|
scenarios = {
|
||
|
[1] = { name = "PROP_HUMAN_SEAT_CHAIR_MP_PLAYER" },
|
||
|
[2] = { name = "PROP_HUMAN_SEAT_ARMCHAIR", offset = vector4(0.0, 0.05, 0.0, 0.0) }
|
||
|
}
|
||
|
},
|
||
|
['chair3'] = {
|
||
|
scenarios = {
|
||
|
[1] = { name = "PROP_HUMAN_SEAT_CHAIR_MP_PLAYER" },
|
||
|
[2] = { name = "PROP_HUMAN_SEAT_ARMCHAIR", offset = vector4(0.0, 0.05, 0.0, 0.0) },
|
||
|
[3] = { name = "PROP_HUMAN_SEAT_DECKCHAIR" }
|
||
|
}
|
||
|
},
|
||
|
['barstool'] = {
|
||
|
teleportIn = true,
|
||
|
scenarios = {
|
||
|
[1] = { name = "PROP_HUMAN_SEAT_BAR" }
|
||
|
}
|
||
|
},
|
||
|
['stool'] = {
|
||
|
teleportIn = true,
|
||
|
scenarios = {
|
||
|
[1] = { name = "PROP_HUMAN_SEAT_CHAIR_MP_PLAYER" }
|
||
|
},
|
||
|
},
|
||
|
['deck'] = {
|
||
|
scenarios = {
|
||
|
[1] = { name = "PROP_HUMAN_SEAT_DECKCHAIR" }
|
||
|
}
|
||
|
},
|
||
|
['sunlounger'] = {
|
||
|
skipGoStraightTask = true,
|
||
|
timeout = 12,
|
||
|
scenarios = {
|
||
|
[1] = { name = "PROP_HUMAN_SEAT_SUNLOUNGER" }
|
||
|
}
|
||
|
},
|
||
|
['tattoo'] = {
|
||
|
animation = { dict = "misstattoo_parlour@shop_ig_4", name = "customer_loop", offset = vector4(0.0, 0.0, -0.75, 0.0) }
|
||
|
},
|
||
|
['strip_watch'] = {
|
||
|
scenarios = {
|
||
|
[1] = { name = "PROP_HUMAN_SEAT_STRIP_WATCH" }
|
||
|
}
|
||
|
},
|
||
|
['diner_booth'] = {
|
||
|
teleportIn = true,
|
||
|
teleportOut = true,
|
||
|
scenarios = {
|
||
|
[1] = { name = "PROP_HUMAN_SEAT_CHAIR_MP_PLAYER" }
|
||
|
}
|
||
|
},
|
||
|
['laysit'] = {
|
||
|
animation = { dict = "timetable@jimmy@mics3_ig_15@", name = "idle_a_jimmy", offset = vector4(0.0, 0.0, 0.0, 0.0) }
|
||
|
},
|
||
|
['wall'] = {
|
||
|
scenarios = {
|
||
|
[1] = { name = "WORLD_HUMAN_SEAT_WALL" }
|
||
|
}
|
||
|
},
|
||
|
['steps'] = {
|
||
|
scenarios = {
|
||
|
[1] = { name = "WORLD_HUMAN_SEAT_STEPS" }
|
||
|
}
|
||
|
},
|
||
|
['ledge'] = {
|
||
|
scenarios = {
|
||
|
[1] = { name = "WORLD_HUMAN_SEAT_LEDGE" }
|
||
|
}
|
||
|
},
|
||
|
['director'] = {
|
||
|
animation = { dict = "misscarsteal4@director_grip", name = "beginning_loop_director", offset = vector4(0.0, 0.0, -1.16, 0.0) },
|
||
|
teleportOut = true
|
||
|
},
|
||
|
['barber'] = {
|
||
|
animation = { dict = "anim@amb@luxury_suite@spa@barbers", name = "player_idle_a", offset = vector4(0.0, 0.0, 0.0, 0.0) }
|
||
|
},
|
||
|
['sitground'] = {
|
||
|
animation = { dict = "anim@amb@business@bgen@bgen_no_work@", name = "sit_phone_phoneputdown_idle_nowork", offset = vector4(0.0, 0.0, 0.0, 0.0) }
|
||
|
}
|
||
|
}
|
||
|
|
||
|
-- The diffrent laying settings, don't touch unless you know what you are doing.
|
||
|
Config.LayTypes = {
|
||
|
['default'] = { -- Default settings, if non has been spesified
|
||
|
animation = { dict = "misslamar1dead_body", name = "dead_idle" },
|
||
|
exitAnimType = 0, -- 0 = relative to camera | 1 = to the right | 2 = to the left
|
||
|
exitAnim = true
|
||
|
},
|
||
|
['bed'] = {
|
||
|
animation = { dict = "misslamar1dead_body", name = "dead_idle" }
|
||
|
},
|
||
|
['lay'] = {
|
||
|
animation = { dict = "savecouch@", name = "t_sleep_loop_couch", offset = vector4(-0.1, 0.1, -0.5, 270.0) }
|
||
|
},
|
||
|
['layside'] = {
|
||
|
animation = { dict = "savecouch@", name = "t_sleep_loop_couch", offset = vector4(-0.1, 0.1, -0.5, 270.0) },
|
||
|
exitAnimType = 2
|
||
|
},
|
||
|
['layside_reverse'] = {
|
||
|
animation = { dict = "savecouch@", name = "t_sleep_loop_couch", offset = vector4(0.1, 0.1, -0.5, 90.0) },
|
||
|
exitAnimType = 1
|
||
|
},
|
||
|
['busstop'] = {
|
||
|
animation = { dict = "savecouch@", name = "t_sleep_loop_couch", offset = vector4(0.0, 0.0, -0.5, 270.0) }
|
||
|
},
|
||
|
['medical'] = {
|
||
|
animation = { dict = "anim@gangops@morgue@table@", name = "body_search" }
|
||
|
},
|
||
|
['tattoo'] = {
|
||
|
animation = { dict = "amb@world_human_sunbathe@male@front@base", name = "base", offset = vector4(0.0, 0.0, 0.0, 180.0) },
|
||
|
exitAnim = false
|
||
|
}
|
||
|
}
|
||
|
|
||
|
-- Which preset (poly) locations that should be loaded. (disable/enable those you use!)
|
||
|
Config.PresetLocations = {
|
||
|
-- Vanilla Interiors
|
||
|
coroner = true,
|
||
|
lscustoms = true,
|
||
|
mrpd = true,
|
||
|
pacific_standard = true,
|
||
|
paleto_bank = true,
|
||
|
paleto_so = true,
|
||
|
pdm = true,
|
||
|
sandy_so = true,
|
||
|
submarine = true,
|
||
|
tattoo_shops = true,
|
||
|
tequilala = true,
|
||
|
trevors_trailer = true,
|
||
|
vanilla_unicorn = true,
|
||
|
|
||
|
-- Other Interiors (not affiliated/sponsored)
|
||
|
uniqx_burgershot = false, -- https://www.gta5-mods.com/maps/mlo-burgershot-2023-add-on-sp-fivem
|
||
|
rtx_club77 = false, -- https://forum.cfx.re/t/paid-map-club-77/5090016
|
||
|
|
||
|
-- Gabz Team Interiors
|
||
|
gabz_altruists = true,
|
||
|
gabz_atom = true,
|
||
|
gabz_aztecas = true,
|
||
|
gabz_bahama = true, -- Bahama Mamas
|
||
|
gabz_ballas = true,
|
||
|
gabz_bennys = true,
|
||
|
gabz_burgershot = true,
|
||
|
gabz_catcafe = true,
|
||
|
gabz_bobcat = true,
|
||
|
gabz_diner = true, -- Pop's Dinner
|
||
|
gabz_families = true,
|
||
|
gabz_firedept = true, -- El Burro & Davis
|
||
|
gabz_harmony = true,
|
||
|
gabz_haters = true,
|
||
|
gabz_hayes = true,
|
||
|
gabz_hornys = true,
|
||
|
gabz_import = true,
|
||
|
gabz_koi = true,
|
||
|
gabz_lamesa_pd = true,
|
||
|
gabz_lostsc = true,
|
||
|
gabz_lscustoms = true, -- This is NOT mutually exclusive with the regular lscustoms, just an add-on if you have gabz-lscustoms
|
||
|
gabz_marabunta = true,
|
||
|
gabz_mba = true, -- Maze Bank Arena
|
||
|
gabz_mrpd = true, -- Mission Row Police Deparment
|
||
|
gabz_paletocamp = true,
|
||
|
gabz_ottos = true,
|
||
|
gabz_pacific_standard = true, -- This is the new pacific standard from the gabz team.
|
||
|
gabz_pacific_standard_old = true, -- This is the old gabz pacific standard, it's a retexure of (+ some changes to) the base game version.
|
||
|
gabz_paleto_bank = true,
|
||
|
gabz_paleto_so = true,
|
||
|
gabz_park_ranger = true,
|
||
|
gabz_pdm = true,
|
||
|
gabz_pillbox = true,
|
||
|
gabz_pizzeria = true,
|
||
|
gabz_prison = true,
|
||
|
gabz_records = true, -- Records A Studios
|
||
|
gabz_sandy_so = true,
|
||
|
gabz_townhall = true,
|
||
|
gabz_triads = true,
|
||
|
gabz_tuners = true,
|
||
|
gabz_vagos = true,
|
||
|
gabz_vanilla_unicorn = true,
|
||
|
gabz_weedcamp = false,
|
||
|
|
||
|
-- These are just proofs of concept.
|
||
|
ledge = true,
|
||
|
steps = true,
|
||
|
wall = true
|
||
|
}
|