forked from Simnation/Main
80 lines
2.4 KiB
Lua
80 lines
2.4 KiB
Lua
-- Define IPLs for each setup
|
|
local setups = {
|
|
default = {
|
|
'tstudio_legionsquare_ext_amphi_default',
|
|
-- add more IPLs for the default setup
|
|
},
|
|
band = {
|
|
'tstudio_legionsquare_ext_amphi_band',
|
|
-- add more IPLs for the band setup
|
|
},
|
|
dj = {
|
|
'tstudio_legionsquare_ext_amphi_dj',
|
|
-- add more IPLs for the dj setup
|
|
},
|
|
speaker = {
|
|
'tstudio_legionsquare_ext_amphi_speaker',
|
|
-- add more IPLs for the speaker setup
|
|
},
|
|
cinema = {
|
|
'tstudio_legionsquare_ext_amphi_default',
|
|
'tstudio_legionsquare_ext_amphi_band',
|
|
'tstudio_legionsquare_ext_amphi_dj',
|
|
'tstudio_legionsquare_ext_amphi_speaker',
|
|
} -- Cinema will remove all IPLs
|
|
}
|
|
|
|
-- Function to remove IPLs from all setups
|
|
local function removeAllIpls()
|
|
for _, setupIpls in pairs(setups) do
|
|
for _, ipl in pairs(setupIpls) do
|
|
RemoveIpl(ipl)
|
|
end
|
|
end
|
|
end
|
|
|
|
-- Function to load IPLs for the selected setup
|
|
local function loadSetupIpl(setup)
|
|
-- If the chosen setup is "cinema", remove all IPLs
|
|
if setup == "cinema" then
|
|
removeAllIpls()
|
|
print("Cinema setup chosen, all IPLs removed.")
|
|
else
|
|
-- Load IPLs for other setups
|
|
for _, ipl in pairs(setups[setup]) do
|
|
RequestIpl(ipl)
|
|
end
|
|
end
|
|
end
|
|
|
|
-- Setup switching logic
|
|
local currentSetup = "default" -- You can change this to "band", "dj", "speaker", or "cinema" to switch between setups.
|
|
|
|
-- Function to switch setup dynamically
|
|
local function switchSetup(newSetup)
|
|
if setups[newSetup] then
|
|
removeAllIpls() -- Always remove all IPLs before switching
|
|
currentSetup = newSetup
|
|
loadSetupIpl(currentSetup)
|
|
print("Switched to setup: " .. currentSetup)
|
|
else
|
|
print("Invalid setup selected! Valid setups: default, band, dj, speaker, cinema.")
|
|
end
|
|
end
|
|
|
|
-- Initialize with default setup
|
|
Citizen.CreateThread(function()
|
|
-- Remove any previously loaded IPLs and load the default setup
|
|
removeAllIpls()
|
|
loadSetupIpl(currentSetup)
|
|
end)
|
|
|
|
-- Register a command to change the setup
|
|
RegisterCommand("changesetup", function(source, args, rawCommand)
|
|
local newSetup = args[1]
|
|
if newSetup then
|
|
switchSetup(newSetup)
|
|
else
|
|
print("Please specify a valid setup. Usage: /changesetup [default|band|dj|speaker|cinema]")
|
|
end
|
|
end, false)
|