1
0

add short alias for mutator

This commit is contained in:
2023-12-31 23:13:28 +03:00
parent 469c8bbd96
commit 1f6de98e2f
3 changed files with 62 additions and 61 deletions

View File

@ -1,60 +1 @@
class CVCMut extends KFMutator;
var private CVC CVC;
public simulated function bool SafeDestroy()
{
return (bPendingDelete || bDeleteMe || Destroy());
}
public event PreBeginPlay()
{
Super.PreBeginPlay();
if (WorldInfo.NetMode == NM_Client) return;
foreach WorldInfo.DynamicActors(class'CVC', CVC)
{
break;
}
if (CVC == None)
{
CVC = WorldInfo.Spawn(class'CVC');
}
if (CVC == None)
{
`Log_Base("FATAL: Can't Spawn 'CVC'");
SafeDestroy();
}
}
public function AddMutator(Mutator Mut)
{
if (Mut == Self) return;
if (Mut.Class == Class)
CVCMut(Mut).SafeDestroy();
else
Super.AddMutator(Mut);
}
public function NotifyLogin(Controller C)
{
Super.NotifyLogin(C);
CVC.NotifyLogin(C);
}
public function NotifyLogout(Controller C)
{
Super.NotifyLogout(C);
CVC.NotifyLogout(C);
}
defaultproperties
{
GroupNames.Add("VoteCollector")
}
class CVCMut extends Mut; // backward compatibility

60
CVC/Classes/Mut.uc Normal file
View File

@ -0,0 +1,60 @@
class Mut extends KFMutator;
var private CVC CVC;
public simulated function bool SafeDestroy()
{
return (bPendingDelete || bDeleteMe || Destroy());
}
public event PreBeginPlay()
{
Super.PreBeginPlay();
if (WorldInfo.NetMode == NM_Client) return;
foreach WorldInfo.DynamicActors(class'CVC', CVC)
{
break;
}
if (CVC == None)
{
CVC = WorldInfo.Spawn(class'CVC');
}
if (CVC == None)
{
`Log_Base("FATAL: Can't Spawn 'CVC'");
SafeDestroy();
}
}
public function AddMutator(Mutator M)
{
if (M == Self) return;
if (M.Class == Class)
Mut(M).SafeDestroy();
else
Super.AddMutator(M);
}
public function NotifyLogin(Controller C)
{
Super.NotifyLogin(C);
CVC.NotifyLogin(C);
}
public function NotifyLogout(Controller C)
{
Super.NotifyLogout(C);
CVC.NotifyLogout(C);
}
defaultproperties
{
GroupNames.Add("VoteCollector")
}