1
0
mirror of https://github.com/JezuzLizard/BO2-Reimagined.git synced 2025-06-09 06:39:23 -05:00

Containment: add HUD

This commit is contained in:
Jbleezy 2022-01-29 05:39:53 -08:00
parent 83013ec340
commit a4ed2e6ec4
2 changed files with 59 additions and 10 deletions

View File

@ -618,23 +618,25 @@ zone_hud()
flag_wait( "initial_blackscreen_passed" );
prev_zone = self get_zone_name();
zone_hud settext(prev_zone);
zone = self get_current_zone();
prev_zone_name = get_zone_display_name(zone);
zone_hud settext(prev_zone_name);
zone_hud.alpha = 1;
while (1)
{
zone = self get_zone_name();
zone = self get_current_zone();
zone_name = get_zone_display_name(zone);
if(prev_zone != zone)
if(prev_zone_name != zone_name)
{
prev_zone = zone;
prev_zone_name = zone_name;
zone_hud fadeovertime(0.25);
zone_hud.alpha = 0;
wait 0.25;
zone_hud settext(zone);
zone_hud settext(zone_name);
zone_hud fadeovertime(0.25);
zone_hud.alpha = 1;
@ -647,9 +649,8 @@ zone_hud()
}
}
get_zone_name()
get_zone_display_name(zone)
{
zone = self get_current_zone();
if (!isDefined(zone))
{
return "";

View File

@ -1947,6 +1947,34 @@ containment_init()
{
level.containment_time = 60;
level.containment_zone_hud = newHudElem();
level.containment_zone_hud.alignx = "left";
level.containment_zone_hud.aligny = "top";
level.containment_zone_hud.horzalign = "user_left";
level.containment_zone_hud.vertalign = "user_top";
level.containment_zone_hud.x += 7;
level.containment_zone_hud.y += 2;
level.containment_zone_hud.fontscale = 1.4;
level.containment_zone_hud.alpha = 0;
level.containment_zone_hud.color = (1, 1, 1);
level.containment_zone_hud.hidewheninmenu = 1;
level.containment_zone_hud.foreground = 1;
level.containment_zone_hud.label = &"Containment Zone: ";
level.containment_time_hud = newHudElem();
level.containment_time_hud.alignx = "left";
level.containment_time_hud.aligny = "top";
level.containment_time_hud.horzalign = "user_left";
level.containment_time_hud.vertalign = "user_top";
level.containment_time_hud.x += 7;
level.containment_time_hud.y += 17;
level.containment_time_hud.fontscale = 1.4;
level.containment_time_hud.alpha = 0;
level.containment_time_hud.color = (1, 1, 1);
level.containment_time_hud.hidewheninmenu = 1;
level.containment_time_hud.foreground = 1;
level.containment_time_hud.label = &"Containment Time: ";
level.containment_waypoint = [];
level.containment_waypoint["axis"] = newTeamHudElem("axis");
level.containment_waypoint["axis"].alpha = 0;
@ -1962,7 +1990,8 @@ containment_init()
level.containment_waypoint["allies"].fadewhentargeted = 1;
level.containment_waypoint["allies"].foreground = 1;
level.containment_waypoint["allies"] setWaypoint(1, "waypoint_revive");
level thread containment_waypoint_destroy_on_end_game();
level thread containment_hud_destroy_on_end_game();
level.containment_zones = [];
if(level.script == "zm_transit")
@ -1978,18 +2007,30 @@ containment_init()
level thread containment_think();
}
containment_waypoint_destroy_on_end_game()
containment_hud_destroy_on_end_game()
{
level waittill("end_game");
level.containment_zone_hud setText("");
level.containment_time_hud setText("");
level.containment_waypoint["axis"] destroy();
level.containment_waypoint["allies"] destroy();
level waittill("intermission");
level.containment_zone_hud destroy();
level.containment_time_hud destroy();
}
containment_think()
{
level endon("end_game");
flag_wait("initial_blackscreen_passed");
level.containment_zone_hud.alpha = 1;
level.containment_time_hud.alpha = 1;
level waittill("restart_round_start");
wait 10;
@ -1998,8 +2039,12 @@ containment_think()
while(1)
{
zone_name = level.containment_zones[i];
zone_display_name = scripts/zm/_zm_reimagined::get_zone_display_name(zone_name);
zone = level.zones[zone_name];
level.containment_zone_hud setText(zone_display_name);
level.containment_time_hud setTimer(level.containment_time);
level.containment_waypoint["axis"].x = zone.volumes[0].origin[0];
level.containment_waypoint["axis"].y = zone.volumes[0].origin[1];
level.containment_waypoint["axis"].z = zone.volumes[0].origin[2];
@ -2078,6 +2123,9 @@ containment_think()
wait 0.05;
}
level.containment_zone_hud setText("");
level.containment_time_hud setText("");
level.containment_waypoint["axis"].alpha = 0;
level.containment_waypoint["allies"].alpha = 0;