diff --git a/resources/25Emergency/__resource.lua b/resources/25Emergency/23gmcleo/__resource.lua similarity index 100% rename from resources/25Emergency/__resource.lua rename to resources/25Emergency/23gmcleo/__resource.lua diff --git a/resources/25Emergency/23gmcleoslick/__resource.lua b/resources/25Emergency/23gmcleoslick/__resource.lua new file mode 100644 index 000000000..fdc8dfb3a --- /dev/null +++ b/resources/25Emergency/23gmcleoslick/__resource.lua @@ -0,0 +1,17 @@ +resource_manifest_version '77731fab-63ca-442c-a67b-abc70f28dfa5' + +-- Leaked By: Leaking Hub | Joshua Y. | https://discord.gg/aXWXXst + +files { + 'vehicles.meta', + 'carvariations.meta', + 'carcols.meta', + 'handling.meta', + 'vehiclelayouts.meta', +} + +data_file 'HANDLING_FILE' 'handling.meta' +data_file 'VEHICLE_METADATA_FILE' 'vehicles.meta' +data_file 'CARCOLS_FILE' 'carcols.meta' +data_file 'VEHICLE_VARIATION_FILE' 'carvariations.meta' +data_file 'VEHICLE_LAYOUTS_FILE' 'vehiclelayouts.meta' diff --git a/resources/25Emergency/23sierrafire/__resource.lua b/resources/25Emergency/23sierrafire/__resource.lua new file mode 100644 index 000000000..fdc8dfb3a --- /dev/null +++ b/resources/25Emergency/23sierrafire/__resource.lua @@ -0,0 +1,17 @@ +resource_manifest_version '77731fab-63ca-442c-a67b-abc70f28dfa5' + +-- Leaked By: Leaking Hub | Joshua Y. | https://discord.gg/aXWXXst + +files { + 'vehicles.meta', + 'carvariations.meta', + 'carcols.meta', + 'handling.meta', + 'vehiclelayouts.meta', +} + +data_file 'HANDLING_FILE' 'handling.meta' +data_file 'VEHICLE_METADATA_FILE' 'vehicles.meta' +data_file 'CARCOLS_FILE' 'carcols.meta' +data_file 'VEHICLE_VARIATION_FILE' 'carvariations.meta' +data_file 'VEHICLE_LAYOUTS_FILE' 'vehiclelayouts.meta' diff --git a/resources/25Emergency/24rampumper/__resource.lua b/resources/25Emergency/24rampumper/__resource.lua new file mode 100644 index 000000000..fdc8dfb3a --- /dev/null +++ b/resources/25Emergency/24rampumper/__resource.lua @@ -0,0 +1,17 @@ +resource_manifest_version '77731fab-63ca-442c-a67b-abc70f28dfa5' + +-- Leaked By: Leaking Hub | Joshua Y. | https://discord.gg/aXWXXst + +files { + 'vehicles.meta', + 'carvariations.meta', + 'carcols.meta', + 'handling.meta', + 'vehiclelayouts.meta', +} + +data_file 'HANDLING_FILE' 'handling.meta' +data_file 'VEHICLE_METADATA_FILE' 'vehicles.meta' +data_file 'CARCOLS_FILE' 'carcols.meta' +data_file 'VEHICLE_VARIATION_FILE' 'carvariations.meta' +data_file 'VEHICLE_LAYOUTS_FILE' 'vehiclelayouts.meta' diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/.fxap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/.fxap new file mode 100644 index 000000000..666a183d0 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/.fxap differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/README.md b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/README.md new file mode 100644 index 000000000..82ce7666c --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/README.md @@ -0,0 +1,10 @@ +# Unlock file for customization : + +gn_bc_ext_firestation_txd.ytd +gn_bc_firestation_txd.ytd +prop_gn_fire_logo_01.ydr +prop_gn_fire_logo_02.ydr +prop_gn_fire_logo_dcl_01.ydr +prop_gn_fire_logo_dcl_02.ydr +prop_gn_fire_logo_dcl_03.ydr +prop_gn_fire_logo_def_02.ydr \ No newline at end of file diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/audio/audio_firestation_game.dat151.rel b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/audio/audio_firestation_game.dat151.rel new file mode 100644 index 000000000..1a8ea9b77 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/audio/audio_firestation_game.dat151.rel differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/audio/int_firestation_game.dat151.rel b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/audio/int_firestation_game.dat151.rel new file mode 100644 index 000000000..5c36b3a11 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/audio/int_firestation_game.dat151.rel differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/fxmanifest.lua b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/fxmanifest.lua new file mode 100644 index 000000000..844522ad5 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/fxmanifest.lua @@ -0,0 +1,37 @@ +fx_version 'cerulean' +game 'gta5' + +author 'G&N_s Studio' +description 'Blaine County - Fire Department' +version '4.0.0' + +this_is_a_map 'yes' + +dependencies { + '/gameBuild:2189', + 'cfx_gn_collection' +} + +data_file 'AUDIO_GAMEDATA' 'audio/audio_firestation_game.dat' +data_file 'AUDIO_GAMEDATA' 'audio/int_firestation_game.dat' +data_file 'TIMECYCLEMOD_FILE' 'gn_fire_timecycle.xml' + +files { + 'audio/audio_firestation_game.dat151.rel', + 'audio/int_firestation_game.dat151.rel', + 'gn_fire_timecycle.xml' +} + +escrow_ignore { + 'stream/base/**/*', + 'stream/**/*.ytd', + 'stream/interior/ydr/prop_gn_fire_logo_01.ydr', + 'stream/interior/ydr/prop_gn_fire_logo_02.ydr', + 'stream/interior/ydr/prop_gn_fire_logo_dcl_01.ydr', + 'stream/interior/ydr/prop_gn_fire_logo_dcl_02.ydr', + 'stream/interior/ydr/prop_gn_fire_logo_dcl_03.ydr', + 'stream/interior/ydr/prop_gn_fire_logo_def_02.ydr', + 'stream/exterior/ydr/gn_bc_firestation_details.ydr' +} + +dependency '/assetpacks' \ No newline at end of file diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/gn_fire_timecycle.xml b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/gn_fire_timecycle.xml new file mode 100644 index 000000000..eb99a2dba --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/gn_fire_timecycle.xml @@ -0,0 +1,30 @@ + + + 0.000 0.000 + 0.410 0.000 + 0.000 1.000 + 0.000 1.000 + 0.000 1.000 + 0.400 0.000 + 0.000 0.000 + 0.875 1.000 + 0.910 1.000 + 0.894 1.000 + 0.400 0.000 + 0.839 1.000 + 0.859 1.000 + 0.875 1.000 + 0.200 0.000 + 0.600 0.000 + 0.600 0.000 + 0.750 0.000 + 73.000 73.000 + 0.000 0.000 + 5.000 0.000 + 5.000 0.000 + 50.000 0.000 + 20.000 0.000 + 0.000 0.000 + 0.700 0.000 + + \ No newline at end of file diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/1303082753.ymt b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/1303082753.ymt new file mode 100644 index 000000000..5b9933b60 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/1303082753.ymt differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/_manifest.ymf b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/_manifest.ymf new file mode 100644 index 000000000..98db6e807 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/_manifest.ymf differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/country_02_metadata_011_strm.ytyp b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/country_02_metadata_011_strm.ytyp new file mode 100644 index 000000000..5ce432153 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/country_02_metadata_011_strm.ytyp differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_0.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_0.ybn new file mode 100644 index 000000000..92a0f3755 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_0.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_5.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_5.ybn new file mode 100644 index 000000000..6caf5d511 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_5.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_bldn_gas_slod1_children.ydd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_bldn_gas_slod1_children.ydd new file mode 100644 index 000000000..67d5dbae0 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_bldn_gas_slod1_children.ydd differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_carwash_forecourt_dec.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_carwash_forecourt_dec.ydr new file mode 100644 index 000000000..6ebbce29e --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_carwash_forecourt_dec.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b810dbb23822fff31d61cbc098a1dfce52baa43151626533e6167231bd04c67d +size 299069 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_carwash_forecourta_dec.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_carwash_forecourta_dec.ydr new file mode 100644 index 000000000..36a4acd63 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_carwash_forecourta_dec.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ada4453aca31e089475c3f63ffab6b29de138f9ba91f3a22fcc66306577ec36 +size 1123749 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_emissive_gasa.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_emissive_gasa.ydr new file mode 100644 index 000000000..df27be121 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_emissive_gasa.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a89d4411bddb74de7fb230f6420baf40a7a7530a0f643e832632c1c3a964e471 +size 30736 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_land_04.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_land_04.ydr new file mode 100644 index 000000000..78306d8a7 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_land_04.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56fb15ad362822c0ede35bb3e42a26e05ee9d2bef9db601fc5932a7a4c38ce95 +size 404430 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_land_slod1_children.ydd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_land_slod1_children.ydd new file mode 100644 index 000000000..542af5f3e Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_land_slod1_children.ydd differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_props_prop17_slod_children.ydd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_props_prop17_slod_children.ydd new file mode 100644 index 000000000..28facb7d9 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_04_props_prop17_slod_children.ydd differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_occl_00.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_occl_00.ymap new file mode 100644 index 000000000..f2091453f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_occl_00.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7ff3f46bcbf8eded0bb74918ed9b18a7528baf077487a6accdd2a7374b7421d +size 20125 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_rdprops_cs2_wires42.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_rdprops_cs2_wires42.ydr new file mode 100644 index 000000000..1f4575895 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_rdprops_cs2_wires42.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0494082e19b67d73d8b9448871184a0c122a897e40bd7c2fd12ad1a11146233 +size 2911 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_rdprops_cs2_wires51.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_rdprops_cs2_wires51.ydr new file mode 100644 index 000000000..21c4dd037 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_rdprops_cs2_wires51.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:670b821ece97c9c1bcb6ac00f4094787657b0997a55d421c81586eaf3e09cd96 +size 10031 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_roads_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_roads_01.ydr new file mode 100644 index 000000000..f3da07821 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_roads_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80620744915d2c18a0b04dcf25386f88b3adb59454a976442c8e5ba864343f18 +size 78112 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_roads_wires_elec_stan15.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_roads_wires_elec_stan15.ydr new file mode 100644 index 000000000..cc5d459b1 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_roads_wires_elec_stan15.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c999d44bb13783e0dd0342573520fb24984eaa7cfe47a52830b9a7855705433f +size 1749 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_roads_wires_tele_heavy20.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_roads_wires_tele_heavy20.ydr new file mode 100644 index 000000000..37a599da6 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs2_roads_wires_tele_heavy20.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:316176b2fbb81f47ad4072abe89e3292a4531f8c80343e6b4a8dcb9dcdde69ad +size 2892 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs4_rd_props_xwire20.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs4_rd_props_xwire20.ydr new file mode 100644 index 000000000..0409720ec --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs4_rd_props_xwire20.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc62a7e12d9c1d9e0f8a22ec711e2d972b954e72939623ac59594b08825273a5 +size 6132 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs4_rd_props_xwire38.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs4_rd_props_xwire38.ydr new file mode 100644 index 000000000..1e323569e --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs4_rd_props_xwire38.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f57b5d34e4b6ec296e04eeb086fcb84300d4d338220d4dea5e0a17c2f02f1497 +size 5985 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs4_roadsb02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs4_roadsb02.ydr new file mode 100644 index 000000000..8fb0b624f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/cs4_roadsb02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eefb5a9ac38a260da7359d143813c0f9a6b7211a2f55e402fa7247ceef97ad37 +size 90705 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hei_cs2_04_critical_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hei_cs2_04_critical_0.ymap new file mode 100644 index 000000000..9d384ae30 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hei_cs2_04_critical_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24e679dee194f95017dbc93ff6a50a8ea4f0d51651c5f2c1186be10f9227dad3 +size 12723 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hei_cs2_04_grass_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hei_cs2_04_grass_0.ymap new file mode 100644 index 000000000..04f83ba54 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hei_cs2_04_grass_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83f0fe6ca076023faf0b07fd02e95d40ce7e95082afc8c09c2edb45a178b867c +size 500856 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hei_cs2_04_long_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hei_cs2_04_long_0.ymap new file mode 100644 index 000000000..01eccf9b6 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hei_cs2_04_long_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9af73b17b63e7fe04c71572cae944f63859f964424187c98459a4edf714f3375 +size 11617 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hei_cs2_04_strm_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hei_cs2_04_strm_0.ymap new file mode 100644 index 000000000..58a4dd14e --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hei_cs2_04_strm_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c44c2e08106d8d721d31b879686a28d9558da2d227030fa5787c00ed5190b737 +size 5389 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hei_cs2_04_strm_1.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hei_cs2_04_strm_1.ymap new file mode 100644 index 000000000..12f5d5e31 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hei_cs2_04_strm_1.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:684008ebf860d8a3790f010493c13eb725dc08ba93cc81d0694f6247a0efcddf +size 11131 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hi@cs2_04_0.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hi@cs2_04_0.ybn new file mode 100644 index 000000000..9af2571ac Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/hi@cs2_04_0.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/sf_phones.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/sf_phones.ymap new file mode 100644 index 000000000..0b3098271 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/base/sf_phones.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b057039e12a2d736babc9e4108846a7637eef5261eb99e232edb6b645d9f8e1c +size 2145 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ybn/gn_bc_firestation_0.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ybn/gn_bc_firestation_0.ybn new file mode 100644 index 000000000..22541047f Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ybn/gn_bc_firestation_0.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ybn/hi@gn_bc_firestation_0.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ybn/hi@gn_bc_firestation_0.ybn new file mode 100644 index 000000000..dd0e769d5 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ybn/hi@gn_bc_firestation_0.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydd/gn_bs_firestation_slod1_children.ydd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydd/gn_bs_firestation_slod1_children.ydd new file mode 100644 index 000000000..2c1fd26b7 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydd/gn_bs_firestation_slod1_children.ydd differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_build.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_build.ydr new file mode 100644 index 000000000..6635d9881 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_build.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e5023a958f2d1813c886d8dda3fdd81e3fbdf80c94558c56e0a8daebf0876f1 +size 80788 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_dcl.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_dcl.ydr new file mode 100644 index 000000000..f536c828e --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_dcl.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e241e87301fb4a9ea6ff64b6bb58a1c884b7f250bbe7d205bc02f1b54eb43f8 +size 11455 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_details.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_details.ydr new file mode 100644 index 000000000..34708a608 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_details.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a728e298e6c808867d7921cbaff6cfdb2c1278d9b987781c0de1cca7fc47acc +size 183285 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_ground.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_ground.ydr new file mode 100644 index 000000000..ce1b51f76 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_ground.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a20a8f64c0f971419d06bd3db7e8276322ea6b8bcd09f1e79dfd881a17198039 +size 123379 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_ground_dcl.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_ground_dcl.ydr new file mode 100644 index 000000000..dbf02031f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_ground_dcl.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9942d7df61a1509528724ff3c6999b690206febc2ccb409a6cd22f509526520 +size 5212 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_tower.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_tower.ydr new file mode 100644 index 000000000..a85640249 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_tower.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06a05b50f47909b2465b1419e476cb1419fe9077e25879be43d4d480554d78ed +size 91309 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_tower_decals.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_tower_decals.ydr new file mode 100644 index 000000000..074ac42da --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_tower_decals.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ad7ef0cc185e53d113684c37158db575246ac725a4b9c78aaf4a1a197158364 +size 13973 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_tower_glues.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_tower_glues.ydr new file mode 100644 index 000000000..082b368de --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_tower_glues.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd2562bb2a0b4c08cb5ef122d3873e53c943d1ed5b4d4e2bf672842b6c2db8f5 +size 4372 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_tower_stairs.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_tower_stairs.ydr new file mode 100644 index 000000000..5fd6a80fa --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_tower_stairs.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4434192acd8525c8556cdaac1b66e8342689e908b9b60ce85352ecd6a777e213 +size 44261 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_wire.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_wire.ydr new file mode 100644 index 000000000..a6765e3f0 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_bc_firestation_wire.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:843aa124431efc8753f8c07f6f34ef900ebc80475b71e2ffb7300f0a29fdc11f +size 4686 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_fire_emissive_night.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_fire_emissive_night.ydr new file mode 100644 index 000000000..bf2545a98 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ydr/gn_fire_emissive_night.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e36d5047bc39154bf90bf85939ae4d310962a34f973adb50a949e78265b7b616 +size 392630 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ymap/gn_bc_firestation_criticals.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ymap/gn_bc_firestation_criticals.ymap new file mode 100644 index 000000000..f752abf66 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ymap/gn_bc_firestation_criticals.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53c55d8c4269e7a2b913a98b7aa5c6ac6e246354a33031c35d26347c025d38d4 +size 3666 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ymap/gn_bc_firestation_lod.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ymap/gn_bc_firestation_lod.ymap new file mode 100644 index 000000000..81e4ece36 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ymap/gn_bc_firestation_lod.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82d085b3e42079a3ba50ff388de90db07dafa83edff3192ca460fa7bdf36f0b6 +size 1231 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ymap/gn_bc_firestation_strm.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ymap/gn_bc_firestation_strm.ymap new file mode 100644 index 000000000..57cdaf01f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ymap/gn_bc_firestation_strm.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b1fa6d0cefb0e16541865b8a626c05223d1c6caf3b1fb8cf61d8ed7fadb0a08 +size 1421 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ymap/int_gn_bc_firestation_milo.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ymap/int_gn_bc_firestation_milo.ymap new file mode 100644 index 000000000..e2cd72c28 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ymap/int_gn_bc_firestation_milo.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd6bff55bbc99a9aec334c5d63bf5b731b9c328df492aa6b3ee8daaee63d1b61 +size 1233 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ytd/gn_bc_firestation_lod_txd.ytd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ytd/gn_bc_firestation_lod_txd.ytd new file mode 100644 index 000000000..ba477bcf5 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ytd/gn_bc_firestation_lod_txd.ytd @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f182539262f6ad9f4eac1a634552976e88080f26f12cd3469196d3b01a5f537 +size 66803 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ytyp/gn_bc_firestation_metadata.ytyp b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ytyp/gn_bc_firestation_metadata.ytyp new file mode 100644 index 000000000..15370b97e Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ytyp/gn_bc_firestation_metadata.ytyp differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ytyp/gn_bc_firestation_strm.ytyp b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ytyp/gn_bc_firestation_strm.ytyp new file mode 100644 index 000000000..0e3e8976b Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/exterior/ytyp/gn_bc_firestation_strm.ytyp differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ybn/hi@int_gn_bc_firestation.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ybn/hi@int_gn_bc_firestation.ybn new file mode 100644 index 000000000..d4cdd5552 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ybn/hi@int_gn_bc_firestation.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ybn/int_gn_bc_firestation.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ybn/int_gn_bc_firestation.ybn new file mode 100644 index 000000000..a009b2abb Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ybn/int_gn_bc_firestation.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_ext_firestation_txd.ytd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_ext_firestation_txd.ytd new file mode 100644 index 000000000..6240c9b8e --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_ext_firestation_txd.ytd @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5bd2951f986a64d0577c615a78f5569560726a1fde87d84fd9b01efb6eab020d +size 8209366 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_bedroom_details.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_bedroom_details.ydr new file mode 100644 index 000000000..76539d930 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_bedroom_details.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5766c29c059f0f5558efe4b22bb9a55eced61b2efa80b1cc0b5efd9ad7af4342 +size 104779 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_bedroom_proxy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_bedroom_proxy.ydr new file mode 100644 index 000000000..c5616c624 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_bedroom_proxy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df814a9afd41a32ab1d585d927f0f3086d69f409da81db1e0eada1e0c45273a9 +size 99175 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_corridor_m_details.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_corridor_m_details.ydr new file mode 100644 index 000000000..16eef4d57 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_corridor_m_details.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43977c21bbf8bbff54535dfdee587a57156f89a124424ab97fb422d2d3071159 +size 118838 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_corridor_m_proxy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_corridor_m_proxy.ydr new file mode 100644 index 000000000..25320d445 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_corridor_m_proxy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72f20a51176787bc775a28f396f73e1e33966f1c80da68540e4362ac98486554 +size 180464 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_cpt_off_details.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_cpt_off_details.ydr new file mode 100644 index 000000000..c77374f38 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_cpt_off_details.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:694511f2c64f334ba0e272903da6a0b844b03175b871ccecd8dbce61c109daab +size 13365 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_cpt_off_proxy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_cpt_off_proxy.ydr new file mode 100644 index 000000000..dc54bc1d9 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_cpt_off_proxy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52ed272008940b5b7d9be2c3147c1b3dab1729708d0521bf8bbdf909ab202ec6 +size 82468 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_cpt_off_win_frame.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_cpt_off_win_frame.ydr new file mode 100644 index 000000000..aafcfe313 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_cpt_off_win_frame.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40a678684c9de6bcf1b1052969e5f170b46dee24cea545f71d30102c5133e128 +size 40859 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_dispatch_details.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_dispatch_details.ydr new file mode 100644 index 000000000..1396d198b --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_dispatch_details.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:454083188497216f7a660d2259975f2af6c581bf008a66a948f42ca89110b4dc +size 71984 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_dispatch_proxy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_dispatch_proxy.ydr new file mode 100644 index 000000000..bac022b8e --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_dispatch_proxy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b779dbb821574ec112c6200d22c7b645af920bb846503a781e9977fa1dad842 +size 90190 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_duct.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_duct.ydr new file mode 100644 index 000000000..6c46e8d3a --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_duct.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19c87a9182d6c954c5ff357bc073939931881d3cd0fcdd0089654a914bb65cc4 +size 80858 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_01.ydr new file mode 100644 index 000000000..7ce0d45f3 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43bbd7c53cb8f10b0a22faa9415a80892d851454337681add85e7241ec6a6308 +size 88047 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_02.ydr new file mode 100644 index 000000000..8ad0f0c5a --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb32660c16bdfde6b5c1cd9d18d92b38204c68df5bd07031c53e9604dceebaaa +size 204791 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_03.ydr new file mode 100644 index 000000000..3eec139a5 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43b7a4198a2bc2bd7f8884e9af92aa039429a3e8a7172d5518a2d674d87fcf13 +size 88486 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_04.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_04.ydr new file mode 100644 index 000000000..e80171613 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_04.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cdb4328d4e21debea475a58c1cddfc7ea0f1bca4315ba90e8fca5a8b883a3ed +size 199105 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_05.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_05.ydr new file mode 100644 index 000000000..030083cb0 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_05.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dea35017c1ea42679466f3528287170f8cce2ab3d6cff5cf93a2717941ef62de +size 87130 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_06.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_06.ydr new file mode 100644 index 000000000..faae47b48 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_06.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:020fbeeaa9c12d7987154a7b0db360ed3a3037282e468d904456148fd29bf24e +size 202869 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_07.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_07.ydr new file mode 100644 index 000000000..66a1aafbd --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_07.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b737ae64d9d75e4f1a7eee7177e1daa9baf31f9598c036bb090a9fbde3d3141 +size 88047 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_08.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_08.ydr new file mode 100644 index 000000000..da5136724 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_coils_08.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8ab7df23a3550c69dad38a4ce3f5bd9355e91e05451f9c70fae2722f9d68973 +size 199105 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_decals.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_decals.ydr new file mode 100644 index 000000000..d08be8ee5 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_decals.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f99c2628f56e5294bf747dd9f96714f9decae9d2c9751664bc955638e6bdc01 +size 20515 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_proxy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_proxy.ydr new file mode 100644 index 000000000..f03941332 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_proxy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:578ad534252594ee6cb1c7526063490f0aad202dcf2a79738a2160a4bed72ecb +size 470048 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_rails.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_rails.ydr new file mode 100644 index 000000000..e89fd0232 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_rails.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:816cad438f68083f7bd85a8fae77bd2d8603da0e3341b46a65d50f9a7fb9c86f +size 504750 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_tooldesk.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_tooldesk.ydr new file mode 100644 index 000000000..193fa5bb0 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_tooldesk.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b985c7b166eda009600febbf89d91050472102874ea516ff74407a5f725b0cae +size 7958 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_walls.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_walls.ydr new file mode 100644 index 000000000..779f7c6b9 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_garage_walls.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fbf83a8465f4ffb650b95daa83f84217eaad0e9cb1b426833aac317b2705d5a +size 17702 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_kitchen.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_kitchen.ydr new file mode 100644 index 000000000..89b7e682c --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_kitchen.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be09ac820965a6d7a9348ff8f9bd0ed492080a4d4f77021db03d8c2d6325af71 +size 231188 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_kitchen_details.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_kitchen_details.ydr new file mode 100644 index 000000000..5b42b55cd --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_kitchen_details.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27b6a63746cbf32afde209ef380a7ce9580cf206838075d5e6a10efb764309d9 +size 120327 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_kitchen_foodporn.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_kitchen_foodporn.ydr new file mode 100644 index 000000000..1f5a241d5 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_kitchen_foodporn.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cf249333ab665231ee3cae42dd3ef90ba4cb73fe26785587fe719ca0c4ceab7 +size 981958 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_kitchen_proxy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_kitchen_proxy.ydr new file mode 100644 index 000000000..3032f2d76 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_kitchen_proxy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a62b7066cc4f38e6bdd94919b57a5f40c4f85cac8dd7ce5ec7dd9e90535a7347 +size 120119 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_lobby_details.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_lobby_details.ydr new file mode 100644 index 000000000..de10763a3 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_lobby_details.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d89ea5f5d2fc4d80c1f18ba0b5b0b2ee944c683d1edf10fcf3fa9e493c4e150d +size 59101 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_lobby_enterframe.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_lobby_enterframe.ydr new file mode 100644 index 000000000..31324da3f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_lobby_enterframe.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d37875abde4113ccf7e451154506082f3e27d2bf18e4eb2fbeec3a8ee1dc788f +size 17402 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_lobby_proxy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_lobby_proxy.ydr new file mode 100644 index 000000000..72b777473 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_lobby_proxy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d12b1d9d90d0109ae543916ffd73321a56c91c2950c7c76c284c9e2cad381790 +size 208899 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_locker_per_details.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_locker_per_details.ydr new file mode 100644 index 000000000..d2f2804e7 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_locker_per_details.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2204591ce5f03fb0aaff90ead595de7b063730c0408c8532cff01af216efb5ee +size 226178 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_locker_per_miror.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_locker_per_miror.ydr new file mode 100644 index 000000000..3b5f1df65 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_locker_per_miror.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:780a64aa619881793c91882c132e00fe7eb4586b42ecb2bd69a486691d0f79c3 +size 5263 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_locker_per_proxy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_locker_per_proxy.ydr new file mode 100644 index 000000000..f01825e25 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_locker_per_proxy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7512319129db3ff480bbf53c8af961741e9f27437902c033405051671bd77f9 +size 130088 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_locker_prop_proxy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_locker_prop_proxy.ydr new file mode 100644 index 000000000..7b77f2874 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_locker_prop_proxy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00cfd10c678b36fe0bbc9fa23eecf7bc6b233e73e26f33aa59b2f43c64c0e32d +size 44934 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_meeting_details.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_meeting_details.ydr new file mode 100644 index 000000000..395c681dd --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_meeting_details.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc17b29a0aeba8c594e6f10c77e457891b527e48096987369aac27778c851f6d +size 10543 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_meeting_proxy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_meeting_proxy.ydr new file mode 100644 index 000000000..493314e05 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_meeting_proxy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b59c6535f0077f73f17b99c80ef92540448f8962b62b7d0a1fedee7b9927624 +size 89681 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_openspace_details.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_openspace_details.ydr new file mode 100644 index 000000000..f49f38680 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_openspace_details.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f86b3ec94a8879e8d6d2fb27141fd36e8750877247dba610c32f872b5927828 +size 66580 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_openspace_proxy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_openspace_proxy.ydr new file mode 100644 index 000000000..614723896 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_openspace_proxy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b6a03d936498e9393942d2af9f6bd8bce3c047a5d8516ee380a76758dfb5373 +size 112682 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_reception_details.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_reception_details.ydr new file mode 100644 index 000000000..3904978ca --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_reception_details.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:267ef7f6b80f10ecba225f1c341092cd6cde734f7edf6a7f7ef38154d3a1e825 +size 40492 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_reception_proxy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_reception_proxy.ydr new file mode 100644 index 000000000..929d3fd01 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_reception_proxy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b742adfa27bc2afa378c7b27c4a37d33894b7a07a97cd347e7b29092ee68c1d +size 84506 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_shell.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_shell.ydr new file mode 100644 index 000000000..e9e6479cd --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_shell.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ffdab92338bf583bd93c3f17c89ea88481f4b1d6483bb29a00e2468eec4ff2e6 +size 119079 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_training_details.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_training_details.ydr new file mode 100644 index 000000000..72ff07124 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_training_details.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9923316a55f4a3d1b3f6371b4bf952e3b46eb01f533cf086f5d3c14781df88d5 +size 61796 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_training_proxy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_training_proxy.ydr new file mode 100644 index 000000000..3850763fb --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_bc_firestation_training_proxy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed30ac0afbe8252cf8bbd2a1918d8e86e35f6a704aaeedb47b875738ad317deb +size 73474 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_01.ydr new file mode 100644 index 000000000..7fde7c3e7 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd85a0b774804dbac5090fd3a538b11390f20507afc0d877151f9cfb71462958 +size 30923 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_02.ydr new file mode 100644 index 000000000..5e6b4bcbd --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a18deadac97e9816dba8dd43e3820312a42ee4289ef9f83d7646875a376e50cb +size 29143 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_03.ydr new file mode 100644 index 000000000..5b21212da --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44a09d14bd10756a5ee199cda4792a1ceee0e1074dd0aee7c51eda1d39992d04 +size 25871 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_04.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_04.ydr new file mode 100644 index 000000000..cb283bba4 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_04.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d91f7675f48b5302791cf80e31425806452723aa0aa43ec74e4bf75323dbb576 +size 19549 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_05.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_05.ydr new file mode 100644 index 000000000..8bfc1655c --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_05.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d558d8a5591dc5fa95999ce2a00afb345bd6ba73e0b0cbd0ba123ce0db7ed012 +size 18453 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_06.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_06.ydr new file mode 100644 index 000000000..98eea5458 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_06.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:366364dcfd1d15d632e4f16235583e27b14bfedb9cb8e4353489ffbf757ba982 +size 16741 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_07.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_07.ydr new file mode 100644 index 000000000..42b581228 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_07.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4814c79c2c410bbee55791cd5254417affeec185df6fbdcec9537f6bc7ea7615 +size 38233 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_08.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_08.ydr new file mode 100644 index 000000000..927c2179b --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_door_08.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6858504a12d7164bd7906bdab946365f354d2a527c2c8164e319a4da5f28523f +size 26325 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_enterdoor_d.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_enterdoor_d.ydr new file mode 100644 index 000000000..f997fdab0 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_enterdoor_d.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1e846feb7fd96a96240737ca3659a29807d6798be32a9bdb8eee23e2abe5ae8 +size 8635 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_enterdoor_g.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_enterdoor_g.ydr new file mode 100644 index 000000000..a25a4ff6d --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_enterdoor_g.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3dc17df417624251abe243eb7a9c8bdbcad6bfe875aa09fb3bb24e6a1acec099 +size 8094 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_garage_door_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_garage_door_01.ydr new file mode 100644 index 000000000..ad2431304 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_garage_door_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8df0b79a3d268ddb6be50c07532b38110bf8c1684a0e5002b3a60da7aba0a61 +size 44483 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_wc_door_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_wc_door_01.ydr new file mode 100644 index 000000000..1a7595852 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_fire_wc_door_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bed37f67748c4cea9c987c4f650756cd9ac64a7ccaa8c74b7f50e0eb77ce3699 +size 8182 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_ceiling_lamp.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_ceiling_lamp.ydr new file mode 100644 index 000000000..456563854 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_ceiling_lamp.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69e94e779c03a170e9765acffe4b54243b8f1e65ddc772d6bd5602abaac32f2f +size 18171 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_corridor_decals_sandy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_corridor_decals_sandy.ydr new file mode 100644 index 000000000..e81f89095 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_corridor_decals_sandy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2719a88c13b1d53aa87524aa402f800f2db976dd893be42a7a6a85aba9fce24a +size 978 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_lobby_details_sandy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_lobby_details_sandy.ydr new file mode 100644 index 000000000..ffe4450fb --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_lobby_details_sandy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c0deb407f0d444539d5d4c743e892b70c30d66f751e04e701665226c1c5b585 +size 45835 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_meeting_details_sandy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_meeting_details_sandy.ydr new file mode 100644 index 000000000..5db29fd5e --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_meeting_details_sandy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9438fbdc4c8c343b8d4195865835b2e0cd7719254d8c89642414d966de9560b1 +size 27562 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_openspace_decals_sandy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_openspace_decals_sandy.ydr new file mode 100644 index 000000000..82d7f3b68 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_openspace_decals_sandy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c89fc4cc6f8039428bf69c05641be15f1f1c0e97e8c84dbe94a26ad8c8ee6ad9 +size 1141 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_reception_proxy_sandy.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_reception_proxy_sandy.ydr new file mode 100644 index 000000000..1e5885a38 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/gn_firestation_reception_proxy_sandy.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04091eba451fa51084dcc6fac5082da441009173927e8cb769b71bf622845ce6 +size 2900 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_bc_firestation_bollard.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_bc_firestation_bollard.ydr new file mode 100644 index 000000000..ba020eb91 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_bc_firestation_bollard.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24532174d8fe0ff24172ee52080d20e17f6523928658a5d09a8c8a9f33279e01 +size 71275 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_bc_firestation_vacuum.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_bc_firestation_vacuum.ydr new file mode 100644 index 000000000..bf97365c3 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_bc_firestation_vacuum.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01d13903a066ca055ce60a3a383dda8f377bbdfe5eca2e0a29d897c83449b3db +size 74227 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_chair_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_chair_01.ydr new file mode 100644 index 000000000..ed5f64400 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_chair_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44c61bea9712ebd15f05804e42c66df8316365c8d65fb1e8b6c2e767e432104f +size 44306 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_axe_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_axe_01.ydr new file mode 100644 index 000000000..3f62b844e --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_axe_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9618d09c012d519cae586bb89eff41e6a48d3384474d2cf888b2f9cd98d988cd +size 22477 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_bed_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_bed_01.ydr new file mode 100644 index 000000000..f8e148f38 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_bed_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:296e9633ba0de5c619893d5bc11482d55e4fac560d2ef3b7aac7a6e9ac955f46 +size 71867 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_bed_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_bed_02.ydr new file mode 100644 index 000000000..f6962825a --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_bed_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c566cd0ff033948daa64d6ccdad7dc08da5559a21edcf0874d691ccdf32796e2 +size 71569 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_board_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_board_01.ydr new file mode 100644 index 000000000..7d3dafba2 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_board_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d87884d358e6507aa76164091d01f06dc75fbcb53f09d3d17b2774146ae0c27e +size 51422 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_board_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_board_02.ydr new file mode 100644 index 000000000..037a188bd --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_board_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18db104e918292d974120ec1b5188ec3bab9fedf84b3da7c384139947b95716a +size 51444 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_board_a.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_board_a.ydr new file mode 100644 index 000000000..462d54a7d --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_board_a.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:690614c069414569f7c37ae53241158b60763cc27ab84bc1c5c2a3d437c315b6 +size 183895 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_break_table_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_break_table_01.ydr new file mode 100644 index 000000000..70bfec9ff --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_break_table_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3cdffabfda1a8330668bd1fa756629efdb019d53036f667d9408580e9433ecf3 +size 12883 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_break_table_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_break_table_02.ydr new file mode 100644 index 000000000..4b934d1cc --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_break_table_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef75aed77d0483480491151e73f2c103212d54e25ca08a3b86bdf615ca6ad742 +size 30822 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_break_table_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_break_table_03.ydr new file mode 100644 index 000000000..5eac8a5f1 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_break_table_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4dcf4a5611a6dc33b192013c5b7128cc89763df09b8bb828e9cd1bca58f4c768 +size 8094 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_briefing_table_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_briefing_table_01.ydr new file mode 100644 index 000000000..473f14207 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_briefing_table_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bce6b0dae578ded6e562248bcc2996ad49530986ee4f505399367392e277ac50 +size 11178 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_capt_shelf_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_capt_shelf_01.ydr new file mode 100644 index 000000000..f0db44785 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_capt_shelf_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bab585523b696cffe33c20fe9755fb0e6f409b5a7fcf342d7ff438fdba52313a +size 275193 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_captain_office_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_captain_office_01.ydr new file mode 100644 index 000000000..cc9abcbdf --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_captain_office_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7bde58c8e2c2902ac18bb534b33cde0e201ecc34ae60c9be4601b5aff46cdde +size 100967 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_captain_office_details_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_captain_office_details_01.ydr new file mode 100644 index 000000000..46c1444f6 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_captain_office_details_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c88a91ee92c2a266b6503fced8ff2e649dc22c4494b8c45ae9b514c798f41c86 +size 150967 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_captain_office_details_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_captain_office_details_02.ydr new file mode 100644 index 000000000..360baed06 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_captain_office_details_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e450bac150983e0c467601a0f99de3906a26e9e23d5448a1218c2f1d569a27e5 +size 170197 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_captain_table_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_captain_table_01.ydr new file mode 100644 index 000000000..c7917ba77 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_captain_table_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77aa2556eef65b1713c4a6b90c60d51fc7b0a6740610eead3ee86bcfbdfd8bec +size 52890 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_case_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_case_01.ydr new file mode 100644 index 000000000..e09757f1c --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_case_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:697a6063230e3fd292cf9788ec38ba24f57b57b2cd2a509d5658ce429cfb3a84 +size 167564 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_case_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_case_02.ydr new file mode 100644 index 000000000..112992f20 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_case_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31726c9f714370dc463be22cf3d8150073de7f4df84cf166ab4d086cc4fcda79 +size 54578 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_case_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_case_03.ydr new file mode 100644 index 000000000..da7c98e39 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_case_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b45b111b45e3edf59b38f840af76c07b9c67e22e1b64677d1990e1d9d2bad236 +size 174854 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_case_04.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_case_04.ydr new file mode 100644 index 000000000..82cba11d8 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_case_04.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:646e27e933f77917f1ebdd551cfa6d2cde2236a4085af6d49c3d083ec96acbf0 +size 206796 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_02_b.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_02_b.ydr new file mode 100644 index 000000000..6fc0c078e --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_02_b.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37342385c3b303eae20b8578c9893bb184b8221112990e7296447cbafce1ec7c +size 27902 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_02_r.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_02_r.ydr new file mode 100644 index 000000000..0db2aea12 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_02_r.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c118d7a595c3648532646bc40a00dead856f79fcd0b881b56e400b17e0f11f8 +size 27924 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_dirt_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_dirt_01.ydr new file mode 100644 index 000000000..d3605cd7d --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_dirt_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:847221b88b88fee85b396e5988502d7560414d56ce10ac2500a59189d5298a61 +size 29070 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_dirt_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_dirt_02.ydr new file mode 100644 index 000000000..b5467ade3 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_dirt_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e70fe9ee1ef6aba259a329f7cb2c0ce2d24d3f67e0e786358599af0495ead374 +size 33443 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_dirt_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_dirt_03.ydr new file mode 100644 index 000000000..e1a21432b --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_dirt_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19c6763ec780a1e1c771fbf1e85c71305bd8e16774879d38f1ee2098ca496c8b +size 30992 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_dirt_04.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_dirt_04.ydr new file mode 100644 index 000000000..f6397c3cd --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_chair_dirt_04.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34bb3d1594abb09cfd0d61a36e19d3933c9d205ab95525f59e35b3bc8ccaf147 +size 36168 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_cpt_shelf_detail_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_cpt_shelf_detail_01.ydr new file mode 100644 index 000000000..efa1b239c --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_cpt_shelf_detail_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b111e7b61c641db52f6344a37388b97bd6060541367a0583e88190e42665b871 +size 5521 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_flag_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_flag_01.ydr new file mode 100644 index 000000000..e27628ab6 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_flag_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2d50ad70f575ab17d79daeb0166ecb1f4bef2ed3bd881861728dc0ba0656cef +size 8326 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_flag_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_flag_02.ydr new file mode 100644 index 000000000..24a4ee821 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_flag_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc2efdd968bd9834edfdf7b4420a506d61b6a13a017741fb9a7d7ac6c18b4d4e +size 8331 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_01.ydr new file mode 100644 index 000000000..b03a6b70d --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3eacb3a6bdb0dd98c2cd64a9ad43b9e93a10cd69257d36fce858d70d21a7853 +size 3196 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_02.ydr new file mode 100644 index 000000000..2a529fc8b --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:049eecd1dbb86c6bf005c5e6062d3e506a0c2ea1e450cad0e5baa9bba5b1ad33 +size 3195 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_03.ydr new file mode 100644 index 000000000..6e1f5137e --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1a568aae927db54a7e65e5f465a2b43a17a496dc5cbfd8a9102b28ddc6553ec +size 3191 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_04.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_04.ydr new file mode 100644 index 000000000..e4963e193 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_04.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b195891a68ee0fa565dff3a06af322c342b462ce612528aaa4fffb8b9959351 +size 3194 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_05.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_05.ydr new file mode 100644 index 000000000..cc2432913 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_05.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:beca7a4849cd14873ccf97370f01b264da01d1e5d0c66fa2b7377e4a46cc97a7 +size 3164 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_06.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_06.ydr new file mode 100644 index 000000000..9372f2bda --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_06.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1348f9a917d5c07ce65680e862254c23271a1726091d359cf4f63d3411a00c1 +size 3167 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_07.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_07.ydr new file mode 100644 index 000000000..a55c9f15d --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_07.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d509b5e8ccded7767ba9898933559b57134c454127320c8f22bee665633d78ec +size 3166 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_08.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_08.ydr new file mode 100644 index 000000000..4496cfbc8 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_08.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c11a72462cbf8cc7353b92c2ef76eecfd2022752f65e8b3a592f586e69b9ce7 +size 15932 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_09.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_09.ydr new file mode 100644 index 000000000..a84058408 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_09.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45ac2c412c4c39ee1a976ce38601b3de5809c98370712f2feb15e6a848afab6d +size 3193 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_10.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_10.ydr new file mode 100644 index 000000000..d9bee1d10 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_10.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42a6be77d65a64f8a56071dc0f7957e2533b346f1fadacdd409f99c15db7ac05 +size 3191 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_11.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_11.ydr new file mode 100644 index 000000000..d6f616c4a --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_11.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cefe8136d714b653b7054e8f1bd08fe99d479e16f64378d5de7569ece424189b +size 3193 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_12.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_12.ydr new file mode 100644 index 000000000..4116a6588 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_12.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ea4a96f25b491b3b6d32fec8c64abeae01ac8487370730461e80ac7699944ef +size 3194 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_13.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_13.ydr new file mode 100644 index 000000000..3be8221e5 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_13.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f3067fd813f8d40cf953b9339f99734205664634a6c7ce72790924a763f283c4 +size 3381 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_14.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_14.ydr new file mode 100644 index 000000000..8f52669ee --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_14.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49ff8ee98390c1fa560583988742965ebe0a8c55cdb7dd90a0234a22e2f19cc2 +size 3345 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_diploma_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_diploma_01.ydr new file mode 100644 index 000000000..7fae3c182 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_diploma_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8cb22a3c347a29233eb875083bf05cdc18f01c2e14193bbeaa80ad10666df249 +size 3266 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_diploma_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_diploma_02.ydr new file mode 100644 index 000000000..ab6dfb91e --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_diploma_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d50b4307b1168f94ec08b5ba65e5c76ebaa47b453a36684c3d3b674d49655713 +size 3289 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_diploma_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_diploma_03.ydr new file mode 100644 index 000000000..46c7e0c3a --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_diploma_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa76c6711c402323cfee2a3accf55f94ba3448835c9e71eff54f5dcec6ef1eb6 +size 3290 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_diploma_04.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_diploma_04.ydr new file mode 100644 index 000000000..99df1b29a --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_frame_diploma_04.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a1098baa6b9cd8e78d0813a24bbddd05238eaf56f4d27d7a03c4d9de153ad54 +size 3305 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_fridge.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_fridge.ydr new file mode 100644 index 000000000..ca1ac9ff1 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_fridge.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:faf3ceefcb8e36ac213e4513f3d2f54d837bf5c785759766bb43d04bc903b2b9 +size 16767 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_helmet_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_helmet_01.ydr new file mode 100644 index 000000000..eccf10440 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_helmet_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:097a38da4f04a258357741138ba5c8cf52c3f7158ada682126bc44fc486dfe7a +size 24429 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_helmet_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_helmet_02.ydr new file mode 100644 index 000000000..faaad9dc0 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_helmet_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7583811b8546bc9465b390a5a5b9175abf03cbf7df4dc6762cc70f31919e1e6 +size 24429 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_01.ydr new file mode 100644 index 000000000..67bc6d5f9 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e958e721672e60985d66750920ba380a1a8f7c50479ef96a09846dbf5efc669 +size 51383 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_02.ydr new file mode 100644 index 000000000..6eb2773d3 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b939cc2d71f9585d6febfb2d2ae5f387d765a411c6987b7ef0d360f1531e5fd +size 27253 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_03.ydr new file mode 100644 index 000000000..48874c3e3 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0990a52ede58ae86af60b6df5a41499275204ec2adbd259c8cb9481f5d4c607 +size 16342 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_04.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_04.ydr new file mode 100644 index 000000000..51a1d4b8d --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_04.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:103fa38a1575c6e69ebfe524c2fef997e2ba4e110113cb319b44af5b939a4d93 +size 17261 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_05.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_05.ydr new file mode 100644 index 000000000..3ad44550a --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_05.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1238ff1a9a478dc108acc6416ea3da0520eaf1fda2342db8966202351584a7cd +size 16033 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_06.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_06.ydr new file mode 100644 index 000000000..d6c302da1 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_06.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fbb6c9f4e5635b49a0603f47875c2479ed02da19b5b7407b84ad2cb25f51fe26 +size 49175 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_07.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_07.ydr new file mode 100644 index 000000000..52fe8c2c8 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_07.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b34ced747c80bc2cc112fb32c3e1c10ca4f906b78df5d999925c924d8f62ee58 +size 29252 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_08.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_08.ydr new file mode 100644 index 000000000..079b1ccb3 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_08.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19ab1510ca2f8e5f503373e12730d3bf59116983587e77cef231a5e74dc51d5d +size 15497 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_bench_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_bench_01.ydr new file mode 100644 index 000000000..766d2da50 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_locker_bench_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c185ad4f0928b0cb1c7aaae2c41867b1bc1da3ad22f88b6a585b7f2217aa63c +size 15957 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_01.ydr new file mode 100644 index 000000000..6c05ae2b6 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25c29b6e331345e0a6a3a6f6babbf71257efe44b95418279ebc95c84812d95d8 +size 12535 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_02.ydr new file mode 100644 index 000000000..b5d0ad20f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:271d4af45392038fdf5c2a4be434edc41a4e5098c3944288641bfd2a5ab8c15a +size 9356 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_dcl_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_dcl_01.ydr new file mode 100644 index 000000000..83d0c6ef4 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_dcl_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99536ec4dc8eeb1aba73f4bbaeb2eb125d9b77bed8bc28b4ccd4c1a72c2c6bae +size 492 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_dcl_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_dcl_02.ydr new file mode 100644 index 000000000..dd3c518eb --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_dcl_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0237c5f98e7960460c7ed7f055b9823261f79fb26c5999b55466c77af0cf9f7 +size 489 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_dcl_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_dcl_03.ydr new file mode 100644 index 000000000..930ec6e15 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_dcl_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3499b42dd5d2a85c9908776e8deafc5f3f05599a4c1178b716fb3a69e0d009df +size 963 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_def_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_def_02.ydr new file mode 100644 index 000000000..3d738eeb9 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_logo_def_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a7f0f6c2a4528209549b2ee2223ae0edf4dd0a2605e3cb19497465a8b37efca +size 11357 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_offshelf_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_offshelf_01.ydr new file mode 100644 index 000000000..46ba5975a --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_offshelf_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:deb789dbd147e6a4b8f099a39ca94cd5659e883456a7293247ba7ca660adbbad +size 147681 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_os_office_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_os_office_01.ydr new file mode 100644 index 000000000..b73edff77 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_os_office_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93fcd09e456cf47d9994117229bb18fe85e146c8f36094a7dc7bf1bfca0b3f74 +size 44952 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_os_office_details_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_os_office_details_01.ydr new file mode 100644 index 000000000..89d45de64 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_os_office_details_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de9a5c3f259b35be8d1787e4a17826b36f2af8905f8828bf98dcaa3d635f8c15 +size 92934 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_os_office_details_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_os_office_details_02.ydr new file mode 100644 index 000000000..a7df99156 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_os_office_details_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc188dc29ae5892a12cd734ea9e2e7a7cdbb3eef6d38a26124e9175be1387665 +size 110268 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_recept_bench_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_recept_bench_01.ydr new file mode 100644 index 000000000..5012a69a0 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_recept_bench_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6ceb5f616676d84c32d5e9f84196993c7613b0de1cff8be57df2b91ca641a59 +size 60301 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_recept_bench_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_recept_bench_02.ydr new file mode 100644 index 000000000..b6b720b43 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_recept_bench_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ee443a0887e95419e6a40b7e6311826f5f6ddb2aa5ba546f0924745d99525f9 +size 38809 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_reunion_table_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_reunion_table_01.ydr new file mode 100644 index 000000000..fcffd8d3f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_reunion_table_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9dc8c147a8fc05925d31d33904272ba4f3244c1b564488fd31fb036822274d9 +size 23167 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_sofa_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_sofa_01.ydr new file mode 100644 index 000000000..1ce76e969 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_sofa_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec0749320bae55f32e6a06b257ded4d201424e4d3b86a08251999a6d685c3178 +size 56892 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_table_rest.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_table_rest.ydr new file mode 100644 index 000000000..815d739a7 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/prop_gn_fire_table_rest.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3fbc04a8da1f42de12a6d09f14a696d6fd4496aa28d4a6432d0a1bd548ffe1ac +size 135142 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/script_rt_gn_fire_meeting_tv.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/script_rt_gn_fire_meeting_tv.ydr new file mode 100644 index 000000000..00126d753 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ydr/script_rt_gn_fire_meeting_tv.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef2073dfa536ee581a4db8084f1dbf8fbb92494d32b3ef63018e87854590e915 +size 1302 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ytd/gn_bc_firestation_txd.ytd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ytd/gn_bc_firestation_txd.ytd new file mode 100644 index 000000000..919dfa97e --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ytd/gn_bc_firestation_txd.ytd @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc4962103f583920d458e6de08d5a5e1f48b7a635a62760f42557de4693301db +size 12108753 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ytyp/gn_bc_firestation.ytyp b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ytyp/gn_bc_firestation.ytyp new file mode 100644 index 000000000..102f2ad5d Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ytyp/gn_bc_firestation.ytyp differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ytyp/gn_bc_firestation_props.ytyp b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ytyp/gn_bc_firestation_props.ytyp new file mode 100644 index 000000000..b65dc3e5a Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_bc_firestation/stream/interior/ytyp/gn_bc_firestation_props.ytyp differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/.fxap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/.fxap new file mode 100644 index 000000000..7cccf35a5 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/.fxap differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/README.md b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/README.md new file mode 100644 index 000000000..de0f79cbe --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/README.md @@ -0,0 +1 @@ +# README diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/fxmanifest.lua b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/fxmanifest.lua new file mode 100644 index 000000000..1da65ba54 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/fxmanifest.lua @@ -0,0 +1,27 @@ +fx_version 'cerulean' +use_experimental_fxv2_oal 'yes' +lua54 'yes' +game 'gta5' + +author 'G&N_s Studio' +description 'G&N_s Base Ressource' +version '4.2.0' + +this_is_a_map 'yes' + +data_file 'DLC_ITYP_REQUEST' 'stream/nels_medical_props.ytyp' +data_file 'DLC_ITYP_REQUEST' 'stream/gn_medical_assets.ytyp' +data_file 'INTERIOR_PROXY_ORDER_FILE' 'interiorproxies.meta' + +files { + 'interiorproxies.meta' +} + +server_script 'server.lua' + +escrow_ignore { + 'stream/**/*.ytd', + 'server.lua' -- Please keep this file to stay tuned about all our updates! +} + +dependency '/assetpacks' \ No newline at end of file diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/interiorproxies.meta b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/interiorproxies.meta new file mode 100644 index 000000000..68ecbdb9e --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/interiorproxies.meta @@ -0,0 +1,341 @@ + + + + + + + int_hotel_corridor01 + int_hotel_doubleroom101 + int_hotel_doubleroom102 + int_hotel_doubleroom103 + int_hotel_doubleroom104 + int_hotel_doubleroom105 + int_hotel_doubleroom106 + int_hotel_room101 + int_hotel_room102 + int_hotel_room103 + int_hotel_room104 + int_hotel_room105 + int_hotel_room106 + int_hotel_room107 + int_hotel_room108 + int_hotel_room109 + int_hotel_room110 + int_hotel_room111 + int_hotel_room112 + int_hotel_room113 + int_hotel_room114 + int_hotel_room115 + int_hotel_room116 + int_hotel_room117 + int_hotel_room118 + int_hotel_room119 + int_hotel_room120 + int_hotel_room121 + int_hotel_room122 + int_hotel_room123 + int_hotel_room124 + int_hotel_corridor02 + int_hotel_doubleroom201 + int_hotel_doubleroom202 + int_hotel_doubleroom203 + int_hotel_doubleroom204 + int_hotel_doubleroom205 + int_hotel_doubleroom206 + int_hotel_room201 + int_hotel_room202 + int_hotel_room203 + int_hotel_room204 + int_hotel_room205 + int_hotel_room206 + int_hotel_room207 + int_hotel_room208 + int_hotel_room209 + int_hotel_room210 + int_hotel_room211 + int_hotel_room212 + int_hotel_room213 + int_hotel_room214 + int_hotel_room215 + int_hotel_room216 + int_hotel_room217 + int_hotel_room218 + int_hotel_room219 + int_hotel_room220 + int_hotel_room221 + int_hotel_room222 + int_hotel_room223 + int_hotel_room224 + int_hotel_corridor03 + int_hotel_doubleroom301 + int_hotel_doubleroom302 + int_hotel_doubleroom303 + int_hotel_doubleroom304 + int_hotel_doubleroom305 + int_hotel_doubleroom306 + int_hotel_room301 + int_hotel_room302 + int_hotel_room303 + int_hotel_room304 + int_hotel_room305 + int_hotel_room306 + int_hotel_room307 + int_hotel_room308 + int_hotel_room309 + int_hotel_room310 + int_hotel_room311 + int_hotel_room312 + int_hotel_room313 + int_hotel_room314 + int_hotel_room315 + int_hotel_room316 + int_hotel_room317 + int_hotel_room318 + int_hotel_room319 + int_hotel_room320 + int_hotel_room321 + int_hotel_room322 + int_hotel_room323 + int_hotel_room324 + int_hotel_corridor04 + int_hotel_doubleroom401 + int_hotel_doubleroom402 + int_hotel_doubleroom403 + int_hotel_doubleroom404 + int_hotel_doubleroom405 + int_hotel_doubleroom406 + int_hotel_room401 + int_hotel_room402 + int_hotel_room403 + int_hotel_room404 + int_hotel_room405 + int_hotel_room406 + int_hotel_room407 + int_hotel_room408 + int_hotel_room409 + int_hotel_room410 + int_hotel_room411 + int_hotel_room412 + int_hotel_room413 + int_hotel_room414 + int_hotel_room415 + int_hotel_room416 + int_hotel_room417 + int_hotel_room418 + int_hotel_room419 + int_hotel_room420 + int_hotel_room421 + int_hotel_room422 + int_hotel_room423 + int_hotel_room424 + int_hotel_corridor05 + int_hotel_doubleroom501 + int_hotel_doubleroom502 + int_hotel_doubleroom503 + int_hotel_doubleroom504 + int_hotel_doubleroom505 + int_hotel_doubleroom506 + int_hotel_room501 + int_hotel_room502 + int_hotel_room503 + int_hotel_room504 + int_hotel_room505 + int_hotel_room506 + int_hotel_room507 + int_hotel_room508 + int_hotel_room509 + int_hotel_room510 + int_hotel_room511 + int_hotel_room512 + int_hotel_room513 + int_hotel_room514 + int_hotel_room515 + int_hotel_room516 + int_hotel_room517 + int_hotel_room518 + int_hotel_room519 + int_hotel_room520 + int_hotel_room521 + int_hotel_room522 + int_hotel_room523 + int_hotel_room524 + int_hotel_corridor06 + int_hotel_doubleroom601 + int_hotel_doubleroom602 + int_hotel_doubleroom603 + int_hotel_doubleroom604 + int_hotel_doubleroom605 + int_hotel_doubleroom606 + int_hotel_room601 + int_hotel_room602 + int_hotel_room603 + int_hotel_room604 + int_hotel_room605 + int_hotel_room606 + int_hotel_room607 + int_hotel_room608 + int_hotel_room609 + int_hotel_room610 + int_hotel_room611 + int_hotel_room612 + int_hotel_room613 + int_hotel_room614 + int_hotel_room615 + int_hotel_room616 + int_hotel_room617 + int_hotel_room618 + int_hotel_room619 + int_hotel_room620 + int_hotel_room621 + int_hotel_room622 + int_hotel_room623 + int_hotel_room624 + int_hotel_corridor07 + int_hotel_doubleroom701 + int_hotel_doubleroom702 + int_hotel_doubleroom703 + int_hotel_doubleroom704 + int_hotel_doubleroom705 + int_hotel_doubleroom706 + int_hotel_room701 + int_hotel_room702 + int_hotel_room703 + int_hotel_room704 + int_hotel_room705 + int_hotel_room706 + int_hotel_room707 + int_hotel_room708 + int_hotel_room709 + int_hotel_room710 + int_hotel_room711 + int_hotel_room712 + int_hotel_room713 + int_hotel_room714 + int_hotel_room715 + int_hotel_room716 + int_hotel_room717 + int_hotel_room718 + int_hotel_room719 + int_hotel_room720 + int_hotel_room721 + int_hotel_room722 + int_hotel_room723 + int_hotel_room724 + gn_burgershot_milo + gn_von_lobby_milo + gn_burgershot_mp_milo_ + gn_burgershot_sandy_milo_ + hen_house_placement + gn_clinic_paleto_milo + gn_ambulance_carpack_milo + gn_clinic_sandy_milo + gn_cluckin_milo + mazebank_west_milo + gn_ambulance_lsmc_carpack_milo + gn_medic_cls_medic_milo + gn_medic_f1_cls_medic_milo + gn_medic_lift_cls_medic_milo + gn_ambulance_pillbox_carpack_milo + gn_medic_f1_pillbox_milo + gn_medic_lift_pillbox_milo + gn_medic_pillbox_milo + gn_ambulance_mz_carpack_milo + gus_helipad_placement + mz_carpack_milo + operation_floor + room_milo + urgence_milo + gn_von_delperro_carpack_milo + gn_von_delperro_floor_1_milo + gn_von_delperro_floor_2_milo + gn_von_delperro_floor_3_milo + gn_von_delperro_floor_4_milo + gn_von_delperro_floor_5_milo + gn_von_delperro_floor_6_milo + gn_von_delperro_lobby_milo + gn_von_delperro_stair_milo + gn_von_littlesoul_a_carpack_milo + gn_von_littlesoul_a_floor_1_milo + gn_von_littlesoul_a_floor_2_milo + gn_von_littlesoul_a_floor_3_milo + gn_von_littlesoul_a_floor_4_milo + gn_von_littlesoul_a_floor_5_milo + gn_von_littlesoul_a_floor_6_milo + gn_von_littlesoul_a_lobby_milo + gn_von_littlesoul_a_stair_milo + gn_von_littlesoul_b_carpack_milo + gn_von_littlesoul_b_floor_1_milo + gn_von_littlesoul_b_floor_2_milo + gn_von_littlesoul_b_floor_3_milo + gn_von_littlesoul_b_floor_4_milo + gn_von_littlesoul_b_floor_5_milo + gn_von_littlesoul_b_floor_6_milo + gn_von_littlesoul_b_lobby_milo + gn_von_littlesoul_b_stair_milo + gn_upnatom_highway_milo_ + gn_upnatom_vw_milo + int_gn_sheriff_sandyshore_milo_ + int_gn_sheriff_davis_milo_ + int_gn_bc_firestation_milo + 001_sm_room_01_milo_ + 002_sm_room_02_milo_ + 003_sm_room_01_milo_ + 004_sm_room_02_milo_ + 005_sm_room_01_milo_ + 006_sm_room_02_milo_ + 007_sm_room_01_milo_ + 008_sm_room_02_milo_ + 009_sm_room_01_milo_ + 010_sm_room_02_milo_ + 101_sm_room_01_milo_ + 102_sm_room_02_milo_ + 103_sm_room_01_milo_ + 104_sm_room_02_milo_ + 105_sm_room_01_milo_ + 106_sm_room_02_milo_ + 107_sm_room_01_milo_ + 108_sm_room_02_milo_ + 109_sm_room_01_milo_ + 110_sm_room_02_milo_ + 201_sm_room_01_milo_ + 202_sm_room_02_milo_ + 203_sm_room_01_milo_ + 204_sm_room_02_milo_ + 205_sm_room_01_milo_ + 206_sm_room_02_milo_ + 207_sm_room_01_milo_ + 208_sm_room_02_milo_ + 209_sm_room_01_milo_ + 210_sm_room_02_milo_ + 301_sm_room_01_milo_ + 302_sm_room_02_milo_ + 303_sm_room_01_milo_ + 304_sm_room_02_milo_ + 305_sm_room_01_milo_ + 306_sm_room_02_milo_ + 307_sm_room_01_milo_ + 308_sm_room_02_milo_ + 309_sm_room_01_milo_ + 310_sm_room_02_milo_ + gn_sandyshop_bettercall_milo_ + gn_sandyshop_binco_milo_ + gn_sandyshop_critical_01 + gn_sandyshop_fleecabank_milo_ + gn_sandyshop_liquor_milo_ + gn_benefactor_milo_ + int_fvineyard_milo_ + int_garage_milo_ + int_gn_sanders_milo_ + gn_sheriff2_grapeseed_milo_ + gn_sheriff2_paleto_milo_ + gn_upnatom2_milo_ + gn_biker_grapeseed_milo_ + gn_biker_barn_grapeseed_milo_ + gn_fleeca_grapeseed_milo_ + gn_house01_grapeseed_milo_ + gn_house02_grapeseed_milo_ + gn_house03_grapeseed_milo_ + gn_house04_grapeseed_milo_ + gn_house05_grapeseed_milo_ + + \ No newline at end of file diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/server.lua b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/server.lua new file mode 100644 index 000000000..8af50e6e1 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/server.lua @@ -0,0 +1,69 @@ +--! Please keep this file to stay tuned about all our updates! + +local GITHUB_URL = 'https://raw.githubusercontent.com/G-N-s-Studio/gn_versions/main/versions.json' +local git_versions + +local function loadVersions() + PerformHttpRequest(GITHUB_URL, function(status, response) + if status ~= 200 then return end + git_versions = json.decode(response) + end, 'GET') +end + +local function checkResources() + loadVersions() + + local format = string.format + local getNumResources = GetNumResources + local getResourceByFindIndex = GetResourceByFindIndex + local getResourceMetadata = GetResourceMetadata + local print = print + local wait = Wait + local isGnEnv = GetConvarInt('isGnEnv', 0) == 1 + + local function isGnResource(resourceName) + local author = GetResourceMetadata(resourceName, 'author', 0) + return author and author:find('G&N') and resourceName:find('gn_') + end + + local function isStarted(resource) + return GetResourceState(resource):find('start') + end + + -- Wait for git_versions with a timeout + local timeout = 1000 + while not git_versions and timeout > 0 do + wait(0) + timeout -= 1 + end + + if not git_versions then return end + + local resourcesCount = getNumResources() + + for i = 1, resourcesCount do + local resource = getResourceByFindIndex(i) + + if resource and isGnResource(resource) then + local latestVersion = git_versions[resource] + + if isGnEnv and not latestVersion then + print("^5[G&N's Studio]^6[DEV] ^3No latest version found for " .. resource .. "^7") + elseif latestVersion and isStarted(resource) then + local currentVersion = getResourceMetadata(resource, 'version', 0) + + if currentVersion and currentVersion < latestVersion then + local msg = format("^3・[G&N's Studio] v%s is available for ^5%s^3 (current version: %s)\r\n・Download it here: ^5%s^7", + latestVersion, + resource, + currentVersion, + 'https://keymaster.fivem.net/' + ) + print(msg) + end + end + end + end +end + +CreateThread(checkResources) diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_bookholder.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_bookholder.ydr new file mode 100644 index 000000000..5746bccc8 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_bookholder.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea680fa5e4b817a9459901e23b8519b41ab6ee5916c4789986acd7d4daee7acc +size 4756 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_01.ydr new file mode 100644 index 000000000..2c598eb74 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a5d6c67bb4f36fc489d21d4ee2c2c19a5dddabb536ee850ff5c293c0cb254cd +size 1978 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_02.ydr new file mode 100644 index 000000000..61e4a2fcc --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e2bbe260fd517400d0510f347c567a67aa93dd190737f2cc69fe8eca5b95fac +size 4681 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_03.ydr new file mode 100644 index 000000000..b01c7e7e7 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d1c07cdcf58259de232bf57c1cf5ff69a396101dd314e210c3642b98318370f +size 4259 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_04.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_04.ydr new file mode 100644 index 000000000..edc039fd2 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_04.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5183ea706c878a4d52281d10dd15e86869d08c6f41545ab5a9c282168c173e94 +size 2120 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_05.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_05.ydr new file mode 100644 index 000000000..4f1713d82 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_05.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd92e3554627393272ad64d2843f58acd68bf44239288681b69a4da4f4f93081 +size 2158 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_06.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_06.ydr new file mode 100644 index 000000000..d81584086 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_06.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd7128fae6d858e368a596560c66d928a10cc6741ba9c87bd4ba8f3a5e0c0a8f +size 1991 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_07.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_07.ydr new file mode 100644 index 000000000..e55bef756 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_07.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01093001eddf349fb1d6c34ea2c65e5ac42a336a1f1200e39fb4309b80783fe1 +size 1951 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_08.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_08.ydr new file mode 100644 index 000000000..867bafed4 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_08.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:468dfec7502431361510f199aeaf81fe75e3da300f94ad021af7d8a2eaed7628 +size 4350 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_09.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_09.ydr new file mode 100644 index 000000000..a4bb6a7fd --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_cultural_stuff_09.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05d54ac305a058a5b0009c14aeb00b316acac51667138ff3ffab869fe85746e5 +size 6827 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_01.ydr new file mode 100644 index 000000000..51134afba --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:acebb072746d4aaefbfaf2aba9c9ec051950280057c8cefadc4a160c10bee8c2 +size 2307 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_02.ydr new file mode 100644 index 000000000..59eedc4f0 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37c174079578dd11be4cde544b2a9fe721673e94c32834d6970643bdec888dfa +size 2143 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_03.ydr new file mode 100644 index 000000000..0e8d18c5c --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f23cc853b493d52a5517001c8099002d7d49aa0ca9993cadb4dba3f5eb86aac +size 2140 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_04.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_04.ydr new file mode 100644 index 000000000..680b29960 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_04.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:12a0288cc21d4579f9b6dbbe50902202c6c9b648c616c4eacf4e074d910078b3 +size 2425 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_05.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_05.ydr new file mode 100644 index 000000000..b8f7fe200 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_05.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:790c21d9baadbd719c58719368784a8ddfeeeae9e1eda9068765cd64667fca99 +size 2152 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_06.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_06.ydr new file mode 100644 index 000000000..bd1778414 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_06.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33a86eff60006b94e4810ac9da54c0bb8ab4cca707ac78b69ff3b2350111054e +size 2433 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_07.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_07.ydr new file mode 100644 index 000000000..47c1d1190 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_07.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b71fd3a5c6ba1d25bbc2e21979bf09b4acbe6318473a1d234cc3fa90ea816b3a +size 2854 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_08.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_08.ydr new file mode 100644 index 000000000..b74b8bdae --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_08.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73efdc8beb7602ff01a77a825165aeb2cb6a1f95f205b6d48e15f7ed72fd0494 +size 2152 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_09.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_09.ydr new file mode 100644 index 000000000..101014796 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_09.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2dccea24bd9daad9997befef4c5566aa75bb84be1440811929b580a6813d077d +size 2479 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_10.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_10.ydr new file mode 100644 index 000000000..09fe4b46d --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_10.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2de4130e761f2d558fdfbb0f3d575e38d0ca53ac0a4db3bf2f6cf03720fdf3d +size 2822 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_11.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_11.ydr new file mode 100644 index 000000000..f5b0f4752 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_11.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf9952b6d7695b64f62c6e23dab9cd956fa9acb2bb5341b60b30a55054671f17 +size 2502 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_12.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_12.ydr new file mode 100644 index 000000000..4d1ce8970 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_12.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:155d642ebf1dc4ddf2d22f90dd0b54208944e1e247660a9ccbd5fd836f32bb72 +size 2493 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_13.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_13.ydr new file mode 100644 index 000000000..ed95d092b --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_13.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24525d1e0c539ac51737221a10c3a7066fd3a2d21f6cb146ce571e0b410a77d5 +size 2890 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_14.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_14.ydr new file mode 100644 index 000000000..4d562af7d --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_14.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e8ed231eb029a02be838d9d3b3d289a72b8aeb384491f810609d66b5f03fa5b +size 2848 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_15.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_15.ydr new file mode 100644 index 000000000..db2150332 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_fancy_15.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8c7ca8dfd777bd6d2914133024c5447ada96c96bdde3efeda677b08045a8e9c +size 2834 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_photo_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_photo_01.ydr new file mode 100644 index 000000000..d45c773f2 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_photo_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66abc05b4ea98d1260bb9c883de8215cade79e71bc693a8a32ec572932d725cd +size 2226 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_photo_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_photo_02.ydr new file mode 100644 index 000000000..9031b2737 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_photo_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:acf325d0b51c6c62179f6de444985274209837cbbca52f70301471ca697d0e27 +size 2236 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_photo_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_photo_03.ydr new file mode 100644 index 000000000..68e7ace23 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_frame_photo_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b3169cbd247dabd1ff826c5b2c8db1e55efedd619982016bc0484d408b80dc6 +size 2143 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_fridge_magnets_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_fridge_magnets_01.ydr new file mode 100644 index 000000000..2c60d1105 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_fridge_magnets_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29f835462cdbfc7b5ddd017e2a81d1668e33b511c5575e77411a3a4cb4ada60a +size 7941 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_fridge_magnets_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_fridge_magnets_02.ydr new file mode 100644 index 000000000..470ba9ec3 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_fridge_magnets_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:255fc5e6608d14642e145469be4ec344420a7b19c2d39530a63e025188bc9258 +size 2098 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_fridge_magnets_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_fridge_magnets_03.ydr new file mode 100644 index 000000000..18914ba3c --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_fridge_magnets_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2029bb80f1de46331f5c71ddfecdc9f87f507189738b9234b64ce0bf247dec4 +size 2281 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_nature_pic_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_nature_pic_01.ydr new file mode 100644 index 000000000..84bac9044 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_nature_pic_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5a5c50288aea9d46ed5cc4d37f7105e55d3cfc2b7e4b761fe1a895858507e9d +size 2144 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_nature_pic_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_nature_pic_02.ydr new file mode 100644 index 000000000..f9f411d8c --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_nature_pic_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d795d5beb206a226ae24fcf13fd1f0d20d84972f0e391d0ea46f0931b951ff10 +size 2283 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_01.ydr new file mode 100644 index 000000000..bb00562d7 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2fe2720991c642262995cde883525b189f27abf954552d0fb66419f150ee33cd +size 2280 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_02.ydr new file mode 100644 index 000000000..72aae38fb --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cb80cd99df3e5c7b2d3da4a54503dd8149e6d1651f420aad80147befcdfafc1 +size 2281 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_03.ydr new file mode 100644 index 000000000..b291f5695 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdacd01d5534c4acb0b386990ecd10087ef402e9779f3e146b6be7db32dfd79c +size 2282 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_04.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_04.ydr new file mode 100644 index 000000000..464492be6 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_04.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba75a6592b2ce9e01a0918ea83903a4ea82d14fbcbe790bc60f4f1664557c3c2 +size 2246 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_05.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_05.ydr new file mode 100644 index 000000000..5098a2481 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_05.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:936b1a50bde9f05843e296107eb0ac55b9a441b3448d04859a4a32db39dfcdff +size 2093 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_06.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_06.ydr new file mode 100644 index 000000000..0525764c3 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_06.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11e8c24e51c85b5a45fa557a1ee7ff9d4f7256d5569e54536d1b5cce131f7866 +size 1766 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_07.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_07.ydr new file mode 100644 index 000000000..f1dde788a --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_07.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9694664e721e88ad04e94506cadda254d715d8bf87c39380aaefac9dfa1cd2a8 +size 1801 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_08.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_08.ydr new file mode 100644 index 000000000..d35c35734 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_abstract_08.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b089fc6e5192221e4146cd4d64f6b50f401b5b48d6a4d8fb558572d847aebdff +size 1754 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_01.ydr new file mode 100644 index 000000000..ee584ba04 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc1f8a75dbc23998382e81eabf2b884dedeb7017141ecc4255baf4b2f24e09bd +size 3170 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_02.ydr new file mode 100644 index 000000000..60f46b6b4 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7c41cf09ee04e9d57027955bacf8dd348d7372fa33c4cccbcf59d30f2a89b0e +size 3022 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_03.ydr new file mode 100644 index 000000000..bedf1b44c --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca22f14cf7e8b011f020f71381d93c4618c93722c64a93467e9be22d70310e73 +size 3008 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_04.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_04.ydr new file mode 100644 index 000000000..1b5436aee --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_04.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:310da73371a6ef5ea92c91ed8177bfa30b495a45363c0c2c8558fcc215c3ffba +size 3323 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_05.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_05.ydr new file mode 100644 index 000000000..d5aa830f5 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_05.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:493e3739722e87c8cbabc61e32326964719884a342a8ab67ac110c7098099636 +size 3026 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_06.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_06.ydr new file mode 100644 index 000000000..ae715a0d2 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_06.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1442a918e6acf251008661c09605eaaa08d8c76436d745200b6e47cf46def210 +size 3490 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_07.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_07.ydr new file mode 100644 index 000000000..2b8aa0450 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_07.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7094a07564891233d311767218ff6e6da35ad3535016209e2b59b40c8972df8 +size 3183 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_08.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_08.ydr new file mode 100644 index 000000000..55298b02b --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_08.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1a75a26de3c23e792aa49de5cebc19a7d51f0ee543e00dcad925480265e4d80 +size 3573 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_09.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_09.ydr new file mode 100644 index 000000000..142cabc60 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_09.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf9a3529d659802cf6fcdb7e8cad5e5887d5d18375ea299acfde4bf1bacd37c9 +size 3171 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_10.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_10.ydr new file mode 100644 index 000000000..a483a08ec --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_10.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43f4fa0ac36cbffbe612cd60a732a668ec870e9c176b0eb1925a649897e4d809 +size 3036 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_11.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_11.ydr new file mode 100644 index 000000000..27d16c0bb --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_oil_11.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76dfae33473596716f426f059053486fd74186b1734380222bc26d1fce61d1dc +size 3047 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_01.ydr new file mode 100644 index 000000000..79b605e66 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:268bf39ad615ca0e791490655badd185920f572bb0b32402261905c86e638692 +size 2551 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_02.ydr new file mode 100644 index 000000000..e15704333 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01018436df32c2541b3549a33a0a391cbff2ea64f51dddb059387d9de50b0c47 +size 2294 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_03.ydr new file mode 100644 index 000000000..2324b2622 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1c8dd5f08a81a193cf01a4829e01d7f947823ad873a49a753e8522b1d66b1f6 +size 2198 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_04.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_04.ydr new file mode 100644 index 000000000..be2fc9710 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_04.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce6eb880ce4bac0d6b17b9ec3f2856d242f78929216f93e89a5e9d31c240b83f +size 2322 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_05.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_05.ydr new file mode 100644 index 000000000..3fe429ec8 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_05.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c94f78b4c074abc5368ceb4ccc6f5bd3ddf7a46bf2360902b5b46d92f6bd1b33 +size 2100 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_06.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_06.ydr new file mode 100644 index 000000000..d2275684d --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_06.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8cf4d5776bfcc43c342a2c0adcc8520f1c77073244c91a9e87b00c1bd9cceab4 +size 1951 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_07.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_07.ydr new file mode 100644 index 000000000..8a3c7da39 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_07.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:427cecc7c3b76106e3bb2b1380b8dd077020899db2334bd6ae7429370fdf2d3f +size 2303 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_08.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_08.ydr new file mode 100644 index 000000000..ff730e0f7 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_08.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5501d05da36382b85b873c6ba09e53316ee24a0393ce75cb28e425b9a0a2dfbf +size 2129 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_09.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_09.ydr new file mode 100644 index 000000000..38023d114 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_09.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2889c545f3f31115684477a2e3799198a25fd4c087a3d286b8d3498e30eaf84 +size 2102 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_10.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_10.ydr new file mode 100644 index 000000000..83488ff5f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_10.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:722844ace7312810c25ce69554beab17e71af55d3fa65c25e85d08c25162752d +size 1967 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_11.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_11.ydr new file mode 100644 index 000000000..595720d58 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_11.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b612f9910c36dea5ce576c0dd69755534aeb11b0550150aacdb71bf72fcbfa6 +size 2161 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_12.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_12.ydr new file mode 100644 index 000000000..5adbaa46b --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_12.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00b5af3fab184c5ea3963c12f1138b4644a9574f0056fb516e5c3b98c3eccd91 +size 2147 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_13.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_13.ydr new file mode 100644 index 000000000..c3c82b188 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_paint_yoga_13.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5acbd5f06868f4a6a805c70076b3561c9fda1ec9b32b11af18592e5ac632faf6 +size 2221 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_porn_posters_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_porn_posters_01.ydr new file mode 100644 index 000000000..fe416c475 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_porn_posters_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55108d35328503c4057ef13c02c9f2d2c3d6acf0218156ddc1b5487a3211c025 +size 2711 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_porn_posters_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_porn_posters_02.ydr new file mode 100644 index 000000000..db6316c8f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_porn_posters_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7cc30d63ee1fef2c78114649667cee6390fa39f1ca089dd505fcc7ed0f7e6a21 +size 1806 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_porn_posters_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_porn_posters_03.ydr new file mode 100644 index 000000000..73b8d534b --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_porn_posters_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5985b94c3b304b85d720a717fa92dfc8a234af4b8480da8b0e74495ce584eb7 +size 1679 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_01.ydr new file mode 100644 index 000000000..1a8dd24ba --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f792c7e9315c4ed0e0b976396da7296152e1c6ecf36d9eaa1b8440f678fbc75d +size 2333 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_02.ydr new file mode 100644 index 000000000..71694b381 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce08d2fa85650526f675045ae16554e4636c2f51003bf606addeae773ed931d0 +size 2799 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_03.ydr new file mode 100644 index 000000000..be95d49ce --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff8181c9f9553fb1d94c49c3e742fd2eec047bf8cc68c7154617a566b7712398 +size 2774 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_04.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_04.ydr new file mode 100644 index 000000000..6b2e5a0a9 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_04.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d8a136061405577b7a76dc588003d39edfa27cc65b46b3b3492ea90c3523f59 +size 3800 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_05.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_05.ydr new file mode 100644 index 000000000..033968567 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_05.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eab24ac6d55093c4b141ea3bd57c7f4ecabd70e9b4b821c02dd0532cf4610729 +size 3226 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_06.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_06.ydr new file mode 100644 index 000000000..af503eb79 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_06.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a607b1c29a8286b26c2c65bdd4c793891ad91acc38bd85555a1f66abe4699961 +size 2584 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_07.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_07.ydr new file mode 100644 index 000000000..709e12727 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_07.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb495633c2d754a551c9534c79c713cc8326216e7c3902a6a50952c30af8d115 +size 2561 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_08.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_08.ydr new file mode 100644 index 000000000..502665ed6 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_08.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b17f2c2e340d924560df1bde6d2d66bc0460e4e40bc2d14e3420e1a6680c5b23 +size 2632 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_09.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_09.ydr new file mode 100644 index 000000000..27c5bbe4b --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_posters_09.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2cde618a97eb17ab153ed26601f3af1a06ee368ec44902be7fa2db544a756e0 +size 3780 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_01.ydr new file mode 100644 index 000000000..e667573ae --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07804d735d86b59dcd8aa00218042289810b2bbcac21171673557da93f0de5b4 +size 3203 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_02.ydr new file mode 100644 index 000000000..67e926798 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:769911086626ad17f65997a7ed82ee835f439a3c68446d5c9f358ba8db3fd00c +size 26817 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_03.ydr new file mode 100644 index 000000000..70748aa7b --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d75ad3d3e73894adce5cc55a2eb9f7cb68347727633507261905b03022ab37a3 +size 16099 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_04.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_04.ydr new file mode 100644 index 000000000..b5525ac22 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_04.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca32487ae7dd0ae0331f84d6508b33cbe64ee33d230d29483ba2eea2789a25b0 +size 21033 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_05.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_05.ydr new file mode 100644 index 000000000..09ba05141 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_05.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3ba6e19ea607b05c0dfac8bb25294bc93bf3e146ccb91c0732bf3ef0d528912 +size 3200 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_06.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_06.ydr new file mode 100644 index 000000000..e39d45e9c --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_06.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68c8e4b1c1017ae44e960873234d2711785f65d32a1431440aeb02cee1c19c4a +size 15935 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_07.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_07.ydr new file mode 100644 index 000000000..4fdcfd8d2 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_07.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81370dd70bb42bd6a9d12528f3b5bdb9c43614e9c5031ee2d4d241d48810b73b +size 5049 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_08.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_08.ydr new file mode 100644 index 000000000..6bef66a44 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_08.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16f2e5135e0cd5f8367a54fd053b4471efe6726f10fdd15377f9a0f51d4709c5 +size 3369 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_09.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_09.ydr new file mode 100644 index 000000000..c87647014 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_09.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a595592ada04225cf23ebe8f211e74c80cf8a95c9f4aa3f57b78bbffd524b344 +size 3206 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_10.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_10.ydr new file mode 100644 index 000000000..28661eddd --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_underwear_10.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e32142b85dcf592b5b3c83fa2a6f58e99071bc4407db84d748ab632c9fefa32f +size 16370 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_wall_vents.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_wall_vents.ydr new file mode 100644 index 000000000..afea51c81 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/art/gn_wall_vents.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7949b3e4dc8dc9ceb93e7547b6ba81ac3bf088e6b0f661f8f31c267489ca11f2 +size 1344 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_airconditioner_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_airconditioner_prop.ydr new file mode 100644 index 000000000..6680a7a9e --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_airconditioner_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2fe393b00f5391da3364d23094bce5dc290f849e414e179c520821a1be6b90a9 +size 168751 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_art1.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_art1.ydr new file mode 100644 index 000000000..ad9e6b501 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_art1.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e58f767004445a07472d818e579aaf0be3008d4d7f90c41d7c7b68e1edd3e7a0 +size 1943 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_art2.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_art2.ydr new file mode 100644 index 000000000..5f2a9c428 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_art2.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bedcbfb8c3f759814160ab8aa06f8b535debc81247bce8a241b8c485ddb6d077 +size 2019 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_art3.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_art3.ydr new file mode 100644 index 000000000..27a783eb7 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_art3.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94637633353c3747154a773ae8b9fc66f3d38e21beea288bbc80175625d448a8 +size 1948 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_articuled_arm_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_articuled_arm_prop.ydr new file mode 100644 index 000000000..618084e7c --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_articuled_arm_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:246f7d8e73d5cb6582dd44452e870c4ce76a14837182be395c60ee46370b61ca +size 218577 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_bed_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_bed_prop.ydr new file mode 100644 index 000000000..bf63fa08d --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_bed_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38cece1d3cfbb796fd4c5c8f37fbb86da83dec56ee04f8a8816b465fa5d7d443 +size 169846 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_bed_tray_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_bed_tray_prop.ydr new file mode 100644 index 000000000..d60b88476 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_bed_tray_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e25a2050543c34e3659c7617c958df80f95b2959cb2aad6a824120a3fc76992 +size 14941 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_headboard_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_headboard_prop.ydr new file mode 100644 index 000000000..9e64daa4a --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_headboard_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65f4799c24b36f92296e306c98696149a72c3191a95fa02c171b98113ad9f2e0 +size 76171 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_irm_1_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_irm_1_prop.ydr new file mode 100644 index 000000000..dcf16daa1 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_irm_1_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fa0dac87def077c02c9a36e671a6481895a50306b1a87fbaccefc983084a395 +size 77202 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_irm_2_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_irm_2_prop.ydr new file mode 100644 index 000000000..8ee78f41f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_irm_2_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86ee626ed1f8b99c2b80c7d57c1f33c66fdf59bc177c07d0006ed8dc19955ebf +size 26350 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_irm_3_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_irm_3_prop.ydr new file mode 100644 index 000000000..43e7050f9 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_irm_3_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56f8195083e244b45bd0d3f76595d11bda4ce8b463409c72e9fca177894c5cda +size 11569 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_ope_table_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_ope_table_prop.ydr new file mode 100644 index 000000000..f1dd3fdd7 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_ope_table_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77fae59cb6d70b20e06caafc80749bd9066496775fc6152e16fbe3a649eb3662 +size 75957 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_panel_info2_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_panel_info2_prop.ydr new file mode 100644 index 000000000..12ee29b3b --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_panel_info2_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ba72bf8779bc57a1972df38ad8e1bbdd9089c105c2821aca1039b9349b0df37 +size 9414 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_panel_info3_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_panel_info3_prop.ydr new file mode 100644 index 000000000..d3d3085aa --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_panel_info3_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56020bd9aceeb4245701286e4a40a63f8ca673a34926f98708d42e40e4b52359 +size 10032 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_panel_info_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_panel_info_prop.ydr new file mode 100644 index 000000000..9ee17aed3 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_panel_info_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c7117b52e06f5b761acfb57dbab6958a580a09d1960ed7917f2e4b98408499b +size 12329 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_split_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_split_prop.ydr new file mode 100644 index 000000000..4c1c91376 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_split_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bf3c367ed41b650407d95c8832855f8fb7b2f9318e882ac2295c162f8e01fee +size 116661 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_xray_1_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_xray_1_prop.ydr new file mode 100644 index 000000000..68c632a77 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_xray_1_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbe65bd8806dab0d486df673e2980ba107aad7327ede28e25a11597d14fc4526 +size 54587 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_xray_2_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_xray_2_prop.ydr new file mode 100644 index 000000000..9b9773f83 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_xray_2_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11d060909e0c8631702f5207899c3d9d782de894a8578785fba7199e9e112825 +size 11351 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_xray_3_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_xray_3_prop.ydr new file mode 100644 index 000000000..3a9e2e3e1 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_med_xray_3_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:131690714b67cad67ba6b7a2f77dfc652d8fd3c88db56f9ddb22cc9cea7b8375 +size 50869 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medic_decal_box.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medic_decal_box.ydr new file mode 100644 index 000000000..c754894da --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medic_decal_box.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0e5a8dbb870c11c7a5c1dc0a1318e50879824bd6ee29938e7385768115f9e76 +size 827 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medic_decal_moni_a.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medic_decal_moni_a.ydr new file mode 100644 index 000000000..732eb97fe --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medic_decal_moni_a.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a59eaa8fb8e716cefc0cae2e3704c83f77f0ea603a7caedc8abfba77bb913c8 +size 804 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medic_decal_moni_b.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medic_decal_moni_b.ydr new file mode 100644 index 000000000..ac8efcfc9 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medic_decal_moni_b.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f19d7c8590fb40d3a2db2a8676ca231da7797c0052581cec3ce8a3b021265a5 +size 803 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medic_diagtable.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medic_diagtable.ydr new file mode 100644 index 000000000..520be6d10 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medic_diagtable.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6937932a72e9ee45a69bcb14e9d484ac2925ed43b096bc5bd19cf6c055676c1 +size 96765 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medic_stellen.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medic_stellen.ydr new file mode 100644 index 000000000..3edee2a1f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medic_stellen.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f58f2f0e9e919e05f1de41b9d2b95f1789c20cbc71d253e970be7a704d655aa +size 2436 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_aed_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_aed_prop.ydr new file mode 100644 index 000000000..83c2af0a0 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_aed_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18005d9a724d548b2ca7becb39e1bce6c476be95a03328b00b293ac384feb8af +size 53620 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_aed_redbag_prop.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_aed_redbag_prop.ydr new file mode 100644 index 000000000..75865ecb0 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_aed_redbag_prop.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07fef124ec09403b518aa399f3089ca515be9299c92793e58ff5d8a66307b1e2 +size 75928 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_fold_b1.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_fold_b1.ydr new file mode 100644 index 000000000..0dcf691f6 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_fold_b1.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cdc27a0f9d51ac049c742702809fab61d868968ddba20f6b5cfe973c56f3ebcf +size 252468 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_fold_b2.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_fold_b2.ydr new file mode 100644 index 000000000..f91911452 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_fold_b2.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd5f0f47c75b406b1c057a39c7a3bd6aba2e128a925bf1f05cdb05db24cce9ea +size 245868 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_fold_r.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_fold_r.ydr new file mode 100644 index 000000000..17198da3f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_fold_r.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b801091cde1bf7a05c707c60d5acf521ffd089df788a099dffdc8e806e4441bc +size 237190 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_fold_y.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_fold_y.ydr new file mode 100644 index 000000000..49633b9b3 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_fold_y.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4071433f8c7e3e2fafa9c19d5b82e74c204041382209acbfb7cb4665e499adba +size 266336 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_unfold_b1.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_unfold_b1.ydr new file mode 100644 index 000000000..33b30fb2c --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_unfold_b1.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad68d54e49a5dfd270b779b4418d6cc3ad1c99fc434491dc5a188fee234e71ca +size 180769 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_unfold_b2.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_unfold_b2.ydr new file mode 100644 index 000000000..cb5358a96 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_unfold_b2.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:565664fba06fa52abe6a78ee0fcaa9e507e6e464a0d6f764a011902b88ee0202 +size 174394 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_unfold_r.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_unfold_r.ydr new file mode 100644 index 000000000..a6f23eb34 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_unfold_r.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a66c27d4b006aac6361fe8ba43dc6aaa34b7125580b25e9c22335c14b0e17a7f +size 165370 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_unfold_y.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_unfold_y.ydr new file mode 100644 index 000000000..69c85f9fa --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ydr/gn_medical_stretcher_unfold_y.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88a48903ff5da3ccbe7a75448eadf6fe1436bd56002159460a644c5839602c5c +size 194713 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ytd/gn_medical_assets_txd.ytd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ytd/gn_medical_assets_txd.ytd new file mode 100644 index 000000000..b117564d3 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ytd/gn_medical_assets_txd.ytd @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b8456e907f4cfa5e83081118960c4a2dc43f47ca1d8e57e103eb638c4b5291c +size 2894711 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ytd/nels_medical_props_txd.ytd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ytd/nels_medical_props_txd.ytd new file mode 100644 index 000000000..9d059482d --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ytd/nels_medical_props_txd.ytd @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:deab48e65c3bb8727169f58a1ec5c8b9ad455cb1a79905e770a06d28c9d19f86 +size 847732 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ytyp/gn_medical_assets.ytyp b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ytyp/gn_medical_assets.ytyp new file mode 100644 index 000000000..5dc2354f7 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ytyp/gn_medical_assets.ytyp differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ytyp/nels_medical_props.ytyp b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ytyp/nels_medical_props.ytyp new file mode 100644 index 000000000..34b61032f Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/medical_assets/ytyp/nels_medical_props.ytyp differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ycd/clip@gn_mugsteam.ycd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ycd/clip@gn_mugsteam.ycd new file mode 100644 index 000000000..41e007f01 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ycd/clip@gn_mugsteam.ycd differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_boiler_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_boiler_01.ydr new file mode 100644 index 000000000..23f397bad --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_boiler_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef4ae84a8c5f864357b65f29596319d9553ed24b258c8a3411c41c6702b25af8 +size 17221 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_aircon.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_aircon.ydr new file mode 100644 index 000000000..6012321f2 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_aircon.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d905052fc4d1a2ec13a69b16bc90ee3d72589efd8e1c192420450e0c438c1658 +size 164434 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_coffee_machine.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_coffee_machine.ydr new file mode 100644 index 000000000..7f51d11a9 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_coffee_machine.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8a2bc828e8a043356b6a2adbaacc645a01aa3753ccaf90833213b55dbad5fb7 +size 14141 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_exitsign.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_exitsign.ydr new file mode 100644 index 000000000..482e82df5 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_exitsign.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89ce5c2126ca3bf5a3272e918d05a033816b745737af91d0d255d7ffce177814 +size 2788 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_fire_alarm.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_fire_alarm.ydr new file mode 100644 index 000000000..836083be8 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_fire_alarm.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c113116eb76e7af65ce891c209c14d0da0b4a5145134b167d38905a3c4d771d9 +size 5339 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_fire_ext.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_fire_ext.ydr new file mode 100644 index 000000000..501f96aab --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_fire_ext.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7acdb30ea90f53ff8406eab41d600cad6327932a78f9d0d073bf9bccc16ae4a +size 4768 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_fire_ext2.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_fire_ext2.ydr new file mode 100644 index 000000000..6c0da674f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_fire_ext2.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2116aa3bb3f5ca9c9e6abf4a62ddfc928714f8f6417ef890ee8e94703d4ceb6 +size 1208 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_fire_sounder.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_fire_sounder.ydr new file mode 100644 index 000000000..bfd3fd3ed --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_fire_sounder.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43e194cae8724772ce6b7a91857f299a9160039215972d73c3178d81fb7d9c51 +size 7625 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_icefreezer.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_icefreezer.ydr new file mode 100644 index 000000000..c00303b7f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_icefreezer.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:854ba621d936958b116e7eab9130afb236260874f011340a350bb8193814b6b4 +size 28438 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_plugcable.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_plugcable.ydr new file mode 100644 index 000000000..ef7b87af0 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_plugcable.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6dc2dfa44c3e826ff6dca9f403219f15411502776cecfcecb8f42357e319a17d +size 4729 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_toilet_dryer.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_toilet_dryer.ydr new file mode 100644 index 000000000..0f0418f8e --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_toilet_dryer.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33ba8ce3098e2a9c427d3b8f345373ce1c3e692d476887212f4b704be180b1d7 +size 53112 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_towel_order.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_towel_order.ydr new file mode 100644 index 000000000..6f53b9b9d --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_towel_order.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5c4ecf6664d7f795f5e516a535631533153ca2ca0eaf17708dd9e9e31ed5484 +size 11579 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_wc_b.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_wc_b.ydr new file mode 100644 index 000000000..db13cb216 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_wc_b.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e210dddcc095ee089c59817f5cc85b2eb1cfb2c5cb341d67498d95161fd1335 +size 66204 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_wc_c.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_wc_c.ydr new file mode 100644 index 000000000..e399f964e --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_wc_c.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19222da48cf1b0ef8434871aff63c2ecbc17f8a86f07cee525234acd147b91b0 +size 43544 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_wc_split.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_wc_split.ydr new file mode 100644 index 000000000..350ad67ea --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collec_wc_split.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b25d5323a31092a0174fbe02b6f8db2b99cd4264e529be741234cc4f305239b3 +size 5699 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collect_elecframe_1.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collect_elecframe_1.ydr new file mode 100644 index 000000000..e71680968 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collect_elecframe_1.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a316ec8bb841db2e07b259ab7d615b649aa2dc3d6c1c9f312b9c4245f693463 +size 10885 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collect_elecframe_2.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collect_elecframe_2.ydr new file mode 100644 index 000000000..97335a6c5 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collect_elecframe_2.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5aa262726c425720ae6a050a74c9a6223e1e158105b73daeb7719d158e39d266 +size 11227 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collect_switch1.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collect_switch1.ydr new file mode 100644 index 000000000..d9f75eb46 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collect_switch1.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49a2ba2472f277c49f31575b253b3994537f22747d86f0ff59f46bccd26bc86c +size 2418 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collection_shower_a.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collection_shower_a.ydr new file mode 100644 index 000000000..9a29d9130 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collection_shower_a.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22daf30b147c65cdbcae553f2ded8f360a409077dc28e32cdf401245638f56d1 +size 22770 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collection_sink_a.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collection_sink_a.ydr new file mode 100644 index 000000000..03fa6b040 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collection_sink_a.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18b3e058e092147a9dcde693927b49700fdc7c53f9fdb008fdcfc1f6eec699a4 +size 60480 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collection_wc_a.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collection_wc_a.ydr new file mode 100644 index 000000000..a19b13278 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_collection_wc_a.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:741dde48c06256fd83082debdcbd645b059213882e14cedb524efcfb8b75fccc +size 53630 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_comptuter_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_comptuter_01.ydr new file mode 100644 index 000000000..d6eb6ea27 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_comptuter_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:297b80e544434cc502a5c0b630136dc39c6475f23be7461e3a76761750594ec6 +size 267184 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_fridge_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_fridge_01.ydr new file mode 100644 index 000000000..3b7271cb0 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_fridge_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62bad4b70995292c17ebb3c478c9ad2b88ba40195b8c688175c9e91f186d9941 +size 33000 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_01.ydr new file mode 100644 index 000000000..c113d4ee7 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fe3b723526b5b6aa3bc13bc657ed5d49e3521bcf22c3d7725631759fb1e4000 +size 42543 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_02.ydr new file mode 100644 index 000000000..aec7a4bc5 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a55a278e8a7b7abb32e21a72227a5b563d17ea837f524871e25ed07694fad960 +size 14112 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_03.ydr new file mode 100644 index 000000000..4bbaf2bc4 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afe3714dbf2f0206f0ce4f464081771d9381e80f5e607c2dd25e277d201eef57 +size 5651 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_04.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_04.ydr new file mode 100644 index 000000000..40210db06 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_04.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:599f331ca53e7ce5bb038f88639e7119475d59bbb9adb0e2c1a1a248e77757d1 +size 49698 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_05.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_05.ydr new file mode 100644 index 000000000..1db8225ca --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_05.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:003563887297b4a9f970e82bdf3d0f297f500c9b94ff93136c69a3d3d6ce0717 +size 16299 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_wall_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_wall_01.ydr new file mode 100644 index 000000000..09739f805 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_lamp_wall_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a2ccd1e370696b8a0206fcbb370b1c8eb33159e76ce46952e8a04e10b5d5ded +size 36509 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_metal_trashcan_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_metal_trashcan_01.ydr new file mode 100644 index 000000000..e91032dd2 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_metal_trashcan_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdfb5ab1c7460cc1a322a5865fc2dd5bdc6bbb8759407de4e4a991e88c96b845 +size 21798 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_micro_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_micro_01.ydr new file mode 100644 index 000000000..30e2117bc --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_micro_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89aa1026025c22294709c2fcb19c5028b654760692e3fe5e88951c95a92f97c5 +size 282876 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_monitor_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_monitor_01.ydr new file mode 100644 index 000000000..a563e19dd --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_monitor_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9329622062787300bbba2645547b2e3838e2b5ae93946121d263da39bb5a655f +size 22714 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_mugsteam.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_mugsteam.ydr new file mode 100644 index 000000000..d61a3a55b --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_mugsteam.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7dcbb03d8bfd3b148f2076f081337f13de42142a53e91b2167b4a2a8e20769a9 +size 4933 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_multiplug_prop_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_multiplug_prop_01.ydr new file mode 100644 index 000000000..1d7a1149b --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_multiplug_prop_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca400ec8175f4e1f5f9423d6f7dee5b91711ef49ea97804563dbf6f2ae384bc6 +size 15204 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_phone_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_phone_01.ydr new file mode 100644 index 000000000..9d2354354 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_phone_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31e593b19cb5da53bed3dbaa6cdca1307f62cb98a39ebcb677c03ff91d375b11 +size 17565 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_plant_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_plant_01.ydr new file mode 100644 index 000000000..42e34e43a --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_plant_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a311c74588eb7abf64fb4e4f98700cd9cb3a4dffcacdcd816da58cdb791374c +size 50297 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_american_flag_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_american_flag_01.ydr new file mode 100644 index 000000000..6504351a3 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_american_flag_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92eb6aa3cf0eaa3cdada7553b595c83959be60314b09fa8ae39b0389c2894bca +size 18808 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_chair.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_chair.ydr new file mode 100644 index 000000000..f78ed287d --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_chair.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be6c5bc57703bd47ea7039a2e245132eef83524678d983c5e2b742b90566fd7b +size 270193 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_chair_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_chair_02.ydr new file mode 100644 index 000000000..ace3957a7 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_chair_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a263aa283fb1ed21b2c2cbeb8abccde4836bbc764d2044b30327c09249d82f0 +size 93717 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_chair_02b.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_chair_02b.ydr new file mode 100644 index 000000000..9c6c60c98 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_chair_02b.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f82ec95443f3f24dff0b524f68f65a3288ee8f9005e05488587c07f0c9bf1e1 +size 91291 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_desk1_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_desk1_01.ydr new file mode 100644 index 000000000..b521c66e7 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_desk1_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c94e5185085d54f8db886977f27d4228c43ac12b1975a589f1896d77dd6ffbc8 +size 73882 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_desk1_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_desk1_02.ydr new file mode 100644 index 000000000..2d4f8334e --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_desk1_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1723d2a7adfd21ca25c53cb9a6c6f8f8f5dd5de4addb64e39cb1fb0944e9070c +size 80503 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_desk1_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_desk1_03.ydr new file mode 100644 index 000000000..1ad2b070a --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_desk1_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc3032584edbebb1cef6524c7cdbf93805962cf5c27d484ba43178052be78470 +size 21235 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_desk1_04.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_desk1_04.ydr new file mode 100644 index 000000000..6f4576a4c --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_desk1_04.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6b667fd77ff6a1b123987a8a173ac1e76cd9b8cb72a8738bb1de3f70579abf3 +size 22262 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_pallettruck.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_pallettruck.ydr new file mode 100644 index 000000000..c0a60c08a --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_pallettruck.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f33a1bcd6ce0251e00a0092997f6d41cd6ad0f9f32938679de2313b59be4e6a5 +size 12357537 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_table_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_table_01.ydr new file mode 100644 index 000000000..f74a4cdfe --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_table_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf253651c6a25d5a73a01926eb008dd3f44662c6e3d80941e103cc09ac4a8ad2 +size 10783 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_table_01b.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_table_01b.ydr new file mode 100644 index 000000000..1a900bc0b --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_prop_table_01b.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29084e6e387a0113d78c1e8bd4284d9d9ca74475a7839c2f69232370a4d3446e +size 9540 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_sheriff_lamp.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_sheriff_lamp.ydr new file mode 100644 index 000000000..f95a31f78 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_sheriff_lamp.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c18da422fb4221ede7185aeaf910309e1bd54fd4c51845898f2506f17411edac +size 62608 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_sheriff_monitor.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_sheriff_monitor.ydr new file mode 100644 index 000000000..07e2c5612 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_sheriff_monitor.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b45142565c8a14cd35d87f51b32545cafa18df5c641493f54e499432043c28b4 +size 10377 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_shower_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_shower_02.ydr new file mode 100644 index 000000000..553434842 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_shower_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39e9897e14bcac7d320dc2f481c30b0b78182a88ab18f635aaba773d1ce6745c +size 71484 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_shower_03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_shower_03.ydr new file mode 100644 index 000000000..345893517 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_shower_03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1870996256bf39c0fe59980857bab8fb8b46ce5b17e7ea8d1623dd9febcdfad4 +size 19942 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_sink_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_sink_01.ydr new file mode 100644 index 000000000..f56002cc2 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_sink_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b116b25e02e50daf413380713981f5f72c5ec35a3c4f1622c2ea784430dcd0ff +size 119447 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_speaker_01_b.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_speaker_01_b.ydr new file mode 100644 index 000000000..cfcf3747d --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_speaker_01_b.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8dbe441d4d90049a1706ee585a81341071684dcaa0c20e4aaffad1416d1a3ed4 +size 124912 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_speaker_01_s.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_speaker_01_s.ydr new file mode 100644 index 000000000..f87cd9fe1 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_speaker_01_s.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84ed94399bf6f21aea7da0ace483d27519adbb6b17d8f248c7239c592a6103c1 +size 119932 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_table_lamp_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_table_lamp_01.ydr new file mode 100644 index 000000000..bc8ca1715 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ydr/gn_table_lamp_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:475fefeee36bedfc660a12a314b2694d4df518381127fff3c20f8508d4000892 +size 45490 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ytd/gn_assets_art_txd.ytd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ytd/gn_assets_art_txd.ytd new file mode 100644 index 000000000..88a6f6f54 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ytd/gn_assets_art_txd.ytd @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e44d4fbccf06ac40c6cff3f93bf3505a83594d46578abf24d61ac70750501ac +size 6122672 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ytd/gn_collec_txd.ytd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ytd/gn_collec_txd.ytd new file mode 100644 index 000000000..df6dad92a --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ytd/gn_collec_txd.ytd @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47d1e7686d47c8cb63e30441ca32696a43df8137bf69af312bd7192087781d9d +size 5505075 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ytyp/gn_assets_collection.ytyp b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ytyp/gn_assets_collection.ytyp new file mode 100644 index 000000000..882e7c153 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_collection/stream/ytyp/gn_assets_collection.ytyp differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/.fxap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/.fxap new file mode 100644 index 000000000..2aa51c599 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/.fxap differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/README.md b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/README.md new file mode 100644 index 000000000..635bca797 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/README.md @@ -0,0 +1,29 @@ +FAQ + +I have collision trees and buildings in other G&N's mods? +1. Make sure you're using the right compatibility. +2. G&N's ensures compatibility with 100% of these mods simultaneously. + We cannot guarantee all compatibility possibilities. + +How to find more compatibility? +Find all our compatibilities directly on our Github, search your compatibilities thanks to the different branches. + +Github Link : [Click here](https://github.com/G-N-s-Studio/cfx_gn_sandy_mapdata) + +![image](https://github.com/G-N-s-Studio/cfx_gn_sandy_mapdata/assets/120711057/b49b8967-1596-482f-826e-150fd4bdb946) +![image](https://github.com/G-N-s-Studio/cfx_gn_sandy_mapdata/assets/120711057/c9ee3e6a-b5a7-4940-978b-3a72d451e173) + + + + + +I've got trees, buildings and collisions on other mods, from other creators? + +1. You probably have duplicate files in several resources. Compare files between cfx_gn_sandy_mapdata and other resources to find out which files are in conflict. + + # Tips : + Our friend Prompt has created a tool to make this task easier: + + -> Tool : https://fivem.prompt-mods.com/compatibility-tool + + -> Tutorial: https://youtu.be/GeJto5IWL_M diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/fxmanifest.lua b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/fxmanifest.lua new file mode 100644 index 000000000..e2ee37b56 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/fxmanifest.lua @@ -0,0 +1,14 @@ +fx_version 'cerulean' +game 'gta5' + +author 'G&N_s Studio' +description 'Sandy Shore Mapdata - Clinic Center + Burgershot + Sheriff Dept + Motel + Strip Mall + Laundry + Liquor Bar' +version '4.1.0' + +dependency '/gameBuild:2189' + +this_is_a_map 'yes' + +escrow_ignore { + 'stream/**/*' +} diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/cs4_07_0.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/cs4_07_0.ybn new file mode 100644 index 000000000..c9424f15c Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/cs4_07_0.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/cs4_roads_2.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/cs4_roads_2.ybn new file mode 100644 index 000000000..f9cdc12ab Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/cs4_roads_2.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/cs4_roads_4.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/cs4_roads_4.ybn new file mode 100644 index 000000000..b3dc72089 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/cs4_roads_4.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/hi@lr_cs4_06_0.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/hi@lr_cs4_06_0.ybn new file mode 100644 index 000000000..7319115c4 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/hi@lr_cs4_06_0.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/hi@lr_cs4_06_2.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/hi@lr_cs4_06_2.ybn new file mode 100644 index 000000000..623a6791c Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/hi@lr_cs4_06_2.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/hi@lr_cs4_09_0.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/hi@lr_cs4_09_0.ybn new file mode 100644 index 000000000..d40ff50c6 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/hi@lr_cs4_09_0.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/hi@lr_cs4_10_0.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/hi@lr_cs4_10_0.ybn new file mode 100644 index 000000000..2702694e1 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/hi@lr_cs4_10_0.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_06_0.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_06_0.ybn new file mode 100644 index 000000000..94f0f4964 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_06_0.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_06_2.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_06_2.ybn new file mode 100644 index 000000000..82b817adb Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_06_2.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_09_0.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_09_0.ybn new file mode 100644 index 000000000..ad9064dea Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_09_0.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_09_1.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_09_1.ybn new file mode 100644 index 000000000..9e614cc1a Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_09_1.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_10_0.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_10_0.ybn new file mode 100644 index 000000000..3d986a85c Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_10_0.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_10_1.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_10_1.ybn new file mode 100644 index 000000000..94d627591 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/lr_cs4_10_1.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/v_sheriff.ybn b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/v_sheriff.ybn new file mode 100644 index 000000000..d91515f95 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ybn/v_sheriff.ybn differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_06_l1_slod1_children.ydd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_06_l1_slod1_children.ydd new file mode 100644 index 000000000..bbe72349f Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_06_l1_slod1_children.ydd differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_09_ld1_slod1_children.ydd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_09_ld1_slod1_children.ydd new file mode 100644 index 000000000..763a727d0 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_09_ld1_slod1_children.ydd differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_09_props_combo03_dslod_children.ydd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_09_props_combo03_dslod_children.ydd new file mode 100644 index 000000000..8bb8c7e29 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_09_props_combo03_dslod_children.ydd differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_rd_props_combo03_slod_children.ydd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_rd_props_combo03_slod_children.ydd new file mode 100644 index 000000000..4fadf5023 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_rd_props_combo03_slod_children.ydd differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_rd_props_prop23_slod_children.ydd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_rd_props_prop23_slod_children.ydd new file mode 100644 index 000000000..51d37ecdd Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_rd_props_prop23_slod_children.ydd differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_rd_props_prop26_slod_children.ydd b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_rd_props_prop26_slod_children.ydd new file mode 100644 index 000000000..697bdf5a2 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydd/cs4_rd_props_prop26_slod_children.ydd differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_coverwall.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_coverwall.ydr new file mode 100644 index 000000000..4fe3d3047 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_coverwall.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81ae1ee13d896f457b376caa9baccef2e51a4cb277d6d4d1599341170631f010 +size 599 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_glue1.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_glue1.ydr new file mode 100644 index 000000000..5328e807b --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_glue1.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80daea2e4aa990f4568a7c19f2d8e2479e4ee3b7b9c78b73618e7205a1a485eb +size 42278 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_land02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_land02.ydr new file mode 100644 index 000000000..073ddfe17 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_land02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3422601c171f216c481cd4a5de62fb8f5386e893de73bcbad0ce0020d76d02ad +size 65399 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_motel_crprk.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_motel_crprk.ydr new file mode 100644 index 000000000..3c1b526d5 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_motel_crprk.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3d093982005ec0ecc4aba8adf8d3f8a3944a21fab0268a65e110efcbb1f88a5 +size 575854 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_motl_ovly03.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_motl_ovly03.ydr new file mode 100644 index 000000000..7067d7ad0 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_motl_ovly03.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1550f895df68ea0ca5d57272eb64ddf696882078f96824e7cd3067b75cfcf9e2 +size 114942 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_pave.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_pave.ydr new file mode 100644 index 000000000..44799b6a4 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_pave.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ba055748b83a7417e107ad2da6548bbcd0a25fe3e192439878621a8a964f0a7 +size 232229 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_weeds3.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_weeds3.ydr new file mode 100644 index 000000000..72442d6c0 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_weeds3.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1774e640087d0015a8c956468f1e276f498e66c66e9d425af6882f3c0e02c24 +size 108849 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_weeds4.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_weeds4.ydr new file mode 100644 index 000000000..ab0236283 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_06_weeds4.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2a93b5225452527a131e5616fb2bb2695ed0079549779ca0c4b4415c5333eff +size 41937 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_07_land01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_07_land01.ydr new file mode 100644 index 000000000..b97f08828 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_07_land01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6358f779467f3a1305b6b5738f0d16caf7391d0198b65997b5c6aa441a2f58c0 +size 1103186 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_07_land01o.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_07_land01o.ydr new file mode 100644 index 000000000..96c1e6d45 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_07_land01o.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9463bf6de795a43e3ca47c2034736d1fcdd19181e2a41c03ccaec18c95669ea +size 22259 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_09_land008.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_09_land008.ydr new file mode 100644 index 000000000..2e310c0a7 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_09_land008.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed031ea876af349c5ca972f48552d8f1f85cc029dfdbeddd4311d04a75a6b99b +size 50747 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_09_land01_g001.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_09_land01_g001.ydr new file mode 100644 index 000000000..1801523b9 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_09_land01_g001.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:148364aac0945b1634d149c43e45751d96cafa63f8c1880a392285611849c4d6 +size 936 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_09_land06.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_09_land06.ydr new file mode 100644 index 000000000..a82319757 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_09_land06.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:128326342dd84120e7a90f841c0f669ac885012064b58f8512367827bf6c3590 +size 92325 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_bar.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_bar.ydr new file mode 100644 index 000000000..3103d64f7 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_bar.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70d568bc62b3fd7a95b2552392c0801c6519695155f090dfe0b5a6f6dec0a48f +size 2333306 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_decals_trailer003.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_decals_trailer003.ydr new file mode 100644 index 000000000..7adc6b66d --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_decals_trailer003.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd7ff59538dbe1731c376196f2b0682ff875aeb27887db56838d2d969a7b56c4 +size 1644824 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_em_01.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_em_01.ydr new file mode 100644 index 000000000..eff073c15 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_em_01.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31ea78dab0311d887ef3a9cb4c89445711929e6da8799d7e6387709eca74daff +size 558 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_em_011.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_em_011.ydr new file mode 100644 index 000000000..ef93a2640 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_em_011.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1f5bfb041808f6e96a0fccbbbebe22e9c0d1c9843a80415f5ada832bdb73e9c +size 523 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_em_02.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_em_02.ydr new file mode 100644 index 000000000..fabfe703f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_em_02.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cadaa33e069fb37d13cf6bc866695cc58b69184e55ad914e028554c4346a10c6 +size 583 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_railings.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_railings.ydr new file mode 100644 index 000000000..0a204467f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_railings.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62ac68ac94b2c2cdda632c2e2ee723bfb1bc8d6d1064ab5d90471f581dab6cbc +size 468202 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_terrain_medic.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_terrain_medic.ydr new file mode 100644 index 000000000..a6766b3b0 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_terrain_medic.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:638013e70660874075bec9f6c7e9bb23dcb24834643a42063a211a0d9e0a7e8c +size 251168 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_terrain_medic_ovly.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_terrain_medic_ovly.ydr new file mode 100644 index 000000000..1c48aa603 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_10_terrain_medic_ovly.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bef4b0d4266412db11bc26e343115b44ad7c7b5245a3560ad8451c38f34609dc +size 67990 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_rd_props_xwire07.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_rd_props_xwire07.ydr new file mode 100644 index 000000000..6dd08c2a6 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_rd_props_xwire07.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:915fee8bec3dd768bc545e9198020f01fa6b42bcaf66bea5e4c427666c23c042 +size 17837 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_rd_props_xwire09.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_rd_props_xwire09.ydr new file mode 100644 index 000000000..9f347774b --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_rd_props_xwire09.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7532a203d3abdb59d1144b392e27d6ad30240931ab752d3815d7e3acb00abc4d +size 27389 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_rd_props_xwire94.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_rd_props_xwire94.ydr new file mode 100644 index 000000000..6c76a6527 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_rd_props_xwire94.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3506422f0f1a99a76f094bba70eee6c8c6948472f642c51e6a933cb954ba625a +size 565 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb00.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb00.ydr new file mode 100644 index 000000000..a6b951fe9 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb00.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6737a2f723023fcdeebc1826c309ecc5c84e262e5e385206010c0a85594b78df +size 172657 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb14.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb14.ydr new file mode 100644 index 000000000..3b20cf433 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb14.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f0da97f43983badaaf44d67d31cd503e83ff69b3924a3ffb7faaccf7bc8fdd7 +size 209698 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb15.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb15.ydr new file mode 100644 index 000000000..0ef9efbc8 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb15.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a1d1127a0b97b9f4b950b0c9cfc374b4bed825e4a43ffc60d8705273cc08342 +size 221633 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb16.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb16.ydr new file mode 100644 index 000000000..5c689d1c4 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb16.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9428f2eb8a611dad025e8882a11a99ce3a7b9fa2189acc6513b3cbbf6902d0c1 +size 1412146 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb17.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb17.ydr new file mode 100644 index 000000000..b815bd833 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb17.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7b4ed479ab7f83df323a0c367552be4e9c143c58d002ac256f04048930fb7fb +size 129165 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb18.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb18.ydr new file mode 100644 index 000000000..b0dad26ec --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb18.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b183f9106cc86f4bd59bd4740660999b71f5e957cc1b204f2f7866eba246aa7 +size 100440 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb20.ydr b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb20.ydr new file mode 100644 index 000000000..85eebb2e3 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ydr/cs4_roadsb20.ydr @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:848b61d050818daddab89cf2c810c9ca1be9c8178e556a9bbe63a218eae2749b +size 182722 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_04_grass_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_04_grass_0.ymap new file mode 100644 index 000000000..fa6a3af39 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_04_grass_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48b03972e70f04991d4b3fc443877a1edb7529c403b02b0e5a550c323579ceb8 +size 249983 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_06_grass_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_06_grass_0.ymap new file mode 100644 index 000000000..e0be082ac --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_06_grass_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68ced3e277b81132c93dfe8760ceec37dccc9fbcb3f468f04ba5fca38ce27aca +size 196501 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_07_grass_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_07_grass_0.ymap new file mode 100644 index 000000000..a6eb0ff9a --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_07_grass_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efa64b7c2bf65aa49438c62d3087802edb504dfffdf1e2ec12d15c9adff15711 +size 90194 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_09_grass_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_09_grass_0.ymap new file mode 100644 index 000000000..f4af60c68 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_09_grass_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4a9701a0e3e8464ab3c9c6f0496ec694c1d2a036bec29539ea8812157b9c7fe +size 123505 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_10_grass_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_10_grass_0.ymap new file mode 100644 index 000000000..e88d37e8c --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_10_grass_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9527b13fe9e4acdb3cf06a5f0d3f1c49fa8374a5c08efc535a21eb747562eb1 +size 31210 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_occl_03.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_occl_03.ymap new file mode 100644 index 000000000..dabf317e9 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/cs4_occl_03.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:454d779b294d57c7f4c03d14ce288e1ffc86524c0da1633a94245cde90bd67ce +size 14893 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_06_long_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_06_long_0.ymap new file mode 100644 index 000000000..f1786c41b --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_06_long_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5802d80ed549c443734be62844be13bccff4dea447927be06beb0748ce278504 +size 1432 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_06_strm_1.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_06_strm_1.ymap new file mode 100644 index 000000000..3ffdec550 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_06_strm_1.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d7e49c9a6b246920e6dde4b7686e842eaf3a6eef2599700f26345df80dd2a74 +size 9072 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_06_strm_2.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_06_strm_2.ymap new file mode 100644 index 000000000..af209488c --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_06_strm_2.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a628651141065800fed02941d5d6ae9371ba8a5e1202eb98cf3f5a10e13b506 +size 3205 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_07_strm_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_07_strm_0.ymap new file mode 100644 index 000000000..53cdb92f1 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_07_strm_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e056485819cbf84e2da5c21d6b5933cd07382f9217f25f0d9146e4efcd752e0 +size 9379 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_07_strm_1.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_07_strm_1.ymap new file mode 100644 index 000000000..6270874a0 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_07_strm_1.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e573424ace1a0307a60c581268687f71aba60f203e077cdc4ad323a0bf5d238e +size 7575 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_09.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_09.ymap new file mode 100644 index 000000000..4f0a76d15 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_09.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44591c2a04cf01d6dc1eb4945f97e2465e29aa1355bd79503f4e75712caf1461 +size 2942 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_09_long_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_09_long_0.ymap new file mode 100644 index 000000000..48400dbb0 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_09_long_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fdfb4c3e1dea1d4a278cf8ddfccec3d89777f2dd9b077259e64f6efa24d72f3 +size 2615 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_09_strm_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_09_strm_0.ymap new file mode 100644 index 000000000..bb95f7a30 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_09_strm_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad7e8f3224ed20b56f6b510cc17109be75f49668f9317a5683b1b1957c162ec2 +size 10540 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_09_strm_1.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_09_strm_1.ymap new file mode 100644 index 000000000..3c83f1b5a --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_09_strm_1.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b5ae5c63b1d3f384238720f2e950e43f42b0f3616b6906213e059873ddedb4a +size 15160 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_10.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_10.ymap new file mode 100644 index 000000000..9e2c4bc01 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_10.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08bd327f0168c6bc9506945c8de2644b95bde9a2a926eb2dd3be0404a83dcc83 +size 3901 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_10_interior_v_sheriff_milo_.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_10_interior_v_sheriff_milo_.ymap new file mode 100644 index 000000000..9c12989f7 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_10_interior_v_sheriff_milo_.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c858633026480c46a878ef743aa6e5291324cc06c66067e344b0dcb32fd97c2 +size 1195 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_10_long_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_10_long_0.ymap new file mode 100644 index 000000000..a12751de2 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_10_long_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60be47e1ab5f4d7cf7b6ca00ce6b8d03a3dda9b80ebf9eb518073affe893463c +size 1449 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_10_strm_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_10_strm_0.ymap new file mode 100644 index 000000000..5391d4e7f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_10_strm_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a691039f03908ac72c1153e6ac45d9c552d04cb6a7184552ce6017121f1670b +size 13438 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads.ymap new file mode 100644 index 000000000..43953232d --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d294fd0d60ca847735fc579a87c0ff8d7a2695df6dc64ba3dfcf57da12048a27 +size 17688 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_critical_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_critical_0.ymap new file mode 100644 index 000000000..28b365fd7 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_critical_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:306cce471001f20dcffdee72c90eecb35ef667ddc1fe7b8ba5a52274dfd3fd61 +size 18601 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_critical_1.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_critical_1.ymap new file mode 100644 index 000000000..bfe9d7331 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_critical_1.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9342cc3f25894cec880add688c57a3871bf7987449245e77c2dbd747165714c4 +size 18777 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_critical_2.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_critical_2.ymap new file mode 100644 index 000000000..e61f8ee69 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_critical_2.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfb8d540dd48d17a29778eca7de08e8020695944d35071e8092c3362caf8399d +size 8804 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_long_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_long_0.ymap new file mode 100644 index 000000000..614dc2b19 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_long_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fce45271b4e36aba94c8cfcfea67c88aaf3c6916d67f7b05887c8d66f8bd3a15 +size 16285 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_strm_0.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_strm_0.ymap new file mode 100644 index 000000000..e597b4c73 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_strm_0.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21d1397237357dae88416f4e1861b5b6d154ff7fd91d8b0eed04f9464ceb6510 +size 12390 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_strm_2.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_strm_2.ymap new file mode 100644 index 000000000..bb28361c7 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/lr_cs4_roads_strm_2.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20f26071a8a115101d5e2b739bfea2b59ade7ec602e5e10728181e6b391c7e76 +size 15939 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/sheriff_cap_lod.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/sheriff_cap_lod.ymap new file mode 100644 index 000000000..23534675f --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/sheriff_cap_lod.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:986496ba25be7f3f695872589a479ccf47c3dee810ba83cc07d30ba4d51d9afd +size 1156 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/vw_distlodlights_medium028.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/vw_distlodlights_medium028.ymap new file mode 100644 index 000000000..0e8615ce6 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/vw_distlodlights_medium028.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c782d81e4e1005355ce1027c376012795e076f0144a27fe49395048cbbd9abbc +size 3384 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/vw_lodlights_medium028.ymap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/vw_lodlights_medium028.ymap new file mode 100644 index 000000000..d5eb909d0 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_sandy_mapdata/stream/ymap/vw_lodlights_medium028.ymap @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5063304473fa9d70209817cd8b3aa9b8b2b46b3f0a4079e3c67b1e853ff2b3ae +size 4257 diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/.fxap b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/.fxap new file mode 100644 index 000000000..92cc93017 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/.fxap differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/fxmanifest.lua b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/fxmanifest.lua new file mode 100644 index 000000000..07c508d84 --- /dev/null +++ b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/fxmanifest.lua @@ -0,0 +1,23 @@ +fx_version 'cerulean' +game 'gta5' + +author 'G&N Studio' +description 'Scenarios Modification - Sandyshore Sheriff Dept + Motel - Davis Sheriff Dept + Blaine COunty Fire Dept' +version '1.4.0' + +files { + 'sp_manifest.ymt', +} + +dependencies { + '/server:4960', + '/gameBuild:2189' +} + +data_file 'SCENARIO_POINTS_OVERRIDE_PSO_FILE' 'sp_manifest.ymt' + +escrow_ignore { + 'sp_manifest.ymt', + 'stream/*.ymt', + } +dependency '/assetpacks' \ No newline at end of file diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/sp_manifest.ymt b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/sp_manifest.ymt new file mode 100644 index 000000000..c65a09249 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/sp_manifest.ymt differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/stream/alien_camp.ymt b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/stream/alien_camp.ymt new file mode 100644 index 000000000..ff8625efb Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/stream/alien_camp.ymt differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/stream/davis.ymt b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/stream/davis.ymt new file mode 100644 index 000000000..63ac84b29 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/stream/davis.ymt differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/stream/rancho.ymt b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/stream/rancho.ymt new file mode 100644 index 000000000..91d14d1a5 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/stream/rancho.ymt differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/stream/sandy_shores.ymt b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/stream/sandy_shores.ymt new file mode 100644 index 000000000..8a24d563f Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/stream/sandy_shores.ymt differ diff --git a/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/stream/senora_hills.ymt b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/stream/senora_hills.ymt new file mode 100644 index 000000000..de324dea0 Binary files /dev/null and b/resources/[EGRP-Map-Addons]/[gnstudio]/cfx_gn_scenario/stream/senora_hills.ymt differ diff --git a/resources/mth-K9/.gitattributes b/resources/mth-K9/.gitattributes new file mode 100644 index 000000000..dfe077042 --- /dev/null +++ b/resources/mth-K9/.gitattributes @@ -0,0 +1,2 @@ +# Auto detect text files and perform LF normalization +* text=auto diff --git a/resources/mth-K9/LICENSE b/resources/mth-K9/LICENSE new file mode 100644 index 000000000..ff08f292b --- /dev/null +++ b/resources/mth-K9/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2023 mathu_lmn + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/resources/mth-K9/README.md b/resources/mth-K9/README.md new file mode 100644 index 000000000..e32215230 --- /dev/null +++ b/resources/mth-K9/README.md @@ -0,0 +1,33 @@ +**Description :spiral_notepad: :** + +:wave: Hey guys, I've always wanted to Roleplay as a police officer with a K9, unfortunately, I never found **THE** script that has no bugs, and is easy to use and for **free** ! So I decided to make my own script, and here it is ! +(note that some functions were inspired by other scripts, but I tried to make it as much as possible as standalone as possible) + +**Usage :hammer_and_wrench: :** + +To use the resource, download it, put the `mth-K9` folder in your main resources folder. +Add `start mth-K9` to your server.cfg +Then, once you're in game, press O to toggle the menu. + +**Features :sparkles: :** + +* STANDALONE : this means that you don't need any dependencies to start this script on your server +* Easy to use +* Give your K9 a name +* Multiple animations for your K9 +* Attack a target (you can choose between the K9 attacking the player in front of him, or the player you're selecting) +* The K9 can follow you, or stay in a specific place +* The K9 can be called back to you +* The K9 can be put in the car +* The K9 can bark + + +*Demo :eyes: :* + +[Video](https://streamable.com/y771g3) + +https://streamable.com/y771g3 + +**Link to the resource :** [mathu-lmn/mth-K9 (github.com)](https://github.com/Mathu-lmn/mth-K9) + +Feel free to open an Issue or make a PR to help me improve this resource ! \ No newline at end of file diff --git a/resources/mth-K9/RageUI/.vscode/settings.json b/resources/mth-K9/RageUI/.vscode/settings.json new file mode 100644 index 000000000..52541506f --- /dev/null +++ b/resources/mth-K9/RageUI/.vscode/settings.json @@ -0,0 +1,5 @@ +{ + "Lua.diagnostics.disable": [ + "undefined-global" + ] +} \ No newline at end of file diff --git a/resources/mth-K9/RageUI/RMenu.lua b/resources/mth-K9/RageUI/RMenu.lua new file mode 100644 index 000000000..04b00f05e --- /dev/null +++ b/resources/mth-K9/RageUI/RMenu.lua @@ -0,0 +1,98 @@ +--- +--- Generated by EmmyLua(https://github.com/EmmyLua) +--- Created by Dylan Malandain. +--- DateTime: 29/10/2019 02:40 +--- + +---@class RageUI +RageUI = {} + +---@class Item +RageUI.Item = {} + +---@class Panel +RageUI.Panel = {} + +---@class Window +RageUI.Window = {} + +---@class RMenu +RMenu = setmetatable({}, RMenu) + +---@type table +local TotalMenus = {} + +---Add +---@param Type string +---@param Name string +---@param Menu table +---@return RMenu +---@public +function RMenu.Add(Type, Name, Menu) + if RMenu[Type] ~= nil then + RMenu[Type][Name] = { + Menu = Menu + } + else + RMenu[Type] = {} + RMenu[Type][Name] = { + Menu = Menu + } + end + return table.insert(TotalMenus, Menu) +end + +---Get +---@param Type string +---@param Name string +---@return table +---@public +function RMenu:Get(Type, Name) + if self[Type] ~= nil and self[Type][Name] ~= nil then + return self[Type][Name].Menu + end +end + +---GetType +---@param Type string +---@return table +---@public +function RMenu:GetType(Type) + if self[Type] ~= nil then + return self[Type] + end +end + +---Settings +---@param Type string +---@param Name string +---@param Settings string +---@param Value any optional +---@return void +---@public +function RMenu:Settings(Type, Name, Settings, Value) + if Value ~= nil then + self[Type][Name][Settings] = Value + else + return self[Type][Name][Settings] + end +end + +---Delete +---@param Type string +---@param Name string +---@return void +---@public +function RMenu:Delete(Type, Name) + self[Type][Name] = nil + collectgarbage() +end + +---DeleteType +---@param Type string +---@return void +---@public +function RMenu:DeleteType(Type) + self[Type] = nil + collectgarbage() +end diff --git a/resources/mth-K9/RageUI/components/Audio.lua b/resources/mth-K9/RageUI/components/Audio.lua new file mode 100644 index 000000000..eecb07aa7 --- /dev/null +++ b/resources/mth-K9/RageUI/components/Audio.lua @@ -0,0 +1,35 @@ +--- +--- Generated by EmmyLua(https://github.com/EmmyLua) +--- Created by Dylan Malandain. +--- DateTime: 24/07/2019 03:38 +--- + + +---PlaySound +--- +--- Reference : N/A +--- +---@param Library string +---@param Sound string +---@param IsLooped boolean +---@return nil +---@public +function RageUI.PlaySound(Library, Sound, IsLooped) + local audioId + if not IsLooped then + PlaySoundFrontend(-1, Sound, Library, true) + else + if not audioId then + Citizen.CreateThread(function() + audioId = GetSoundId() + PlaySoundFrontend(audioId, Sound, Library, true) + Citizen.Wait(0.01) + StopSound(audioId) + ReleaseSoundId(audioId) + audioId = nil + end) + end + end +end + + diff --git a/resources/mth-K9/RageUI/components/Enum.lua b/resources/mth-K9/RageUI/components/Enum.lua new file mode 100644 index 000000000..3a0121f4b --- /dev/null +++ b/resources/mth-K9/RageUI/components/Enum.lua @@ -0,0 +1,30 @@ +--- +--- @author Dylan MALANDAIN +--- @version 2.0.0 +--- @since 2020 +--- +--- RageUI Is Advanced UI Libs in LUA for make beautiful interface like RockStar GAME. +--- +--- +--- Commercial Info. +--- Any use for commercial purposes is strictly prohibited and will be punished. +--- +--- @see RageUI +--- + +---@class Enum +local enums = { + __index = function(table, key) + if rawget(table.enums, key) then + return key + end + end +} + +---Enum +---@param t table +---@return Enum +function RageUI.Enum(t) + local e = { enums = t } + return setmetatable(e, enums) +end diff --git a/resources/mth-K9/RageUI/components/Keys.lua b/resources/mth-K9/RageUI/components/Keys.lua new file mode 100644 index 000000000..e35cd09f1 --- /dev/null +++ b/resources/mth-K9/RageUI/components/Keys.lua @@ -0,0 +1,53 @@ +--- +--- @author Dylan MALANDAIN +--- @version 2.0.0 +--- @since 2020 +--- +--- RageUI Is Advanced UI Libs in LUA for make beautiful interface like RockStar GAME. +--- +--- +--- Commercial Info. +--- Any use for commercial purposes is strictly prohibited and will be punished. +--- +--- @see RageUI +--- + + +---@class Keys +Keys = {}; + +---Register +---@param Controls string +---@param ControlName string +---@param Description string +---@param Action function +---@return Keys +---@public + +Keys = { + keysAllow = true +} + +function Keys.Register(Controls, ControlName, Description, Action) + local _Keys = { + CONTROLS = Controls + } + RegisterKeyMapping(string.format('rageui-%s', ControlName), Description, "keyboard", Controls) + RegisterCommand(string.format('rageui-%s', ControlName), function(source, args) + if (Action ~= nil) then + if Keys.keysAllow then + Action(); + else + ShowNotification("~r~Action impossible ...~s~") + end + end + end, false) + return setmetatable(_Keys, Keys) +end + +---Exists +---@param Controls string +---@return boolean +function Keys:Exists(Controls) + return self.CONTROLS == Controls and true or false +end diff --git a/resources/mth-K9/RageUI/components/Rectangle.lua b/resources/mth-K9/RageUI/components/Rectangle.lua new file mode 100644 index 000000000..78ec8a942 --- /dev/null +++ b/resources/mth-K9/RageUI/components/Rectangle.lua @@ -0,0 +1,18 @@ +---RenderRectangle +--- +--- Reference : https://github.com/iTexZoz/NativeUILua_Reloaded/blob/master/UIElements/UIResRectangle.lua#L84 +--- +---@param X number +---@param Y number +---@param Width number +---@param Height number +---@param R number +---@param G number +---@param B number +---@param A number +---@return nil +---@public +function RenderRectangle(X, Y, Width, Height, R, G, B, A) + local X, Y, Width, Height = (tonumber(X) or 0) / 1920, (tonumber(Y) or 0) / 1080, (tonumber(Width) or 0) / 1920, (tonumber(Height) or 0) / 1080 + DrawRect(X + Width * 0.5, Y + Height * 0.5, Width, Height, tonumber(R) or 255, tonumber(G) or 255, tonumber(B) or 255, tonumber(A) or 255) +end diff --git a/resources/mth-K9/RageUI/components/Sprite.lua b/resources/mth-K9/RageUI/components/Sprite.lua new file mode 100644 index 000000000..836daace1 --- /dev/null +++ b/resources/mth-K9/RageUI/components/Sprite.lua @@ -0,0 +1,27 @@ +---RenderSprite +--- +--- Reference : https://github.com/iTexZoz/NativeUILua_Reloaded/blob/master/UIElements/Sprite.lua#L90 +--- +---@param TextureDictionary string +---@param TextureName string +---@param X number +---@param Y number +---@param Width number +---@param Height number +---@param Heading number +---@param R number +---@param G number +---@param B number +---@param A number +---@return nil +---@public +function RenderSprite(TextureDictionary, TextureName, X, Y, Width, Height, Heading, R, G, B, A) + ---@type number + local X, Y, Width, Height = (tonumber(X) or 0) / 1920, (tonumber(Y) or 0) / 1080, (tonumber(Width) or 0) / 1920, (tonumber(Height) or 0) / 1080 + + if not HasStreamedTextureDictLoaded(TextureDictionary) then + RequestStreamedTextureDict(TextureDictionary, true) + end + + DrawSprite(TextureDictionary, TextureName, X + Width * 0.5, Y + Height * 0.5, Width, Height, Heading or 0, tonumber(R) or 255, tonumber(G) or 255, tonumber(B) or 255, tonumber(A) or 255) +end \ No newline at end of file diff --git a/resources/mth-K9/RageUI/components/Text.lua b/resources/mth-K9/RageUI/components/Text.lua new file mode 100644 index 000000000..0ee200785 --- /dev/null +++ b/resources/mth-K9/RageUI/components/Text.lua @@ -0,0 +1,172 @@ +---StringToArray +--- +--- Reference : Frazzle <3 +--- +---@param str string +function StringToArray(str) + local charCount = #str + local strCount = math.ceil(charCount / 99) + local strings = {} + + for i = 1, strCount do + local start = (i - 1) * 99 + 1 + local clamp = math.clamp(#string.sub(str, start), 0, 99) + local finish = ((i ~= 1) and (start - 1) or 0) + clamp + + strings[i] = string.sub(str, start, finish) + end + + return strings +end + +---MeasureStringWidth +--- +--- Reference : Frazzle <3 +--- +---@param str string +---@param font number +---@param scale number +---@return number +---@public +function MeasureStringWidth(str, font, scale) + BeginTextCommandWidth("CELL_EMAIL_BCON") + AddTextComponentSubstringPlayerName(str) + SetTextFont(font or 0) + SetTextScale(1.0, scale or 0) + return EndTextCommandGetWidth(true) * 1920 +end + + +---AddText +--- +--- Reference : Frazzle <3 +--- +---@param str string +function AddText(str) + local str = tostring(str) + local charCount = #str + + if charCount < 100 then + AddTextComponentSubstringPlayerName(str) + else + local strings = StringToArray(str) + + for s = 1, #strings do + AddTextComponentSubstringPlayerName(strings[s]) + end + end +end + + +---GetLineCount +--- +--- Reference : Frazzle <3 +--- +---@param Text string +---@param X number +---@param Y number +---@param Font number +---@param Scale number +---@param R number +---@param G number +---@param B number +---@param A number +---@param Alignment string +---@param DropShadow boolean +---@param Outline boolean +---@param WordWrap number +---@return function +---@public +function GetLineCount(Text, X, Y, Font, Scale, R, G, B, A, Alignment, DropShadow, Outline, WordWrap) + ---@type table + local Text, X, Y = tostring(Text), (tonumber(X) or 0) / 1920, (tonumber(Y) or 0) / 1080 + SetTextFont(Font or 0) + SetTextScale(1.0, Scale or 0) + SetTextColour(tonumber(R) or 255, tonumber(G) or 255, tonumber(B) or 255, tonumber(A) or 255) + if DropShadow then + SetTextDropShadow() + end + if Outline then + SetTextOutline() + end + if Alignment ~= nil then + if Alignment == 1 or Alignment == "Center" or Alignment == "Centre" then + SetTextCentre(true) + elseif Alignment == 2 or Alignment == "Right" then + SetTextRightJustify(true) + end + end + if tonumber(WordWrap) and tonumber(WordWrap) ~= 0 then + if Alignment == 1 or Alignment == "Center" or Alignment == "Centre" then + SetTextWrap(X - ((WordWrap / 1920) / 2), X + ((WordWrap / 1920) / 2)) + elseif Alignment == 2 or Alignment == "Right" then + SetTextWrap(0, X) + else + SetTextWrap(X, X + (WordWrap / 1920)) + end + else + if Alignment == 2 or Alignment == "Right" then + SetTextWrap(0, X) + end + end + + BeginTextCommandLineCount("CELL_EMAIL_BCON") + AddText(Text) + return GetTextScreenLineCount(X, Y) +end + +---RenderText +--- +--- Reference : https://github.com/iTexZoz/NativeUILua_Reloaded/blob/master/UIElements/UIResText.lua#L189 +--- +---@param Text string +---@param X number +---@param Y number +---@param Font number +---@param Scale number +---@param R number +---@param G number +---@param B number +---@param A number +---@param Alignment string +---@param DropShadow boolean +---@param Outline boolean +---@param WordWrap number +---@return nil +---@public +function RenderText(Text, X, Y, Font, Scale, R, G, B, A, Alignment, DropShadow, Outline, WordWrap) + ---@type table + local Text, X, Y = tostring(Text), (tonumber(X) or 0) / 1920, (tonumber(Y) or 0) / 1080 + SetTextFont(Font or 0) + SetTextScale(1.0, Scale or 0) + SetTextColour(tonumber(R) or 255, tonumber(G) or 255, tonumber(B) or 255, tonumber(A) or 255) + if DropShadow then + SetTextDropShadow() + end + if Outline then + SetTextOutline() + end + if Alignment ~= nil then + if Alignment == 1 or Alignment == "Center" or Alignment == "Centre" then + SetTextCentre(true) + elseif Alignment == 2 or Alignment == "Right" then + SetTextRightJustify(true) + end + end + if tonumber(WordWrap) and tonumber(WordWrap) ~= 0 then + if Alignment == 1 or Alignment == "Center" or Alignment == "Centre" then + SetTextWrap(X - ((WordWrap / 1920) / 2), X + ((WordWrap / 1920) / 2)) + elseif Alignment == 2 or Alignment == "Right" then + SetTextWrap(0, X) + else + SetTextWrap(X, X + (WordWrap / 1920)) + end + else + if Alignment == 2 or Alignment == "Right" then + SetTextWrap(0, X) + end + end + BeginTextCommandDisplayText("CELL_EMAIL_BCON") + AddText(Text) + EndTextCommandDisplayText(X, Y) +end diff --git a/resources/mth-K9/RageUI/components/Visual.lua b/resources/mth-K9/RageUI/components/Visual.lua new file mode 100644 index 000000000..df0b70719 --- /dev/null +++ b/resources/mth-K9/RageUI/components/Visual.lua @@ -0,0 +1,63 @@ +--- +--- @author Dylan MALANDAIN +--- @version 2.0.0 +--- @since 2020 +--- +--- RageUI Is Advanced UI Libs in LUA for make beautiful interface like RockStar GAME. +--- +--- +--- Commercial Info. +--- Any use for commercial purposes is strictly prohibited and will be punished. +--- +--- @see RageUI +--- + +---@class Visual +Visual = Visual or {}; + +local function AddLongString(txt) + for i = 100, string.len(txt), 99 do + local sub = string.sub(txt, i, i + 99) + AddTextComponentSubstringPlayerName(sub) + end +end + +function Visual.Subtitle(text, time) + ClearPrints() + AddTextEntry('core:Subtitle', text) + BeginTextCommandPrint('core:subtitle') + AddTextComponentSubstringPlayerName(text) + EndTextCommandPrint(time and math.ceil(time) or 0, true) +end + +function Visual.FloatingHelpText(text, sound, loop) + BeginTextCommandDisplayHelp("jamyfafi") + AddTextComponentSubstringPlayerName(text) + if string.len(text) > 99 then + AddLongString(text) + end + EndTextCommandDisplayHelp(0, loop or 0, sound or true, -1) +end + +function Visual.Prompt(text, spinner) + BeginTextCommandBusyspinnerOn("STRING") + AddTextComponentSubstringPlayerName(text) + EndTextCommandBusyspinnerOn(spinner or 1) +end + +function Visual.ENBASLAAA(text, spinner) + BeginTextCommandBusyspinnerOn("STRING") + AddTextComponentSubstringPlayerName(text) + EndTextCommandScaleformString() +end + +function Visual.PromptDuration(duration, text, spinner) + Citizen.CreateThread(function() + Citizen.Wait(0) + Visual.Prompt(text, spinner) + Citizen.Wait(duration) + if (BusyspinnerIsOn()) then + BusyspinnerOff(); + end + end) +end diff --git a/resources/mth-K9/RageUI/menu/Menu.lua b/resources/mth-K9/RageUI/menu/Menu.lua new file mode 100644 index 000000000..fb9aafe80 --- /dev/null +++ b/resources/mth-K9/RageUI/menu/Menu.lua @@ -0,0 +1,391 @@ +--- +--- Generated by EmmyLua(https://github.com/EmmyLua) +--- Created by Dylan Malandain. +--- DateTime: 21/04/2019 21:20 +--- + +---CreateMenu +---@param Title string +---@param Subtitle string +---@param X number +---@param Y number +---@param TextureDictionary string +---@param TextureName string +---@param R number +---@param G number +---@param B number +---@param A number +---@return RageUIMenus +---@public +function RageUI.CreateMenu(Title, Subtitle, X, Y, TextureDictionary, TextureName, R, G, B, A) + + ---@type table + local Menu = {} + Menu.Display = {}; + + Menu.InstructionalButtons = {} + + Menu.Display.Header = true; + Menu.Display.Glare = true; + Menu.Display.Subtitle = true; + Menu.Display.Background = true; + Menu.Display.Navigation = true; + Menu.Display.InstructionalButton = true; + Menu.Display.PageCounter = false; + + Menu.Title = Title or "" + Menu.TitleFont = 6 + Menu.TitleScale = 1.2 + Menu.Subtitle = string.upper(Subtitle) or nil + Menu.SubtitleHeight = -37 + Menu.Description = nil + Menu.DescriptionHeight = RageUI.Settings.Items.Description.Background.Height + Menu.X = X or 0 + Menu.Y = Y or 0 + Menu.Parent = nil + Menu.WidthOffset = RageUI.UI.Style[RageUI.UI.Current].Width + Menu.Open = false + Menu.Controls = RageUI.Settings.Controls + Menu.Index = 1 + Menu.Sprite = { Dictionary = TextureDictionary or "commonmenu", Texture = TextureName or "interaction_bgd", Color = { R = R, G = G, B = B, A = A } } + Menu.Rectangle = nil + Menu.Pagination = { Minimum = 1, Maximum = 10, Total = 10 } + Menu.Safezone = true + Menu.SafeZoneSize = nil + Menu.EnableMouse = false + Menu.Options = 0 + Menu.Closable = true + Menu.InstructionalScaleform = RequestScaleformMovie("INSTRUCTIONAL_BUTTONS") + Menu.CursorStyle = 1 + + if string.starts(Menu.Subtitle, "~") then + Menu.PageCounterColour = string.lower(string.sub(Menu.Subtitle, 1, 3)) + else + Menu.PageCounterColour = "" + end + + if Menu.Subtitle ~= "" then + local SubtitleLineCount = GetLineCount(Menu.Subtitle, Menu.X + RageUI.Settings.Items.Subtitle.Text.X, Menu.Y + RageUI.Settings.Items.Subtitle.Text.Y, 0, RageUI.Settings.Items.Subtitle.Text.Scale, 245, 245, 245, 255, nil, false, false, RageUI.Settings.Items.Subtitle.Background.Width + Menu.WidthOffset) + + if SubtitleLineCount > 1 then + Menu.SubtitleHeight = 18 * SubtitleLineCount + else + Menu.SubtitleHeight = 0 + end + end + + Citizen.CreateThread(function() + if not HasScaleformMovieLoaded(Menu.InstructionalScaleform) then + Menu.InstructionalScaleform = RequestScaleformMovie("INSTRUCTIONAL_BUTTONS") + while not HasScaleformMovieLoaded(Menu.InstructionalScaleform) do + Citizen.Wait(0) + end + end + end) + + Citizen.CreateThread(function() + local ScaleformMovie = RequestScaleformMovie("MP_MENU_GLARE") + while not HasScaleformMovieLoaded(ScaleformMovie) do + Citizen.Wait(0) + end + end) + + return setmetatable(Menu, RageUI.Menus) +end + +---CreateSubMenu +---@param ParentMenu RageUIMenus +---@param Title string +---@param Subtitle string +---@param X number +---@param Y number +---@param TextureDictionary string +---@param TextureName string +---@param R number +---@param G number +---@param B number +---@param A number +---@return RageUIMenus +---@public +function RageUI.CreateSubMenu(ParentMenu, Title, Subtitle, X, Y, TextureDictionary, TextureName, R, G, B, A) + if ParentMenu ~= nil then + if ParentMenu() then + local Menu = RageUI.CreateMenu(Title or ParentMenu.Title, string.upper(Subtitle) or string.upper(ParentMenu.Subtitle), X or ParentMenu.X, Y or ParentMenu.Y) + Menu.Parent = ParentMenu + Menu.WidthOffset = ParentMenu.WidthOffset + Menu.Safezone = ParentMenu.Safezone + if ParentMenu.Sprite then + Menu.Sprite = { Dictionary = TextureDictionary or ParentMenu.Sprite.Dictionary, Texture = TextureName or ParentMenu.Sprite.Texture, Color = { R = R or ParentMenu.Sprite.Color.R, G = G or ParentMenu.Sprite.Color.G, B = B or ParentMenu.Sprite.Color.B, A = A or ParentMenu.Sprite.Color.A } } + else + Menu.Rectangle = ParentMenu.Rectangle + end + return setmetatable(Menu, RageUI.Menus) + else + return nil + end + else + return nil + end +end + +function RageUI.Menus:DisplayHeader(boolean) + self.Display.Header = boolean; + return self.Display.Header; +end + +function RageUI.Menus:DisplayGlare(boolean) + self.Display.Glare = boolean; + return self.Display.Glare; +end + +function RageUI.Menus:DisplaySubtitle(boolean) + self.Display.Subtitle = boolean; + return self.Display.Subtitle; +end + +function RageUI.Menus:DisplayNavigation(boolean) + self.Display.Navigation = boolean; + return self.Display.Navigation; +end + +function RageUI.Menus:DisplayInstructionalButton(boolean) + self.Display.InstructionalButton = boolean; + return self.Display.InstructionalButton; +end + +function RageUI.Menus:DisplayPageCounter(boolean) + self.Display.PageCounter= boolean; + return self.Display.PageCounter; +end + +---SetTitle +---@param Title string +---@return nil +---@public +function RageUI.Menus:SetTitle(Title) + self.Title = Title +end + +function RageUI.Menus:SetStyleSize(Value) + local witdh + if Value >= 0 and Value <= 200 then + witdh = Value + else + witdh = 100 + end + self.WidthOffset = witdh +end + +---GetStyleSize +---@return any +---@public +function RageUI.Menus:GetStyleSize() + if (self.WidthOffset == 100) then + return "RageUI" + elseif (self.WidthOffset == 0) then + return "NativeUI"; + else + return self.WidthOffset; + end +end + +---SetStyleSize +---@param Int string +---@return void +---@public +function RageUI.Menus:SetCursorStyle(Int) + self.CursorStyle = Int or 1 or 0 + SetMouseCursorSprite(Int) +end + +---ResetCursorStyle +---@return void +---@public +function RageUI.Menus:ResetCursorStyle() + self.CursorStyle = 1 + SetMouseCursorSprite(1) +end + +---UpdateCursorStyle +---@return void +---@public +function RageUI.Menus:UpdateCursorStyle() + SetMouseCursorSprite(self.CursorStyle) +end + +---RefreshIndex +---@return void +---@public +function RageUI.Menus:RefreshIndex() + self.Index = 1 +end + +---SetSubtitle +---@param Subtitle string +---@return nil +---@public +function RageUI.Menus:SetSubtitle(Subtitle) + + self.Subtitle = string.upper(Subtitle) or string.upper(self.Subtitle) + + if string.starts(self.Subtitle, "~") then + self.PageCounterColour = string.lower(string.sub(self.Subtitle, 1, 3)) + else + self.PageCounterColour = "" + end + if self.Subtitle ~= "" then + local SubtitleLineCount = GetLineCount(self.Subtitle, self.X + RageUI.Settings.Items.Subtitle.Text.X, self.Y + RageUI.Settings.Items.Subtitle.Text.Y, 0, RageUI.Settings.Items.Subtitle.Text.Scale, 245, 245, 245, 255, nil, false, false, RageUI.Settings.Items.Subtitle.Background.Width + self.WidthOffset) + + if SubtitleLineCount > 1 then + self.SubtitleHeight = 18 * SubtitleLineCount + else + self.SubtitleHeight = 0 + end + + else + self.SubtitleHeight = -37 + end +end + +---PageCounter +---@param Subtitle string +---@return nil +---@public +function RageUI.Menus:SetPageCounter(Subtitle) + self.PageCounter = Subtitle +end + +---EditSpriteColor +---@param Colors table +---@return nil +---@public +function RageUI.Menus:EditSpriteColor(R, G, B, A) + if self.Sprite.Dictionary == "commonmenu" then + self.Sprite.Color = { R = tonumber(R) or 255, G = tonumber(G) or 255, B = tonumber(B) or 255, A = tonumber(A) or 255 } + end +end +---SetPosition +---@param X number +---@param Y number +---@return nil +---@public +function RageUI.Menus:SetPosition(X, Y) + self.X = tonumber(X) or self.X + self.Y = tonumber(Y) or self.Y +end + +---SetTotalItemsPerPage +---@param Value number +---@return nil +---@public +function RageUI.Menus:SetTotalItemsPerPage(Value) + self.Pagination.Total = tonumber(Value) or self.Pagination.Total +end + +---SetRectangleBanner +---@param R number +---@param G number +---@param B number +---@param A number +---@return nil +---@public +function RageUI.Menus:SetRectangleBanner(R, G, B, A) + self.Rectangle = { R = tonumber(R) or 255, G = tonumber(G) or 255, B = tonumber(B) or 255, A = tonumber(A) or 255 } + self.Sprite = nil +end + +---SetSpriteBanner +---@param TextureDictionary string +---@param Texture string +---@return nil +---@public +function RageUI.Menus:SetSpriteBanner(TextureDictionary, Texture) + self.Sprite = { Dictionary = TextureDictionary or "commonmenu", Texture = Texture or "interaction_bgd" } + self.Rectangle = nil +end + +function RageUI.Menus:Closable(boolean) + if type(boolean) == "boolean" then + self.Closable = boolean + else + error("Type is not boolean") + end +end + +function RageUI.Menus:AddInstructionButton(button) + if type(button) == "table" and #button == 2 then + table.insert(self.InstructionalButtons, button) + self.UpdateInstructionalButtons(true); + end +end + +function RageUI.Menus:RemoveInstructionButton(button) + if type(button) == "table" then + for i = 1, #self.InstructionalButtons do + if button == self.InstructionalButtons[i] then + table.remove(self.InstructionalButtons, i) + self.UpdateInstructionalButtons(true); + break + end + end + else + if tonumber(button) then + if self.InstructionalButtons[tonumber(button)] then + table.remove(self.InstructionalButtons, tonumber(button)) + self.UpdateInstructionalButtons(true); + end + end + end +end + +function RageUI.Menus:UpdateInstructionalButtons(Visible) + + if not Visible then + return + end + + BeginScaleformMovieMethod(self.InstructionalScaleform, "CLEAR_ALL") + EndScaleformMovieMethod() + + BeginScaleformMovieMethod(self.InstructionalScaleform, "TOGGLE_MOUSE_BUTTONS") + ScaleformMovieMethodAddParamInt(0) + EndScaleformMovieMethod() + + BeginScaleformMovieMethod(self.InstructionalScaleform, "CREATE_CONTAINER") + EndScaleformMovieMethod() + + BeginScaleformMovieMethod(self.InstructionalScaleform, "SET_DATA_SLOT") + ScaleformMovieMethodAddParamInt(0) + PushScaleformMovieMethodParameterButtonName(GetControlInstructionalButton(2, 176, 0)) + PushScaleformMovieMethodParameterString(GetLabelText("HUD_INPUT2")) + EndScaleformMovieMethod() + + if self.Closable then + BeginScaleformMovieMethod(self.InstructionalScaleform, "SET_DATA_SLOT") + ScaleformMovieMethodAddParamInt(1) + PushScaleformMovieMethodParameterButtonName(GetControlInstructionalButton(2, 177, 0)) + PushScaleformMovieMethodParameterString(GetLabelText("HUD_INPUT3")) + EndScaleformMovieMethod() + end + + local count = 2 + + if (self.InstructionalButtons ~= nil) then + for i = 1, #self.InstructionalButtons do + if self.InstructionalButtons[i] then + if #self.InstructionalButtons[i] == 2 then + BeginScaleformMovieMethod(self.InstructionalScaleform, "SET_DATA_SLOT") + ScaleformMovieMethodAddParamInt(count) + PushScaleformMovieMethodParameterButtonName(self.InstructionalButtons[i][1]) + PushScaleformMovieMethodParameterString(self.InstructionalButtons[i][2]) + EndScaleformMovieMethod() + count = count + 1 + end + end + end + end + + BeginScaleformMovieMethod(self.InstructionalScaleform, "DRAW_INSTRUCTIONAL_BUTTONS") + ScaleformMovieMethodAddParamInt(-1) + EndScaleformMovieMethod() +end diff --git a/resources/mth-K9/RageUI/menu/MenuController.lua b/resources/mth-K9/RageUI/menu/MenuController.lua new file mode 100644 index 000000000..498e31f5f --- /dev/null +++ b/resources/mth-K9/RageUI/menu/MenuController.lua @@ -0,0 +1,408 @@ +--- +--- @author Dylan MALANDAIN +--- @version 2.0.0 +--- @since 2020 +--- +--- RageUI Is Advanced UI Libs in LUA for make beautiful interface like RockStar GAME. +--- +--- +--- Commercial Info. +--- Any use for commercial purposes is strictly prohibited and will be punished. +--- +--- @see RageUI +--- + +RageUI.LastControl = false + +local ControlActions = { + 'Left', + 'Right', + 'Select', + 'Click', +} + +---GoUp +---@param Options number +---@return nil +---@public +function RageUI.GoUp(Options) + local CurrentMenu = RageUI.CurrentMenu; + if CurrentMenu ~= nil then + Options = CurrentMenu.Options + if CurrentMenu() then + if (Options ~= 0) then + if Options > CurrentMenu.Pagination.Total then + if CurrentMenu.Index <= CurrentMenu.Pagination.Minimum then + if CurrentMenu.Index == 1 then + CurrentMenu.Pagination.Minimum = Options - (CurrentMenu.Pagination.Total - 1) + CurrentMenu.Pagination.Maximum = Options + CurrentMenu.Index = Options + else + CurrentMenu.Pagination.Minimum = (CurrentMenu.Pagination.Minimum - 1) + CurrentMenu.Pagination.Maximum = (CurrentMenu.Pagination.Maximum - 1) + CurrentMenu.Index = CurrentMenu.Index - 1 + end + else + CurrentMenu.Index = CurrentMenu.Index - 1 + end + else + if CurrentMenu.Index == 1 then + CurrentMenu.Pagination.Minimum = Options - (CurrentMenu.Pagination.Total - 1) + CurrentMenu.Pagination.Maximum = Options + CurrentMenu.Index = Options + else + CurrentMenu.Index = CurrentMenu.Index - 1 + end + end + + local Audio = RageUI.Settings.Audio + RageUI.PlaySound(Audio[Audio.Use].UpDown.audioName, Audio[Audio.Use].UpDown.audioRef) + RageUI.LastControl = true + if (CurrentMenu.onIndexChange ~= nil) then + Citizen.CreateThread(function() + CurrentMenu.onIndexChange(CurrentMenu.Index) + end) + end + else + local Audio = RageUI.Settings.Audio + RageUI.PlaySound(Audio[Audio.Use].Error.audioName, Audio[Audio.Use].Error.audioRef) + end + end + end +end + +---GoDown +---@param Options number +---@return nil +---@public +function RageUI.GoDown(Options) + local CurrentMenu = RageUI.CurrentMenu; + if CurrentMenu ~= nil then + Options = CurrentMenu.Options + if CurrentMenu() then + if (Options ~= 0) then + if Options > CurrentMenu.Pagination.Total then + if CurrentMenu.Index >= CurrentMenu.Pagination.Maximum then + if CurrentMenu.Index == Options then + CurrentMenu.Pagination.Minimum = 1 + CurrentMenu.Pagination.Maximum = CurrentMenu.Pagination.Total + CurrentMenu.Index = 1 + else + CurrentMenu.Pagination.Maximum = (CurrentMenu.Pagination.Maximum + 1) + CurrentMenu.Pagination.Minimum = CurrentMenu.Pagination.Maximum - (CurrentMenu.Pagination.Total - 1) + CurrentMenu.Index = CurrentMenu.Index + 1 + end + else + CurrentMenu.Index = CurrentMenu.Index + 1 + end + else + if CurrentMenu.Index == Options then + CurrentMenu.Pagination.Minimum = 1 + CurrentMenu.Pagination.Maximum = CurrentMenu.Pagination.Total + CurrentMenu.Index = 1 + else + CurrentMenu.Index = CurrentMenu.Index + 1 + end + end + local Audio = RageUI.Settings.Audio + RageUI.PlaySound(Audio[Audio.Use].UpDown.audioName, Audio[Audio.Use].UpDown.audioRef) + RageUI.LastControl = false + if (CurrentMenu.onIndexChange ~= nil) then + Citizen.CreateThread(function() + CurrentMenu.onIndexChange(CurrentMenu.Index) + end) + end + else + local Audio = RageUI.Settings.Audio + RageUI.PlaySound(Audio[Audio.Use].Error.audioName, Audio[Audio.Use].Error.audioRef) + end + end + end +end + +function RageUI.GoActionControl(Controls, Action) + if Controls[Action or 'Left'].Enabled then + for Index = 1, #Controls[Action or 'Left'].Keys do + if not Controls[Action or 'Left'].Pressed then + if IsDisabledControlJustPressed(Controls[Action or 'Left'].Keys[Index][1], Controls[Action or 'Left'].Keys[Index][2]) then + Controls[Action or 'Left'].Pressed = true + Citizen.CreateThread(function() + Controls[Action or 'Left'].Active = true + Citizen.Wait(0.01) + Controls[Action or 'Left'].Active = false + Citizen.Wait(175) + while Controls[Action or 'Left'].Enabled and IsDisabledControlPressed(Controls[Action or 'Left'].Keys[Index][1], Controls[Action or 'Left'].Keys[Index][2]) do + Controls[Action or 'Left'].Active = true + Citizen.Wait(1) + + Controls[Action or 'Left'].Active = false + Citizen.Wait(124) + end + Controls[Action or 'Left'].Pressed = false + if (Action ~= ControlActions[5]) then + Citizen.Wait(10) + end + end) + break + end + end + end + end +end + +function RageUI.GoActionControlSlider(Controls, Action) + if Controls[Action].Enabled then + for Index = 1, #Controls[Action].Keys do + if not Controls[Action].Pressed then + if IsDisabledControlJustPressed(Controls[Action].Keys[Index][1], Controls[Action].Keys[Index][2]) then + Controls[Action].Pressed = true + Citizen.CreateThread(function() + Controls[Action].Active = true + Citizen.Wait(1) + Controls[Action].Active = false + while Controls[Action].Enabled and IsDisabledControlPressed(Controls[Action].Keys[Index][1], Controls[Action].Keys[Index][2]) do + Controls[Action].Active = true + Citizen.Wait(1) + Controls[Action].Active = false + end + Controls[Action].Pressed = false + end) + break + end + end + end + end +end + +---Controls +---@return nil +---@public +function RageUI.Controls() + local CurrentMenu = RageUI.CurrentMenu; + if CurrentMenu ~= nil then + if CurrentMenu() then + if CurrentMenu.Open then + + local Controls = CurrentMenu.Controls; + ---@type number + local Options = CurrentMenu.Options + RageUI.Options = CurrentMenu.Options + if CurrentMenu.EnableMouse then + DisableControlAction(2, 24, true) -- disable attack + DisableControlAction(2, 25, true) -- disable aim + DisableControlAction(2, 1, true) -- LookLeftRight + DisableControlAction(2, 2, true) -- LookUpDown + DisableControlAction(2, 142, true) + DisableControlAction(2, 18, true) + DisableControlAction(2, 322, true) + DisableControlAction(2, 106, true) + DisableControlAction(2, 263, true) -- disable melee + DisableControlAction(2, 264, true) -- disable melee + DisableControlAction(2, 257, true) -- disable melee + DisableControlAction(2, 140, true) -- disable melee + DisableControlAction(2, 141, true) -- disable melee + DisableControlAction(2, 142, true) -- disable melee + DisableControlAction(2, 143, true) -- disable melee + end + + if not IsInputDisabled(2) then + for Index = 1, #Controls.Enabled.Controller do + EnableControlAction(Controls.Enabled.Controller[Index][1], Controls.Enabled.Controller[Index][2], true) + end + else + for Index = 1, #Controls.Enabled.Keyboard do + EnableControlAction(Controls.Enabled.Keyboard[Index][1], Controls.Enabled.Keyboard[Index][2], true) + end + end + + if Controls.Up.Enabled then + for Index = 1, #Controls.Up.Keys do + if not Controls.Up.Pressed then + if IsDisabledControlJustPressed(Controls.Up.Keys[Index][1], Controls.Up.Keys[Index][2]) then + Controls.Up.Pressed = true + Citizen.CreateThread(function() + RageUI.GoUp(Options) + Citizen.Wait(175) + while Controls.Up.Enabled and IsDisabledControlPressed(Controls.Up.Keys[Index][1], Controls.Up.Keys[Index][2]) do + RageUI.GoUp(Options) + Citizen.Wait(50) + end + Controls.Up.Pressed = false + end) + break + end + end + end + end + + if Controls.Down.Enabled then + for Index = 1, #Controls.Down.Keys do + if not Controls.Down.Pressed then + if IsDisabledControlJustPressed(Controls.Down.Keys[Index][1], Controls.Down.Keys[Index][2]) then + Controls.Down.Pressed = true + Citizen.CreateThread(function() + RageUI.GoDown(Options) + Citizen.Wait(175) + while Controls.Down.Enabled and IsDisabledControlPressed(Controls.Down.Keys[Index][1], Controls.Down.Keys[Index][2]) do + RageUI.GoDown(Options) + Citizen.Wait(50) + end + Controls.Down.Pressed = false + end) + break + end + end + end + end + + for i = 1, #ControlActions do + RageUI.GoActionControl(Controls, ControlActions[i]) + end + + RageUI.GoActionControlSlider(Controls, 'SliderLeft') + RageUI.GoActionControlSlider(Controls, 'SliderRight') + + if Controls.Back.Enabled then + for Index = 1, #Controls.Back.Keys do + if not Controls.Back.Pressed then + if IsDisabledControlJustPressed(Controls.Back.Keys[Index][1], Controls.Back.Keys[Index][2]) then + Controls.Back.Pressed = true + Citizen.CreateThread(function() + Citizen.Wait(175) + Controls.Down.Pressed = false + end) + break + end + end + end + end + + end + end + end +end + +---Navigation +---@return nil +---@public +function RageUI.Navigation() + local CurrentMenu = RageUI.CurrentMenu; + if CurrentMenu ~= nil then + if CurrentMenu() and (CurrentMenu.Display.Navigation) then + if CurrentMenu.EnableMouse then + SetMouseCursorActiveThisFrame() + end + if RageUI.Options > CurrentMenu.Pagination.Total then + + ---@type boolean + local UpHovered = false + + ---@type boolean + local DownHovered = false + + if not CurrentMenu.SafeZoneSize then + CurrentMenu.SafeZoneSize = { X = 0, Y = 0 } + + if CurrentMenu.Safezone then + CurrentMenu.SafeZoneSize = RageUI.GetSafeZoneBounds() + + SetScriptGfxAlign(76, 84) + SetScriptGfxAlignParams(0, 0, 0, 0) + end + end + + if CurrentMenu.EnableMouse then + UpHovered = RageUI.IsMouseInBounds(CurrentMenu.X + CurrentMenu.SafeZoneSize.X, CurrentMenu.Y + CurrentMenu.SafeZoneSize.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, RageUI.Settings.Items.Navigation.Rectangle.Width + CurrentMenu.WidthOffset, RageUI.Settings.Items.Navigation.Rectangle.Height) + DownHovered = RageUI.IsMouseInBounds(CurrentMenu.X + CurrentMenu.SafeZoneSize.X, CurrentMenu.Y + RageUI.Settings.Items.Navigation.Rectangle.Height + CurrentMenu.SafeZoneSize.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, RageUI.Settings.Items.Navigation.Rectangle.Width + CurrentMenu.WidthOffset, RageUI.Settings.Items.Navigation.Rectangle.Height) + + -- if CurrentMenu.Controls.Click.Active then + -- if UpHovered then + -- RageUI.GoUp(RageUI.Options) + -- elseif DownHovered then + -- RageUI.GoDown(RageUI.Options) + -- end + -- end + + -- if UpHovered then + -- RenderRectangle(CurrentMenu.X, CurrentMenu.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, RageUI.Settings.Items.Navigation.Rectangle.Width + CurrentMenu.WidthOffset, RageUI.Settings.Items.Navigation.Rectangle.Height, 30, 30, 30, 255) + -- else + -- RenderRectangle(CurrentMenu.X, CurrentMenu.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, RageUI.Settings.Items.Navigation.Rectangle.Width + CurrentMenu.WidthOffset, RageUI.Settings.Items.Navigation.Rectangle.Height, 0, 0, 0, 200) + -- end + + -- if DownHovered then + -- RenderRectangle(CurrentMenu.X, CurrentMenu.Y + RageUI.Settings.Items.Navigation.Rectangle.Height + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, RageUI.Settings.Items.Navigation.Rectangle.Width + CurrentMenu.WidthOffset, RageUI.Settings.Items.Navigation.Rectangle.Height, 30, 30, 30, 255) + -- else + -- RenderRectangle(CurrentMenu.X, CurrentMenu.Y + RageUI.Settings.Items.Navigation.Rectangle.Height + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, RageUI.Settings.Items.Navigation.Rectangle.Width + CurrentMenu.WidthOffset, RageUI.Settings.Items.Navigation.Rectangle.Height, 0, 0, 0, 200) + -- end + else + -- RenderRectangle(CurrentMenu.X, CurrentMenu.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, RageUI.Settings.Items.Navigation.Rectangle.Width + CurrentMenu.WidthOffset, RageUI.Settings.Items.Navigation.Rectangle.Height, 0, 0, 0, 200) + -- RenderRectangle(CurrentMenu.X, CurrentMenu.Y + RageUI.Settings.Items.Navigation.Rectangle.Height + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, RageUI.Settings.Items.Navigation.Rectangle.Width + CurrentMenu.WidthOffset, RageUI.Settings.Items.Navigation.Rectangle.Height, 0, 0, 0, 200) + end + -- RenderSprite(RageUI.Settings.Items.Navigation.Arrows.Dictionary, RageUI.Settings.Items.Navigation.Arrows.Texture, CurrentMenu.X + RageUI.Settings.Items.Navigation.Arrows.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + RageUI.Settings.Items.Navigation.Arrows.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, RageUI.Settings.Items.Navigation.Arrows.Width, RageUI.Settings.Items.Navigation.Arrows.Height) + RageUI.ItemOffset = RageUI.ItemOffset + (RageUI.Settings.Items.Navigation.Rectangle.Height * 2) + end + end + end +end + +---GoBack +---@return nil +---@public +function RageUI.GoBack() + local CurrentMenu = RageUI.CurrentMenu + if CurrentMenu ~= nil then + local Audio = RageUI.Settings.Audio + RageUI.PlaySound(Audio[Audio.Use].Back.audioName, Audio[Audio.Use].Back.audioRef) + if CurrentMenu.Parent ~= nil then + if CurrentMenu.Parent() then + RageUI.NextMenu = CurrentMenu.Parent + else + RageUI.NextMenu = nil + RageUI.Visible(CurrentMenu, false) + end + else + RageUI.NextMenu = nil + RageUI.Visible(CurrentMenu, false) + end + end +end + +---GoBack2 +---@return nil +---@public +function RageUI.GoBack2() + -- function to go back to the previous menu twice + local CurrentMenu = RageUI.CurrentMenu + if CurrentMenu ~= nil then + local Audio = RageUI.Settings.Audio + RageUI.PlaySound(Audio[Audio.Use].Back.audioName, Audio[Audio.Use].Back.audioRef) + if CurrentMenu.Parent ~= nil then + if CurrentMenu.Parent() then + RageUI.NextMenu = CurrentMenu.Parent + else + RageUI.NextMenu = nil + RageUI.Visible(CurrentMenu, false) + end + else + RageUI.NextMenu = nil + RageUI.Visible(CurrentMenu, false) + end + end + + local CurrentMenu = RageUI.NextMenu + if CurrentMenu ~= nil then + local Audio = RageUI.Settings.Audio + RageUI.PlaySound(Audio[Audio.Use].Back.audioName, Audio[Audio.Use].Back.audioRef) + if CurrentMenu.Parent ~= nil then + if CurrentMenu.Parent() then + RageUI.NextMenu = CurrentMenu.Parent + else + RageUI.NextMenu = nil + RageUI.Visible(CurrentMenu, false) + end + else + RageUI.NextMenu = nil + RageUI.Visible(CurrentMenu, false) + end + end +end diff --git a/resources/mth-K9/RageUI/menu/RageUI.lua b/resources/mth-K9/RageUI/menu/RageUI.lua new file mode 100644 index 000000000..6ef7e7800 --- /dev/null +++ b/resources/mth-K9/RageUI/menu/RageUI.lua @@ -0,0 +1,632 @@ +--- +--- @author Dylan MALANDAIN +--- @version 2.0.0 +--- @since 2020 +--- +--- RageUI Is Advanced UI Libs in LUA for make beautiful interface like RockStar GAME. +--- +--- +--- Commercial Info. +--- Any use for commercial purposes is strictly prohibited and will be punished. +--- +--- @see RageUI +--- + +-- print("^4RageUI - https://github.com/iTexZoz/RageUI - OpenSource Advanced UI Api^0") + +function math.round(num, numDecimalPlaces) + return tonumber(string.format("%." .. (numDecimalPlaces or 0) .. "f", num)) +end + +function string.starts(String, Start) + return string.sub(String, 1, string.len(Start)) == Start +end + +---@class RageUIMenus +RageUI.Menus = setmetatable({}, RageUI.Menus) + +---@type table +---@return boolean +RageUI.Menus.__call = function() + return true +end + +---@type table +RageUI.Menus.__index = RageUI.Menus + +---@type table +RageUI.CurrentMenu = nil + +---@type table +RageUI.NextMenu = nil + +---@type number +RageUI.Options = 0 + +---@type number +RageUI.ItemOffset = 0 + +---@type number +RageUI.StatisticPanelCount = 0 + +---@class UISize +RageUI.UI = { + Current = "NativeUI", + Style = { + RageUI = { + Width = 0 + }, + NativeUI = { + Width = 0 + } + } +} + +---@class Settings +RageUI.Settings = { + Debug = false, + Controls = { + Up = { + Enabled = true, + Active = false, + Pressed = false, + Keys = { + { 0, 172 }, + { 1, 172 }, + { 2, 172 }, + { 0, 241 }, + { 1, 241 }, + { 2, 241 }, + }, + }, + Down = { + Enabled = true, + Active = false, + Pressed = false, + Keys = { + { 0, 173 }, + { 1, 173 }, + { 2, 173 }, + { 0, 242 }, + { 1, 242 }, + { 2, 242 }, + }, + }, + Left = { + Enabled = true, + Active = false, + Pressed = false, + Keys = { + { 0, 174 }, + { 1, 174 }, + { 2, 174 }, + }, + }, + Right = { + Enabled = true, + Pressed = false, + Active = false, + Keys = { + { 0, 175 }, + { 1, 175 }, + { 2, 175 }, + }, + }, + SliderLeft = { + Enabled = true, + Active = false, + Pressed = false, + Keys = { + { 0, 174 }, + { 1, 174 }, + { 2, 174 }, + }, + }, + SliderRight = { + Enabled = true, + Pressed = false, + Active = false, + Keys = { + { 0, 175 }, + { 1, 175 }, + { 2, 175 }, + }, + }, + Select = { + Enabled = true, + Pressed = false, + Active = false, + Keys = { + { 0, 201 }, + { 1, 201 }, + { 2, 201 }, + }, + }, + Back = { + Enabled = true, + Active = false, + Pressed = false, + Keys = { + { 0, 177 }, + { 1, 177 }, + { 2, 177 }, + { 0, 199 }, + { 1, 199 }, + { 2, 199 }, + }, + }, + Click = { + Enabled = true, + Active = false, + Pressed = false, + Keys = { + { 0, 24 }, + }, + }, + Enabled = { + Controller = { + { 0, 2 }, -- Look Up and Down + { 0, 1 }, -- Look Left and Right + { 0, 25 }, -- Aim + { 0, 24 }, -- Attack + }, + Keyboard = { + { 0, 201 }, -- Select + { 0, 195 }, -- X axis + { 0, 196 }, -- Y axis + { 0, 187 }, -- Down + { 0, 188 }, -- Up + { 0, 189 }, -- Left + { 0, 190 }, -- Right + { 0, 202 }, -- Back + { 0, 217 }, -- Select + { 0, 242 }, -- Scroll down + { 0, 241 }, -- Scroll up + { 0, 239 }, -- Cursor X + { 0, 240 }, -- Cursor Y + { 0, 31 }, -- Move Up and Down + { 0, 30 }, -- Move Left and Right + { 0, 21 }, -- Sprint + { 0, 22 }, -- Jump + { 0, 23 }, -- Enter + { 0, 75 }, -- Exit Vehicle + { 0, 71 }, -- Accelerate Vehicle + { 0, 72 }, -- Vehicle Brake + { 0, 59 }, -- Move Vehicle Left and Right + { 0, 89 }, -- Fly Yaw Left + { 0, 9 }, -- Fly Left and Right + { 0, 8 }, -- Fly Up and Down + { 0, 90 }, -- Fly Yaw Right + { 0, 76 }, -- Vehicle Handbrake + }, + }, + }, + Audio = { + Id = nil, + Use = "NativeUI", + RageUI = { + UpDown = { + audioName = "HUD_FREEMODE_SOUNDSET", + audioRef = "NAV_UP_DOWN", + }, + LeftRight = { + audioName = "HUD_FRONTEND_DEFAULT_SOUNDSET", + audioRef = "NAV_LEFT_RIGHT", + }, + Select = { + audioName = "HUD_FRONTEND_DEFAULT_SOUNDSET", + audioRef = "SELECT", + }, + Back = { + audioName = "HUD_FRONTEND_DEFAULT_SOUNDSET", + audioRef = "BACK", + }, + Error = { + audioName = "HUD_FRONTEND_DEFAULT_SOUNDSET", + audioRef = "ERROR", + }, + Slider = { + audioName = "HUD_FRONTEND_DEFAULT_SOUNDSET", + audioRef = "CONTINUOUS_SLIDER", + Id = nil + }, + }, + NativeUI = { + UpDown = { + audioName = "HUD_FRONTEND_DEFAULT_SOUNDSET", + audioRef = "NAV_UP_DOWN", + }, + LeftRight = { + audioName = "HUD_FRONTEND_DEFAULT_SOUNDSET", + audioRef = "NAV_LEFT_RIGHT", + }, + Select = { + audioName = "HUD_FRONTEND_DEFAULT_SOUNDSET", + audioRef = "SELECT", + }, + Back = { + audioName = "HUD_FRONTEND_DEFAULT_SOUNDSET", + audioRef = "BACK", + }, + Error = { + audioName = "HUD_FRONTEND_DEFAULT_SOUNDSET", + audioRef = "ERROR", + }, + Slider = { + audioName = "HUD_FRONTEND_DEFAULT_SOUNDSET", + audioRef = "CONTINUOUS_SLIDER", + Id = nil + }, + } + }, + Items = { + Title = { + Background = { Width = 431, Height = 107 }, + Text = { X = 215, Y = 20, Scale = 1.15 }, + }, + Subtitle = { + Background = { Width = 431, Height = 37 }, + Text = { X = 8, Y = 3, Scale = 0.35 }, + PreText = { X = 425, Y = 3, Scale = 0.35 }, + }, + Background = { Dictionary = "commonmenu", Texture = "gradient_bgd", Y = 0, Width = 431 }, + Navigation = { + Rectangle = { Width = 431, Height = 18 }, + Offset = 5, + Arrows = { Dictionary = "commonmenu", Texture = "shop_arrows_upanddown", X = 190, Y = -6, Width = 50, Height = 50 }, + }, + Description = { + Bar = { Y = 4, Width = 431, Height = 4 }, + Background = { Dictionary = "commonmenu", Texture = "gradient_bgd", Y = 4, Width = 431, Height = 30 }, + Text = { X = 8, Y = 10, Scale = 0.35 }, + }, + }, + Panels = { + Grid = { + Background = { Dictionary = "commonmenu", Texture = "gradient_bgd", Y = 4, Width = 431, Height = 275 }, + Grid = { Dictionary = "pause_menu_pages_char_mom_dad", Texture = "nose_grid", X = 115.5, Y = 47.5, Width = 200, Height = 200 }, + Circle = { Dictionary = "mpinventory", Texture = "in_world_circle", X = 115.5, Y = 47.5, Width = 20, Height = 20 }, + Text = { + Top = { X = 215.5, Y = 15, Scale = 0.35 }, + Bottom = { X = 215.5, Y = 250, Scale = 0.35 }, + Left = { X = 57.75, Y = 130, Scale = 0.35 }, + Right = { X = 373.25, Y = 130, Scale = 0.35 }, + }, + }, + Percentage = { + Background = { Dictionary = "commonmenu", Texture = "gradient_bgd", Y = 4, Width = 431, Height = 76 }, + Bar = { X = 9, Y = 50, Width = 413, Height = 10 }, + Text = { + Left = { X = 25, Y = 15, Scale = 0.35 }, + Middle = { X = 215.5, Y = 15, Scale = 0.35 }, + Right = { X = 398, Y = 15, Scale = 0.35 }, + }, + }, + }, +} + +function RageUI.SetScaleformParams(scaleform, data) + data = data or {} + for k, v in pairs(data) do + PushScaleformMovieFunction(scaleform, v.name) + if v.param then + for _, par in pairs(v.param) do + if math.type(par) == "integer" then + PushScaleformMovieFunctionParameterInt(par) + elseif type(par) == "boolean" then + PushScaleformMovieFunctionParameterBool(par) + elseif math.type(par) == "float" then + PushScaleformMovieFunctionParameterFloat(par) + elseif type(par) == "string" then + PushScaleformMovieFunctionParameterString(par) + end + end + end + if v.func then + v.func() + end + PopScaleformMovieFunctionVoid() + end +end + +function RageUI.IsMouseInBounds(X, Y, Width, Height) + local MX, MY = math.round(GetControlNormal(2, 239) * 1920) / 1920, math.round(GetControlNormal(2, 240) * 1080) / 1080 + X, Y = X / 1920, Y / 1080 + Width, Height = Width / 1920, Height / 1080 + return (MX >= X and MX <= X + Width) and (MY > Y and MY < Y + Height) +end + +function RageUI.GetSafeZoneBounds() + local SafeSize = GetSafeZoneSize() + SafeSize = math.round(SafeSize, 2) + SafeSize = (SafeSize * 100) - 90 + SafeSize = 10 - SafeSize + + local W, H = 1920, 1080 + + return { X = math.round(SafeSize * ((W / H) * 5.4)), Y = math.round(SafeSize * 5.4) } +end + +function RageUI.Visible(Menu, Value) + if Menu ~= nil and Menu() then + if Value == true or Value == false then + if Value then + if RageUI.CurrentMenu ~= nil then + if RageUI.CurrentMenu.Closed ~= nil then + RageUI.CurrentMenu.Closed() + end + RageUI.CurrentMenu.Open = not Value + Menu:UpdateInstructionalButtons(Value); + Menu:UpdateCursorStyle(); + + end + RageUI.CurrentMenu = Menu + else + RageUI.CurrentMenu = nil + end + Menu.Open = Value + RageUI.Options = 0 + RageUI.ItemOffset = 0 + RageUI.LastControl = false + else + return Menu.Open + end + end +end + +function RageUI.CloseAll() + if RageUI.CurrentMenu ~= nil then + local parent = RageUI.CurrentMenu.Parent + while parent ~= nil do + parent.Index = 1 + parent.Pagination.Minimum = 1 + parent.Pagination.Maximum = parent.Pagination.Total + parent = parent.Parent + end + RageUI.CurrentMenu.Index = 1 + RageUI.CurrentMenu.Pagination.Minimum = 1 + RageUI.CurrentMenu.Pagination.Maximum = RageUI.CurrentMenu.Pagination.Total + RageUI.CurrentMenu.Open = false + RageUI.CurrentMenu = nil + end + RageUI.Options = 0 + RageUI.ItemOffset = 0 + ResetScriptGfxAlign() +end + +function RageUI.Banner() + local CurrentMenu = RageUI.CurrentMenu + if CurrentMenu ~= nil then + if CurrentMenu() and (CurrentMenu.Display.Header) then + RageUI.ItemsSafeZone(CurrentMenu) + if CurrentMenu.Sprite ~= nil then + if CurrentMenu.Sprite.Dictionary ~= nil then + if CurrentMenu.Sprite.Dictionary == "commonmenu" then + RenderSprite(CurrentMenu.Sprite.Dictionary, CurrentMenu.Sprite.Texture, CurrentMenu.X, CurrentMenu.Y, RageUI.Settings.Items.Title.Background.Width + CurrentMenu.WidthOffset, RageUI.Settings.Items.Title.Background.Height, CurrentMenu.Sprite.Color.R,CurrentMenu.Sprite.Color.G,CurrentMenu.Sprite.Color.B,CurrentMenu.Sprite.Color.A) + else + RenderSprite(CurrentMenu.Sprite.Dictionary, CurrentMenu.Sprite.Texture, CurrentMenu.X, CurrentMenu.Y, RageUI.Settings.Items.Title.Background.Width + CurrentMenu.WidthOffset, RageUI.Settings.Items.Title.Background.Height, nil) + end + else + RenderRectangle(CurrentMenu.X, CurrentMenu.Y, RageUI.Settings.Items.Title.Background.Width + CurrentMenu.WidthOffset, RageUI.Settings.Items.Title.Background.Height, CurrentMenu.Rectangle.R, CurrentMenu.Rectangle.G, CurrentMenu.Rectangle.B, CurrentMenu.Rectangle.A) + end + else + RenderRectangle(CurrentMenu.X, CurrentMenu.Y, RageUI.Settings.Items.Title.Background.Width + CurrentMenu.WidthOffset, RageUI.Settings.Items.Title.Background.Height, CurrentMenu.Rectangle.R, CurrentMenu.Rectangle.G, CurrentMenu.Rectangle.B, CurrentMenu.Rectangle.A) + end + -- if (CurrentMenu.Display.Glare) then + -- local ScaleformMovie = RequestScaleformMovie("MP_MENU_GLARE") + -- ---@type number + -- local Glarewidth = RageUI.Settings.Items.Title.Background.Width + -- ---@type number + -- local Glareheight = RageUI.Settings.Items.Title.Background.Height + -- ---@type number + -- local GlareX = CurrentMenu.X / 1920 + (CurrentMenu.SafeZoneSize.X / (64.399 - (CurrentMenu.WidthOffset * 0.065731))) + -- ---@type number + -- local GlareY = CurrentMenu.Y / 1080 + CurrentMenu.SafeZoneSize.Y / 33.195020746888 + -- RageUI.SetScaleformParams(ScaleformMovie, { + -- { name = "SET_DATA_SLOT", param = { GetGameplayCamRelativeHeading() } } + -- }) + -- DrawScaleformMovie(ScaleformMovie, GlareX, GlareY, Glarewidth / 430, Glareheight / 100, 255, 255, 255, 255, 0) + -- end + RenderText(CurrentMenu.Title, CurrentMenu.X + RageUI.Settings.Items.Title.Text.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + RageUI.Settings.Items.Title.Text.Y, CurrentMenu.TitleFont, CurrentMenu.TitleScale, 255, 255, 255, 255, 1) + RageUI.ItemOffset = RageUI.ItemOffset + RageUI.Settings.Items.Title.Background.Height + end + end +end + +function RageUI.Subtitle() + local CurrentMenu = RageUI.CurrentMenu + if CurrentMenu ~= nil then + if CurrentMenu() and (CurrentMenu.Display.Subtitle) then + RageUI.ItemsSafeZone(CurrentMenu) + if CurrentMenu.Subtitle ~= "" then + RenderRectangle(CurrentMenu.X, CurrentMenu.Y + RageUI.ItemOffset, RageUI.Settings.Items.Subtitle.Background.Width + CurrentMenu.WidthOffset, RageUI.Settings.Items.Subtitle.Background.Height + CurrentMenu.SubtitleHeight, 0, 0, 0, 255) + RenderText(CurrentMenu.PageCounterColour .. CurrentMenu.Subtitle, CurrentMenu.X + RageUI.Settings.Items.Subtitle.Text.X, CurrentMenu.Y + RageUI.Settings.Items.Subtitle.Text.Y + RageUI.ItemOffset, 0, RageUI.Settings.Items.Subtitle.Text.Scale, 245, 245, 245, 255, nil, false, false, RageUI.Settings.Items.Subtitle.Background.Width + CurrentMenu.WidthOffset) + if CurrentMenu.Index > CurrentMenu.Options or CurrentMenu.Index < 0 then + CurrentMenu.Index = 1 + end + if (CurrentMenu ~= nil) then + if (CurrentMenu.Index > CurrentMenu.Pagination.Total) then + local offset = CurrentMenu.Index - CurrentMenu.Pagination.Total + CurrentMenu.Pagination.Minimum = 1 + offset + CurrentMenu.Pagination.Maximum = CurrentMenu.Pagination.Total + offset + else + CurrentMenu.Pagination.Minimum = 1 + CurrentMenu.Pagination.Maximum = CurrentMenu.Pagination.Total + end + end + + if CurrentMenu.Display.PageCounter then + if CurrentMenu.PageCounter == nil then + RenderText(CurrentMenu.PageCounterColour .. CurrentMenu.Index .. " / " .. CurrentMenu.Options, CurrentMenu.X + RageUI.Settings.Items.Subtitle.PreText.X + CurrentMenu.WidthOffset, CurrentMenu.Y + RageUI.Settings.Items.Subtitle.PreText.Y + RageUI.ItemOffset, 0, RageUI.Settings.Items.Subtitle.PreText.Scale, 245, 245, 245, 255, 2) + else + RenderText(CurrentMenu.PageCounter, CurrentMenu.X + RageUI.Settings.Items.Subtitle.PreText.X + CurrentMenu.WidthOffset, CurrentMenu.Y + RageUI.Settings.Items.Subtitle.PreText.Y + RageUI.ItemOffset, 0, RageUI.Settings.Items.Subtitle.PreText.Scale, 245, 245, 245, 255, 2) + end + end + RageUI.ItemOffset = RageUI.ItemOffset + RageUI.Settings.Items.Subtitle.Background.Height + end + end + end +end + +function RageUI.Background() + local CurrentMenu = RageUI.CurrentMenu; + if CurrentMenu ~= nil then + if CurrentMenu() and (CurrentMenu.Display.Background) then + RageUI.ItemsSafeZone(CurrentMenu) + SetScriptGfxDrawOrder(0) + RenderSprite(RageUI.Settings.Items.Background.Dictionary, RageUI.Settings.Items.Background.Texture, CurrentMenu.X, CurrentMenu.Y + RageUI.Settings.Items.Background.Y + CurrentMenu.SubtitleHeight, RageUI.Settings.Items.Background.Width + CurrentMenu.WidthOffset, RageUI.ItemOffset, 0, 0, 0, 0, 255) + SetScriptGfxDrawOrder(1) + end + end +end + +function RageUI.Description() + local CurrentMenu = RageUI.CurrentMenu; + local Description = RageUI.Settings.Items.Description; + if CurrentMenu ~= nil and CurrentMenu.Description ~= nil then + if CurrentMenu() then + RageUI.ItemsSafeZone(CurrentMenu) + RenderRectangle(CurrentMenu.X, CurrentMenu.Y + Description.Bar.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Description.Bar.Width + CurrentMenu.WidthOffset, Description.Bar.Height, 0, 0, 0, 255) + RenderSprite(Description.Background.Dictionary, Description.Background.Texture, CurrentMenu.X, CurrentMenu.Y + Description.Background.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Description.Background.Width + CurrentMenu.WidthOffset, CurrentMenu.DescriptionHeight, 0, 0, 0, 255) + RenderText(CurrentMenu.Description, CurrentMenu.X + Description.Text.X, CurrentMenu.Y + Description.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, Description.Text.Scale, 255, 255, 255, 255, nil, false, false, Description.Background.Width + CurrentMenu.WidthOffset - 8.0) + RageUI.ItemOffset = RageUI.ItemOffset + CurrentMenu.DescriptionHeight + Description.Bar.Y + end + end +end + +function RageUI.Render() + local CurrentMenu = RageUI.CurrentMenu; + if CurrentMenu ~= nil then + if CurrentMenu() then + if CurrentMenu.Safezone then + ResetScriptGfxAlign() + end + + if (CurrentMenu.Display.InstructionalButton) then + if not CurrentMenu.InitScaleform then + CurrentMenu:UpdateInstructionalButtons(true) + CurrentMenu.InitScaleform = true + end + DrawScaleformMovieFullscreen(CurrentMenu.InstructionalScaleform, 255, 255, 255, 255, 0) + end + CurrentMenu.Options = RageUI.Options + CurrentMenu.SafeZoneSize = nil + RageUI.Controls() + RageUI.Options = 0 + RageUI.StatisticPanelCount = 0 + RageUI.ItemOffset = 0 + if CurrentMenu.Controls.Back.Enabled then + if CurrentMenu.Controls.Back.Pressed and CurrentMenu.Closable then + CurrentMenu.Controls.Back.Pressed = false + local Audio = RageUI.Settings.Audio + RageUI.PlaySound(Audio[Audio.Use].Back.audioName, Audio[Audio.Use].Back.audioRef) + if CurrentMenu.Closed ~= nil then + collectgarbage() + CurrentMenu.Closed() + end + + if CurrentMenu.Parent ~= nil then + if CurrentMenu.Parent() then + RageUI.NextMenu = CurrentMenu.Parent + CurrentMenu:UpdateCursorStyle() + else + RageUI.NextMenu = nil + RageUI.Visible(CurrentMenu, false) + end + else + RageUI.NextMenu = nil + RageUI.Visible(CurrentMenu, false) + end + elseif CurrentMenu.Controls.Back.Pressed and not CurrentMenu.Closable then + CurrentMenu.Controls.Back.Pressed = false + end + end + if RageUI.NextMenu ~= nil then + if RageUI.NextMenu() then + RageUI.Visible(CurrentMenu, false) + RageUI.Visible(RageUI.NextMenu, true) + CurrentMenu.Controls.Select.Active = false + RageUI.NextMenu = nil + RageUI.LastControl = false + end + end + end + end +end + +function RageUI.ItemsDescription(CurrentMenu, Description, Selected) + ---@type table + if Description ~= "" or Description ~= nil then + local SettingsDescription = RageUI.Settings.Items.Description; + if Selected and CurrentMenu.Description ~= Description then + CurrentMenu.Description = Description or nil + ---@type number + local DescriptionLineCount = GetLineCount(CurrentMenu.Description, CurrentMenu.X + SettingsDescription.Text.X, CurrentMenu.Y + SettingsDescription.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsDescription.Text.Scale, 255, 255, 255, 255, nil, false, false, SettingsDescription.Background.Width + (CurrentMenu.WidthOffset - 5.0)) + if DescriptionLineCount > 1 then + CurrentMenu.DescriptionHeight = SettingsDescription.Background.Height * DescriptionLineCount + else + CurrentMenu.DescriptionHeight = SettingsDescription.Background.Height + 7 + end + end + end +end + +function RageUI.ItemsMouseBounds(CurrentMenu, Selected, Option, SettingsButton) + ---@type boolean + local Hovered = false + Hovered = RageUI.IsMouseInBounds(CurrentMenu.X + CurrentMenu.SafeZoneSize.X, CurrentMenu.Y + SettingsButton.Rectangle.Y + CurrentMenu.SafeZoneSize.Y + CurrentMenu.SubtitleHeight , SettingsButton.Rectangle.Width + CurrentMenu.WidthOffset, SettingsButton.Rectangle.Height) + if Hovered and not Selected then + RenderRectangle(CurrentMenu.X, CurrentMenu.Y + SettingsButton.Rectangle.Y + CurrentMenu.SubtitleHeight, SettingsButton.Rectangle.Width + CurrentMenu.WidthOffset, SettingsButton.Rectangle.Height, 255, 255, 255, 20) + if CurrentMenu.Controls.Click.Active then + CurrentMenu.Index = Option + local Audio = RageUI.Settings.Audio + RageUI.PlaySound(Audio[Audio.Use].UpDown.audioName, Audio[Audio.Use].UpDown.audioRef) + end + end + return Hovered; +end + +function RageUI.ItemsSafeZone(CurrentMenu) + if not CurrentMenu.SafeZoneSize then + CurrentMenu.SafeZoneSize = { X = 0, Y = 0 } + if CurrentMenu.Safezone then + CurrentMenu.SafeZoneSize = RageUI.GetSafeZoneBounds() + SetScriptGfxAlign(76, 84) + SetScriptGfxAlignParams(0, 0, 0, 0) + end + end +end + +function RageUI.CurrentIsEqualTo(Current, To, Style, DefaultStyle) + return Current == To and Style or DefaultStyle or {}; +end + +function RageUI.IsVisible(Menu, Items, Panels) + if (RageUI.Visible(Menu)) and (UpdateOnscreenKeyboard() ~= 0) and (UpdateOnscreenKeyboard() ~= 3) then + RageUI.Banner() + RageUI.Subtitle() + if (Items ~= nil) then + Items() + end + RageUI.Background(); + RageUI.Navigation(); + RageUI.Description(); + if (Panels ~= nil) then + Panels() + end + RageUI.Render() + end +end + +---SetStyleAudio +---@param StyleAudio string +---@return void +---@public +function RageUI.SetStyleAudio(StyleAudio) + RageUI.Settings.Audio.Use = StyleAudio or "RageUI" +end + +function RageUI.GetStyleAudio() + return RageUI.Settings.Audio.Use or "RageUI" +end + diff --git a/resources/mth-K9/RageUI/menu/elements/ItemsBadge.lua b/resources/mth-K9/RageUI/menu/elements/ItemsBadge.lua new file mode 100644 index 000000000..571f75fc5 --- /dev/null +++ b/resources/mth-K9/RageUI/menu/elements/ItemsBadge.lua @@ -0,0 +1,286 @@ +RageUI.BadgeStyle = { + -- DEFAULT BADGE + None = function() + return { + BadgeTexture = "", + BadgeDictionary = "commonmenu" + } + end, + BronzeMedal = function() + return { + BadgeTexture = "mp_medal_bronze", + } + end, + GoldMedal = function() + return { + BadgeTexture = "mp_medal_gold", + } + end, + SilverMedal = function() + return { + BadgeTexture = "medal_silver", + } + end, + Alert = function() + return { + BadgeTexture = "mp_alerttriangle", + } + end, + Crown = function(Selected) + return { + BadgeTexture = "mp_hostcrown", + BadgeColour = Selected and { R = 0, G = 0, B = 0, A = 255 } or { R = 255, G = 255, B = 255, A = 255 } + } + end, + Ammo = function(Selected) + return { + BadgeTexture = Selected and "shop_ammo_icon_b" or "shop_ammo_icon_a", + } + end, + Armour = function(Selected) + return { + BadgeTexture = Selected and "shop_armour_icon_b" or "shop_armour_icon_a", + } + end, + Barber = function(Selected) + return { + BadgeTexture = Selected and "shop_barber_icon_b" or "shop_barber_icon_a", + } + end, + Clothes = function(Selected) + return { + BadgeTexture = Selected and "shop_clothing_icon_b" or "shop_clothing_icon_a", + } + end, + Franklin = function(Selected) + return { + BadgeTexture = Selected and "shop_franklin_icon_b" or "shop_franklin_icon_a", + } + end, + Bike = function(Selected) + return { + BadgeTexture = Selected and "shop_garage_bike_icon_b" or "shop_garage_bike_icon_a", + } + end, + Car = function(Selected) + return { + BadgeTexture = Selected and "shop_garage_icon_b" or "shop_garage_icon_a", + } + end, + Boat = function(Selected) + return { + BadgeTexture = Selected and "mp_specitem_boat_black" or "mp_specitem_boat", + BadgeDictionary = "mpinventory" + } + end, + Heli = function(Selected) + return { + BadgeTexture = Selected and "mp_specitem_heli_black" or "mp_specitem_heli", + BadgeDictionary = "mpinventory" + } + end, + Plane = function(Selected) + return { + BadgeTexture = Selected and "mp_specitem_plane_black" or "mp_specitem_plane", + BadgeDictionary = "mpinventory" + } + end, + BoatPickup = function(Selected) + return { + BadgeTexture = Selected and "mp_specitem_boatpickup_black" or "mp_specitem_boatpickup", + BadgeDictionary = "mpinventory" + } + end, + Card = function(Selected) + return { + BadgeTexture = Selected and "mp_specitem_keycard_black" or "mp_specitem_keycard", + BadgeDictionary = "mpinventory" + } + end, + Gun = function(Selected) + return { + BadgeTexture = Selected and "shop_gunclub_icon_b" or "shop_gunclub_icon_a", + } + end, + Heart = function(Selected) + return { + BadgeTexture = Selected and "shop_health_icon_b" or "shop_health_icon_a", + } + end, + Makeup = function(Selected) + return { + BadgeTexture = Selected and "shop_makeup_icon_b" or "shop_makeup_icon_a", + } + end, + Mask = function(Selected) + return { + BadgeTexture = Selected and "shop_mask_icon_b" or "shop_mask_icon_a", + } + end, + Michael = function(Selected) + return { + BadgeTexture = Selected and "shop_michael_icon_b" or "shop_michael_icon_a", + } + end, + Star = function() + return { + BadgeTexture = "shop_new_star", + } + end, + Tattoo = function(Selected) + return { + BadgeTexture = Selected and "shop_tattoos_icon_b" or "shop_tattoos_icon_a", + } + end, + Trevor = function(Selected) + return { + BadgeTexture = Selected and "shop_trevor_icon_b" or "shop_trevor_icon_a", + } + end, + Lock = function(Selected) + return { + BadgeTexture = "shop_lock", + BadgeColour = Selected and { R = 0, G = 0, B = 0, A = 255 } or { R = 255, G = 255, B = 255, A = 255 } + } + end, + Tick = function(Selected) + return { + BadgeTexture = "shop_tick_icon", + BadgeColour = Selected and { R = 0, G = 0, B = 0, A = 255 } or { R = 255, G = 255, B = 255, A = 255 } + } + end, + Key = function(Selected) + return { + BadgeTexture = Selected and "mp_specitem_cuffkeys_black" or "mp_specitem_cuffkeys", + BadgeDictionary = "mpinventory" + } + end, + Coke = function(Selected) + return { + BadgeTexture = Selected and "mp_specitem_coke_black" or "mp_specitem_coke", + BadgeDictionary = "mpinventory" + } + end, + Heroin = function(Selected) + return { + BadgeTexture = Selected and "mp_specitem_heroin_black" or "mp_specitem_heroin", + BadgeDictionary = "mpinventory" + } + end, + Meth = function(Selected) + return { + BadgeTexture = Selected and "mp_specitem_meth_black" or "mp_specitem_meth", + BadgeDictionary = "mpinventory" + } + end, + Weed = function(Selected) + return { + BadgeTexture = Selected and "mp_specitem_weed_black" or "mp_specitem_weed", + BadgeDictionary = "mpinventory" + } + end, + Package = function(Selected) + return { + BadgeTexture = Selected and "mp_specitem_package_black" or "mp_specitem_package", + BadgeDictionary = "mpinventory" + } + end, + Cash = function(Selected) + return { + BadgeTexture = Selected and "mp_specitem_cash_black" or "mp_specitem_cash", + BadgeDictionary = "mpinventory" + } + end, + RP = function(Selected) + return { + BadgeTexture = "mp_anim_rp", + BadgeDictionary = "mphud" + } + end, + LSPD = function() + return { + BadgeTexture = "mpgroundlogo_cops", + BadgeDictionary = "3dtextures" + } + end, + Vagos = function() + return { + BadgeTexture = "mpgroundlogo_vagos", + BadgeDictionary = "3dtextures" + } + end, + Bikers = function() + return { + BadgeTexture = "mpgroundlogo_bikers", + BadgeDictionary = "3dtextures" + } + end, + + -- CASINO + Badbeat = function() + return { + BadgeTexture = "badbeat", + BadgeDictionary = "mpawardcasino" + } + end, + CashingOut = function() + return { + BadgeTexture = "cashingout", + BadgeDictionary = "mpawardcasino" + } + end, + FullHouse = function() + return { + BadgeTexture = "fullhouse", + BadgeDictionary = "mpawardcasino" + } + end, + HighRoller = function() + return { + BadgeTexture = "highroller", + BadgeDictionary = "mpawardcasino" + } + end, + HouseKeeping = function() + return { + BadgeTexture = "housekeeping", + BadgeDictionary = "mpawardcasino" + } + end, + LooseCheng = function() + return { + BadgeTexture = "loosecheng", + BadgeDictionary = "mpawardcasino" + } + end, + LuckyLucky = function() + return { + BadgeTexture = "luckylucky", + BadgeDictionary = "mpawardcasino" + } + end, + PlayToWin = function() + return { + BadgeTexture = "playtowin", + BadgeDictionary = "mpawardcasino" + } + end, + StraightFlush = function() + return { + BadgeTexture = "straightflush", + BadgeDictionary = "mpawardcasino" + } + end, + StrongArmTactics = function() + return { + BadgeTexture = "strongarmtactics", + BadgeDictionary = "mpawardcasino" + } + end, + TopPair = function() + return { + BadgeTexture = "toppair", + BadgeDictionary = "mpawardcasino" + } + end, +} \ No newline at end of file diff --git a/resources/mth-K9/RageUI/menu/elements/ItemsColour.lua b/resources/mth-K9/RageUI/menu/elements/ItemsColour.lua new file mode 100644 index 000000000..3e620958f --- /dev/null +++ b/resources/mth-K9/RageUI/menu/elements/ItemsColour.lua @@ -0,0 +1,225 @@ +--- +--- Generated by EmmyLua(https://github.com/EmmyLua) +--- Created by Dylan Malandain. +--- DateTime: 24/07/2019 02:26 +--- + +RageUI.ItemsColour = { + PureWhite = { 255, 255, 255, 255 }, + White = { 240, 240, 240, 255 }, + Black = { 0, 0, 0, 255 }, + Grey = { 155, 155, 155, 255 }, + GreyLight = { 205, 205, 205, 255 }, + GreyDark = { 77, 77, 77, 255 }, + Red = { 224, 50, 50, 255 }, + RedLight = { 240, 153, 153, 255 }, + RedDark = { 112, 25, 25, 255 }, + Blue = { 93, 182, 229, 255 }, + BlueLight = { 174, 219, 242, 255 }, + BlueDark = { 47, 92, 115, 255 }, + Yellow = { 240, 200, 80, 255 }, + YellowLight = { 254, 235, 169, 255 }, + YellowDark = { 126, 107, 41, 255 }, + Orange = { 255, 133, 85, 255 }, + OrangeLight = { 255, 194, 170, 255 }, + OrangeDark = { 127, 66, 42, 255 }, + Green = { 114, 204, 114, 255 }, + GreenLight = { 185, 230, 185, 255 }, + GreenDark = { 57, 102, 57, 255 }, + Purple = { 132, 102, 226, 255 }, + PurpleLight = { 192, 179, 239, 255 }, + PurpleDark = { 67, 57, 111, 255 }, + Pink = { 203, 54, 148, 255 }, + RadarHealth = { 53, 154, 71, 255 }, + RadarArmour = { 93, 182, 229, 255 }, + RadarDamage = { 235, 36, 39, 255 }, + NetPlayer1 = { 194, 80, 80, 255 }, + NetPlayer2 = { 156, 110, 175, 255 }, + NetPlayer3 = { 255, 123, 196, 255 }, + NetPlayer4 = { 247, 159, 123, 255 }, + NetPlayer5 = { 178, 144, 132, 255 }, + NetPlayer6 = { 141, 206, 167, 255 }, + NetPlayer7 = { 113, 169, 175, 255 }, + NetPlayer8 = { 211, 209, 231, 255 }, + NetPlayer9 = { 144, 127, 153, 255 }, + NetPlayer10 = { 106, 196, 191, 255 }, + NetPlayer11 = { 214, 196, 153, 255 }, + NetPlayer12 = { 234, 142, 80, 255 }, + NetPlayer13 = { 152, 203, 234, 255 }, + NetPlayer14 = { 178, 98, 135, 255 }, + NetPlayer15 = { 144, 142, 122, 255 }, + NetPlayer16 = { 166, 117, 94, 255 }, + NetPlayer17 = { 175, 168, 168, 255 }, + NetPlayer18 = { 232, 142, 155, 255 }, + NetPlayer19 = { 187, 214, 91, 255 }, + NetPlayer20 = { 12, 123, 86, 255 }, + NetPlayer21 = { 123, 196, 255, 255 }, + NetPlayer22 = { 171, 60, 230, 255 }, + NetPlayer23 = { 206, 169, 13, 255 }, + NetPlayer24 = { 71, 99, 173, 255 }, + NetPlayer25 = { 42, 166, 185, 255 }, + NetPlayer26 = { 186, 157, 125, 255 }, + NetPlayer27 = { 201, 225, 255, 255 }, + NetPlayer28 = { 240, 240, 150, 255 }, + NetPlayer29 = { 237, 140, 161, 255 }, + NetPlayer30 = { 249, 138, 138, 255 }, + NetPlayer31 = { 252, 239, 166, 255 }, + NetPlayer32 = { 240, 240, 240, 255 }, + SimpleBlipDefault = { 159, 201, 166, 255 }, + MenuBlue = { 140, 140, 140, 255 }, + MenuGreyLight = { 140, 140, 140, 255 }, + MenuBlueExtraDark = { 40, 40, 40, 255 }, + MenuYellow = { 240, 160, 0, 255 }, + MenuYellowDark = { 240, 160, 0, 255 }, + MenuGreen = { 240, 160, 0, 255 }, + MenuGrey = { 140, 140, 140, 255 }, + MenuGreyDark = { 60, 60, 60, 255 }, + MenuHighlight = { 30, 30, 30, 255 }, + MenuStandard = { 140, 140, 140, 255 }, + MenuDimmed = { 75, 75, 75, 255 }, + MenuExtraDimmed = { 50, 50, 50, 255 }, + BriefTitle = { 95, 95, 95, 255 }, + MidGreyMp = { 100, 100, 100, 255 }, + NetPlayer1Dark = { 93, 39, 39, 255 }, + NetPlayer2Dark = { 77, 55, 89, 255 }, + NetPlayer3Dark = { 124, 62, 99, 255 }, + NetPlayer4Dark = { 120, 80, 80, 255 }, + NetPlayer5Dark = { 87, 72, 66, 255 }, + NetPlayer6Dark = { 74, 103, 83, 255 }, + NetPlayer7Dark = { 60, 85, 88, 255 }, + NetPlayer8Dark = { 105, 105, 64, 255 }, + NetPlayer9Dark = { 72, 63, 76, 255 }, + NetPlayer10Dark = { 53, 98, 95, 255 }, + NetPlayer11Dark = { 107, 98, 76, 255 }, + NetPlayer12Dark = { 117, 71, 40, 255 }, + NetPlayer13Dark = { 76, 101, 117, 255 }, + NetPlayer14Dark = { 65, 35, 47, 255 }, + NetPlayer15Dark = { 72, 71, 61, 255 }, + NetPlayer16Dark = { 85, 58, 47, 255 }, + NetPlayer17Dark = { 87, 84, 84, 255 }, + NetPlayer18Dark = { 116, 71, 77, 255 }, + NetPlayer19Dark = { 93, 107, 45, 255 }, + NetPlayer20Dark = { 6, 61, 43, 255 }, + NetPlayer21Dark = { 61, 98, 127, 255 }, + NetPlayer22Dark = { 85, 30, 115, 255 }, + NetPlayer23Dark = { 103, 84, 6, 255 }, + NetPlayer24Dark = { 35, 49, 86, 255 }, + NetPlayer25Dark = { 21, 83, 92, 255 }, + NetPlayer26Dark = { 93, 98, 62, 255 }, + NetPlayer27Dark = { 100, 112, 127, 255 }, + NetPlayer28Dark = { 120, 120, 75, 255 }, + NetPlayer29Dark = { 152, 76, 93, 255 }, + NetPlayer30Dark = { 124, 69, 69, 255 }, + NetPlayer31Dark = { 10, 43, 50, 255 }, + NetPlayer32Dark = { 95, 95, 10, 255 }, + Bronze = { 180, 130, 97, 255 }, + Silver = { 150, 153, 161, 255 }, + Gold = { 214, 181, 99, 255 }, + Platinum = { 166, 221, 190, 255 }, + Gang1 = { 29, 100, 153, 255 }, + Gang2 = { 214, 116, 15, 255 }, + Gang3 = { 135, 125, 142, 255 }, + Gang4 = { 229, 119, 185, 255 }, + SameCrew = { 252, 239, 166, 255 }, + Freemode = { 45, 110, 185, 255 }, + PauseBg = { 0, 0, 0, 255 }, + Friendly = { 93, 182, 229, 255 }, + Enemy = { 194, 80, 80, 255 }, + Location = { 240, 200, 80, 255 }, + Pickup = { 114, 204, 114, 255 }, + PauseSingleplayer = { 114, 204, 114, 255 }, + FreemodeDark = { 22, 55, 92, 255 }, + InactiveMission = { 154, 154, 154, 255 }, + Damage = { 194, 80, 80, 255 }, + PinkLight = { 252, 115, 201, 255 }, + PmMitemHighlight = { 252, 177, 49, 255 }, + ScriptVariable = { 0, 0, 0, 255 }, + Yoga = { 109, 247, 204, 255 }, + Tennis = { 241, 101, 34, 255 }, + Golf = { 214, 189, 97, 255 }, + ShootingRange = { 112, 25, 25, 255 }, + FlightSchool = { 47, 92, 115, 255 }, + NorthBlue = { 93, 182, 229, 255 }, + SocialClub = { 234, 153, 28, 255 }, + PlatformBlue = { 11, 55, 123, 255 }, + PlatformGreen = { 146, 200, 62, 255 }, + PlatformGrey = { 234, 153, 28, 255 }, + FacebookBlue = { 66, 89, 148, 255 }, + IngameBg = { 0, 0, 0, 255 }, + Darts = { 114, 204, 114, 255 }, + Waypoint = { 164, 76, 242, 255 }, + Michael = { 101, 180, 212, 255 }, + Franklin = { 171, 237, 171, 255 }, + Trevor = { 255, 163, 87, 255 }, + GolfP1 = { 240, 240, 240, 255 }, + GolfP2 = { 235, 239, 30, 255 }, + GolfP3 = { 255, 149, 14, 255 }, + GolfP4 = { 246, 60, 161, 255 }, + WaypointLight = { 210, 166, 249, 255 }, + WaypointDark = { 82, 38, 121, 255 }, + PanelLight = { 0, 0, 0, 255 }, + MichaelDark = { 72, 103, 116, 255 }, + FranklinDark = { 85, 118, 85, 255 }, + TrevorDark = { 127, 81, 43, 255 }, + ObjectiveRoute = { 240, 200, 80, 255 }, + PausemapTint = { 0, 0, 0, 255 }, + PauseDeselect = { 100, 100, 100, 255 }, + PmWeaponsPurchasable = { 45, 110, 185, 255 }, + PmWeaponsLocked = { 240, 240, 240, 255 }, + ScreenBg = { 0, 0, 0, 255 }, + Chop = { 224, 50, 50, 255 }, + PausemapTintHalf = { 0, 0, 0, 255 }, + NorthBlueOfficial = { 0, 71, 133, 255 }, + ScriptVariable2 = { 0, 0, 0, 255 }, + H = { 33, 118, 37, 255 }, + HDark = { 37, 102, 40, 255 }, + T = { 234, 153, 28, 255 }, + TDark = { 225, 140, 8, 255 }, + HShard = { 20, 40, 0, 255 }, + ControllerMichael = { 48, 255, 255, 255 }, + ControllerFranklin = { 48, 255, 0, 255 }, + ControllerTrevor = { 176, 80, 0, 255 }, + ControllerChop = { 127, 0, 0, 255 }, + VideoEditorVideo = { 53, 166, 224, 255 }, + VideoEditorAudio = { 162, 79, 157, 255 }, + VideoEditorText = { 104, 192, 141, 255 }, + HbBlue = { 29, 100, 153, 255 }, + HbYellow = { 234, 153, 28, 255 }, + VideoEditorScore = { 240, 160, 1, 255 }, + VideoEditorAudioFadeout = { 59, 34, 57, 255 }, + VideoEditorTextFadeout = { 41, 68, 53, 255 }, + VideoEditorScoreFadeout = { 82, 58, 10, 255 }, + HeistBackground = { 37, 102, 40, 255 }, + VideoEditorAmbient = { 240, 200, 80, 255 }, + VideoEditorAmbientFadeout = { 80, 70, 34, 255 }, + Gb = { 255, 133, 85, 255 }, + G = { 255, 194, 170, 255 }, + B = { 255, 133, 85, 255 }, + LowFlow = { 240, 200, 80, 255 }, + LowFlowDark = { 126, 107, 41, 255 }, + G1 = { 247, 159, 123, 255 }, + G2 = { 226, 134, 187, 255 }, + G3 = { 239, 238, 151, 255 }, + G4 = { 113, 169, 175, 255 }, + G5 = { 160, 140, 193, 255 }, + G6 = { 141, 206, 167, 255 }, + G7 = { 181, 214, 234, 255 }, + G8 = { 178, 144, 132, 255 }, + G9 = { 0, 132, 114, 255 }, + G10 = { 216, 85, 117, 255 }, + G11 = { 30, 100, 152, 255 }, + G12 = { 43, 181, 117, 255 }, + G13 = { 233, 141, 79, 255 }, + G14 = { 137, 210, 215, 255 }, + G15 = { 134, 125, 141, 255 }, + Adversary = { 109, 34, 33, 255 }, + DegenRed = { 255, 0, 0, 255 }, + DegenYellow = { 255, 255, 0, 255 }, + DegenGreen = { 0, 255, 0, 255 }, + DegenCyan = { 0, 255, 255, 255 }, + DegenBlue = { 0, 0, 255, 255 }, + DegenMagenta = { 255, 0, 255, 255 }, + Stunt1 = { 38, 136, 234, 255 }, + Stunt2 = { 224, 50, 50, 255 }, +} + diff --git a/resources/mth-K9/RageUI/menu/elements/PanelColour.lua b/resources/mth-K9/RageUI/menu/elements/PanelColour.lua new file mode 100644 index 000000000..8490969e6 --- /dev/null +++ b/resources/mth-K9/RageUI/menu/elements/PanelColour.lua @@ -0,0 +1,135 @@ +RageUI.PanelColour = { + HairCut = { + { 28, 31, 33 }, -- 0 + { 39, 42, 44 }, -- 1 + { 49, 46, 44 }, -- 2 + { 53, 38, 28 }, -- 3 + { 75, 50, 31 }, -- 4 + { 92, 59, 36 }, -- 5 + { 109, 76, 53 }, -- 6 + { 107, 80, 59 }, -- 7 + { 118, 92, 69 }, -- 8 + { 127, 104, 78 }, -- 9 + { 153, 129, 93 }, -- 10 + { 167, 147, 105 }, -- 11 + { 175, 156, 112 }, -- 12 + { 187, 160, 99 }, -- 13 + { 214, 185, 123 }, -- 14 + { 218, 195, 142 }, -- 15 + { 159, 127, 89 }, -- 16 + { 132, 80, 57 }, -- 17 + { 104, 43, 31 }, -- 18 + { 97, 18, 12 }, -- 19 + { 100, 15, 10 }, -- 20 + { 124, 20, 15 }, -- 21 + { 160, 46, 25 }, -- 22 + { 182, 75, 40 }, -- 23 + { 162, 80, 47 }, -- 24 + { 170, 78, 43 }, -- 25 + { 98, 98, 98 }, -- 26 + { 128, 128, 128}, -- 27 + { 170, 170, 170 }, -- 28 + { 197, 197, 197 }, -- 29 + { 70, 57, 85 }, -- 30 + { 90, 63, 107 }, -- 31 + { 118, 60, 118 }, -- 32 + { 237, 116, 227 }, -- 33 + { 235, 75, 147 }, -- 34 + { 242, 153, 188 }, -- 35 + { 4, 149, 158 }, -- 36 + { 2, 95, 134 }, -- 37 + { 2, 57, 116 }, -- 38 + { 63, 161, 106 }, -- 39 + { 33, 124, 97 }, -- 40 + { 24, 92, 85 }, -- 41 + { 182, 192, 52 }, -- 42 + { 112, 169, 11 }, -- 43 + { 67, 157, 19 }, -- 44 + { 220, 184, 87 }, -- 45 + { 229, 177, 3 }, -- 46 + { 230, 145, 2 }, -- 47 + { 242, 136, 49 }, -- 48 + { 251, 128, 87 }, -- 49 + { 226, 139, 88 }, -- 50 + { 209, 89, 60 }, -- 51 + { 206, 49, 32 }, -- 52 + { 173, 9, 3 }, -- 53 + { 136, 3, 2 }, -- 54 + { 31, 24, 20 }, -- 55 + { 41, 31, 25 }, -- 56 + { 46, 34, 27 }, -- 57 + { 55, 41, 30 }, -- 58 + { 46, 34, 24 }, -- 59 + { 35, 27, 21 }, -- 60 + { 2, 2, 2 }, -- 61 + { 112, 108, 102 }, -- 62 + { 157, 122, 80 } -- 63 + }, + MakeUp = { + { 153, 37, 50 }, -- 0 + { 200, 57, 93 }, -- 1 + { 189, 81, 108 }, -- 2 + { 184, 99, 122 }, -- 3 + { 166, 82, 107 }, -- 4 + { 177, 67, 76 }, -- 5 + { 127, 49, 51 }, -- 6 + { 164, 100, 93 }, -- 7 + { 193, 135, 121 }, -- 8 + { 203, 160, 150 }, -- 9 + { 198, 145, 143 }, -- 10 + { 171, 111, 99}, -- 11 + { 176, 96, 80 }, -- 12 + { 168, 76, 51 }, -- 13 + { 180, 113, 120 }, -- 14 + { 202, 127, 146 }, -- 15 + { 237, 156, 190 }, -- 16 + { 231, 117, 164 }, -- 17 + { 222, 62, 129 }, -- 18 + { 179, 76, 110 }, -- 19 + { 113, 39, 57 }, -- 20 + { 79, 31, 42 }, -- 21 + { 170, 34, 47 }, -- 22 + { 222, 32, 52 }, -- 23 + { 207, 8, 19 }, -- 24 + { 229, 84, 112 }, -- 25 + { 220, 63, 181 }, -- 26 + { 192, 39, 178 }, -- 27 + { 160, 28, 169 }, -- 28 + { 110, 24, 117 }, -- 29 + { 115, 20, 101 }, -- 30 + { 86, 22, 92 }, -- 31 + { 109, 26, 157 }, -- 32 + { 27, 55, 113 }, -- 33 + { 29, 78, 167 }, -- 34 + { 30, 116, 187 }, -- 35 + { 33, 163, 206 }, -- 36 + { 37, 194, 210 }, -- 37 + { 35, 204, 165 }, -- 38 + { 39, 192, 125 }, -- 39 + { 27, 156, 50 }, -- 40 + { 20, 134, 4 }, -- 41 + { 112, 208, 65 }, -- 42 + { 197, 234, 52 }, -- 43 + { 225, 227, 47 }, -- 44 + { 255, 221, 38 }, -- 45 + { 250, 192, 38 }, -- 46 + { 247, 138, 39 }, -- 47 + { 254, 89, 16 }, -- 48 + { 190, 110, 25 }, -- 49 + { 247, 201, 127 }, -- 50 + { 251, 229, 192 }, -- 51 + { 245, 245, 245 }, -- 52 + { 179, 180, 179 }, -- 53 + { 145, 145, 145 }, -- 54 + { 86, 78, 78 }, -- 55 + { 24, 14, 14 }, -- 56 + { 88, 150, 158 }, -- 57 + { 77, 111, 140 }, -- 58 + { 26, 43, 85 }, -- 59 + { 160, 126, 107 }, -- 60 + { 130, 99, 85 }, -- 61 + { 109, 83, 70 }, -- 62 + { 62, 45, 39 } -- 63 + } +} + diff --git a/resources/mth-K9/RageUI/menu/items/UIButton.lua b/resources/mth-K9/RageUI/menu/items/UIButton.lua new file mode 100644 index 000000000..d91516aec --- /dev/null +++ b/resources/mth-K9/RageUI/menu/items/UIButton.lua @@ -0,0 +1,97 @@ +---@type table +local SettingsButton = { + Rectangle = { Y = 0, Width = 431, Height = 38 }, + Text = { X = 8, Y = 3, Scale = 0.33 }, + LeftBadge = { Y = -2, Width = 40, Height = 40 }, + RightBadge = { X = 385, Y = -2, Width = 40, Height = 40 }, + RightText = { X = 420, Y = 4, Scale = 0.35 }, + SelectedSprite = { Dictionary = "commonmenu", Texture = "gradient_nav", Y = 0, Width = 431, Height = 38 }, +} + +---ButtonWithStyle +---@param Label string +---@param Description string | nil | false +---@param Style table +---@param Enabled boolean +---@param Callback function +---@param Submenu table | nil +---@return nil +---@public +function RageUI.Button(Label, Description, Style, Enabled, Action, Submenu) + local CurrentMenu = RageUI.CurrentMenu + if CurrentMenu ~= nil and CurrentMenu() then + ---@type number + local Option = RageUI.Options + 1 + + if CurrentMenu.Pagination.Minimum <= Option and CurrentMenu.Pagination.Maximum >= Option then + ---@type boolean + local Active = CurrentMenu.Index == Option + + RageUI.ItemsSafeZone(CurrentMenu) + + local haveLeftBadge = Style.LeftBadge and Style.LeftBadge ~= RageUI.BadgeStyle.None + local haveRightBadge = (Style.RightBadge and Style.RightBadge ~= RageUI.BadgeStyle.None) or (not Enabled and Style.LockBadge ~= RageUI.BadgeStyle.None) + local LeftBadgeOffset = haveLeftBadge and 27 or 0 + local RightBadgeOffset = haveRightBadge and 32 or 0 + if Style.Color and Style.Color.BackgroundColor then + RenderRectangle(CurrentMenu.X, CurrentMenu.Y + SettingsButton.SelectedSprite.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.SelectedSprite.Width + CurrentMenu.WidthOffset, SettingsButton.SelectedSprite.Height, Style.Color.BackgroundColor[1], Style.Color.BackgroundColor[2], Style.Color.BackgroundColor[3], Style.Color.BackgroundColor[4]) + end + if Active then + if Style.Color and Style.Color.HightLightColor then + RenderRectangle(CurrentMenu.X, CurrentMenu.Y + SettingsButton.SelectedSprite.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.SelectedSprite.Width + CurrentMenu.WidthOffset, SettingsButton.SelectedSprite.Height, Style.Color.HightLightColor[1], Style.Color.HightLightColor[2], Style.Color.HightLightColor[3], Style.Color.HightLightColor[4]) + else + RenderSprite(SettingsButton.SelectedSprite.Dictionary, SettingsButton.SelectedSprite.Texture, CurrentMenu.X, CurrentMenu.Y + SettingsButton.SelectedSprite.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.SelectedSprite.Width + CurrentMenu.WidthOffset, SettingsButton.SelectedSprite.Height) + end + end + if Enabled then + if haveLeftBadge then + if (Style.LeftBadge ~= nil) then + local LeftBadge = Style.LeftBadge(Active) + RenderSprite(LeftBadge.BadgeDictionary or "commonmenu", LeftBadge.BadgeTexture or "", CurrentMenu.X, CurrentMenu.Y + SettingsButton.LeftBadge.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.LeftBadge.Width, SettingsButton.LeftBadge.Height, 0, LeftBadge.BadgeColour and LeftBadge.BadgeColour.R or 255, LeftBadge.BadgeColour and LeftBadge.BadgeColour.G or 255, LeftBadge.BadgeColour and LeftBadge.BadgeColour.B or 255, LeftBadge.BadgeColour and LeftBadge.BadgeColour.A or 255) + end + end + if haveRightBadge then + if (Style.RightBadge ~= nil) then + local RightBadge = Style.RightBadge(Active) + RenderSprite(RightBadge.BadgeDictionary or "commonmenu", RightBadge.BadgeTexture or "", CurrentMenu.X + SettingsButton.RightBadge.X + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsButton.RightBadge.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.RightBadge.Width, SettingsButton.RightBadge.Height, 0, RightBadge.BadgeColour and RightBadge.BadgeColour.R or 255, RightBadge.BadgeColour and RightBadge.BadgeColour.G or 255, RightBadge.BadgeColour and RightBadge.BadgeColour.B or 255, RightBadge.BadgeColour and RightBadge.BadgeColour.A or 255) + end + end + if Style.RightLabel then + RenderText(Style.RightLabel, CurrentMenu.X + SettingsButton.RightText.X - RightBadgeOffset + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsButton.RightText.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.RightText.Scale, Active and 0 or 245, Active and 0 or 245, Active and 0 or 245, 255, 2) + end + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X + LeftBadgeOffset, CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, Active and 0 or 245, Active and 0 or 245, Active and 0 or 245, 255) + else + if haveRightBadge then + local RightBadge = RageUI.BadgeStyle.Lock(Active) + RenderSprite(RightBadge.BadgeDictionary or "commonmenu", RightBadge.BadgeTexture or "", CurrentMenu.X + SettingsButton.RightBadge.X + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsButton.RightBadge.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.RightBadge.Width, SettingsButton.RightBadge.Height, 0, RightBadge.BadgeColour and RightBadge.BadgeColour.R or 255, RightBadge.BadgeColour and RightBadge.BadgeColour.G or 255, RightBadge.BadgeColour and RightBadge.BadgeColour.B or 255, RightBadge.BadgeColour and RightBadge.BadgeColour.A or 255) + end + + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X + LeftBadgeOffset, CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, 163, 159, 148, 255) + end + RageUI.ItemOffset = RageUI.ItemOffset + SettingsButton.Rectangle.Height + RageUI.ItemsDescription(CurrentMenu, Description, Active); + if Enabled then + local Hovered = CurrentMenu.EnableMouse and (CurrentMenu.CursorStyle == 0 or CurrentMenu.CursorStyle == 1) and RageUI.ItemsMouseBounds(CurrentMenu, Active, Option + 1, SettingsButton); + local Selected = (CurrentMenu.Controls.Select.Active or (Hovered and CurrentMenu.Controls.Click.Active)) and Active + if (Action.onHovered ~= nil) and Hovered then + Action.onHovered(); + end + if (Action.onActive ~= nil) and Active then + Action.onActive(); + end + if Selected then + local Audio = RageUI.Settings.Audio + RageUI.PlaySound(Audio[Audio.Use].Select.audioName, Audio[Audio.Use].Select.audioRef) + if (Action.onSelected ~= nil) then + Action.onSelected() + end + if Submenu and Submenu() then + RageUI.NextMenu = Submenu + end + end + end + end + RageUI.Options = RageUI.Options + 1 + end +end + diff --git a/resources/mth-K9/RageUI/menu/items/UICheckBox.lua b/resources/mth-K9/RageUI/menu/items/UICheckBox.lua new file mode 100644 index 000000000..f8624ef7c --- /dev/null +++ b/resources/mth-K9/RageUI/menu/items/UICheckBox.lua @@ -0,0 +1,183 @@ +---@type table +local SettingsButton = { + Rectangle = { Y = 0, Width = 431, Height = 38 }, + Text = { X = 8, Y = 3, Scale = 0.33 }, + LeftBadge = { Y = -2, Width = 40, Height = 40 }, + RightBadge = { X = 385, Y = -2, Width = 40, Height = 40 }, + RightText = { X = 420, Y = 4, Scale = 0.35 }, + SelectedSprite = { Dictionary = "commonmenu", Texture = "gradient_nav", Y = 0, Width = 431, Height = 38 }, +} + +---@type table +local SettingsCheckbox = { + Dictionary = "commonmenu", Textures = { + "shop_box_blankb", -- 1 + "shop_box_tickb", -- 2 + "shop_box_blank", -- 3 + "shop_box_tick", -- 4 + "shop_box_crossb", -- 5 + "shop_box_cross", -- 6 + }, + X = 380, Y = -6, Width = 50, Height = 50 +} + +RageUI.CheckboxStyle = { + Tick = 1, + Cross = 2 +} + +---StyleCheckBox +---@param Selected number +---@param Checked boolean +---@param Box number +---@param BoxSelect number +---@return nil +local function StyleCheckBox(Selected, Checked, Box, BoxSelect, OffSet) + ---@type table + local CurrentMenu = RageUI.CurrentMenu; + if OffSet == nil then + OffSet = 0 + end + if Selected then + if Checked then + RenderSprite(SettingsCheckbox.Dictionary, SettingsCheckbox.Textures[Box], CurrentMenu.X + SettingsCheckbox.X + CurrentMenu.WidthOffset - OffSet, CurrentMenu.Y + SettingsCheckbox.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsCheckbox.Width, SettingsCheckbox.Height) + else + RenderSprite(SettingsCheckbox.Dictionary, SettingsCheckbox.Textures[1], CurrentMenu.X + SettingsCheckbox.X + CurrentMenu.WidthOffset - OffSet, CurrentMenu.Y + SettingsCheckbox.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsCheckbox.Width, SettingsCheckbox.Height) + end + else + if Checked then + RenderSprite(SettingsCheckbox.Dictionary, SettingsCheckbox.Textures[BoxSelect], CurrentMenu.X + SettingsCheckbox.X + CurrentMenu.WidthOffset - OffSet, CurrentMenu.Y + SettingsCheckbox.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsCheckbox.Width, SettingsCheckbox.Height) + else + RenderSprite(SettingsCheckbox.Dictionary, SettingsCheckbox.Textures[3], CurrentMenu.X + SettingsCheckbox.X + CurrentMenu.WidthOffset - OffSet, CurrentMenu.Y + SettingsCheckbox.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsCheckbox.Width, SettingsCheckbox.Height) + end + end +end + + +function RageUI.Checkbox(Label, Description, Checked, Style, Actions) + ---@type table + local CurrentMenu = RageUI.CurrentMenu; + if CurrentMenu ~= nil then + if CurrentMenu() then + + ---@type number + local Option = RageUI.Options + 1 + if CurrentMenu.Pagination.Minimum <= Option and CurrentMenu.Pagination.Maximum >= Option then + ---@type number + local Selected = CurrentMenu.Index == Option + local LeftBadgeOffset = ((Style.LeftBadge == RageUI.BadgeStyle.None or Style.LeftBadge == nil) and 0 or 27) + local RightBadgeOffset = ((Style.RightBadge == RageUI.BadgeStyle.None or Style.RightBadge == nil) and 0 or 32) + local BoxOffset = 0 + RageUI.ItemsSafeZone(CurrentMenu) + + local Hovered = false; + + ---@type boolean + if CurrentMenu.EnableMouse == true and (CurrentMenu.CursorStyle == 0) or (CurrentMenu.CursorStyle == 1) then + Hovered = RageUI.ItemsMouseBounds(CurrentMenu, Selected, Option, SettingsButton); + end + if Selected then + RenderSprite(SettingsButton.SelectedSprite.Dictionary, SettingsButton.SelectedSprite.Texture, CurrentMenu.X, CurrentMenu.Y + SettingsButton.SelectedSprite.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.SelectedSprite.Width + CurrentMenu.WidthOffset, SettingsButton.SelectedSprite.Height) + end + + if type(Style) == "table" then + if Style.Enabled == true or Style.Enabled == nil then + if Selected then + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X + LeftBadgeOffset, CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, 0, 0, 0, 255) + else + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X + LeftBadgeOffset, CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, 245, 245, 245, 255) + end + if type(Style) == 'table' then + if Style.LeftBadge ~= nil then + if Style.LeftBadge ~= RageUI.BadgeStyle.None then + local BadgeData = Style.LeftBadge(Selected) + RenderSprite(BadgeData.BadgeDictionary or "commonmenu", BadgeData.BadgeTexture or "", CurrentMenu.X, CurrentMenu.Y + SettingsButton.LeftBadge.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.LeftBadge.Width, SettingsButton.LeftBadge.Height, 0, BadgeData.BadgeColour and BadgeData.BadgeColour.R or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.G or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.B or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.A or 255) + end + end + if Style.RightBadge ~= nil then + if Style.RightBadge ~= RageUI.BadgeStyle.None then + local BadgeData = Style.RightBadge(Selected) + RenderSprite(BadgeData.BadgeDictionary or "commonmenu", BadgeData.BadgeTexture or "", CurrentMenu.X + SettingsButton.RightBadge.X + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsButton.RightBadge.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.RightBadge.Width, SettingsButton.RightBadge.Height, 0, BadgeData.BadgeColour and BadgeData.BadgeColour.R or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.G or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.B or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.A or 255) + end + end + end + else + ---@type function + local LeftBadge = RageUI.BadgeStyle.Lock + ---@type number + local LeftBadgeOffset = ((LeftBadge == RageUI.BadgeStyle.None or LeftBadge == nil) and 0 or 27) + + if Selected then + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X + LeftBadgeOffset, CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, 0, 0, 0, 255) + else + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X + LeftBadgeOffset, CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, 163, 159, 148, 255) + end + + if LeftBadge ~= RageUI.BadgeStyle.None and LeftBadge ~= nil then + local BadgeData = LeftBadge(Selected) + + RenderSprite(BadgeData.BadgeDictionary or "commonmenu", BadgeData.BadgeTexture or "", CurrentMenu.X, CurrentMenu.Y + SettingsButton.LeftBadge.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.LeftBadge.Width, SettingsButton.LeftBadge.Height, 0, BadgeData.BadgeColour.R or 255, BadgeData.BadgeColour.G or 255, BadgeData.BadgeColour.B or 255, BadgeData.BadgeColour.A or 255) + end + end + + if Style.Enabled == true or Style.Enabled == nil then + if Selected then + if Style.RightLabel ~= nil and Style.RightLabel ~= "" then + + RenderText(Style.RightLabel, CurrentMenu.X + SettingsButton.RightText.X - RightBadgeOffset + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsButton.RightText.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.RightText.Scale, 0, 0, 0, 255, 2) + BoxOffset = MeasureStringWidth(Style.RightLabel, 0, 0.35) + end + else + if Style.RightLabel ~= nil and Style.RightLabel ~= "" then + RenderText(Style.RightLabel, CurrentMenu.X + SettingsButton.RightText.X - RightBadgeOffset + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsButton.RightText.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.RightText.Scale, 245, 245, 245, 255, 2) + BoxOffset = MeasureStringWidth(Style.RightLabel, 0, 0.35) + end + end + end + + BoxOffset = RightBadgeOffset + BoxOffset + if Style.Style ~= nil then + if Style.Style == RageUI.CheckboxStyle.Tick then + StyleCheckBox(Selected, Checked, 2, 4, BoxOffset) + elseif Style.Style == RageUI.CheckboxStyle.Cross then + StyleCheckBox(Selected, Checked, 5, 6, BoxOffset) + else + StyleCheckBox(Selected, Checked, 2, 4, BoxOffset) + end + else + StyleCheckBox(Selected, Checked, 2, 4, BoxOffset) + end + + if Selected and (CurrentMenu.Controls.Select.Active or (Hovered and CurrentMenu.Controls.Click.Active)) and (Style.Enabled == true or Style.Enabled == nil) then + local Audio = RageUI.Settings.Audio + RageUI.PlaySound(Audio[Audio.Use].Select.audioName, Audio[Audio.Use].Select.audioRef) + Checked = not Checked + if (Checked) then + if (Actions.onChecked ~= nil) then + Actions.onChecked(); + end + else + if (Actions.onUnChecked ~= nil) then + Actions.onUnChecked(); + end + end + end + else + error("UICheckBox Style is not a `table`") + end + + RageUI.ItemOffset = RageUI.ItemOffset + SettingsButton.Rectangle.Height + + RageUI.ItemsDescription(CurrentMenu, Description, Selected) + + if (Actions.onSelected ~= nil) and (Selected) then + Actions.onSelected(Checked); + end + + end + RageUI.Options = RageUI.Options + 1 + end + end +end + + diff --git a/resources/mth-K9/RageUI/menu/items/UIList.lua b/resources/mth-K9/RageUI/menu/items/UIList.lua new file mode 100644 index 000000000..afe160458 --- /dev/null +++ b/resources/mth-K9/RageUI/menu/items/UIList.lua @@ -0,0 +1,167 @@ +---@type table +local SettingsButton = { + Rectangle = { Y = 0, Width = 431, Height = 38 }, + Text = { X = 8, Y = 3, Scale = 0.33 }, + LeftBadge = { Y = -2, Width = 40, Height = 40 }, + RightBadge = { X = 385, Y = -2, Width = 40, Height = 40 }, + RightText = { X = 420, Y = 4, Scale = 0.35 }, + SelectedSprite = { Dictionary = "commonmenu", Texture = "gradient_nav", Y = 0, Width = 431, Height = 38 }, +} + +---@type table +local SettingsList = { + LeftArrow = { Dictionary = "commonmenu", Texture = "arrowleft", X = 378, Y = 3, Width = 30, Height = 30 }, + RightArrow = { Dictionary = "commonmenu", Texture = "arrowright", X = 400, Y = 3, Width = 30, Height = 30 }, + Text = { X = 403, Y = 3, Scale = 0.35 }, +} + +function RageUI.List(Label, Items, Index, Description, Style, Enabled, Actions, Submenu) + ---@type table + local CurrentMenu = RageUI.CurrentMenu; + + if CurrentMenu ~= nil then + if CurrentMenu() then + + ---@type number + local Option = RageUI.Options + 1 + + if CurrentMenu.Pagination.Minimum <= Option and CurrentMenu.Pagination.Maximum >= Option then + + ---@type number + local Selected = CurrentMenu.Index == Option + + ---@type boolean + local LeftArrowHovered, RightArrowHovered = false, false + + RageUI.ItemsSafeZone(CurrentMenu) + + local Hovered = false; + local LeftBadgeOffset = ((Style.LeftBadge == RageUI.BadgeStyle.None or Style.LeftBadge == nil) and 0 or 27) + local RightBadgeOffset = ((Style.RightBadge == RageUI.BadgeStyle.None or Style.RightBadge == nil) and 0 or 32) + local RightOffset = 0 + ---@type boolean + if CurrentMenu.EnableMouse == true and (CurrentMenu.CursorStyle == 0) or (CurrentMenu.CursorStyle == 1) then + Hovered = RageUI.ItemsMouseBounds(CurrentMenu, Selected, Option, SettingsButton); + end + local ListText = (type(Items[Index]) == "table") and string.format("← %s →", Items[Index].Name) or string.format("← %s →", Items[Index]) or "NIL" + + if Selected then + RenderSprite(SettingsButton.SelectedSprite.Dictionary, SettingsButton.SelectedSprite.Texture, CurrentMenu.X, CurrentMenu.Y + SettingsButton.SelectedSprite.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.SelectedSprite.Width + CurrentMenu.WidthOffset, SettingsButton.SelectedSprite.Height) + end + if Enabled == true or Enabled == nil then + if Selected then + if Style.RightLabel ~= nil and Style.RightLabel ~= "" then + RenderText(Style.RightLabel, CurrentMenu.X + SettingsButton.RightText.X - RightBadgeOffset + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsButton.RightText.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.RightText.Scale, 0, 0, 0, 255, 2) + RightOffset = MeasureStringWidth(Style.RightLabel, 0, 0.35) + end + else + if Style.RightLabel ~= nil and Style.RightLabel ~= "" then + RightOffset = MeasureStringWidth(Style.RightLabel, 0, 0.35) + RenderText(Style.RightLabel, CurrentMenu.X + SettingsButton.RightText.X - RightBadgeOffset + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsButton.RightText.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.RightText.Scale, 245, 245, 245, 255, 2) + end + end + end + RightOffset = RightBadgeOffset * 1.3 + RightOffset + if Enabled == true or Enabled == nil then + if Selected then + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X + LeftBadgeOffset, CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, 0, 0, 0, 255) + RenderText(ListText, CurrentMenu.X + SettingsList.Text.X + 15 + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsList.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsList.Text.Scale, 0, 0, 0, 255, 2) + else + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X + LeftBadgeOffset, CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, 245, 245, 245, 255) + RenderText(ListText, CurrentMenu.X + SettingsList.Text.X + 15 + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsList.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsList.Text.Scale, 245, 245, 245, 255, 2) + end + else + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X + LeftBadgeOffset, CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, 163, 159, 148, 255) + if Selected then + RenderText(ListText, CurrentMenu.X + SettingsList.Text.X + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsList.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsList.Text.Scale, 163, 159, 148, 255, 2) + else + RenderText(ListText, CurrentMenu.X + SettingsList.Text.X + 15 + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsList.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsList.Text.Scale, 163, 159, 148, 255, 2) + end + end + + if type(Style) == "table" then + if Style.Enabled == true or Style.Enabled == nil then + if type(Style) == 'table' then + if Style.LeftBadge ~= nil then + if Style.LeftBadge ~= RageUI.BadgeStyle.None then + local BadgeData = Style.LeftBadge(Selected) + + RenderSprite(BadgeData.BadgeDictionary or "commonmenu", BadgeData.BadgeTexture or "", CurrentMenu.X, CurrentMenu.Y + SettingsButton.LeftBadge.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.LeftBadge.Width, SettingsButton.LeftBadge.Height, 0, BadgeData.BadgeColour and BadgeData.BadgeColour.R or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.G or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.B or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.A or 255) + end + end + + if Style.RightBadge ~= nil then + if Style.RightBadge ~= RageUI.BadgeStyle.None then + local BadgeData = Style.RightBadge(Selected) + + RenderSprite(BadgeData.BadgeDictionary or "commonmenu", BadgeData.BadgeTexture or "", CurrentMenu.X + SettingsButton.RightBadge.X + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsButton.RightBadge.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.RightBadge.Width, SettingsButton.RightBadge.Height, 0, BadgeData.BadgeColour and BadgeData.BadgeColour.R or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.G or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.B or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.A or 255) + end + end + end + else + ---@type function + local LeftBadge = RageUI.BadgeStyle.Lock + ---@type number + if LeftBadge ~= RageUI.BadgeStyle.None and LeftBadge ~= nil then + local BadgeData = LeftBadge(Selected) + + RenderSprite(BadgeData.BadgeDictionary or "commonmenu", BadgeData.BadgeTexture or "", CurrentMenu.X, CurrentMenu.Y + SettingsButton.LeftBadge.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.LeftBadge.Width, SettingsButton.LeftBadge.Height, 0, BadgeData.BadgeColour.R or 255, BadgeData.BadgeColour.G or 255, BadgeData.BadgeColour.B or 255, BadgeData.BadgeColour.A or 255) + end + end + else + error("UICheckBox Style is not a `table`") + end + + LeftArrowHovered = RageUI.IsMouseInBounds(CurrentMenu.X + SettingsList.Text.X + CurrentMenu.WidthOffset - RightOffset + CurrentMenu.SafeZoneSize.X, CurrentMenu.Y + SettingsList.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset + 2.5 + CurrentMenu.SafeZoneSize.Y , 15, 22.5) + + RightArrowHovered = RageUI.IsMouseInBounds(CurrentMenu.X + SettingsList.Text.X + CurrentMenu.WidthOffset + CurrentMenu.SafeZoneSize.X - RightOffset - MeasureStringWidth(ListText, 0, SettingsList.Text.Scale), CurrentMenu.Y + SettingsList.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset + 2.5 + CurrentMenu.SafeZoneSize.Y , 15, 22.5) + RageUI.ItemOffset = RageUI.ItemOffset + SettingsButton.Rectangle.Height + + RageUI.ItemsDescription(CurrentMenu, Description, Selected); + + if Selected and (CurrentMenu.Controls.Left.Active or (CurrentMenu.Controls.Click.Active and LeftArrowHovered)) and not (CurrentMenu.Controls.Right.Active or (CurrentMenu.Controls.Click.Active and RightArrowHovered)) then + Index = Index - 1 + if Index < 1 then + Index = #Items + end + if (Actions.onListChange ~= nil) then + Actions.onListChange(Index, Items[Index]); + end + local Audio = RageUI.Settings.Audio + RageUI.PlaySound(Audio[Audio.Use].LeftRight.audioName, Audio[Audio.Use].LeftRight.audioRef) + elseif Selected and (CurrentMenu.Controls.Right.Active or (CurrentMenu.Controls.Click.Active and RightArrowHovered)) and not (CurrentMenu.Controls.Left.Active or (CurrentMenu.Controls.Click.Active and LeftArrowHovered)) then + Index = Index + 1 + if Index > #Items then + Index = 1 + end + if (Actions.onListChange ~= nil) then + Actions.onListChange(Index, Items[Index]); + end + local Audio = RageUI.Settings.Audio + RageUI.PlaySound(Audio[Audio.Use].LeftRight.audioName, Audio[Audio.Use].LeftRight.audioRef) + end + + if Selected and (CurrentMenu.Controls.Select.Active or ((Hovered and CurrentMenu.Controls.Click.Active) and (not LeftArrowHovered and not RightArrowHovered))) then + local Audio = RageUI.Settings.Audio + RageUI.PlaySound(Audio[Audio.Use].Select.audioName, Audio[Audio.Use].Select.audioRef) + + if (Actions.onSelected ~= nil) then + CreateThread(function() + Actions.onSelected(Index, Items[Index]); + end) + end + + if Submenu and Submenu() then + RageUI.NextMenu = Submenu + end + elseif Selected then + if(Actions.onActive ~= nil) then + Actions.onActive() + end + end + end + + RageUI.Options = RageUI.Options + 1 + end + end +end diff --git a/resources/mth-K9/RageUI/menu/items/UISeparator.lua b/resources/mth-K9/RageUI/menu/items/UISeparator.lua new file mode 100644 index 000000000..d3685aa46 --- /dev/null +++ b/resources/mth-K9/RageUI/menu/items/UISeparator.lua @@ -0,0 +1,46 @@ +--- +--- @author Dylan MALANDAIN +--- @version 2.0.0 +--- @since 2020 +--- +--- RageUI Is Advanced UI Libs in LUA for make beautiful interface like RockStar GAME. +--- +--- +--- Commercial Info. +--- Any use for commercial purposes is strictly prohibited and will be punished. +--- +--- @see RageUI +--- + +---@type table +local SettingsButton = { + Rectangle = { Y = 0, Width = 431, Height = 38 }, + Text = { X = 8, Y = 3, Scale = 0.33 }, +} + +function RageUI.Separator(Label) + local CurrentMenu = RageUI.CurrentMenu + if CurrentMenu ~= nil then + if CurrentMenu() then + local Option = RageUI.Options + 1 + if CurrentMenu.Pagination.Minimum <= Option and CurrentMenu.Pagination.Maximum >= Option then + if (Label ~= nil) then + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X + (CurrentMenu.WidthOffset * 2.5 ~= 0 and CurrentMenu.WidthOffset * 2.5 or 200), CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, 245, 245, 245, 255, 1) + end + RageUI.ItemOffset = RageUI.ItemOffset + SettingsButton.Rectangle.Height + if (CurrentMenu.Index == Option) then + if (RageUI.LastControl) then + CurrentMenu.Index = Option - 1 + if (CurrentMenu.Index < 1) then + CurrentMenu.Index = RageUI.CurrentMenu.Options + end + else + CurrentMenu.Index = Option + 1 + end + end + end + RageUI.Options = RageUI.Options + 1 + end + end +end + diff --git a/resources/mth-K9/RageUI/menu/items/UISlider.lua b/resources/mth-K9/RageUI/menu/items/UISlider.lua new file mode 100644 index 000000000..1cd7c9b38 --- /dev/null +++ b/resources/mth-K9/RageUI/menu/items/UISlider.lua @@ -0,0 +1,170 @@ +---@type table +local SettingsButton = { + Rectangle = { Y = 0, Width = 431, Height = 38 }, + Text = { X = 8, Y = 3, Scale = 0.33 }, + LeftBadge = { Y = -2, Width = 40, Height = 40 }, + RightBadge = { X = 385, Y = -2, Width = 40, Height = 40 }, + RightText = { X = 420, Y = 4, Scale = 0.35 }, + SelectedSprite = { Dictionary = "commonmenu", Texture = "gradient_nav", Y = 0, Width = 431, Height = 38 }, +} + +---@type table +local SettingsSlider = { + Background = { X = 250, Y = 14.5, Width = 150, Height = 9 }, + Slider = { X = 250, Y = 14.5, Width = 75, Height = 9 }, + Divider = { X = 323.5, Y = 9, Width = 2.5, Height = 20 }, + LeftArrow = { Dictionary = "commonmenutu", Texture = "arrowleft", X = 235, Y = 11.5, Width = 15, Height = 15 }, + RightArrow = { Dictionary = "commonmenutu", Texture = "arrowright", X = 400, Y = 11.5, Width = 15, Height = 15 }, +} + +function RageUI.Slider(Label, ProgressStart, ProgressMax, Description, Divider, Style, Enabled, Actions) + + ---@type table + local CurrentMenu = RageUI.CurrentMenu; + local Audio = RageUI.Settings.Audio + if CurrentMenu ~= nil then + if CurrentMenu() then + local Items = {} + for i = 1, ProgressMax do + table.insert(Items, i) + end + ---@type number + local Option = RageUI.Options + 1 + + if CurrentMenu.Pagination.Minimum <= Option and CurrentMenu.Pagination.Maximum >= Option then + + ---@type number + local Selected = CurrentMenu.Index == Option + + ---@type boolean + local LeftArrowHovered, RightArrowHovered = false, false + + RageUI.ItemsSafeZone(CurrentMenu) + + local Hovered = false; + local LeftBadgeOffset = ((Style.LeftBadge == RageUI.BadgeStyle.None or Style.LeftBadge == nil) and 0 or 27) + local RightBadgeOffset = ((Style.RightBadge == RageUI.BadgeStyle.None or Style.RightBadge == nil) and 0 or 32) + local RightOffset = 0 + ---@type boolean + if CurrentMenu.EnableMouse == true and (CurrentMenu.CursorStyle == 0) or (CurrentMenu.CursorStyle == 1) then + Hovered = RageUI.ItemsMouseBounds(CurrentMenu, Selected, Option, SettingsButton); + end + + if Selected then + RenderSprite(SettingsButton.SelectedSprite.Dictionary, SettingsButton.SelectedSprite.Texture, CurrentMenu.X, CurrentMenu.Y + SettingsButton.SelectedSprite.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.SelectedSprite.Width + CurrentMenu.WidthOffset, SettingsButton.SelectedSprite.Height) + LeftArrowHovered = RageUI.IsMouseInBounds(CurrentMenu.X + SettingsSlider.LeftArrow.X + CurrentMenu.SafeZoneSize.X + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsSlider.LeftArrow.Y + CurrentMenu.SafeZoneSize.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.LeftArrow.Width, SettingsSlider.LeftArrow.Height) + RightArrowHovered = RageUI.IsMouseInBounds(CurrentMenu.X + SettingsSlider.RightArrow.X + CurrentMenu.SafeZoneSize.X + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsSlider.RightArrow.Y + CurrentMenu.SafeZoneSize.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.RightArrow.Width, SettingsSlider.RightArrow.Height) + end + if Enabled == true or Enabled == nil then + if Selected then + if Style.RightLabel ~= nil and Style.RightLabel ~= "" then + RenderText(Style.RightLabel, CurrentMenu.X + SettingsButton.RightText.X - RightBadgeOffset + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsButton.RightText.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.RightText.Scale, 0, 0, 0, 255, 2) + RightOffset = MeasureStringWidth(Style.RightLabel, 0, 0.35) + end + else + if Style.RightLabel ~= nil and Style.RightLabel ~= "" then + RightOffset = MeasureStringWidth(Style.RightLabel, 0, 0.35) + RenderText(Style.RightLabel, CurrentMenu.X + SettingsButton.RightText.X - RightBadgeOffset + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsButton.RightText.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.RightText.Scale, 245, 245, 245, 255, 2) + end + end + end + RightOffset = RightOffset + RightBadgeOffset + if Enabled == true or Enabled == nil then + if Selected then + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X + LeftBadgeOffset, CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, 0, 0, 0, 255) + + RenderSprite(SettingsSlider.LeftArrow.Dictionary, SettingsSlider.LeftArrow.Texture, CurrentMenu.X + SettingsSlider.LeftArrow.X + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.LeftArrow.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.LeftArrow.Width, SettingsSlider.LeftArrow.Height, 0, 0, 0, 0, 255) + RenderSprite(SettingsSlider.RightArrow.Dictionary, SettingsSlider.RightArrow.Texture, CurrentMenu.X + SettingsSlider.RightArrow.X + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.RightArrow.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.RightArrow.Width, SettingsSlider.RightArrow.Height, 0, 0, 0, 0, 255) + else + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X + LeftBadgeOffset, CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, 245, 245, 245, 255) + end + else + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X + LeftBadgeOffset, CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, 163, 159, 148, 255) + + if Selected then + RenderSprite(SettingsSlider.LeftArrow.Dictionary, SettingsSlider.LeftArrow.Texture, CurrentMenu.X + SettingsSlider.LeftArrow.X + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.LeftArrow.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.LeftArrow.Width, SettingsSlider.LeftArrow.Height, 163, 159, 148, 255) + RenderSprite(SettingsSlider.RightArrow.Dictionary, SettingsSlider.RightArrow.Texture, CurrentMenu.X + SettingsSlider.RightArrow.X + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.RightArrow.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.RightArrow.Width, SettingsSlider.RightArrow.Height, 163, 159, 148, 255) + end + end + + if type(Style) == "table" then + if Style.Enabled == true or Style.Enabled == nil then + if type(Style) == 'table' then + if Style.LeftBadge ~= nil then + if Style.LeftBadge ~= RageUI.BadgeStyle.None then + local BadgeData = Style.LeftBadge(Selected) + + RenderSprite(BadgeData.BadgeDictionary or "commonmenu", BadgeData.BadgeTexture or "", CurrentMenu.X, CurrentMenu.Y + SettingsButton.LeftBadge.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.LeftBadge.Width, SettingsButton.LeftBadge.Height, 0, BadgeData.BadgeColour and BadgeData.BadgeColour.R or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.G or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.B or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.A or 255) + end + end + + if Style.RightBadge ~= nil then + if Style.RightBadge ~= RageUI.BadgeStyle.None then + local BadgeData = Style.RightBadge(Selected) + + RenderSprite(BadgeData.BadgeDictionary or "commonmenu", BadgeData.BadgeTexture or "", CurrentMenu.X + SettingsButton.RightBadge.X + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsButton.RightBadge.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.RightBadge.Width, SettingsButton.RightBadge.Height, 0, BadgeData.BadgeColour and BadgeData.BadgeColour.R or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.G or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.B or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.A or 255) + end + end + end + else + ---@type function + local LeftBadge = RageUI.BadgeStyle.Lock + + if LeftBadge ~= RageUI.BadgeStyle.None and LeftBadge ~= nil then + local BadgeData = LeftBadge(Selected) + + RenderSprite(BadgeData.BadgeDictionary or "commonmenu", BadgeData.BadgeTexture or "", CurrentMenu.X, CurrentMenu.Y + SettingsButton.LeftBadge.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.LeftBadge.Width, SettingsButton.LeftBadge.Height, 0, BadgeData.BadgeColour.R or 255, BadgeData.BadgeColour.G or 255, BadgeData.BadgeColour.B or 255, BadgeData.BadgeColour.A or 255) + end + end + else + error("UICheckBox Style is not a `table`") + end + RenderRectangle(CurrentMenu.X + SettingsSlider.Background.X + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.Background.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.Background.Width, SettingsSlider.Background.Height, 4, 32, 57, 255) + RenderRectangle(CurrentMenu.X + SettingsSlider.Slider.X + (((SettingsSlider.Background.Width - SettingsSlider.Slider.Width) / (#Items - 1)) * (ProgressStart - 1)) + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.Slider.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.Slider.Width, SettingsSlider.Slider.Height, 57, 116, 200, 255) + if Divider then + RenderRectangle(CurrentMenu.X + SettingsSlider.Divider.X + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsSlider.Divider.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.Divider.Width, SettingsSlider.Divider.Height, 245, 245, 245, 255) + end + + RageUI.ItemOffset = RageUI.ItemOffset + SettingsButton.Rectangle.Height + + RageUI.ItemsDescription(CurrentMenu, Description, Selected); + + if Selected and (CurrentMenu.Controls.Left.Active or (CurrentMenu.Controls.Click.Active and LeftArrowHovered)) and not (CurrentMenu.Controls.Right.Active or (CurrentMenu.Controls.Click.Active and RightArrowHovered)) then + ProgressStart = ProgressStart - 1 + if ProgressStart < 1 then + ProgressStart = #Items + end + if (Actions.onSliderChange ~= nil) then + Actions.onSliderChange(ProgressStart); + end + RageUI.PlaySound(Audio[Audio.Use].LeftRight.audioName, Audio[Audio.Use].LeftRight.audioRef) + elseif Selected and (CurrentMenu.Controls.Right.Active or (CurrentMenu.Controls.Click.Active and RightArrowHovered)) and not (CurrentMenu.Controls.Left.Active or (CurrentMenu.Controls.Click.Active and LeftArrowHovered)) then + ProgressStart = ProgressStart + 1 + if ProgressStart > #Items then + ProgressStart = 1 + end + if (Actions.onSliderChange ~= nil) then + Actions.onSliderChange(ProgressStart); + end + RageUI.PlaySound(Audio[Audio.Use].LeftRight.audioName, Audio[Audio.Use].LeftRight.audioRef) + end + + if Selected and (CurrentMenu.Controls.Select.Active or ((Hovered and CurrentMenu.Controls.Click.Active) and (not LeftArrowHovered and not RightArrowHovered))) then + if (Actions.onSelected ~= nil) then + Actions.onSelected(ProgressStart); + end + RageUI.PlaySound(Audio[Audio.Use].Select.audioName, Audio[Audio.Use].Select.audioRef) + elseif Selected then + if(Actions.onActive ~= nil) then + Actions.onActive() + end + end + end + + RageUI.Options = RageUI.Options + 1 + end + end +end + + + diff --git a/resources/mth-K9/RageUI/menu/items/UISliderHeritage.lua b/resources/mth-K9/RageUI/menu/items/UISliderHeritage.lua new file mode 100644 index 000000000..38585ab78 --- /dev/null +++ b/resources/mth-K9/RageUI/menu/items/UISliderHeritage.lua @@ -0,0 +1,122 @@ +---@type table +local SettingsButton = { + Rectangle = { Y = 0, Width = 431, Height = 38 }, + Text = { X = 8, Y = 3, Scale = 0.33 }, + SelectedSprite = { Dictionary = "commonmenu", Texture = "gradient_nav", Y = 0, Width = 431, Height = 38 }, +} + +---@type table +local SettingsSlider = { + Background = { X = 250, Y = 14.5, Width = 150, Height = 9 }, + Slider = { X = 250, Y = 14.5, Width = 75, Height = 9 }, + Divider = { X = 323.5, Y = 9, Width = 2.5, Height = 20 }, + LeftArrow = { Dictionary = "mpleaderboard", Texture = "leaderboard_female_icon", X = 215, Y = 0, Width = 40, Height = 40 }, + RightArrow = { Dictionary = "mpleaderboard", Texture = "leaderboard_male_icon", X = 395, Y = 0, Width = 40, Height = 40 }, +} + +local Items = {} +for i = 1, 10 do + table.insert(Items, i) +end + +function RageUI.UISliderHeritage(Label, ItemIndex, Description, Actions, Value) + + local CurrentMenu = RageUI.CurrentMenu; + local Audio = RageUI.Settings.Audio + + if CurrentMenu ~= nil then + if CurrentMenu() then + + ---@type number + local Option = RageUI.Options + 1 + + if CurrentMenu.Pagination.Minimum <= Option and CurrentMenu.Pagination.Maximum >= Option then + + ---@type number + local value = Value or 0.1 + local Selected = CurrentMenu.Index == Option + + ---@type boolean + local LeftArrowHovered, RightArrowHovered = false, false + + RageUI.ItemsSafeZone(CurrentMenu) + + local Hovered = false; + local RightOffset = 0 + + ---@type boolean + if CurrentMenu.EnableMouse == true and (CurrentMenu.CursorStyle == 0) or (CurrentMenu.CursorStyle == 1) then + Hovered = RageUI.ItemsMouseBounds(CurrentMenu, Selected, Option, SettingsButton); + end + + if Selected then + RenderSprite(SettingsButton.SelectedSprite.Dictionary, SettingsButton.SelectedSprite.Texture, CurrentMenu.X, CurrentMenu.Y + SettingsButton.SelectedSprite.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.SelectedSprite.Width + CurrentMenu.WidthOffset, SettingsButton.SelectedSprite.Height) + LeftArrowHovered = RageUI.IsMouseInBounds(CurrentMenu.X + SettingsSlider.LeftArrow.X + CurrentMenu.SafeZoneSize.X + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsSlider.LeftArrow.Y + CurrentMenu.SafeZoneSize.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.LeftArrow.Width, SettingsSlider.LeftArrow.Height) + RightArrowHovered = RageUI.IsMouseInBounds(CurrentMenu.X + SettingsSlider.RightArrow.X + CurrentMenu.SafeZoneSize.X + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsSlider.RightArrow.Y + CurrentMenu.SafeZoneSize.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.RightArrow.Width, SettingsSlider.RightArrow.Height) + end + + RightOffset = RightOffset + + if Selected then + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X, CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, 0, 0, 0, 255) + + RenderSprite(SettingsSlider.LeftArrow.Dictionary, SettingsSlider.LeftArrow.Texture, CurrentMenu.X + SettingsSlider.LeftArrow.X + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.LeftArrow.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.LeftArrow.Width, SettingsSlider.LeftArrow.Height, 0, 0, 0, 0, 255) + RenderSprite(SettingsSlider.RightArrow.Dictionary, SettingsSlider.RightArrow.Texture, CurrentMenu.X + SettingsSlider.RightArrow.X + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.RightArrow.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.RightArrow.Width, SettingsSlider.RightArrow.Height, 0, 0, 0, 0, 255) + else + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X, CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, 245, 245, 245, 255) + + RenderSprite(SettingsSlider.LeftArrow.Dictionary, SettingsSlider.LeftArrow.Texture, CurrentMenu.X + SettingsSlider.LeftArrow.X + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.LeftArrow.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.LeftArrow.Width, SettingsSlider.LeftArrow.Height, 0, 255, 255, 255, 255) + RenderSprite(SettingsSlider.RightArrow.Dictionary, SettingsSlider.RightArrow.Texture, CurrentMenu.X + SettingsSlider.RightArrow.X + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.RightArrow.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.RightArrow.Width, SettingsSlider.RightArrow.Height, 0, 255, 255, 255, 255) + end + + RenderRectangle(CurrentMenu.X + SettingsSlider.Background.X + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.Background.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.Background.Width, SettingsSlider.Background.Height, 4, 32, 57, 255) + RenderRectangle(CurrentMenu.X + SettingsSlider.Slider.X + (((SettingsSlider.Background.Width - SettingsSlider.Slider.Width) / (#Items)) * (ItemIndex)) + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.Slider.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.Slider.Width, SettingsSlider.Slider.Height, 57, 116, 200, 255) + + RenderRectangle(CurrentMenu.X + SettingsSlider.Divider.X + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsSlider.Divider.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.Divider.Width, SettingsSlider.Divider.Height, 245, 245, 245, 255) + + RageUI.ItemOffset = RageUI.ItemOffset + SettingsButton.Rectangle.Height + + RageUI.ItemsDescription(CurrentMenu, Description, Selected); + + if Selected and (CurrentMenu.Controls.SliderLeft.Active or (CurrentMenu.Controls.Click.Active and LeftArrowHovered)) and not (CurrentMenu.Controls.SliderRight.Active or (CurrentMenu.Controls.Click.Active and RightArrowHovered)) then + ItemIndex = ItemIndex - value + if ItemIndex < 0.1 then + ItemIndex = 0.0 + else + RageUI.PlaySound(Audio[Audio.Use].Slider.audioName, Audio[Audio.Use].Slider.audioRef, true) + end + if (Actions.onSliderChange ~= nil) then + Actions.onSliderChange(ItemIndex / 10, ItemIndex); + end + elseif Selected and (CurrentMenu.Controls.SliderRight.Active or (CurrentMenu.Controls.Click.Active and RightArrowHovered)) and not (CurrentMenu.Controls.SliderLeft.Active or (CurrentMenu.Controls.Click.Active and LeftArrowHovered)) then + ItemIndex = ItemIndex + value + if ItemIndex > #Items then + ItemIndex = 10 + else + RageUI.PlaySound(Audio[Audio.Use].Slider.audioName, Audio[Audio.Use].Slider.audioRef, true) + end + if (Actions.onSliderChange ~= nil) then + Actions.onSliderChange(ItemIndex / 10, ItemIndex); + end + end + + if Selected and (CurrentMenu.Controls.Select.Active or ((Hovered and CurrentMenu.Controls.Click.Active) and (not LeftArrowHovered and not RightArrowHovered))) then + if (Actions.onSelected ~= nil) then + Actions.onSelected(ItemIndex / 10, ItemIndex); + end + RageUI.PlaySound(Audio[Audio.Use].Select.audioName, Audio[Audio.Use].Select.audioRef, false) + elseif Selected then + if(Actions.onActive ~= nil) then + Actions.onActive() + end + end + + end + + RageUI.Options = RageUI.Options + 1 + end + end +end + + + diff --git a/resources/mth-K9/RageUI/menu/items/UISliderProgress.lua b/resources/mth-K9/RageUI/menu/items/UISliderProgress.lua new file mode 100644 index 000000000..cf2fc2a66 --- /dev/null +++ b/resources/mth-K9/RageUI/menu/items/UISliderProgress.lua @@ -0,0 +1,190 @@ +--- +--- Generated by EmmyLua(https://github.com/EmmyLua) +--- Created by Dylan Malandain. +--- DateTime: 21/11/2019 01:33 +--- + +---@type table +local SettingsButton = { + Rectangle = { Y = 0, Width = 431, Height = 38 }, + Text = { X = 8, Y = 3, Scale = 0.33 }, + LeftBadge = { Y = -2, Width = 40, Height = 40 }, + RightBadge = { X = 385, Y = -2, Width = 40, Height = 40 }, + RightText = { X = 420, Y = 4, Scale = 0.35 }, + SelectedSprite = { Dictionary = "commonmenu", Texture = "gradient_nav", Y = 0, Width = 431, Height = 38 }, +} + +---@type table +local SettingsSlider = { + Background = { X = 250, Y = 14.5, Width = 150, Height = 9 }, + Slider = { X = 250, Y = 14.5, Width = 150, Height = 9 }, + LeftArrow = { Dictionary = "commonmenutu", Texture = "arrowleft", X = 235, Y = 11.5, Width = 15, Height = 15 }, + RightArrow = { Dictionary = "commonmenutu", Texture = "arrowright", X = 400, Y = 11.5, Width = 15, Height = 15 }, +} + +---Slider +---@param Label string +---@param ProgressStart number +---@param ProgressMax number +---@param Description string +---@param Enabled boolean +---@param Callback function +function RageUI.SliderProgress(Label, ProgressStart, ProgressMax, Description, Style, Enabled, Actions) + + ---@type table + local CurrentMenu = RageUI.CurrentMenu; + local Audio = RageUI.Settings.Audio + + if CurrentMenu ~= nil then + if CurrentMenu() then + + local Items = {} + for i = 1, ProgressMax do + table.insert(Items, i) + end + ---@type number + local Option = RageUI.Options + 1 + + if CurrentMenu.Pagination.Minimum <= Option and CurrentMenu.Pagination.Maximum >= Option then + + ---@type number + local Selected = CurrentMenu.Index == Option + + ---@type boolean + local LeftArrowHovered, RightArrowHovered = false, false + + RageUI.ItemsSafeZone(CurrentMenu) + + local Hovered = false; + local LeftBadgeOffset = ((Style.LeftBadge == RageUI.BadgeStyle.None or Style.LeftBadge == nil) and 0 or 27) + local RightBadgeOffset = ((Style.RightBadge == RageUI.BadgeStyle.None or Style.RightBadge == nil) and 0 or 32) + local RightOffset = 0 + ---@type boolean + if CurrentMenu.EnableMouse == true and (CurrentMenu.CursorStyle == 0) or (CurrentMenu.CursorStyle == 1) then + Hovered = RageUI.ItemsMouseBounds(CurrentMenu, Selected, Option, SettingsButton); + end + + if Selected then + RenderSprite(SettingsButton.SelectedSprite.Dictionary, SettingsButton.SelectedSprite.Texture, CurrentMenu.X, CurrentMenu.Y + SettingsButton.SelectedSprite.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.SelectedSprite.Width + CurrentMenu.WidthOffset, SettingsButton.SelectedSprite.Height) + LeftArrowHovered = RageUI.IsMouseInBounds(CurrentMenu.X + SettingsSlider.LeftArrow.X + CurrentMenu.SafeZoneSize.X + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsSlider.LeftArrow.Y + CurrentMenu.SafeZoneSize.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.LeftArrow.Width, SettingsSlider.LeftArrow.Height) + RightArrowHovered = RageUI.IsMouseInBounds(CurrentMenu.X + SettingsSlider.RightArrow.X + CurrentMenu.SafeZoneSize.X + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsSlider.RightArrow.Y + CurrentMenu.SafeZoneSize.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.RightArrow.Width, SettingsSlider.RightArrow.Height) + end + if Enabled == true or Enabled == nil then + if Selected then + if Style.RightLabel ~= nil and Style.RightLabel ~= "" then + RenderText(Style.RightLabel, CurrentMenu.X + SettingsButton.RightText.X - RightBadgeOffset + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsButton.RightText.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.RightText.Scale, 0, 0, 0, 255, 2) + RightOffset = MeasureStringWidth(Style.RightLabel, 0, 0.35) + end + else + if Style.RightLabel ~= nil and Style.RightLabel ~= "" then + RightOffset = MeasureStringWidth(Style.RightLabel, 0, 0.35) + RenderText(Style.RightLabel, CurrentMenu.X + SettingsButton.RightText.X - RightBadgeOffset + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsButton.RightText.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.RightText.Scale, 245, 245, 245, 255, 2) + end + end + end + RightOffset = RightOffset + RightBadgeOffset + if Enabled == true or Enabled == nil then + if Selected then + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X + LeftBadgeOffset, CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, 0, 0, 0, 255) + + RenderSprite(SettingsSlider.LeftArrow.Dictionary, SettingsSlider.LeftArrow.Texture, CurrentMenu.X + SettingsSlider.LeftArrow.X + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.LeftArrow.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.LeftArrow.Width, SettingsSlider.LeftArrow.Height, 0, 0, 0, 0, 255) + RenderSprite(SettingsSlider.RightArrow.Dictionary, SettingsSlider.RightArrow.Texture, CurrentMenu.X + SettingsSlider.RightArrow.X + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.RightArrow.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.RightArrow.Width, SettingsSlider.RightArrow.Height, 0, 0, 0, 0, 255) + else + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X + LeftBadgeOffset, CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, 245, 245, 245, 255) + end + else + RenderText(Label, CurrentMenu.X + SettingsButton.Text.X + LeftBadgeOffset, CurrentMenu.Y + SettingsButton.Text.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, SettingsButton.Text.Scale, 163, 159, 148, 255) + + if Selected then + RenderSprite(SettingsSlider.LeftArrow.Dictionary, SettingsSlider.LeftArrow.Texture, CurrentMenu.X + SettingsSlider.LeftArrow.X + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.LeftArrow.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.LeftArrow.Width, SettingsSlider.LeftArrow.Height, 163, 159, 148, 255) + RenderSprite(SettingsSlider.RightArrow.Dictionary, SettingsSlider.RightArrow.Texture, CurrentMenu.X + SettingsSlider.RightArrow.X + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.RightArrow.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.RightArrow.Width, SettingsSlider.RightArrow.Height, 163, 159, 148, 255) + end + end + + if type(Style) == "table" then + if Style.Enabled == true or Style.Enabled == nil then + if type(Style) == 'table' then + if Style.LeftBadge ~= nil then + if Style.LeftBadge ~= RageUI.BadgeStyle.None then + local BadgeData = Style.LeftBadge(Selected) + + RenderSprite(BadgeData.BadgeDictionary or "commonmenu", BadgeData.BadgeTexture or "", CurrentMenu.X, CurrentMenu.Y + SettingsButton.LeftBadge.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.LeftBadge.Width, SettingsButton.LeftBadge.Height, 0, BadgeData.BadgeColour and BadgeData.BadgeColour.R or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.G or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.B or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.A or 255) + end + end + + if Style.RightBadge ~= nil then + if Style.RightBadge ~= RageUI.BadgeStyle.None then + local BadgeData = Style.RightBadge(Selected) + + RenderSprite(BadgeData.BadgeDictionary or "commonmenu", BadgeData.BadgeTexture or "", CurrentMenu.X + SettingsButton.RightBadge.X + CurrentMenu.WidthOffset, CurrentMenu.Y + SettingsButton.RightBadge.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.RightBadge.Width, SettingsButton.RightBadge.Height, 0, BadgeData.BadgeColour and BadgeData.BadgeColour.R or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.G or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.B or 255, BadgeData.BadgeColour and BadgeData.BadgeColour.A or 255) + end + end + end + else + ---@type function + local LeftBadge = RageUI.BadgeStyle.Lock + + if LeftBadge ~= RageUI.BadgeStyle.None and LeftBadge ~= nil then + local BadgeData = LeftBadge(Selected) + + RenderSprite(BadgeData.BadgeDictionary or "commonmenu", BadgeData.BadgeTexture or "", CurrentMenu.X, CurrentMenu.Y + SettingsButton.LeftBadge.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsButton.LeftBadge.Width, SettingsButton.LeftBadge.Height, 0, BadgeData.BadgeColour.R or 255, BadgeData.BadgeColour.G or 255, BadgeData.BadgeColour.B or 255, BadgeData.BadgeColour.A or 255) + end + end + else + error("UICheckBox Style is not a `table`") + end + + if (type(Style.ProgressBackgroundColor) == "table") then + RenderRectangle(CurrentMenu.X + SettingsSlider.Background.X + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.Background.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, SettingsSlider.Background.Width, SettingsSlider.Background.Height, Style.ProgressBackgroundColor.R, Style.ProgressBackgroundColor.G, Style.ProgressBackgroundColor.B, Style.ProgressBackgroundColor.A) + else + error("Style ProgressBackgroundColor is not a table or undefined") + end + + if (type(Style.ProgressColor) == "table") then + RenderRectangle(CurrentMenu.X + SettingsSlider.Slider.X + CurrentMenu.WidthOffset - RightOffset, CurrentMenu.Y + SettingsSlider.Slider.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, (((SettingsSlider.Slider.Width) / (#Items - 1)) * (ProgressStart - 1)), SettingsSlider.Slider.Height, Style.ProgressColor.R, Style.ProgressColor.G, Style.ProgressColor.B, Style.ProgressColor.A) + else + error("Style ProgressColor is not a table or undefined") + end + + RageUI.ItemOffset = RageUI.ItemOffset + SettingsButton.Rectangle.Height + + RageUI.ItemsDescription(CurrentMenu, Description, Selected); + + if Selected and (CurrentMenu.Controls.Left.Active or (CurrentMenu.Controls.Click.Active and LeftArrowHovered)) and not (CurrentMenu.Controls.Right.Active or (CurrentMenu.Controls.Click.Active and RightArrowHovered)) then + ProgressStart = ProgressStart - 1 + if ProgressStart < 1 then + ProgressStart = #Items + end + if (Actions.onSliderChange ~= nil) then + Actions.onSliderChange(ProgressStart); + end + RageUI.PlaySound(Audio[Audio.Use].LeftRight.audioName, Audio[Audio.Use].LeftRight.audioRef) + elseif Selected and (CurrentMenu.Controls.Right.Active or (CurrentMenu.Controls.Click.Active and RightArrowHovered)) and not (CurrentMenu.Controls.Left.Active or (CurrentMenu.Controls.Click.Active and LeftArrowHovered)) then + ProgressStart = ProgressStart + 1 + if ProgressStart > #Items then + ProgressStart = 1 + end + if (Actions.onSliderChange ~= nil) then + Actions.onSliderChange(ProgressStart); + end + RageUI.PlaySound(Audio[Audio.Use].LeftRight.audioName, Audio[Audio.Use].LeftRight.audioRef) + end + + if Selected and (CurrentMenu.Controls.Select.Active or ((Hovered and CurrentMenu.Controls.Click.Active) and (not LeftArrowHovered and not RightArrowHovered))) then + if (Actions.onSelected ~= nil) then + Actions.onSelected(ProgressStart); + end + RageUI.PlaySound(Audio[Audio.Use].Select.audioName, Audio[Audio.Use].Select.audioRef) + elseif Selected then + if(Actions.onActive ~= nil) then + Actions.onActive() + end + end + end + + RageUI.Options = RageUI.Options + 1 + end + end +end + + diff --git a/resources/mth-K9/RageUI/menu/panels/UIBoutonPanel.lua b/resources/mth-K9/RageUI/menu/panels/UIBoutonPanel.lua new file mode 100644 index 000000000..339ae73d5 --- /dev/null +++ b/resources/mth-K9/RageUI/menu/panels/UIBoutonPanel.lua @@ -0,0 +1,24 @@ +local TextPanels = { + Background = { Dictionary = "commonmenu", Texture = "gradient_bgd", Y = 4, Width = 431, Height = 42 }, + Text = { + Left = { X = 8, Y = 10, Scale = 0.35 }, + Right = { X = 8, Y = 10, Scale = 0.35 }, + }, +} + +---BoutonPanel +---@param LeftText string +---@param RightText string +---@public +function RageUI.BoutonPanel(LeftText, RightText, Index) + local CurrentMenu = RageUI.CurrentMenu + if CurrentMenu ~= nil then + local leftTextSize = MeasureStringWidth(LeftText) + if CurrentMenu() and (Index == nil or (CurrentMenu.Index == Index)) then + RenderRectangle(CurrentMenu.X, CurrentMenu.Y + TextPanels.Background.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset + (RageUI.StatisticPanelCount * 42), TextPanels.Background.Width + CurrentMenu.WidthOffset, TextPanels.Background.Height, 0, 0, 0, 170) + RenderText(LeftText or "", CurrentMenu.X + TextPanels.Text.Left.X, (RageUI.StatisticPanelCount * 40) + CurrentMenu.Y + TextPanels.Text.Left.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, TextPanels.Text.Left.Scale, 245, 245, 245, 255, 0) + RenderText(RightText or "", CurrentMenu.X + TextPanels.Background.Width + CurrentMenu.WidthOffset - leftTextSize, (RageUI.StatisticPanelCount * 40) + CurrentMenu.Y + TextPanels.Text.Left.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, TextPanels.Text.Left.Scale, 245, 245, 245, 255, 2) + RageUI.StatisticPanelCount = RageUI.StatisticPanelCount + 1 + end + end +end \ No newline at end of file diff --git a/resources/mth-K9/RageUI/menu/panels/UIColourPanel.lua b/resources/mth-K9/RageUI/menu/panels/UIColourPanel.lua new file mode 100644 index 000000000..49f463bea --- /dev/null +++ b/resources/mth-K9/RageUI/menu/panels/UIColourPanel.lua @@ -0,0 +1,110 @@ +---@type table +local Colour = { + Background = { Dictionary = "commonmenu", Texture = "gradient_bgd", Y = 4, Width = 431, Height = 112 }, + LeftArrow = { Dictionary = "commonmenu", Texture = "arrowleft", X = 7.5, Y = 15, Width = 30, Height = 30 }, + RightArrow = { Dictionary = "commonmenu", Texture = "arrowright", X = 393.5, Y = 15, Width = 30, Height = 30 }, + Header = { X = 215.5, Y = 15, Scale = 0.35 }, + Box = { X = 15, Y = 55, Width = 44.5, Height = 44.5 }, + SelectedRectangle = { X = 15, Y = 47, Width = 44.5, Height = 8 }, + Seperator = { Text = "of" } +} + +---ColourPanel +---@param Title string +---@param Colours thread | table +---@param MinimumIndex number +---@param CurrentIndex number +---@param Callback function +---@return nil +---@public +function RageUI.ColourPanel(Title, Colours, MinimumIndex, CurrentIndex, Action, Index, Style) + + ---@type table + local CurrentMenu = RageUI.CurrentMenu; + + if CurrentMenu ~= nil then + if CurrentMenu() and (CurrentMenu.Index == Index) then + + ---@type number + local Maximum = (#Colours > 9) and 9 or #Colours + + ---@type boolean + local Hovered = RageUI.IsMouseInBounds(CurrentMenu.X + Colour.Box.X + CurrentMenu.SafeZoneSize.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Colour.Box.Y + CurrentMenu.SafeZoneSize.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, (Colour.Box.Width * Maximum), Colour.Box.Height) + + ---@type boolean + local LeftArrowHovered = RageUI.IsMouseInBounds(CurrentMenu.X + Colour.LeftArrow.X + CurrentMenu.SafeZoneSize.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Colour.LeftArrow.Y + CurrentMenu.SafeZoneSize.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Colour.LeftArrow.Width, Colour.LeftArrow.Height) + + ---@type boolean + local RightArrowHovered = RageUI.IsMouseInBounds(CurrentMenu.X + Colour.RightArrow.X + CurrentMenu.SafeZoneSize.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Colour.RightArrow.Y + CurrentMenu.SafeZoneSize.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Colour.RightArrow.Width, Colour.RightArrow.Height) + + ---@type boolean + local Selected = false + + RenderSprite(Colour.Background.Dictionary, Colour.Background.Texture, CurrentMenu.X, CurrentMenu.Y + Colour.Background.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Colour.Background.Width + CurrentMenu.WidthOffset, Colour.Background.Height) + RenderSprite(Colour.LeftArrow.Dictionary, Colour.LeftArrow.Texture, CurrentMenu.X + Colour.LeftArrow.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Colour.LeftArrow.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Colour.LeftArrow.Width, Colour.LeftArrow.Height) + RenderSprite(Colour.RightArrow.Dictionary, Colour.RightArrow.Texture, CurrentMenu.X + Colour.RightArrow.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Colour.RightArrow.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Colour.RightArrow.Width, Colour.RightArrow.Height) + + RenderRectangle(CurrentMenu.X + Colour.SelectedRectangle.X + (Colour.Box.Width * (CurrentIndex - MinimumIndex)) + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Colour.SelectedRectangle.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Colour.SelectedRectangle.Width, Colour.SelectedRectangle.Height, 245, 245, 245, 255) + + for Index = 1, Maximum do + RenderRectangle(CurrentMenu.X + Colour.Box.X + (Colour.Box.Width * (Index - 1)) + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Colour.Box.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Colour.Box.Width, Colour.Box.Height, table.unpack(Colours[MinimumIndex + Index - 1])) + end + + local ColourSeperator = {} + if type(Style) == "table" then + if type(Style.Seperator) == "table" then + ColourSeperator = Style.Seperator + else + ColourSeperator = Colour.Seperator + end + else + ColourSeperator = Colour.Seperator + end + + RenderText((Title and Title or "") .. " (" .. CurrentIndex .. " " .. ColourSeperator.Text .. " " .. #Colours .. ")", CurrentMenu.X + RageUI.Settings.Panels.Grid.Text.Top.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + RageUI.Settings.Panels.Grid.Text.Top.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, RageUI.Settings.Panels.Grid.Text.Top.Scale, 245, 245, 245, 255, 1) + + if Hovered or LeftArrowHovered or RightArrowHovered then + if RageUI.Settings.Controls.Click.Active then + Selected = true + + if LeftArrowHovered then + CurrentIndex = CurrentIndex - 1 + + if CurrentIndex < 1 then + CurrentIndex = #Colours + MinimumIndex = #Colours - Maximum + 1 + elseif CurrentIndex < MinimumIndex then + MinimumIndex = MinimumIndex - 1 + end + elseif RightArrowHovered then + CurrentIndex = CurrentIndex + 1 + + if CurrentIndex > #Colours then + CurrentIndex = 1 + MinimumIndex = 1 + elseif CurrentIndex > MinimumIndex + Maximum - 1 then + MinimumIndex = MinimumIndex + 1 + end + elseif Hovered then + for Index = 1, Maximum do + if RageUI.IsMouseInBounds(CurrentMenu.X + Colour.Box.X + (Colour.Box.Width * (Index - 1)) + CurrentMenu.SafeZoneSize.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Colour.Box.Y + CurrentMenu.SafeZoneSize.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Colour.Box.Width, Colour.Box.Height) then + CurrentIndex = MinimumIndex + Index - 1 + end + end + end + + if (Action.onColorChange ~= nil) then + Action.onColorChange(MinimumIndex, CurrentIndex) + end + end + end + + RageUI.ItemOffset = RageUI.ItemOffset + Colour.Background.Height + Colour.Background.Y + + if (Hovered or LeftArrowHovered or RightArrowHovered) and RageUI.Settings.Controls.Click.Active then + local Audio = RageUI.Settings.Audio + RageUI.PlaySound(Audio[Audio.Use].Select.audioName, Audio[Audio.Use].Select.audioRef) + end + end + end +end \ No newline at end of file diff --git a/resources/mth-K9/RageUI/menu/panels/UIGridPanel.lua b/resources/mth-K9/RageUI/menu/panels/UIGridPanel.lua new file mode 100644 index 000000000..218587be6 --- /dev/null +++ b/resources/mth-K9/RageUI/menu/panels/UIGridPanel.lua @@ -0,0 +1,131 @@ +--- +--- @author Dylan MALANDAIN +--- @version 2.0.0 +--- @since 2020 +--- +--- RageUI Is Advanced UI Libs in LUA for make beautiful interface like RockStar GAME. +--- +--- +--- Commercial Info. +--- Any use for commercial purposes is strictly prohibited and will be punished. +--- +--- @see RageUI +--- + +local GridType = RageUI.Enum { + Default = 1, + Horizontal = 2, + Vertical = 3 +} + +local GridSprite = { + [GridType.Default] = { Dictionary = "pause_menu_pages_char_mom_dad", Texture = "nose_grid", }, + [GridType.Horizontal] = { Dictionary = "RageUI_", Texture = "horizontal_grid", }, + [GridType.Vertical] = { Dictionary = "RageUI_", Texture = "vertical_grid", }, +} + +local Grid = { + Background = { Dictionary = "commonmenu", Texture = "gradient_bgd", Y = 4, Width = 431, Height = 275 }, + Grid = { X = 115.5, Y = 47.5, Width = 200, Height = 200 }, + Circle = { Dictionary = "mpinventory", Texture = "in_world_circle", X = 115.5, Y = 47.5, Width = 20, Height = 20 }, + Text = { + Top = { X = 215.5, Y = 15, Scale = 0.35 }, + Bottom = { X = 215.5, Y = 250, Scale = 0.35 }, + Left = { X = 57.75, Y = 130, Scale = 0.35 }, + Right = { X = 373.25, Y = 130, Scale = 0.35 }, + }, +} + +local function UIGridPanel(Type, StartedX, StartedY, TopText, BottomText, LeftText, RightText, Action, Index) + local CurrentMenu = RageUI.CurrentMenu + if CurrentMenu ~= nil then + if CurrentMenu() and ((CurrentMenu.Index == Index)) then + local X = Type == GridType.Default and StartedX or Type == GridType.Horizontal and StartedX or Type == GridType.Vertical and 0.5 + local Y = Type == GridType.Default and StartedY or Type == GridType.Horizontal and 0.5 or Type == GridType.Vertical and StartedY + local Hovered = RageUI.IsMouseInBounds(CurrentMenu.X + Grid.Grid.X + CurrentMenu.SafeZoneSize.X, CurrentMenu.Y + Grid.Grid.Y + CurrentMenu.SafeZoneSize.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Grid.Grid.Width + CurrentMenu.WidthOffset, Grid.Grid.Height) + local Selected = false + local CircleX = CurrentMenu.X + Grid.Grid.X + (CurrentMenu.WidthOffset / 2) + local CircleY = CurrentMenu.Y + Grid.Grid.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset + if X <= 0.0 then + X = 0.0 + elseif X >= 1.0 then + X = 1.0 + end + if Y <= 0.0 then + Y = 0.0 + elseif Y >= 1.0 then + Y = 1.0 + end + CircleX = CircleX + ((Grid.Grid.Width ) * X) - (Grid.Circle.Width / 2) + CircleY = CircleY + ((Grid.Grid.Height ) * Y) - (Grid.Circle.Height / 2) + RenderSprite(Grid.Background.Dictionary, Grid.Background.Texture, CurrentMenu.X, CurrentMenu.Y + Grid.Background.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Grid.Background.Width + CurrentMenu.WidthOffset, Grid.Background.Height) + RenderSprite(GridSprite[Type].Dictionary, GridSprite[Type].Texture, CurrentMenu.X + Grid.Grid.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Grid.Grid.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Grid.Grid.Width, Grid.Grid.Height) + RenderSprite(Grid.Circle.Dictionary, Grid.Circle.Texture, CircleX, CircleY, Grid.Circle.Width, Grid.Circle.Height) + if (Type == GridType.Default) then + RenderText(TopText or "", CurrentMenu.X + Grid.Text.Top.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Grid.Text.Top.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, Grid.Text.Top.Scale, 245, 245, 245, 255, 1) + RenderText(BottomText or "", CurrentMenu.X + Grid.Text.Bottom.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Grid.Text.Bottom.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, Grid.Text.Bottom.Scale, 245, 245, 245, 255, 1) + RenderText(LeftText or "", CurrentMenu.X + Grid.Text.Left.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Grid.Text.Left.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, Grid.Text.Left.Scale, 245, 245, 245, 255, 1) + RenderText(RightText or "", CurrentMenu.X + Grid.Text.Right.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Grid.Text.Right.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, Grid.Text.Right.Scale, 245, 245, 245, 255, 1) + end + if (Type == GridType.Vertical) then + RenderText(TopText or "", CurrentMenu.X + Grid.Text.Top.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Grid.Text.Top.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, Grid.Text.Top.Scale, 245, 245, 245, 255, 1) + RenderText(BottomText or "", CurrentMenu.X + Grid.Text.Bottom.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Grid.Text.Bottom.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, Grid.Text.Bottom.Scale, 245, 245, 245, 255, 1) + end + if (Type == GridType.Horizontal) then + RenderText(LeftText or "", CurrentMenu.X + Grid.Text.Left.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Grid.Text.Left.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, Grid.Text.Left.Scale, 245, 245, 245, 255, 1) + RenderText(RightText or "", CurrentMenu.X + Grid.Text.Right.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Grid.Text.Right.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, Grid.Text.Right.Scale, 245, 245, 245, 255, 1) + end + if Hovered then + if IsDisabledControlPressed(0, 24) then + Selected = true + CircleX = math.round(GetControlNormal(2, 239) * 1920) - CurrentMenu.SafeZoneSize.X - (Grid.Circle.Width / 2) + CircleY = math.round(GetControlNormal(2, 240) * 1080) - CurrentMenu.SafeZoneSize.Y - (Grid.Circle.Height / 2) + if CircleX > (CurrentMenu.X + Grid.Grid.X + (CurrentMenu.WidthOffset / 2) + Grid.Grid.Width ) then + CircleX = CurrentMenu.X + Grid.Grid.X + (CurrentMenu.WidthOffset / 2) + Grid.Grid.Width + elseif CircleX < (CurrentMenu.X + Grid.Grid.X - (Grid.Circle.Width / 2)) then + CircleX = CurrentMenu.X + Grid.Grid.X - (Grid.Circle.Width / 2) + end + if CircleY > (CurrentMenu.Y + Grid.Grid.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset + Grid.Grid.Height ) then + CircleY = CurrentMenu.Y + Grid.Grid.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset + Grid.Grid.Height + elseif CircleY < (CurrentMenu.Y + Grid.Grid.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset - (Grid.Circle.Height / 2)) then + CircleY = CurrentMenu.Y + Grid.Grid.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset - (Grid.Circle.Height / 2) + end + X = math.round((CircleX - (CurrentMenu.X + Grid.Grid.X + (CurrentMenu.WidthOffset / 2)) + (Grid.Circle.Width / 2)) / (Grid.Grid.Width ), 2) + Y = math.round((CircleY - (CurrentMenu.Y + Grid.Grid.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset ) + (Grid.Circle.Height / 2)) / (Grid.Grid.Height ), 2) + if (X ~= StartedX) and (Y ~= StartedY) then + Action.onPositionChange(X, Y, (X * 2 - 1), (Y * 2 - 1)) + end + StartedX = X; + StartedY = Y; + if X >= 1.0 then + X = 1.0 + end + if Y >= 1.0 then + Y = 1.0 + end + end + end + RageUI.ItemOffset = RageUI.ItemOffset + Grid.Background.Height + Grid.Background.Y + if Hovered and Selected then + local Audio = RageUI.Settings.Audio + RageUI.PlaySound(Audio[Audio.Use].Slider.audioName, Audio[Audio.Use].Slider.audioRef, true) + if (Action.onSelected ~= nil) then + Action.onSelected(X, Y, (X * 2 - 1), (Y * 2 - 1)); + end + end + + end + end +end + +function RageUI.Grid(StartedX, StartedY, TopText, BottomText, LeftText, RightText, Action, Index) + UIGridPanel(GridType.Default, StartedX, StartedY, TopText, BottomText, LeftText, RightText, Action, Index) +end + +function RageUI.GridHorizontal(StartedX, LeftText, RightText, Action, Index) + UIGridPanel(GridType.Horizontal, StartedX, nil, nil, nil, LeftText, RightText, Action, Index) +end + +function RageUI.GridVertical(StartedY, TopText, BottomText, Action, Index) + UIGridPanel(GridType.Vertical, nil, StartedY, TopText, BottomText, nil, nil, Action, Index) +end diff --git a/resources/mth-K9/RageUI/menu/panels/UIPercentagePanel.lua b/resources/mth-K9/RageUI/menu/panels/UIPercentagePanel.lua new file mode 100644 index 000000000..e4b6241c9 --- /dev/null +++ b/resources/mth-K9/RageUI/menu/panels/UIPercentagePanel.lua @@ -0,0 +1,81 @@ +local Percentage = { + Background = { Dictionary = "commonmenu", Texture = "gradient_bgd", Y = 4, Width = 433, Height = 76 }, + Bar = { X = 9, Y = 50, Width = 413, Height = 10 }, + Text = { + Left = { X = 25, Y = 19, Scale = 0.30 }, + Middle = { X = 215.5, Y = 19, Scale = 0.30 }, + Right = { X = 398, Y = 19, Scale = 0.30 }, + }, +} + +---PercentagePanel +---@param Percent number +---@param HeaderText string +---@param MinText string +---@param MaxText string +---@param Callback function +---@param Index number +---@return nil +---@public +function RageUI.PercentagePanel(Percent, HeaderText, MinText, MaxText, Action, Index) + local CurrentMenu = RageUI.CurrentMenu + + if CurrentMenu ~= nil then + if CurrentMenu() and (Index == nil or (CurrentMenu.Index == Index)) then + + ---@type boolean + local Hovered = RageUI.IsMouseInBounds(CurrentMenu.X + Percentage.Bar.X + CurrentMenu.SafeZoneSize.X, CurrentMenu.Y + Percentage.Bar.Y + CurrentMenu.SafeZoneSize.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset - 4, Percentage.Bar.Width + CurrentMenu.WidthOffset, Percentage.Bar.Height + 8) + + ---@type boolean + local Selected = false + + ---@type number + local Progress = Percentage.Bar.Width + + if Percent < 0.0 then + Percent = 0.0 + elseif Percent > 1.0 then + Percent = 1.0 + end + + Progress = Progress * Percent + + RenderSprite(Percentage.Background.Dictionary, Percentage.Background.Texture, CurrentMenu.X, CurrentMenu.Y + Percentage.Background.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Percentage.Background.Width + CurrentMenu.WidthOffset, Percentage.Background.Height) + RenderRectangle(CurrentMenu.X + Percentage.Bar.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Percentage.Bar.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Percentage.Bar.Width, Percentage.Bar.Height, 87, 87, 87, 255) + RenderRectangle(CurrentMenu.X + Percentage.Bar.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Percentage.Bar.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Progress, Percentage.Bar.Height, 245, 245, 245, 255) + + RenderText(HeaderText or "Opacity", CurrentMenu.X + Percentage.Text.Middle.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Percentage.Text.Middle.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, Percentage.Text.Middle.Scale, 245, 245, 245, 255, 1) + RenderText(MinText or "0%", CurrentMenu.X + Percentage.Text.Left.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Percentage.Text.Left.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, Percentage.Text.Left.Scale, 245, 245, 245, 255, 1) + RenderText(MaxText or "100%", CurrentMenu.X + Percentage.Text.Right.X + (CurrentMenu.WidthOffset / 2), CurrentMenu.Y + Percentage.Text.Right.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, Percentage.Text.Right.Scale, 245, 245, 245, 255, 1) + + if Hovered then + if IsDisabledControlPressed(0, 24) then + Selected = true + + Progress = math.round(GetControlNormal(2, 239) * 1920) - CurrentMenu.SafeZoneSize.X - (CurrentMenu.X + Percentage.Bar.X + (CurrentMenu.WidthOffset / 2)) + + if Progress < 0 then + Progress = 0 + elseif Progress > (Percentage.Bar.Width) then + Progress = Percentage.Bar.Width + end + + Percent = math.round(Progress / Percentage.Bar.Width, 2) + if (Action.onProgressChange ~= nil) then + Action.onProgressChange(Percent) + end + end + end + + RageUI.ItemOffset = RageUI.ItemOffset + Percentage.Background.Height + Percentage.Background.Y + + if Hovered and Selected then + local Audio = RageUI.Settings.Audio + RageUI.PlaySound(Audio[Audio.Use].Slider.audioName, Audio[Audio.Use].Slider.audioRef, true) + if (Action.onSelected ~= nil) then + Action.onSelected(Percent) + end + end + end + end +end diff --git a/resources/mth-K9/RageUI/menu/panels/UISpritPanel.lua b/resources/mth-K9/RageUI/menu/panels/UISpritPanel.lua new file mode 100644 index 000000000..b5e5ba15d --- /dev/null +++ b/resources/mth-K9/RageUI/menu/panels/UISpritPanel.lua @@ -0,0 +1,20 @@ +--- +--- Generated by EmmyLua(https://github.com/EmmyLua) +--- Created by iTexZ. +--- DateTime: 05/11/2020 02:17 +--- + +local TextPanels = { + Background = { Dictionary = "commonmenu", Texture = "gradient_bgd", Y = 4, Width = 433, Height = 42 }, +} + +---@type Panel +function RageUI.RenderSprite(Dictionary, Texture) + local CurrentMenu = RageUI.CurrentMenu + if CurrentMenu ~= nil then + if CurrentMenu() then + RenderSprite(Dictionary, Texture, CurrentMenu.X, CurrentMenu.Y + TextPanels.Background.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset + (RageUI.StatisticPanelCount * 42), TextPanels.Background.Width + CurrentMenu.WidthOffset, TextPanels.Background.Height + 200, 0, 255, 255, 255, 255); + RageUI.StatisticPanelCount = RageUI.StatisticPanelCount + 1 + end + end +end diff --git a/resources/mth-K9/RageUI/menu/panels/UIStatisticsPanel.lua b/resources/mth-K9/RageUI/menu/panels/UIStatisticsPanel.lua new file mode 100644 index 000000000..7021b17de --- /dev/null +++ b/resources/mth-K9/RageUI/menu/panels/UIStatisticsPanel.lua @@ -0,0 +1,68 @@ +local Statistics = { + Background = { Dictionary = "commonmenu", Texture = "gradient_bgd", Y = 4, Width = 433, Height = 42 }, + Text = { + Left = { X = -40, Y = 19, Scale = 0.30 }, + }, + Bar = { Right = 8, Y = 27, Width = 200, Height = 10, OffsetRatio = 0.5 }, + Divider = { + [1] = { X = 200, Y = 27, Width = 2, Height = 10 }, + [2] = { X = 200, Y = 27, Width = 2, Height = 10 }, + [3] = { X = 200, Y = 27, Width = 2, Height = 10 }, + [4] = { X = 200, Y = 27, Width = 2, Height = 10 }, + [5] = { X = 200, Y = 27, Width = 2, Height = 10 }, + } +} + +function RageUI.StatisticPanel(Percent, Text, Index) + local CurrentMenu = RageUI.CurrentMenu + if CurrentMenu ~= nil then + if CurrentMenu() and (Index == nil or (CurrentMenu.Index == Index)) then + + ---@type number + local BarWidth = Statistics.Bar.Width + CurrentMenu.WidthOffset * Statistics.Bar.OffsetRatio + + RenderRectangle(CurrentMenu.X, CurrentMenu.Y + Statistics.Background.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset + (RageUI.StatisticPanelCount * 42), Statistics.Background.Width + CurrentMenu.WidthOffset, Statistics.Background.Height, 0, 0, 0, 170) + RenderText(Text or "", CurrentMenu.X + 8.0, (RageUI.StatisticPanelCount * 40) + CurrentMenu.Y + Statistics.Text.Left.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, Statistics.Text.Left.Scale, 245, 245, 245, 255, 0) + RenderRectangle(CurrentMenu.X + RageUI.Settings.Items.Title.Background.Width - BarWidth - Statistics.Bar.Right + CurrentMenu.WidthOffset, (RageUI.StatisticPanelCount * 40) + CurrentMenu.Y + Statistics.Bar.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, BarWidth, Statistics.Bar.Height, 87, 87, 87, 255) + RenderRectangle(CurrentMenu.X + RageUI.Settings.Items.Title.Background.Width - BarWidth - Statistics.Bar.Right + CurrentMenu.WidthOffset, (RageUI.StatisticPanelCount * 40) + CurrentMenu.Y + Statistics.Bar.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Percent * BarWidth, Statistics.Bar.Height, 255, 255, 255, 255) + for i = 1, #Statistics.Divider, 1 do + RenderRectangle((CurrentMenu.X + RageUI.Settings.Items.Title.Background.Width - BarWidth - Statistics.Bar.Right) + i * ((BarWidth - (#Statistics.Divider / Statistics.Divider[i].Width)) / (#Statistics.Divider + 1)) + CurrentMenu.WidthOffset, (RageUI.StatisticPanelCount * 40) + CurrentMenu.Y + Statistics.Divider[i].Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Statistics.Divider[i].Width, Statistics.Divider[i].Height, 0, 0, 0, 255) + end + RageUI.StatisticPanelCount = RageUI.StatisticPanelCount + 1 + end + end +end + +function RageUI.StatisticPanelAdvanced(Text, Percent, RGBA1, Percent2, RGBA2, RGBA3, Index) + local CurrentMenu = RageUI.CurrentMenu + if CurrentMenu ~= nil then + if CurrentMenu() and (Index == nil or (CurrentMenu.Index == Index)) then + + RGBA1 = RGBA1 or { 255, 255, 255, 255 } + local BarWidth = Statistics.Bar.Width + CurrentMenu.WidthOffset * Statistics.Bar.OffsetRatio + + ---@type number + RenderRectangle(CurrentMenu.X, CurrentMenu.Y + Statistics.Background.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset + (RageUI.StatisticPanelCount * 42), Statistics.Background.Width + CurrentMenu.WidthOffset, Statistics.Background.Height, 0, 0, 0, 170) + RenderText(Text or "", CurrentMenu.X + 8.0, (RageUI.StatisticPanelCount * 40) + CurrentMenu.Y + Statistics.Text.Left.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, 0, Statistics.Text.Left.Scale, 245, 245, 245, 255, 0) + RenderRectangle(CurrentMenu.X + RageUI.Settings.Items.Title.Background.Width - BarWidth - Statistics.Bar.Right + CurrentMenu.WidthOffset, (RageUI.StatisticPanelCount * 40) + CurrentMenu.Y + Statistics.Bar.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, BarWidth, Statistics.Bar.Height, 87, 87, 87, 255) + RenderRectangle(CurrentMenu.X + RageUI.Settings.Items.Title.Background.Width - BarWidth - Statistics.Bar.Right + CurrentMenu.WidthOffset, (RageUI.StatisticPanelCount * 40) + CurrentMenu.Y + Statistics.Bar.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Percent * BarWidth, Statistics.Bar.Height, RGBA1[1], RGBA1[2], RGBA1[3], RGBA1[4]) + RGBA2 = RGBA2 or { 0, 153, 204, 255 } + RGBA3 = RGBA3 or { 185, 0, 0, 255 } + + if Percent2 and Percent2 > 0 then + local X = CurrentMenu.X + RageUI.Settings.Items.Title.Background.Width - BarWidth - Statistics.Bar.Right + CurrentMenu.WidthOffset + Percent * BarWidth + RenderRectangle(X, (RageUI.StatisticPanelCount * 40) + CurrentMenu.Y + Statistics.Bar.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Percent2 * BarWidth, Statistics.Bar.Height, RGBA2[1], RGBA2[2], RGBA2[3], RGBA2[4]) + elseif Percent2 and Percent2 < 0 then + local X = CurrentMenu.X + RageUI.Settings.Items.Title.Background.Width - BarWidth - Statistics.Bar.Right + CurrentMenu.WidthOffset + Percent * BarWidth + RenderRectangle(X, (RageUI.StatisticPanelCount * 40) + CurrentMenu.Y + Statistics.Bar.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Percent2 * BarWidth, Statistics.Bar.Height, RGBA3[1], RGBA3[2], RGBA3[3], RGBA3[4]) + end + + for i = 1, #Statistics.Divider, 1 do + RenderRectangle((CurrentMenu.X + RageUI.Settings.Items.Title.Background.Width - BarWidth - Statistics.Bar.Right) + i * ((BarWidth - (#Statistics.Divider / Statistics.Divider[i].Width)) / (#Statistics.Divider + 1)) + CurrentMenu.WidthOffset, (RageUI.StatisticPanelCount * 40) + CurrentMenu.Y + Statistics.Divider[i].Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Statistics.Divider[i].Width, Statistics.Divider[i].Height, 0, 0, 0, 255) + end + + RageUI.StatisticPanelCount = RageUI.StatisticPanelCount + 1 + end + end +end + diff --git a/resources/mth-K9/RageUI/menu/windows/UIHeritage.lua b/resources/mth-K9/RageUI/menu/windows/UIHeritage.lua new file mode 100644 index 000000000..03c914933 --- /dev/null +++ b/resources/mth-K9/RageUI/menu/windows/UIHeritage.lua @@ -0,0 +1,79 @@ +---@type table +local Heritage = { + Background = { Dictionary = "pause_menu_pages_char_mom_dad", Texture = "mumdadbg", Width = 433, Height = 228 }, + Mum = { Dictionary = "char_creator_portraits", X = 25, Width = 228, Height = 228 }, + Dad = { Dictionary = "char_creator_portraits", X = 195, Width = 228, Height = 228 }, +} + +---@type Window +function RageUI.Window.Heritage(Mum, Dad) + ---@type table + local CurrentMenu = RageUI.CurrentMenu; + if CurrentMenu ~= nil then + if CurrentMenu() then + -- if Mum < 0 or Mum > 21 then + -- Mum = 0 + -- end + -- if Dad < 0 or Dad > 23 then + -- Dad = 0 + -- end + Mum = Mum - 1 + Dad = Dad - 1 + -- print(Mum) + -- if Mum >= 21 and Mum <= 22 then + -- Mum = "special_female_" .. Mum + -- elseif Mum < 21 then + -- Mum = "female_" .. Mum + -- elseif Mum > 22 then + -- Mum = "male_" .. Mum + -- elseif Mum >= 43 then + -- Mum = "special_male_" .. Mum + -- end + + + if (Mum < 21) then + Mum = "male_" .. Mum; + elseif (Mum < 42) then + Mum = "female_" .. (Mum - 21); + elseif (Mum < 45) then + Mum = "special_male_" .. (Mum - 42); + else + Mum = "special_female_0"; + end + + if (Dad < 21) then + Dad = "male_" .. Dad ; + elseif (Dad < 42) then + Dad = "female_" .. (Dad - 21); + elseif (Dad < 45) then + Dad = "special_male_" .. (Dad - 42) ; + else + Dad = "special_female_0"; + end + + -- if Dad >= 21 then + -- Dad = "special_male_" .. (tonumber(string.sub(Dad, 2, 2)) - 1) + -- else + -- Dad = "male_" .. Dad + -- end + -- if (MuDadm < 21) then + -- textureName = "male_" + secondShapedId; + -- elseif (secondShapedId < 42) { + -- textureName = "female_" + (secondShapedId - 21); + -- elseif (secondShapedId < 45) { + -- textureName = "special_male_" + (secondShapedId - 42); + -- else + -- textureName = "special_female_0"; + -- end + + RenderSprite(Heritage.Background.Dictionary, Heritage.Background.Texture, CurrentMenu.X, + CurrentMenu.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, + Heritage.Background.Width + (CurrentMenu.WidthOffset / 1), Heritage.Background.Height) + RenderSprite(Heritage.Dad.Dictionary, Dad, CurrentMenu.X + Heritage.Dad.X + (CurrentMenu.WidthOffset / 2), + CurrentMenu.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Heritage.Dad.Width, Heritage.Dad.Height) + RenderSprite(Heritage.Mum.Dictionary, Mum, CurrentMenu.X + Heritage.Mum.X + (CurrentMenu.WidthOffset / 2), + CurrentMenu.Y + CurrentMenu.SubtitleHeight + RageUI.ItemOffset, Heritage.Mum.Width, Heritage.Mum.Height) + RageUI.ItemOffset = RageUI.ItemOffset + Heritage.Background.Height + end + end +end diff --git a/resources/mth-K9/RageUI/stream/RageUI_.ytd b/resources/mth-K9/RageUI/stream/RageUI_.ytd new file mode 100644 index 000000000..44e102a00 --- /dev/null +++ b/resources/mth-K9/RageUI/stream/RageUI_.ytd @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22784fca0d088a882a6b150121588d83b48f90aa9d9df7e32a542bc7fa273338 +size 1087 diff --git a/resources/mth-K9/client.lua b/resources/mth-K9/client.lua new file mode 100644 index 000000000..d90ab846d --- /dev/null +++ b/resources/mth-K9/client.lua @@ -0,0 +1,504 @@ +-- CONFIG -- + +local config_select = true -- true = select the target, false = auto target the player in front + +-- END OF CONFIG -- + +local dogBreeds = { 'Rottweiler', 'Husky', 'Retriever', 'Shepherd' } +local dogBHash = { 'a_c_rottweiler', 'a_c_husky', 'a_c_retriever', 'a_c_shepherd' } + +local k9 = nil +local k9Name = nil + +local blipk9 = nil + +local selectedDogIndex = 1 +local currentDogIndex = 1 + +local open = false +local main = RageUI.CreateMenu("K9 Manager", "Actions") +main.Closed = function() + open = false +end + +function openK9Menu() + if open then + open = false + RageUI.Visible(main, false) + return + else + open = true + RageUI.Visible(main, true) + Citizen.CreateThread(function() + while open do + RageUI.IsVisible(main, function() + if k9 == nil then + -- create a button to rename the dog + RageUI.Button("Dog's name", nil, { RightLabel = k9Name }, true, { + onSelected = function() + local result = KeyboardInput("Dog's name") + if result ~= nil then + k9Name = result + end + end, + }) + -- create a button to select the dog breed + RageUI.List("Dog breed", dogBreeds, selectedDogIndex, nil, {}, true, { + onListChange = function(Index) + selectedDogIndex = Index + currentDogIndex = Index + end, + }) + + RageUI.Button("Spawn the dog", nil, { RightLabel = "→" }, true, { + onSelected = function() + if k9Name == nil then + ShowNotification("You have to name your dog first!") + else + -- Spawning + RequestModel(GetHashKey(dogBHash[currentDogIndex])) + while not HasModelLoaded(GetHashKey(dogBHash[currentDogIndex])) do + Citizen.Wait(1) + end + + local pos = GetOffsetFromEntityInWorldCoords(PlayerPedId(), 0.0, 2.0, 0.0) + local heading = GetEntityHeading(GetPlayerPed(-1)) + local _, groundZ = GetGroundZFor_3dCoord(pos.x, pos.y, pos.z, false); + + k9 = CreatePed(28, GetHashKey(dogBHash[currentDogIndex]), pos.x, pos.y, groundZ + 1, heading, true, true) + + GiveWeaponToPed(k9, GetHashKey('WEAPON_ANIMAL'), true, true) + TaskSetBlockingOfNonTemporaryEvents(k9, true) + SetPedFleeAttributes(k9, 0, false) + SetPedCombatAttributes(k9, 3, true) + SetPedCombatAttributes(k9, 5, true) + SetPedCombatAttributes(k9, 46, true) + -- make it not attack the owner in any condition + SetPedAsGroupLeader(k9, GetPedGroupIndex(PlayerPedId())) + SetPedAsGroupMember(k9, GetPedGroupIndex(PlayerPedId())) + SetPedNeverLeavesGroup(k9, true) + + + blipk9 = AddBlipForEntity(k9) + SetBlipAsFriendly(blipk9, true) + SetBlipDisplay(blipk9, 2) + SetBlipShowCone(blipk9, true) + SetBlipAsShortRange(blipk9, false) + + BeginTextCommandSetBlipName("STRING") + AddTextComponentString(k9Name) + EndTextCommandSetBlipName(blipk9) + + Command_Follow(k9) + + end + end, + }) + + else + if IsPedDeadOrDying(k9, true) then + ShowNotification(k9Name .. " was killed!") + k9 = nil + k9Name = nil + RemoveBlip(blipk9) + blipk9 = nil + end + + RageUI.Button("Sit", nil, { RightLabel = "→" }, true, { + onSelected = function() + Command_Sit(k9) + end, + }) + + RageUI.Button("Follow / Call", nil, { RightLabel = "→" }, true, { + onSelected = function() + Command_Follow(k9) + end, + }) + + RageUI.Button("Don't move", nil, { RightLabel = "→" }, true, { + onSelected = function() + Command_Stay(k9) + end, + }) + + RageUI.Button("Bark", nil, { RightLabel = "→" }, true, { + onSelected = function() + Command_Bark(k9) + end, + }) + + RageUI.Button("Lay down", nil, { RightLabel = "→" }, true, { + onSelected = function() + Command_Lay(k9) + end, + }) + + RageUI.Button("Beg", nil, { RightLabel = "→" }, true, { + onSelected = function() + Command_beg(k9) + end, + }) + + RageUI.Button("Give paw", nil, { RightLabel = "→" }, true, { + onSelected = function() + Command_paw(k9) + end, + }) + + RageUI.Button("Attack", nil, { RightLabel = "→" }, true, { + onSelected = function() + if isAttacking then + isAttacking = false + ClearPedTasksImmediately(k9) + else + if config_select then + select_and_attackK9(k9) + else + attackK9(k9) + end + end + end, + }) + + RageUI.Button("Enter the car", nil, { RightLabel = "→" }, true, { + onSelected = function() + EnterVehicle(k9) + end, + }) + + RageUI.Button("Exit the car", nil, { RightLabel = "→" }, true, { + onSelected = function() + ExitVehicle(k9) + end, + }) + + RageUI.Button("Dismiss the dog", nil, { RightLabel = "→" }, true, { + onSelected = function() + DismissDog(k9) + end, + }) + end + end) + Wait(1) + end + end) + end +end + +Keys.Register('F9', 'F9', 'Menu K9', function() + openK9Menu() +end) + +local isAttacking = false +function attackK9(ped) + DetachEntity(ped) + + if IsPlayerFreeAiming(PlayerId()) then + local _, target = GetEntityPlayerIsFreeAimingAt(PlayerId()) + ClearPedTasks(ped) + if IsEntityAPed(target) and target ~= PlayerPedId() then + isAttacking = true + TaskCombatPed(ped, target, 0, 16) + CreateThread(function() + while isAttacking and not IsPedDeadOrDying(target, true) do + SetPedMoveRateOverride(ped, 1.25) + Citizen.Wait(0) + end + end) + end + else + local target = GetPedInFront() + ClearPedTasks(ped) + if IsEntityAPed(target) and target ~= PlayerPedId() then + isAttacking = true + TaskCombatPed(ped, target, 0, 16) + + CreateThread(function() + while isAttacking and not IsPedDeadOrDying(target, true) do + SetPedMoveRateOverride(ped, 1.25) + Citizen.Wait(0) + end + end) + end + end +end + +function select_and_attackK9(ped) + DetachEntity(ped) + local target = nil + + local player = GetAllPlayersInArea(GetEntityCoords(ped), 5.0) + for k, v in pairs(player) do + if v == PlayerId() then + table.remove(player, k) + end + end + + if player ~= nil then + if next(player) then + inChoice = true + StartChoicePlayerK9(player) + if selectedPlayer ~= nil then + target = GetPlayerPed(selectedPlayer) + end + end + else + ShowNotification("No player nearby") + end + + if target == nil then + ShowNotification("No player selected") + return + end + ClearPedTasks(ped) + + if IsEntityAPed(target) and target ~= PlayerPedId() then + isAttacking = true + TaskCombatPed(ped, target, 0, 16) + + CreateThread(function() + while isAttacking and not IsPedDeadOrDying(target, true) do + SetPedMoveRateOverride(ped, 1.25) + Citizen.Wait(0) + end + end) + end +end + +function Command_Sit(ped) + + ClearPedTasks(ped) + + RequestAnimDict("creatures@rottweiler@amb@world_dog_sitting@idle_a") + while not HasAnimDictLoaded("creatures@rottweiler@amb@world_dog_sitting@idle_a") do + Citizen.Wait(1) + end + TaskPlayAnim(ped, "creatures@rottweiler@amb@world_dog_sitting@idle_a", "idle_b", 8.0, -4.0, -1, 1, 0.0) + +end + +function Command_Stay(ped) + + ClearPedTasks(ped) + + RequestAnimDict("amb@lo_res_idles@") + while not HasAnimDictLoaded("amb@lo_res_idles@") do + Citizen.Wait(1) + end + TaskPlayAnim(ped, "amb@lo_res_idles@", "creatures_world_rottweiler_standing_lo_res_base", 8.0, -4.0, -1, 1, 0.0) + +end + +function Command_paw(ped) + + ClearPedTasks(ped) + + RequestAnimDict("creatures@rottweiler@tricks@") + while not HasAnimDictLoaded("creatures@rottweiler@tricks@") do + Citizen.Wait(1) + end + TaskPlayAnim(ped, "creatures@rottweiler@tricks@", "paw_right_loop", 8.0, -4.0, -1, 1, 0.0) + +end + +function Command_beg(ped) + + ClearPedTasks(ped) + + RequestAnimDict("creatures@rottweiler@tricks@") + while not HasAnimDictLoaded("creatures@rottweiler@tricks@") do + Citizen.Wait(1) + end + TaskPlayAnim(ped, "creatures@rottweiler@tricks@", "beg_loop", 8.0, -4.0, -1, 1, 0.0) + +end + +function Command_Follow(ped) + + ClearPedTasks(ped) + DetachEntity(ped) + + TaskFollowToOffsetOfEntity(ped, GetPlayerPed(-1), 0.5, 0.0, 0.0, 7.0, -1, 0.2, true) + +end + +function Command_Bark(ped) + + ClearPedTasks(ped) + + RequestAnimDict("creatures@rottweiler@amb@world_dog_barking@idle_a") + while not HasAnimDictLoaded("creatures@rottweiler@amb@world_dog_barking@idle_a") do + Citizen.Wait(1) + end + TaskPlayAnim(ped, "creatures@rottweiler@amb@world_dog_barking@idle_a", "idle_a", 8.0, -4.0, -1, 1, 0.0) + +end + +function Command_Lay(ped) + ClearPedTasks(ped) + + RequestAnimDict("creatures@rottweiler@amb@sleep_in_kennel@") + while not HasAnimDictLoaded("creatures@rottweiler@amb@sleep_in_kennel@") do + Citizen.Wait(1) + end + TaskPlayAnim(ped, "creatures@rottweiler@amb@sleep_in_kennel@", "sleep_in_kennel", 8.0, -4.0, -1, 1, 0.0) + +end + +function Command_StartTrack(dog, player) + + local target = GetPlayerPed(GetPlayerFromServerId(tonumber(player))) + + TaskFollowToOffsetOfEntity(dog, target, 0.5, 0.0, 0.0, 6.0, -1, 0.2, true) + +end + +function EnterVehicle(ped) + + if IsPedInAnyVehicle(PlayerPedId(), false) then + + ClearPedTasks(ped) + + local vehicle = GetVehiclePedIsIn(PlayerPedId(), false) + local vehHeading = GetEntityHeading(vehicle) + + TaskGoToEntity(ped, vehicle, -1, 0.5, 100, 1073741824, 0) + TaskAchieveHeading(ped, vehHeading, -1) + + RequestAnimDict("creatures@rottweiler@in_vehicle@van") + RequestAnimDict("creatures@rottweiler@amb@world_dog_sitting@base") + + while not HasAnimDictLoaded("creatures@rottweiler@in_vehicle@van") or + not HasAnimDictLoaded("creatures@rottweiler@amb@world_dog_sitting@base") do + Citizen.Wait(1) + end + + TaskPlayAnim(ped, "creatures@rottweiler@in_vehicle@van", "get_in", 8.0, -4.0, -1, 2, 0.0) + Citizen.Wait(700) + ClearPedTasks(ped) + AttachEntityToEntity(ped, vehicle, GetEntityBoneIndexByName(vehicle, "seat_pside_r"), 0.0, 0.0, 0.25) + TaskPlayAnim(ped, "creatures@rottweiler@amb@world_dog_sitting@base", "base", 8.0, -4.0, -1, 2, 0.0) + + else + ShowNotification("You have to be in a vehicle to do that!") + end + +end + +function ExitVehicle(ped) + + local vehicle = GetEntityAttachedTo(ped) + local vehPos = GetEntityCoords(vehicle) + local forwardX = GetEntityForwardVector(vehicle).x * 3.7 + local forwardY = GetEntityForwardVector(vehicle).y * 3.7 + local _, groundZ = GetGroundZFor_3dCoord(vehPos.x, vehPos.y, vehPos.z, 0) + + ClearPedTasks(ped) + DetachEntity(ped) + + SetEntityCoords(ped, vehPos.x - forwardX, vehPos.y - forwardY, groundZ) + + Command_Follow(ped) + +end + +function DismissDog(ped) + + ClearPedTasks(ped) + + DeletePed(ped) + + blipk9 = nil + k9 = nil + k9Name = nil + RemoveBlip(blipk9) + +end + +function GetPedInFront() + local player = PlayerId() + local plyPed = GetPlayerPed(player) + local plyPos = GetEntityCoords(plyPed, false) + local plyOffset = GetOffsetFromEntityInWorldCoords(plyPed, 0.0, 5.0, 0.0) + local rayHandle = StartShapeTestCapsule(plyPos.x, plyPos.y, plyPos.z, plyOffset.x, plyOffset.y, plyOffset.z, 1.0, 12 + , plyPed, 7) + local _, _, _, _, ped = GetShapeTestResult(rayHandle) + return ped +end + +function StartChoicePlayerK9(players) + selectedPlayer = nil + ShowNotification("Press ~g~E~s~ to confirm\nPress ~b~L~s~ to change target\nPress ~r~X~s~ to cancel") + local timer = GetGameTimer() + 10000 + while inChoice do + if next(players) then + local mCoors = GetEntityCoords(GetPlayerPed(players[1])) + DrawMarker(20, mCoors.x, mCoors.y, mCoors.z + 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.3, 0.3, 0.3, 255, 255, + 255, 120, 0, 1, 2, 0, nil, nil, 0) + if GetGameTimer() > timer then + ShowNotification("~r~Timeout was reached") + inChoice = false + return + elseif IsControlJustPressed(0, 51) then -- E + selectedPlayer = players[1] + inChoice = false + return + elseif IsControlJustPressed(0, 182) then -- L + table.remove(players, 1) + if next(players) then + timer = GetGameTimer() + 10000 + end + elseif IsControlJustPressed(0, 73) then -- X + ShowNotification("~r~You canceled the choice") + selectedPlayer = nil + inChoice = false + return + end + else + ShowNotification("~r~No players found") + selectedPlayer = nil + inChoice = false + return + end + Wait(0) + end +end + +function KeyboardInput(text) + local result = nil + AddTextEntry("CUSTOM_AMOUNT", text) + DisplayOnscreenKeyboard(1, "CUSTOM_AMOUNT", '', "", '', '', '', 255) + while UpdateOnscreenKeyboard() ~= 1 and UpdateOnscreenKeyboard() ~= 2 do + Wait(1) + end + if UpdateOnscreenKeyboard() ~= 2 then + result = GetOnscreenKeyboardResult() + Citizen.Wait(1) + else + Citizen.Wait(1) + end + return result +end + +function ShowNotification(text) + AddTextEntry('core:notif', text) + BeginTextCommandThefeedPost('core:notif') + AddTextComponentSubstringPlayerName(text) + EndTextCommandThefeedPostTicker(true, true) +end + +function GetAllPlayersInArea(coords, zone) + local playersInArea = {} + if zone == nil then + zone = 150.0 + end + for k, v in pairs(GetActivePlayers()) do + local pPed = GetPlayerPed(v) + local pCoords = GetEntityCoords(pPed) + if GetDistanceBetweenCoords(pCoords, coords, false) <= zone then + table.insert(playersInArea, v) + end + end + return playersInArea +end \ No newline at end of file diff --git a/resources/mth-K9/fxmanifest.lua b/resources/mth-K9/fxmanifest.lua new file mode 100644 index 000000000..ede3ff24a --- /dev/null +++ b/resources/mth-K9/fxmanifest.lua @@ -0,0 +1,20 @@ +fx_version 'adamant' +game 'gta5' + +name "mth-K9" +description "Menu to spawn and manage your K9" +author "Mathu_lmn" +version "1.0.1" + +client_scripts { + 'RageUI/RMenu.lua', + 'RageUI/menu/RageUI.lua', + 'RageUI/menu/Menu.lua', + 'RageUI/menu/MenuController.lua', + 'RageUI/components/*.lua', + 'RageUI/menu/elements/*.lua', + 'RageUI/menu/items/*.lua', + 'RageUI/menu/panels/*.lua', + 'RageUI/menu/windows/*.lua', + 'client.lua', +} \ No newline at end of file diff --git a/resources/noexplodingpumps/c.lua b/resources/noexplodingpumps/c.lua new file mode 100644 index 000000000..c85a25eaa --- /dev/null +++ b/resources/noexplodingpumps/c.lua @@ -0,0 +1,11 @@ +Citizen.CreateThread(function() + while true do + Citizen.Wait(0) + local playerCoords = GetEntityCoords(PlayerPedId()) + for k, v in pairs(Config.PumpModels) do + local entity = GetClosestObjectOfType(playerCoords, 10.0, v, false, false, false) + SetEntityInvincible(entity, true) + FreezeEntityPosition(entity, true) + end + end +end) \ No newline at end of file diff --git a/resources/noexplodingpumps/config.lua b/resources/noexplodingpumps/config.lua new file mode 100644 index 000000000..06f496141 --- /dev/null +++ b/resources/noexplodingpumps/config.lua @@ -0,0 +1,3 @@ +Config = { + PumpModels = {-2007231801, 1339433404, 1694452750, 1933174915, -462817101, -469694731, -164877493} +} \ No newline at end of file diff --git a/resources/noexplodingpumps/fxmanifest.lua b/resources/noexplodingpumps/fxmanifest.lua new file mode 100644 index 000000000..a549025fa --- /dev/null +++ b/resources/noexplodingpumps/fxmanifest.lua @@ -0,0 +1,6 @@ +shared_script '@WolfShield/WolfShield.lua' +fx_version 'cerulean' +game 'gta5' +shared_script 'config.lua' +client_script 'c.lua' +lua54 'yes' \ No newline at end of file diff --git a/server.cfg b/server.cfg index e1b979ba4..277338286 100644 --- a/server.cfg +++ b/server.cfg @@ -557,6 +557,17 @@ ensure //ensure gta_props_fivem //ensure carpack_floor +#[-----gnstudio-----] +ensure cfx_gn_bc_firestation +ensure cfx_gn_collection +ensure cfx_gn_scenario +ensure cfx_gn_sandy_mapdata +ensure +ensure + + + + #[-----Map Add-On For Events-----] //ensure SS-DragRaceEvent //ensure RedBull-AirRace