Skip to content

Commit

Permalink
Merge pull request #148 from Bob74/b2189
Browse files Browse the repository at this point in the history
Add Cayo Perico DLC interiors
  • Loading branch information
TheIndra55 committed Aug 13, 2024
2 parents 84a50c8 + db51f2c commit 19dd004
Show file tree
Hide file tree
Showing 4 changed files with 212 additions and 1 deletion.
8 changes: 8 additions & 0 deletions client.lua
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,14 @@ CreateThread(function()
DiamondPenthouse.LoadDefault() -- 976.636, 70.295, 115.164
end

-- ====================================================================
-- =-------------------- [DLC: Cayo Perico Heist] --------------------=
-- ====================================================================
if GetGameBuildNumber() >= 2189 then
CayoPericoNightclub.LoadDefault() -- 1550.0, 250.0, -50.0
CayoPericoSubmarine.LoadDefault() -- 1560.0, 400.0, -50.0
end

-- ====================================================================
-- =------------------- [DLC: Los Santos Tuners] ---------------------=
-- ====================================================================
Expand Down
128 changes: 128 additions & 0 deletions dlc_cayoperico/nightclub.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
-- The Music Locker: 1550.0, 250.0, -50.0
exports('GetCayoPericoNightclub', function()
return CayoPericoNightclub
end)

CayoPericoNightclub = {
interiorId = 281089,

Security = {
security = "int01_ba_security_upgrade",

Enable = function(state, refresh)
SetIplPropState(CayoPericoNightclub.interiorId, CayoPericoNightclub.Security.security, state, refresh)
end
},

Speakers = {
basic = "int01_ba_equipment_setup",
upgrade = {
"int01_ba_equipment_setup",
"int01_ba_equipment_upgrade"
},

Set = function(speakers, refresh)
CayoPericoNightclub.Speakers.Clear(false)

SetIplPropState(CayoPericoNightclub.interiorId, speakers, true, refresh)
end,
Clear = function(refresh)
SetIplPropState(CayoPericoNightclub.interiorId, {
CayoPericoNightclub.Speakers.basic,
CayoPericoNightclub.Speakers.upgrade
}, false, refresh)
end
},

Podium = {
podium = "int01_ba_style02_podium",

Enable = function(state, refresh)
SetIplPropState(CayoPericoNightclub.interiorId, CayoPericoNightclub.Podium.podium, state, refresh)
end
},

Turntables = {
style01 = "int01_ba_dj01",
style02 = "int01_ba_dj02",
style03 = "int01_ba_dj03",
style04 = "int01_ba_dj04",
style05 = "int01_ba_dj_palms_trax",
style06 = "int01_ba_dj_keinemusik",
style07 = "int01_ba_dj_moodyman",

Set = function(style, refresh)
CayoPericoNightclub.Turntables.Clear(false)

SetIplPropState(CayoPericoNightclub.interiorId, style, true, refresh)
end,
Clear = function(refresh)
for key, value in pairs(CayoPericoNightclub.Turntables) do
if type(value) == "string" then
SetIplPropState(CayoPericoNightclub.interiorId, value, false, refresh)
end
end
end
},

Bar = {
bar = "int01_ba_bar_content",

Enable = function(state, refresh)
SetIplPropState(CayoPericoNightclub.interiorId, CayoPericoNightclub.Bar.bar, state, refresh)
end
},

Screen = {
front = "int01_ba_lights_screen",
back = "int01_ba_screen",

Enable = function(screen, state, refresh)
SetIplPropState(CayoPericoNightclub.interiorId, screen, state, refresh)
end
},

Lights = {
droplets01 = "dj_01_lights_01",
droplets02 = "dj_02_lights_01",
droplets03 = "dj_03_lights_01",
droplets04 = "dj_04_lights_01",
neons01 = "dj_01_lights_02",
neons02 = "dj_02_lights_02",
neons03 = "dj_03_lights_02",
neons04 = "dj_04_lights_02",
bands01 = "dj_01_lights_03",
bands02 = "dj_02_lights_03",
bands03 = "dj_03_lights_03",
bands04 = "dj_04_lights_03",
lasers01 = "dj_01_lights_04",
lasers02 = "dj_02_lights_04",
lasers03 = "dj_03_lights_04",
lasers04 = "dj_04_lights_04",

Set = function(style, refresh)
CayoPericoNightclub.Lights.Clear(false)

SetIplPropState(CayoPericoNightclub.interiorId, style, true, refresh)
end,
Clear = function(refresh)
for key, value in pairs(CayoPericoNightclub.Lights) do
if type(value) == "string" then
SetIplPropState(CayoPericoNightclub.interiorId, value, false, refresh)
end
end
end
},

LoadDefault = function()
CayoPericoNightclub.Security.Enable(true, false)
CayoPericoNightclub.Speakers.Set(CayoPericoNightclub.Speakers.basic, false)
CayoPericoNightclub.Podium.Enable(true, false)
CayoPericoNightclub.Turntables.Set(CayoPericoNightclub.Turntables.style01, false)
CayoPericoNightclub.Bar.Enable(true, false)
CayoPericoNightclub.Screen.Enable(CayoPericoNightclub.Screen.front, true, false)
CayoPericoNightclub.Lights.Set(CayoPericoNightclub.Lights.neons01, false)

RefreshInterior(CayoPericoNightclub.interiorId)
end
}
71 changes: 71 additions & 0 deletions dlc_cayoperico/submarine.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
-- Submarine: 1560.0, 400.0, -50.0
exports('GetCayoPericoSubmarine', function()
return CayoPericoSubmarine
end)

CayoPericoSubmarine = {
interiorId = 281345,

Workshop = {
brig = "entity_set_brig",
workshop = "entity_set_weapons",

Set = function(room, refresh)
CayoPericoSubmarine.Workshop.Clear(false)

SetIplPropState(CayoPericoSubmarine.interiorId, room, true, refresh)
end,
Clear = function(refresh)
SetIplPropState(CayoPericoSubmarine.interiorId, {
CayoPericoSubmarine.Workshop.brig,
CayoPericoSubmarine.Workshop.workshop
}, false, refresh)
end
},

Chairs = {
chairs = "entity_set_guide",

Enable = function(state, refresh)
SetIplPropState(CayoPericoSubmarine.interiorId, CayoPericoSubmarine.Chairs.chairs, state, refresh)
end
},

Lights = {
on = "entity_set_hatch_lights_on",
off = "entity_set_hatch_lights_off",

Set = function(lights, refresh)
CayoPericoSubmarine.Lights.Clear(false)

SetIplPropState(CayoPericoSubmarine.interiorId, lights, true, refresh)
end,
Clear = function(refresh)
SetIplPropState(CayoPericoSubmarine.interiorId, {
CayoPericoSubmarine.Lights.on,
CayoPericoSubmarine.Lights.off
}, false, refresh)
end
},

Details = {
bomb = "entity_set_demolition",
torch = "entity_set_acetylene",
cutter = "entity_set_plasma",
fingerprint = "entity_set_fingerprint",
suppressors = "entity_set_suppressors",
jammer = "entity_set_jammer",

Enable = function(details, state, refresh)
SetIplPropState(CayoPericoSubmarine.interiorId, details, state, refresh)
end
},

LoadDefault = function()
CayoPericoSubmarine.Workshop.Set(CayoPericoSubmarine.Workshop.brig, false)
CayoPericoSubmarine.Chairs.Enable(true, false)
CayoPericoSubmarine.Lights.Set(CayoPericoSubmarine.Lights.off, false)

RefreshInterior(CayoPericoSubmarine.interiorId)
end
}
6 changes: 5 additions & 1 deletion fxmanifest.lua
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ game 'gta5'

author 'Bob_74'
description 'Load and customize your map'
version '2.3.1'
version '2.3.2'

lua54 "yes"

Expand Down Expand Up @@ -106,6 +106,10 @@ client_scripts {
, "dlc_casino/casino.lua"
, "dlc_casino/penthouse.lua"

-- DLC Cayo Perico Heist (Requires forced build 2189 or higher)
, "dlc_cayoperico/nightclub.lua"
, "dlc_cayoperico/submarine.lua"

-- DLC Tuners (Requires forced build 2372 or higher)
, "dlc_tuner/garage.lua"
, "dlc_tuner/meetup.lua"
Expand Down

0 comments on commit 19dd004

Please sign in to comment.