Merge pull request #1 from GenZmeY/short-name

add short alias for mutator
This commit is contained in:
GenZmeY 2024-03-08 23:29:13 +03:00 committed by GitHub
commit d8e0d68a18
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 50 additions and 49 deletions

View File

@ -27,7 +27,7 @@ No. This mod is not whitelisted and will de-rank your server. Any XP gained will
[*]Subscribe to this mutator;
[*]Start KF2;
[*]Open console (~) and input:
[b]open KF-BioticsLab?Mutator=TRB.TRBMut[/b]
[b]open KF-BioticsLab?Mutator=TRB.Mut[/b]
(replace the map and add the parameters you need)
[*]<Enter>.
[/olist]
@ -42,7 +42,7 @@ No. This mod is not whitelisted and will de-rank your server. Any XP gained will
[*]Add the following string to the [b][OnlineSubsystemSteamworks.KFWorkshopSteamworks][/b] section (create one if it doesn't exist):
[b]ServerSubscribedWorkshopItems=3047331564[/b]
[*]Start the server and wait while the mutator is downloading;
[*]Add mutator to server start parameters: [b]?Mutator=TRB.TRBMut[/b] and restart the server.
[*]Add mutator to server start parameters: [b]?Mutator=TRB.Mut[/b] and restart the server.
[/olist]
[h1]Important setup information[/h1]

47
TRB/Classes/Mut.uc Normal file
View File

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

View File

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