81 lines
1.9 KiB
Ucode
81 lines
1.9 KiB
Ucode
//=============================================================================
|
|
// KFGFxWidget_MapText
|
|
//=============================================================================
|
|
//
|
|
//=============================================================================
|
|
// Killing Floor 2
|
|
// Copyright (C) 2015 Tripwire Interactive LLC
|
|
//=============================================================================
|
|
|
|
class KFGFxWidget_MapText extends GFxObject;
|
|
|
|
var GFxObject mapTextField;
|
|
|
|
var KFPlayerController KFPC;
|
|
|
|
var transient float CurrentDisplayTime;
|
|
var transient float ControlTime;
|
|
|
|
struct MapStoredMessage
|
|
{
|
|
var string Text;
|
|
var float DisplayTime;
|
|
};
|
|
var array<MapStoredMessage> StoredMessageList;
|
|
|
|
function InitializeHUD()
|
|
{
|
|
KFPC = KFPlayerController(GetPC());
|
|
mapTextField = GetObject("mapText");
|
|
SetVisible(false);
|
|
}
|
|
|
|
function DisplayMapText(string MapText, float DisplayTime, bool bWaitForTheNextMessageToFinish)
|
|
{
|
|
Local MapStoredMessage StoredMessage;
|
|
|
|
if(mapTextField != none)
|
|
{
|
|
if(ControlTime > 0 && bWaitForTheNextMessageToFinish)
|
|
{
|
|
StoredMessage.Text = MapText;
|
|
StoredMessage.DisplayTime = DisplayTime;
|
|
StoredMessageList.AddItem(StoredMessage);
|
|
return;
|
|
}
|
|
ControlTime = DisplayTime;
|
|
CurrentDisplayTime = DisplayTime;
|
|
mapTextField.SetText(MapText);
|
|
SetVisible(true);
|
|
}
|
|
}
|
|
|
|
function TickHud(float DeltaTime)
|
|
{
|
|
if(ControlTime > 0)
|
|
{
|
|
ControlTime -= DeltaTime;
|
|
if(ControlTime <= 0)
|
|
{
|
|
HideMessage();
|
|
}
|
|
}
|
|
}
|
|
|
|
function HideMessage()
|
|
{
|
|
if(StoredMessageList.Length > 0)
|
|
{
|
|
ControlTime += StoredMessageList[0].DisplayTime;
|
|
CurrentDisplayTime = StoredMessageList[0].DisplayTime;
|
|
mapTextField.SetText(StoredMessageList[0].Text);
|
|
SetVisible(true);
|
|
StoredMessageList.Remove(0, 1);
|
|
return;
|
|
}
|
|
mapTextField.SetText("");
|
|
SetVisible(false);
|
|
}
|
|
|
|
DefaultProperties
|
|
{ } |