2023-05-12 23:33:32 +00:00
|
|
|
class CTIMut extends KFMutator;
|
|
|
|
|
|
|
|
var private CTI CTI;
|
|
|
|
|
|
|
|
public simulated function bool SafeDestroy()
|
|
|
|
{
|
|
|
|
return (bPendingDelete || bDeleteMe || Destroy());
|
|
|
|
}
|
|
|
|
|
|
|
|
public event PreBeginPlay()
|
|
|
|
{
|
|
|
|
Super.PreBeginPlay();
|
|
|
|
|
|
|
|
if (WorldInfo.NetMode == NM_Client) return;
|
|
|
|
|
|
|
|
foreach WorldInfo.DynamicActors(class'CTI', CTI)
|
|
|
|
{
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
|
|
|
|
if (CTI == None)
|
|
|
|
{
|
|
|
|
CTI = WorldInfo.Spawn(class'CTI');
|
|
|
|
}
|
|
|
|
|
|
|
|
if (CTI == None)
|
|
|
|
{
|
|
|
|
`Log_Base("FATAL: Can't Spawn 'CTI'");
|
|
|
|
SafeDestroy();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
public function AddMutator(Mutator Mut)
|
|
|
|
{
|
|
|
|
if (Mut == Self) return;
|
|
|
|
|
|
|
|
if (Mut.Class == Class)
|
2023-06-03 13:58:39 +00:00
|
|
|
CTIMut(Mut).SafeDestroy();
|
2023-05-12 23:33:32 +00:00
|
|
|
else
|
|
|
|
Super.AddMutator(Mut);
|
|
|
|
}
|
|
|
|
|
|
|
|
public function NotifyLogin(Controller C)
|
|
|
|
{
|
|
|
|
CTI.NotifyLogin(C);
|
|
|
|
|
|
|
|
Super.NotifyLogin(C);
|
|
|
|
}
|
|
|
|
|
|
|
|
public function NotifyLogout(Controller C)
|
|
|
|
{
|
|
|
|
CTI.NotifyLogout(C);
|
|
|
|
|
|
|
|
Super.NotifyLogout(C);
|
|
|
|
}
|
|
|
|
|
|
|
|
DefaultProperties
|
|
|
|
{
|
2023-06-03 13:58:39 +00:00
|
|
|
GroupNames.Add("TraderItems")
|
2022-07-05 13:09:48 +00:00
|
|
|
}
|