mirror of
https://github.com/JezuzLizard/BO2-Reimagined.git
synced 2025-06-07 13:49:33 -05:00
HUD: convert quest timer to LUI
This commit is contained in:
parent
2af0555495
commit
4603170230
@ -196,11 +196,14 @@ precache_strings()
|
||||
precacheString(&"hud_update_round_total_timer");
|
||||
precacheString(&"hud_update_health_bar");
|
||||
precacheString(&"hud_update_zone_name");
|
||||
precacheString(&"hud_update_quest_timer");
|
||||
|
||||
precacheString(&"hud_fade_out_zone_name");
|
||||
precacheString(&"hud_fade_in_zone_name");
|
||||
precacheString(&"hud_fade_out_round_total_timer");
|
||||
precacheString(&"hud_fade_in_round_total_timer");
|
||||
precacheString(&"hud_fade_out_quest_timer");
|
||||
precacheString(&"hud_fade_in_quest_timer");
|
||||
|
||||
foreach (zone_name in level.zone_keys)
|
||||
{
|
||||
@ -761,6 +764,13 @@ lui_notify_events()
|
||||
if (isdefined(level.round_total_timer_hud_value))
|
||||
{
|
||||
self luinotifyevent(&"hud_update_round_total_timer", 1, level.round_total_timer_hud_value);
|
||||
self luinotifyevent(&"hud_fade_in_round_total_timer");
|
||||
}
|
||||
|
||||
if (isdefined(level.quest_timer_hud_value))
|
||||
{
|
||||
self luinotifyevent(&"hud_update_quest_timer", 1, level.quest_timer_hud_value);
|
||||
self luinotifyevent(&"hud_fade_in_quest_timer");
|
||||
}
|
||||
}
|
||||
|
||||
@ -971,43 +981,6 @@ round_total_timer_hud()
|
||||
}
|
||||
}
|
||||
|
||||
set_time_frozen(time, endon_notify)
|
||||
{
|
||||
if (isDefined(endon_notify))
|
||||
{
|
||||
level endon(endon_notify);
|
||||
}
|
||||
else if (getDvar("g_gametype") == "zgrief")
|
||||
{
|
||||
level endon("restart_round_start");
|
||||
}
|
||||
else
|
||||
{
|
||||
level endon("start_of_round");
|
||||
}
|
||||
|
||||
self endon("death");
|
||||
|
||||
if (time != 0)
|
||||
{
|
||||
time -= 0.5; // need to set it below the number or it shows the next number
|
||||
}
|
||||
|
||||
while (1)
|
||||
{
|
||||
if (time == 0)
|
||||
{
|
||||
self setTimerUp(time);
|
||||
}
|
||||
else
|
||||
{
|
||||
self setTimer(time);
|
||||
}
|
||||
|
||||
wait 0.5;
|
||||
}
|
||||
}
|
||||
|
||||
health_bar_hud()
|
||||
{
|
||||
level endon("intermission");
|
||||
|
@ -164,38 +164,24 @@ sq_get_time_for_song(song)
|
||||
|
||||
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";
|
||||
level.quest_timer_hud_value = level.total_timer_hud_value;
|
||||
|
||||
hud endon("death");
|
||||
players = get_players();
|
||||
|
||||
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");
|
||||
foreach (player in players)
|
||||
{
|
||||
player luinotifyevent(&"hud_update_quest_timer", 1, level.quest_timer_hud_value);
|
||||
player luinotifyevent(&"hud_fade_in_quest_timer", 1, 500);
|
||||
}
|
||||
|
||||
wait 10;
|
||||
|
||||
hud fadeOverTime(fade_time);
|
||||
hud.alpha = 0;
|
||||
level.quest_timer_hud_value = undefined;
|
||||
|
||||
wait fade_time;
|
||||
players = get_players();
|
||||
|
||||
hud destroy();
|
||||
foreach (player in players)
|
||||
{
|
||||
player luinotifyevent(&"hud_fade_out_quest_timer", 1, 500);
|
||||
}
|
||||
}
|
@ -69,6 +69,7 @@ LUI.createMenu.ReimaginedArea = function(LocalClientIndex)
|
||||
roundTotalTimerText:setTopBottom(true, false, 0 + 46, CoD.textSize.Default + 46)
|
||||
roundTotalTimerText:setFont(CoD.fonts.Big)
|
||||
roundTotalTimerText:setAlignment(LUI.Alignment.Right)
|
||||
roundTotalTimerText:setAlpha(0)
|
||||
roundTotalTimerText:registerAnimationState("fade_out", {
|
||||
alpha = 0,
|
||||
})
|
||||
@ -211,6 +212,50 @@ LUI.createMenu.ReimaginedArea = function(LocalClientIndex)
|
||||
zoneNameWidget:registerEventHandler("hud_fade_out_zone_name", CoD.Reimagined.ZoneNameArea.FadeOutZoneName)
|
||||
zoneNameWidget:registerEventHandler("hud_fade_in_zone_name", CoD.Reimagined.ZoneNameArea.FadeInZoneName)
|
||||
|
||||
local x = 0
|
||||
local y = -200
|
||||
|
||||
local questTimerWidget = LUI.UIElement.new()
|
||||
questTimerWidget:setLeftRight(true, true, x, x)
|
||||
questTimerWidget:setTopBottom(false, false, y, y)
|
||||
questTimerWidget:setAlpha(0)
|
||||
safeArea:addElement(questTimerWidget)
|
||||
|
||||
local questTimerText = LUI.UIText.new()
|
||||
questTimerText:setLeftRight(true, true, 0, 0)
|
||||
questTimerText:setTopBottom(false, false, 0, CoD.textSize.Default)
|
||||
questTimerText:setFont(CoD.fonts.Big)
|
||||
questTimerText:setAlignment(LUI.Alignment.Center)
|
||||
questTimerText:setAlpha(0)
|
||||
questTimerText:registerAnimationState("fade_out", {
|
||||
alpha = 0,
|
||||
})
|
||||
questTimerText:registerAnimationState("fade_in", {
|
||||
alpha = 1,
|
||||
})
|
||||
questTimerWidget:addElement(questTimerText)
|
||||
questTimerWidget.questTimerText = questTimerText
|
||||
|
||||
questTimerWidget:registerEventHandler("hud_update_refresh", CoD.Reimagined.QuestTimerArea.UpdateVisibility)
|
||||
questTimerWidget:registerEventHandler("hud_update_bit_" .. CoD.BIT_HUD_VISIBLE, CoD.Reimagined.QuestTimerArea.UpdateVisibility)
|
||||
questTimerWidget:registerEventHandler("hud_update_bit_" .. CoD.BIT_EMP_ACTIVE, CoD.Reimagined.QuestTimerArea.UpdateVisibility)
|
||||
questTimerWidget:registerEventHandler("hud_update_bit_" .. CoD.BIT_DEMO_CAMERA_MODE_MOVIECAM, CoD.Reimagined.QuestTimerArea.UpdateVisibility)
|
||||
questTimerWidget:registerEventHandler("hud_update_bit_" .. CoD.BIT_DEMO_ALL_GAME_HUD_HIDDEN, CoD.Reimagined.QuestTimerArea.UpdateVisibility)
|
||||
questTimerWidget:registerEventHandler("hud_update_bit_" .. CoD.BIT_IN_VEHICLE, CoD.Reimagined.QuestTimerArea.UpdateVisibility)
|
||||
questTimerWidget:registerEventHandler("hud_update_bit_" .. CoD.BIT_IN_GUIDED_MISSILE, CoD.Reimagined.QuestTimerArea.UpdateVisibility)
|
||||
questTimerWidget:registerEventHandler("hud_update_bit_" .. CoD.BIT_IN_REMOTE_KILLSTREAK_STATIC, CoD.Reimagined.QuestTimerArea.UpdateVisibility)
|
||||
questTimerWidget:registerEventHandler("hud_update_bit_" .. CoD.BIT_AMMO_COUNTER_HIDE, CoD.Reimagined.QuestTimerArea.UpdateVisibility)
|
||||
questTimerWidget:registerEventHandler("hud_update_bit_" .. CoD.BIT_IS_FLASH_BANGED, CoD.Reimagined.QuestTimerArea.UpdateVisibility)
|
||||
questTimerWidget:registerEventHandler("hud_update_bit_" .. CoD.BIT_UI_ACTIVE, CoD.Reimagined.QuestTimerArea.UpdateVisibility)
|
||||
questTimerWidget:registerEventHandler("hud_update_bit_" .. CoD.BIT_SPECTATING_CLIENT, CoD.Reimagined.QuestTimerArea.UpdateVisibility)
|
||||
questTimerWidget:registerEventHandler("hud_update_bit_" .. CoD.BIT_SCOREBOARD_OPEN, CoD.Reimagined.QuestTimerArea.UpdateVisibility)
|
||||
questTimerWidget:registerEventHandler("hud_update_bit_" .. CoD.BIT_PLAYER_DEAD, CoD.Reimagined.QuestTimerArea.UpdateVisibility)
|
||||
questTimerWidget:registerEventHandler("hud_update_bit_" .. CoD.BIT_IS_SCOPED, CoD.Reimagined.QuestTimerArea.UpdateVisibility)
|
||||
questTimerWidget:registerEventHandler("hud_update_bit_" .. CoD.BIT_IS_PLAYER_ZOMBIE, CoD.Reimagined.QuestTimerArea.UpdateVisibility)
|
||||
questTimerWidget:registerEventHandler("hud_update_quest_timer", CoD.Reimagined.QuestTimerArea.UpdateQuestTimer)
|
||||
questTimerWidget:registerEventHandler("hud_fade_out_quest_timer", CoD.Reimagined.QuestTimerArea.FadeOutQuestTimer)
|
||||
questTimerWidget:registerEventHandler("hud_fade_in_quest_timer", CoD.Reimagined.QuestTimerArea.FadeInQuestTimer)
|
||||
|
||||
return safeArea
|
||||
end
|
||||
|
||||
@ -363,6 +408,43 @@ CoD.Reimagined.ZoneNameArea.FadeInZoneName = function(Menu, ClientInstance)
|
||||
end
|
||||
end
|
||||
|
||||
CoD.Reimagined.QuestTimerArea = {}
|
||||
CoD.Reimagined.QuestTimerArea.UpdateVisibility = function(Menu, ClientInstance)
|
||||
local controller = ClientInstance.controller
|
||||
if UIExpression.IsVisibilityBitSet(controller, CoD.BIT_HUD_VISIBLE) == 1 and UIExpression.IsVisibilityBitSet(controller, CoD.BIT_EMP_ACTIVE) == 0 and UIExpression.IsVisibilityBitSet(controller, CoD.BIT_DEMO_CAMERA_MODE_MOVIECAM) == 0 and UIExpression.IsVisibilityBitSet(controller, CoD.BIT_DEMO_ALL_GAME_HUD_HIDDEN) == 0 and UIExpression.IsVisibilityBitSet(controller, CoD.BIT_IN_VEHICLE) == 0 and UIExpression.IsVisibilityBitSet(controller, CoD.BIT_IN_GUIDED_MISSILE) == 0 and UIExpression.IsVisibilityBitSet(controller, CoD.BIT_IN_REMOTE_KILLSTREAK_STATIC) == 0 and UIExpression.IsVisibilityBitSet(controller, CoD.BIT_AMMO_COUNTER_HIDE) == 0 and UIExpression.IsVisibilityBitSet(controller, CoD.BIT_IS_FLASH_BANGED) == 0 and (UIExpression.IsVisibilityBitSet(controller, CoD.BIT_UI_ACTIVE) == 0 or UIExpression.IsVisibilityBitSet(controller, CoD.BIT_SCOREBOARD_OPEN) == 1) and UIExpression.IsVisibilityBitSet(controller, CoD.BIT_IN_KILLCAM) == 0 and UIExpression.IsVisibilityBitSet(controller, CoD.BIT_IS_SCOPED) == 0 and UIExpression.IsVisibilityBitSet(controller, CoD.BIT_IS_PLAYER_ZOMBIE) == 0 and (not CoD.IsShoutcaster(controller) or CoD.ExeProfileVarBool(controller, "shoutcaster_scorestreaks") and Engine.IsSpectatingActiveClient(controller)) and CoD.FSM_VISIBILITY(controller) == 0 then
|
||||
if Menu.visible ~= true then
|
||||
Menu:setAlpha(1)
|
||||
Menu.visible = true
|
||||
end
|
||||
elseif Menu.visible == true then
|
||||
Menu:setAlpha(0)
|
||||
Menu.visible = nil
|
||||
end
|
||||
end
|
||||
|
||||
CoD.Reimagined.QuestTimerArea.UpdateQuestTimer = function(Menu, ClientInstance)
|
||||
local timeNum = ClientInstance.data[1]
|
||||
local time = CoD.Reimagined.ConvertNumToTime(timeNum)
|
||||
|
||||
Menu.questTimerText:setText(Engine.Localize("ZOMBIE_HUD_QUEST_COMPLETE_TIME") .. time)
|
||||
end
|
||||
|
||||
CoD.Reimagined.QuestTimerArea.FadeOutQuestTimer = function(Menu, ClientInstance)
|
||||
if ClientInstance.data ~= nil then
|
||||
Menu.questTimerText:animateToState("fade_out", ClientInstance.data[1])
|
||||
else
|
||||
Menu.questTimerText:animateToState("fade_out")
|
||||
end
|
||||
end
|
||||
|
||||
CoD.Reimagined.QuestTimerArea.FadeInQuestTimer = function(Menu, ClientInstance)
|
||||
if ClientInstance.data ~= nil then
|
||||
Menu.questTimerText:animateToState("fade_in", ClientInstance.data[1])
|
||||
else
|
||||
Menu.questTimerText:animateToState("fade_in")
|
||||
end
|
||||
end
|
||||
|
||||
CoD.Reimagined.ConvertNumToTime = function(num)
|
||||
local time = ""
|
||||
local hrs = 0
|
||||
|
Loading…
x
Reference in New Issue
Block a user