rott/kf_sources/AdminPlus_v4/Classes/Helper.uc
2026-07-14 20:27:09 +07:00

279 lines
23 KiB
Ucode
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

class Helper extends Info
abstract;
// colors and tags, maybe later I will convert this to a config array
struct ColorRecord
{
var string ColorName; // color name, for comfort
var string ColorTag; // color tag
var Color Color; // RGBA values
};
var array<ColorRecord> ColorList; // color list
var array<string> SilentAdmin; // hardcoded silent admins
var array<string> MasterAdmin; // hardcoded Master admins, only 1-3 people should really be on here at most
var array<string> TagsToRemove; // list of unnesesary tags to remove
var array<string> MsgHelp; // help messages
var array<string> MsgSHelp; // sneaky cmd list
var array<string> MsgZeds; // 'admin zed' related messages
var array<string> MsgRage; // 'admin rage' related messages
// help list for zed spawning
static function TellAbout(PlayerController pc, UltraAdmin Admin, string whatToTell)
{
local int i;
local array<string> StrTemp;
switch(whatToTell)
{
case "MsgHelp":
StrTemp = default.MsgHelp;
break;
case "sHelp":
StrTemp = default.MsgSHelp;
break;
case "MsgZeds":
StrTemp = default.MsgZeds;
break;
case "MsgRage":
StrTemp = default.MsgRage;
break;
default:
// fallback warning
StrTemp[0] = "%rADMIN PLUS HELPER: We shouldn't get to this so this means you used WRONG modifier!";
}
for(i = 0; i < StrTemp.Length; i++)
{
Admin.SendMessage(pc, StrTemp[i],false);
}
}
// converts color tags to colors
static function string ParseTags(string input)
{
local int i;
local array<ColorRecord> Temp;
local string strTemp;
Temp = default.ColorList;
for(i=0; i<Temp.Length; i++)
{
strTemp = class'GameInfo'.Static.MakeColorCode(Temp[i].Color);
ReplaceText(input, Temp[i].ColorTag, strTemp);
}
return input;
}
// removes color tags
static function string StripTags(string input)
{
local int i;
for(i=0; i<default.TagsToRemove.Length; i++)
{
ReplaceText(input, default.TagsToRemove[i], "");
}
return input;
}
// removes colors from a string
static function string StripColor(string s)
{
local int p;
p = InStr(s,chr(27));
while ( p>=0 )
{
s = left(s,p)$mid(S,p+4);
p = InStr(s,Chr(27));
}
return s;
}
static function string ParsePlayerName(PlayerController pc)
{
if(pc != none || pc.playerReplicationInfo != none)
return "%b" $ StripTags(pc.playerReplicationInfo.PlayerName) $ "%w";
}
static function bool CheckSilent(playercontroller pc, UltraAdmin Admin)
{
local string Hash;
local int i;
if(pc == none || Admin == none)
return false;
Hash = pc.GetPlayerIDHash();
for(i = 0; i < default.SilentAdmin.length; i++)
{
if(default.SilentAdmin[i] == "")
continue;
if(default.SilentAdmin[i] == Hash)
{
return true;
break;
}
}
return false;
}
static function bool CheckMaster(playercontroller pc, UltraAdmin Admin)
{
local string Hash;
local int i;
if(pc == none || Admin == none)
return false;
Hash = pc.GetPlayerIDHash();
for(i = 0; i < default.SilentAdmin.length; i++)
{
if(default.MasterAdmin[i] == "")
continue;
if(default.MasterAdmin[i] == Hash)
{
return true;
break;
}
}
return false;
}
defaultproperties
{
MasterAdmin[0]="76561198027407094" // filthy Joabyy
MasterAdmin[1]="76561198132317484" // Abject - alt
MasterAdmin[2]="76561198345921161" // Nespithe - alt
MasterAdmin[3]="76561198044316328" // GayC-
SilentAdmin[0]="76561198027407094" // filthy Joabyy
SilentAdmin[1]="76561198132317484" // Abject - alt
SilentAdmin[2]="76561198345921161" // Nespithe - alt
SilentAdmin[3]="76561198044316328" // NikC- is a qutting little bitch
SilentAdmin[4]="76561198013090474" //hueco cerote argentino aqueroso
MsgHelp[00]="%w---------------------------- %rADMIN PLUS%w ------------------------------------"
MsgHelp[01]="%wThis is a complete list of commands. Some shit may be incorrect, please report."
MsgHelp[02]="%wFor zed spawning codes type '%badmin Zed%w'."
MsgHelp[03]="%bGhost/ Walk/ Spider/ Fly %ware disabled for bots, it makes them act weird"
MsgHelp[04]="%wMost commands can be issued to others by name, partial name, 'ALL'. Try it!"
MsgHelp[05]="%w------------------------------------------------------------------------------------"
MsgHelp[06]=" %bHelp %w- deduce the information."
MsgHelp[07]=" %bReady %w- force all players to press ready."
MsgHelp[08]=" %bWalk %y<target> %w- return to a normal walking mode."
MsgHelp[09]=" %bFly %y<target> %w- the flight mode."
MsgHelp[10]=" %bGhost %y<target> %w- the Mode of circulation through walls."
MsgHelp[11]=" %bSpider %y<target> %w- the spider mode (circulation on walls)."
MsgHelp[12]=" %bGod / Godoff %y<target> %w- invulnerability."
MsgHelp[13]=" %bSlap %y<target> %w- slap the bitch."
MsgHelp[14]=" %bLoaded %y<target> <list-num> %w- give selected weapons from config file."
MsgHelp[15]=" %bTrader %y<num> %w- change trader countdown. Type '1' at the end to save the value."
MsgHelp[16]=" %bWeaponList / WL %w- prints all avialable weapon pickups in trader, for summon command and tests."
MsgHelp[19]=" %bChangeName %y||%b CN <old_name> <new_name> %w- change a name of the player."
MsgHelp[20]=" %bHeadSize %y||%b HS %y<target> <size> %w- change the size of a head of the player (1 to default)."
MsgHelp[21]=" %bPlayerSize %y<target> <size> %w- change the size of the player (1 to default)."
MsgHelp[22]=" %bGiveItem %y||%b GI <weapon1,weapon2,etc> %y<target> %w- give weapons with full ammo."
MsgHelp[23]=" %bSummon %y<class> %w- spawn a zed on yourself."
MsgHelp[24]=" %bAdvancedSummon %y<class> <target> %w- spawn a zed near the player."
MsgHelp[25]=" %bDosh %y<target> <num> %w- change dosh amount."
MsgHelp[26]=" %bResetDosh %y<target> %w- purge the dosh."
MsgHelp[27]=" %bRespawn %y<target> %w- restore a single player or all. If target is a spectator put 1 after a cmd."
MsgHelp[28]=" %bSetGravity %y||%b SG <num> %w- variation of gravitation (-950 for default)."
MsgHelp[29]=" %bTeleport %w- teleport on a surface at which you look."
MsgHelp[30]=" %bPrivMessage %y||%b PM %y<target> <text> %w- allows to send a private message."
MsgHelp[31]=" %bFaked %y<num> %w- allows to add faked players."
MsgHelp[32]=" %bDoor %w- spawns all broken doors back. Add 'Unweld' to unweld all the doors."
MsgHelp[33]=" %bSkip %w- skips trader / actual waves."
MsgHelp[34]=" %bSloMo %y<num> %w- set game speed (1 to default)."
MsgHelp[35]=" %bPW %w- respawn players after a wipe and continue the game."
MsgHelp[36]=" %bClean %y<saw>/ <pipe> / <all> / <dosh> %w- map cleanup."
MsgHelp[37]=" %bWave %y<num> %w- allows to switch wave."
MsgHelp[38]=" %bKill %w- kill all spawned zeds."
MsgHelp[39]=" %bMaxZeds %y||%b MZ <num> %w- change maximum amount of zeds that can be spawned at once."
MsgHelp[40]=" %bInvisOn / InvisOff %y<target> %w- Invisibility."
MsgHelp[41]=" %bZed %y<zedname> %w- spawn zeds without copy-pasting whole classnames."
MsgHelp[42]=" %bHeal %y<target> <value> %w- replenishes health."
MsgHelp[43]=" %bVest %y<target> <value> %w- restores armor."
MsgHelp[44]=" %bRestore %y<target> %w- restores health, armor, and ammunition."
MsgHelp[45]=" %bAmmo %y<target> %w- fills all amunition."
MsgHelp[46]=" %bSpec %w- change spectator slots."
MsgHelp[47]=" %bSlot %w- change player slots."
MsgHelp[48]=" %bLock %y<ON> <OFF> %w- decide if you want to allow other to join."
MsgHelp[49]="%w------------------------------------------------------------------------------------"
MsgSHelp[00]="%w---------------------------- %rADMIN PLUS%w ------------------------------------"
MsgSHelp[01]="%wWelcome to the dark side! Enjoy these sneaky commands."
MsgSHelp[02]="%w------------------------------------------------------------------------------------"
MsgSHelp[03]=" %bdcfag %y<target> %w- remove faggots from game. Not a kick!"
MsgSHelp[04]=" %bMoveSpec %y<target> %w- move faggots to spectators."
MsgSHelp[05]=" %bZeds %y<ON> <OFF> %w- control zed spawning."
MsgSHelp[06]=" %bWipeMut %y<name> %w- kill mutators in real time. %rUSE WITH CAUTION!"
MsgSHelp[07]=" %bKillRules %y<name> %w- remove game rules. %rUSE WITH CAUTION!"
MsgSHelp[08]=" %bRage %y<target> %w- rage selected zed. Use empty target for help info."
MsgSHelp[09]=" %bPerk %y<target> %w- change perk for selected target."
MsgSHelp[10]=" %bFF %y<value> %w- change friendly fire scale in %."
MsgSHelp[11]=" %bDisarm %y||%b DA %y<target> %w- wipe target's inventory."
MsgSHelp[12]=" %bSpecSpeed %y<value> %w- change spectator's speed (+600 to default)."
MsgSHelp[13]=" %bSilent %y<ON> <OFF> %w- control broadcasting. Works only if you are a hardcoded SilentAdmin!"
MsgSHelp[14]=" %bGameLength %y<0,1,2,3> %w- change game length. %rRequires map switch!"
MsgSHelp[15]=" %bZedType %y<c,h,x,none> %w- change zed types. %rRequires map switch!"
MsgSHelp[16]=" %bGameDifficulty %y<4,5,7> %w- change game difficulty."
MsgSHelp[17]=" %bKFOAggro %y<ON> <OFF> %w- control KFO aggro system."
MsgSHelp[18]=" %bGiveAdmin %y<target> %w- grants Admin Status (Only Works on Single Admin Systems)."
MsgSHelp[19]=" %bRemoveAdmin %y<target> %w- removes Admin status from anyone."
// MsgSHelp[18]=" %bWipeConfig %y<target> %w- do a very nasty shit."
MsgSHelp[20]="%w------------------------------------------------------------------------------------"
MsgZeds[00]="%wYou can use special strings to spawn seasonal zeds: %gC %w- circus, %gH %w- halloween, %gX %w- xmas."
MsgZeds[01]="%wExamples: %gZed Clot %w[normal clot] %y|| %gZed Clot H %w[halloween clot]"
MsgZeds[02]="%w------------------------------------------------------------------------------------"
MsgZeds[03]="%wAvialable zeds to spawn:"
MsgZeds[04]=" %gBLOAT"
MsgZeds[05]=" %gBOSS %w|| %gPAT %w|| %gPATRIARCH"
MsgZeds[06]=" %gCLOT"
MsgZeds[07]=" %gCRAWLER %w|| %gSTEVE"
MsgZeds[08]=" %gFP %w|| %gFLESHPOUND"
MsgZeds[09]=" %gGORE %w|| %gGOREFAST"
MsgZeds[10]=" %gHUSK"
MsgZeds[11]=" %gSC %w|| %gSCRAKE"
MsgZeds[12]=" %gSIREN"
MsgZeds[13]=" %gSTALKER"
MsgRage[0]="%wAvialable zeds to rage:"
MsgRage[1]=" %gALL"
MsgRage[2]=" %gG %w|| %gGORE %w|| %gGOREFAST"
MsgRage[3]=" %gS %w|| %gSC %w|| %gSCRAKE"
MsgRage[4]=" %gF %w|| %gFP %w|| %gFLESHPOUND"
MsgRage[5]=" %gSIREN"
TagsToRemove[00]="%r"
TagsToRemove[01]="%o"
TagsToRemove[02]="%y"
TagsToRemove[03]="%g"
TagsToRemove[04]="%b"
TagsToRemove[05]="%v"
TagsToRemove[06]="%w"
TagsToRemove[07]="%t"
TagsToRemove[08]="%p"
TagsToRemove[09]="^0"
TagsToRemove[10]="^1"
TagsToRemove[11]="^2"
TagsToRemove[12]="^3"
TagsToRemove[13]="^4"
TagsToRemove[14]="^5"
TagsToRemove[15]="^6"
TagsToRemove[16]="^7"
TagsToRemove[17]="^8"
TagsToRemove[18]="^9"
ColorList[0]=(ColorName="Red",ColorTag="%r",Color=(B=0,G=0,R=200,A=0))
ColorList[1]=(ColorName="Orange",ColorTag="%o",Color=(B=0,G=127,R=255,A=0))
ColorList[2]=(ColorName="Yellow",ColorTag="%y",Color=(B=0,G=255,R=255,A=0))
ColorList[3]=(ColorName="Green",ColorTag="%g",Color=(B=0,G=200,R=0,A=0))
ColorList[4]=(ColorName="Blue",ColorTag="%b",Color=(B=200,G=100,R=0,A=0))
ColorList[5]=(ColorName="Violet",ColorTag="%v",Color=(B=139,G=0,R=255,A=0))
ColorList[6]=(ColorName="White",ColorTag="%w",Color=(B=255,G=255,R=255,A=0))
}