1
0
KF2-Dev-Scripts/KFGame/Classes/KFInterface_MapObjective.uc
2020-12-13 18:01:13 +03:00

59 lines
2.5 KiB
Ucode

//=============================================================================
// KFInterface_MapObjective
//=============================================================================
// Interface common to any type of map objective.
//=============================================================================
// Killing Floor 2
// Copyright (C) 2017 Tripwire Interactive LLC
// - Dan Weiss
//=============================================================================
interface KFInterface_MapObjective;
// Status
simulated function ActivateObjective();
simulated function DeactivateObjective();
simulated function GrantReward(KFPlayerReplicationInfo KFPRI, KFPlayerController KFPC);
simulated function bool IsActive();
simulated function bool UsesProgress();
simulated function int GetDoshReward();
simulated function int GetMaxDoshReward();
simulated function int GetVoshReward();
simulated function int GetMaxVoshReward();
simulated function int GetXPReward();
simulated function int GetMaxXPReward();
simulated function bool IsBonus();
function string GetLocalizedName();
function string GetLocalizedShortName();
function bool CanActivateObjective();
simulated function float GetProgress();
simulated function bool IsComplete();
simulated function bool HasFailedObjective();
simulated function float GetActivationPctChance();
simulated function float GetSpawnRateMod();
simulated function string GetProgressText();
simulated function bool GetProgressTextIsDosh();
simulated function string GetLocalizedDescription();
simulated function string GetLocalizedShortDescription();
simulated function string GetLocalizedRequirements();
simulated function GetLocalizedStatus(out string statusMessage, out int bWarning, out int bNotification);
simulated function bool GetIsMissionCritical();
simulated function float GetDoshValueModifier();
function NotifyZedKilled(Controller Killer, Pawn KilledPawn, bool bIsBoss);
simulated function NotifyObjectiveSelected();
// HUD
simulated function bool ShouldDrawIcon();
simulated function Vector GetIconLocation();
simulated function Texture2D GetIcon();
simulated function color GetIconColor();
simulated function DrawHUD(KFHUDBase hud, Canvas drawCanvas);
simulated function bool HasObjectiveDrawDistance();
simulated function bool ShouldShowObjectiveHUD();
simulated function bool ShouldShowObjectiveContainer();
// Kismet
simulated function TriggerObjectiveProgressEvent(optional int EventType = -1, optional float ProgressMade = -1.f);