diff --git a/scripts/zm/replaced/zgrief.csc b/scripts/zm/replaced/zgrief.csc index 37623889..692a7981 100644 --- a/scripts/zm/replaced/zgrief.csc +++ b/scripts/zm/replaced/zgrief.csc @@ -1,3 +1,5 @@ +#include clientscripts\mp\gametypes\zgrief; + onprecachegametype() { if (getdvar("mapname") == "zm_prison") @@ -13,4 +15,11 @@ onprecachegametype() level._effect["meat_stink_camera"] = loadfx("maps/zombie/fx_zmb_meat_stink_camera"); level._effect["meat_stink_torso"] = loadfx("maps/zombie/fx_zmb_meat_stink_torso"); + + registerclientfield("toplayer", "meat_stink", 1, 1, "int", ::meat_stink_cb, 0, 1); +} + +premain() +{ + // removed } \ No newline at end of file diff --git a/scripts/zm/replaced/zgrief.gsc b/scripts/zm/replaced/zgrief.gsc index 1be28885..f8b0d848 100644 --- a/scripts/zm/replaced/zgrief.gsc +++ b/scripts/zm/replaced/zgrief.gsc @@ -1,3 +1,4 @@ +#include maps\mp\gametypes_zm\zgrief; #include maps\mp\_utility; #include common_scripts\utility; #include maps\mp\zombies\_zm_utility; diff --git a/scripts/zm/replaced/zm_nuked.csc b/scripts/zm/replaced/zm_nuked.csc new file mode 100644 index 00000000..89f6ec20 --- /dev/null +++ b/scripts/zm/replaced/zm_nuked.csc @@ -0,0 +1,21 @@ +#include clientscripts\mp\zm_nuked; +#include clientscripts\mp\_utility; +#include clientscripts\mp\zombies\_zm_weapons; +#include clientscripts\mp\zombies\_zm_utility; +#include clientscripts\mp\zm_nuked_ffotd; +#include clientscripts\mp\zm_nuked_fx; +#include clientscripts\mp\zm_nuked_amb; +#include clientscripts\mp\zm_nuked_standard; +#include clientscripts\mp\zombies\_zm; +#include clientscripts\mp\_sticky_grenade; +#include clientscripts\mp\zombies\_zm_weap_cymbal_monkey; +#include clientscripts\mp\zombies\_zm_weap_tazer_knuckles; + +init_gamemodes() +{ + add_map_gamemode("zstandard", undefined, undefined); + add_map_gamemode("zgrief", undefined, undefined); + + add_map_location_gamemode("zstandard", "nuked", clientscripts\mp\zm_nuked_standard::precache, undefined, clientscripts\mp\zm_nuked_standard::main); + add_map_location_gamemode("zgrief", "nuked", clientscripts\mp\zm_nuked_standard::precache, undefined, clientscripts\mp\zm_nuked_standard::main); +} \ No newline at end of file diff --git a/scripts/zm/replaced/zm_nuked.gsc b/scripts/zm/replaced/zm_nuked.gsc new file mode 100644 index 00000000..5c2ae425 --- /dev/null +++ b/scripts/zm/replaced/zm_nuked.gsc @@ -0,0 +1,90 @@ +#include maps\mp\zm_nuked; +#include common_scripts\utility; +#include maps\mp\_utility; +#include maps\mp\zombies\_zm_utility; +#include maps\mp\zombies\_zm_weapons; +#include maps\mp\zm_nuked_gamemodes; +#include maps\mp\zm_nuked_ffotd; +#include maps\mp\zm_nuked_fx; +#include maps\mp\zombies\_zm; +#include maps\mp\animscripts\zm_death; +#include maps\mp\zombies\_load; +#include maps\mp\teams\_teamset_cdc; +#include maps\mp\gametypes_zm\_spawning; +#include maps\mp\zm_nuked_perks; +#include maps\mp\_sticky_grenade; +#include maps\mp\zombies\_zm_weap_tazer_knuckles; +#include maps\mp\zombies\_zm_weap_bowie; +#include maps\mp\zombies\_zm_weap_cymbal_monkey; +#include maps\mp\zombies\_zm_weap_claymore; +#include maps\mp\zombies\_zm_weap_ballistic_knife; +#include maps\mp\zombies\_zm_zonemgr; +#include maps\mp\zombies\_zm_net; +#include maps\mp\zombies\_zm_powerups; +#include maps\mp\zombies\_zm_laststand; +#include maps\mp\animscripts\zm_run; +#include maps\mp\zombies\_zm_score; +#include maps\mp\zombies\_zm_audio; +#include maps\mp\zombies\_zm_blockers; +#include maps\mp\zombies\_zm_sidequests; +#include maps\mp\_compass; + +give_team_characters() +{ + if (isdefined(level.hotjoin_player_setup) && [[level.hotjoin_player_setup]]("c_zom_suit_viewhands")) + return; + + self detachall(); + self set_player_is_female(0); + + if (isdefined(level.should_use_cia)) + { + if (level.should_use_cia) + { + self setmodel("c_zom_player_cia_fb"); + self setviewmodel("c_zom_suit_viewhands"); + self.characterindex = 0; + } + else + { + self setmodel("c_zom_player_cdc_fb"); + self setviewmodel("c_zom_hazmat_viewhands"); + self.characterindex = 1; + } + } + else + { + if (!isdefined(self.characterindex)) + { + self.characterindex = 1; + + if (self.team == "axis") + self.characterindex = 0; + } + + switch (self.characterindex) + { + case 0: + case 2: + self setmodel("c_zom_player_cia_fb"); + self.voice = "american"; + self.skeleton = "base"; + self setviewmodel("c_zom_suit_viewhands"); + self.characterindex = 0; + break; + + case 1: + case 3: + self setmodel("c_zom_player_cdc_fb"); + self.voice = "american"; + self.skeleton = "base"; + self setviewmodel("c_zom_hazmat_viewhands"); + self.characterindex = 1; + break; + } + } + + self setmovespeedscale(1); + self setsprintduration(4); + self setsprintcooldown(0); +} \ No newline at end of file diff --git a/scripts/zm/replaced/zm_nuked_gamemodes.gsc b/scripts/zm/replaced/zm_nuked_gamemodes.gsc new file mode 100644 index 00000000..62a33076 --- /dev/null +++ b/scripts/zm/replaced/zm_nuked_gamemodes.gsc @@ -0,0 +1,21 @@ +#include common_scripts\utility; +#include maps\mp\_utility; +#include maps\mp\zombies\_zm_utility; +#include maps\mp\zombies\_zm_game_module; +#include maps\mp\gametypes_zm\_zm_gametype; +#include maps\mp\zm_nuked; +#include maps\mp\zm_nuked_standard; + +init() +{ + add_map_gamemode("zstandard", maps\mp\zm_nuked::zstandard_preinit, undefined, undefined); + add_map_gamemode("zgrief", ::zgrief_preinit, undefined, undefined); + + add_map_location_gamemode("zstandard", "nuked", maps\mp\zm_nuked_standard::precache, maps\mp\zm_nuked_standard::main); + add_map_location_gamemode("zgrief", "nuked", maps\mp\zm_nuked_standard::precache, maps\mp\zm_nuked_standard::main); +} + +zgrief_preinit() +{ + registerclientfield("toplayer", "meat_stink", 1, 1, "int"); +} \ No newline at end of file diff --git a/scripts/zm/zgrief/zgrief_reimagined.csc b/scripts/zm/zgrief/zgrief_reimagined.csc index afc0d8db..16f4115e 100644 --- a/scripts/zm/zgrief/zgrief_reimagined.csc +++ b/scripts/zm/zgrief/zgrief_reimagined.csc @@ -4,4 +4,5 @@ main() { replaceFunc(clientscripts\mp\gametypes\zgrief::onprecachegametype, scripts\zm\replaced\zgrief::onprecachegametype); + replaceFunc(clientscripts\mp\gametypes\zgrief::premain, scripts\zm\replaced\zgrief::premain); } \ No newline at end of file diff --git a/scripts/zm/zm_nuked/zm_nuked_reimagined.csc b/scripts/zm/zm_nuked/zm_nuked_reimagined.csc new file mode 100644 index 00000000..13afe364 --- /dev/null +++ b/scripts/zm/zm_nuked/zm_nuked_reimagined.csc @@ -0,0 +1,7 @@ +#include clientscripts\mp\_utility; +#include clientscripts\mp\zombies\_zm_utility; + +main() +{ + replaceFunc(clientscripts\mp\zm_nuked::init_gamemodes, scripts\zm\replaced\zm_nuked::init_gamemodes); +} \ No newline at end of file diff --git a/scripts/zm/zm_nuked/zm_nuked_reimagined.gsc b/scripts/zm/zm_nuked/zm_nuked_reimagined.gsc index 739a68af..6cbee69c 100644 --- a/scripts/zm/zm_nuked/zm_nuked_reimagined.gsc +++ b/scripts/zm/zm_nuked/zm_nuked_reimagined.gsc @@ -4,6 +4,8 @@ main() { + replaceFunc(maps\mp\zm_nuked::give_team_characters, scripts\zm\replaced\zm_nuked::give_team_characters); + replaceFunc(maps\mp\zm_nuked_gamemodes::init, scripts\zm\replaced\zm_nuked_gamemodes::init); replaceFunc(maps\mp\zm_nuked_perks::init_nuked_perks, scripts\zm\replaced\zm_nuked_perks::init_nuked_perks); replaceFunc(maps\mp\zm_nuked_perks::perks_from_the_sky, scripts\zm\replaced\zm_nuked_perks::perks_from_the_sky); } diff --git a/zone_source/includes/clientscripts.zone b/zone_source/includes/clientscripts.zone index 2d91fa0f..3259b796 100644 --- a/zone_source/includes/clientscripts.zone +++ b/zone_source/includes/clientscripts.zone @@ -1,8 +1,10 @@ script,scripts/zm/_zm_reimagined.csc +script,scripts/zm/zm_nuked/zm_nuked_reimagined.csc script,scripts/zm/zm_buried/zm_buried_reimagined.csc script,scripts/zm/zm_prison/zm_prison_reimagined.csc script,scripts/zm/zgrief/zgrief_reimagined.csc script,scripts/zm/replaced/_zm.csc script,scripts/zm/replaced/_zm_weapons.csc +script,scripts/zm/replaced/zm_nuked.csc script,scripts/zm/replaced/zm_buried.csc script,scripts/zm/replaced/zgrief.csc \ No newline at end of file diff --git a/zone_source/includes/so_zencounter_zm_buried.zone b/zone_source/includes/so_zencounter_zm_buried.zone index ee839067..57403781 100644 --- a/zone_source/includes/so_zencounter_zm_buried.zone +++ b/zone_source/includes/so_zencounter_zm_buried.zone @@ -926,9 +926,55 @@ image,jun_art_plastic_tarp_n image,~~-gjun_art_plastic_tarp_c-rg~4b76f708 material,mc/mtl_p6_zm_bu_buildable_bench_tarp xmodel,p6_zm_bu_buildable_bench_tarp +material,gfx_fxt_smk_cigar_add +material,gfx_fxt_bio_fruit_fly +material,gfx_fxt_bio_insect_gen fx,maps/zombie/fx_zmb_meat_stink_camera fx,maps/zombie/fx_zmb_meat_stink_torso_os fx,maps/zombie/fx_zmb_meat_stink_torso +image,~~-gmtl_t6_wpn_zmb_meat_spc-r~1f27ef3d +image,mtl_t6_wpn_zmb_meat_nml +image,~-gmtl_t6_wpn_zmb_meat_col +material,mc/mtl_t6_wpn_zmb_meat +xmodel,t6_wpn_zmb_meat_view +xmodel,t6_wpn_zmb_meat_world +techniqueset,effect_7104842q +image,fxt_smk_trail +material,gfx_fxt_smk_trail_ds128 +material,gfx_fxt_light_flare_phosphorous_top +image,fxt_exp_ember_omni3 +material,gfx_fxt_exp_ember_omni3 +material,gfx_fxt_light_flare_star +fx,maps/zombie/fx_zmb_meat_trail +xanim,viewmodel_zomb_meat_idle +xanim,viewmodel_zomb_meat_fire +xanim,viewmodel_zomb_meat_hold_fire +xanim,viewmodel_zomb_meat_pullout +xanim,viewmodel_zomb_meat_putaway +xanim,viewmodel_zomb_head_pullout +xanim,viewmodel_zomb_meat_sprint_in +xanim,viewmodel_zomb_meat_sprint_loop +xanim,viewmodel_zomb_meat_sprint_out +xanim,viewmodel_zomb_meat_crawl_in +xanim,viewmodel_zomb_meat_crawl_forward +xanim,viewmodel_zomb_meat_crawl_back +xanim,viewmodel_zomb_meat_crawl_right +xanim,viewmodel_zomb_meat_crawl_left +xanim,viewmodel_zomb_meat_crawl_out +xanim,viewmodel_zomb_meat_d2p_in +xanim,viewmodel_zomb_meat_d2p_loop +xanim,viewmodel_zomb_meat_d2p_out +xanim,viewmodel_zomb_meat_ads_up +xanim,viewmodel_zomb_meat_ads_down +weapon,item_meat_zm +script,maps/mp/gametypes_zm/zgrief.gsc +script,maps/mp/gametypes_zm/zmeat.gsc +script,maps/mp/zombies/_zm_game_module_grief.gsc +script,maps/mp/zombies/_zm_game_module_meat.gsc +script,maps/mp/zombies/_zm_game_module_utility.gsc +script,maps/mp/zombies/_zm_game_module_meat_utility.gsc +script,clientscripts/mp/gametypes/zgrief.csc +script,clientscripts/mp/gametypes/zmeat.csc footsteptable,default_1st_person footsteptable,default_3rd_person footsteptable,default_1st_person_quiet