1
0
KF2-Dev-Scripts/KFGameContent/Classes/KFSeqAct_ProgressSeasonalObjective.uc
2020-12-13 18:09:05 +03:00

56 lines
1.7 KiB
Ucode

//=============================================================================
// KFSeqAct_ProgressSeasonalObjective
//=============================================================================
// Sequence action to allow a map to have add progress to seasonal objectives
//=============================================================================
// Killing Floor 2
// Copyright (C) 2020 Tripwire Interactive LLC
//=============================================================================
class KFSeqAct_ProgressSeasonalObjective extends SequenceAction;
/** Objective index for the event this is tied to */
var() int ObjectiveIndex;
/** Index of the event this is tied to */
var() int EventIndex;
/** Increment progress for all players? */
var() bool bAllPlayersAffected;
event Activated()
{
local KFPlayercontroller KFPC;
local bool bIsObjectiveDataValid;
bIsObjectiveDataValid = ObjectiveIndex >= 0 && ObjectiveIndex < 5 && EventIndex > SEI_None && EventIndex < SEI_MAX;
if (bAllPlayersAffected)
{
foreach GetWorldInfo().AllControllers(class'KFPlayerController', KFPC)
{
if(bIsObjectiveDataValid)
{
KFPC.ClientOnTryCompleteObjective(ObjectiveIndex, EventIndex);
}
}
}
else
{
KFPC = KFPlayerController(GetWorldInfo().GetALocalPlayerController());
if(bIsObjectiveDataValid)
{
KFPC.ClientOnTryCompleteObjective(ObjectiveIndex, EventIndex);
}
}
}
defaultproperties
{
ObjName="Progress Seasonal Objective"
ObjCategory="Killing Floor"
ObjectiveIndex=-1
EventIndex=-1
bAllPlayersAffected=true
}