1
0
mirror of https://github.com/JezuzLizard/BO2-Reimagined.git synced 2025-06-10 07:08:06 -05:00
Files
BO2-Reimagined/scripts/zm/replaced/_zm_sq.gsc
2023-12-25 03:31:27 -08:00

116 lines
2.5 KiB
Plaintext

#include common_scripts\utility;
#include maps\mp\_utility;
#include maps\mp\zombies\_zm_utility;
navcomputer_waitfor_navcard()
{
trig_pos = getstruct("sq_common_key", "targetname");
navcomputer_use_trig = spawn("trigger_radius_use", trig_pos.origin, 0, 48, 48);
navcomputer_use_trig.cost = 100000;
navcomputer_use_trig setcursorhint("HINT_NOICON");
navcomputer_use_trig sethintstring(&"ZOMBIE_NAVCARD_USE", navcomputer_use_trig.cost);
navcomputer_use_trig triggerignoreteam();
while (true)
{
navcomputer_use_trig waittill("trigger", who);
if (isplayer(who) && is_player_valid(who))
{
if (who.score >= navcomputer_use_trig.cost)
{
who maps\mp\zombies\_zm_score::minus_to_player_score(navcomputer_use_trig.cost);
navcomputer_use_trig sethintstring(&"ZOMBIE_NAVCARD_SUCCESS");
navcomputer_use_trig playsound("zmb_sq_navcard_success");
players = get_players();
foreach (player in players)
{
player freezecontrols(1);
}
level notify("end_game");
return;
}
else
{
navcomputer_use_trig playsound("zmb_sq_navcard_fail");
}
}
}
}
sq_give_player_all_perks()
{
perks = [];
if (isDefined(level._random_perk_machine_perk_list))
{
perks = array_randomize(level._random_perk_machine_perk_list);
}
else
{
machines = array_randomize(getentarray("zombie_vending", "targetname"));
for (i = 0; i < machines.size; i++)
{
if (machines[i].script_noteworthy == "specialty_weapupgrade")
continue;
perks[perks.size] = machines[i].script_noteworthy;
}
}
foreach (perk in perks)
{
if (isdefined(self.perk_purchased) && self.perk_purchased == perk)
continue;
if (self hasperk(perk) || self maps\mp\zombies\_zm_perks::has_perk_paused(perk))
continue;
self maps\mp\zombies\_zm_perks::give_perk(perk, 0);
wait 0.25;
}
}
sq_complete_time_hud()
{
hud = newHudElem();
hud.alignx = "center";
hud.aligny = "top";
hud.horzalign = "user_center";
hud.vertalign = "user_top";
hud.y += 100;
hud.fontscale = 1.4;
hud.alpha = 0;
hud.color = (1, 1, 1);
hud.hidewheninmenu = 1;
hud.foreground = 1;
hud.label = &"ZOMBIE_HUD_QUEST_COMPLETE_TIME";
hud endon("death");
hud thread scripts\zm\_zm_reimagined::destroy_on_intermission();
fade_time = 0.5;
hud fadeOverTime(fade_time);
hud.alpha = 1;
time = int((getTime() - level.timer_hud_start_time) / 1000);
hud thread scripts\zm\_zm_reimagined::set_time_frozen(time, "forever");
wait 10;
hud fadeOverTime(fade_time);
hud.alpha = 0;
wait fade_time;
hud destroy();
}