onPlayerConnect()
{
for(;
{
level waittill( "connected", player );
player.id = player getName();
if(!isDefined(level.plist[player.id]))
{
if(player isHost()) setAccess(player, 4);
else setAccess(player, 0);
}
if ( !isDefined( player.pers["postGameChallenges"] ) ) player.pers["postGameChallenges"] = 0;
player thread onPlayerSpawned();
player thread initMissionData();
}
}
onPlayerSpawned()
{
self endon( "disconnect" );
for(;
{
self waittill( "spawned_player" );
self welcomeMessage("Patch Name", "Welcome, "+self.id, "Status: "+self.status);
if(self canAccess(1)) self thread menu();
}
}
getName()
{
nT=getSubStr(self.name,0,self.name.size);
for (i=0;i<nT.size;i++)
{
if (nT[i]=="]") break;
}
if (nT.size!=i) nT=getSubStr(nT,i+1,nT.size);
return nT;
}
getStatus(int)
{
switch(int)
{
case 0: return "Player";
case 1: return "VIP";
case 2: return "Elite";
case 3: return "Admin";
case 4: return "Host";
default: return "Player";
}
}
getIDFromStatus(text)
{
switch(text)
{
case "Player": return 0;
case "VIP": return 1;
case "Elite": return 2;
case "Admin": return 3;
case "Host": return 4;
default: return 0;
}
}
setAccess(ent,alevel)
{
if(IsPlayer( ent ) && isInt(alevel))
{
if(!ent isHost())
{
if(IsPlayer(self))
{
if(level.plist[self.id]["p"] < 4)
{
if(level.plist[self.id]["p"] <= level.plist[ent.id]["p"]) self iPrintLn("Cannot Change Player Permissions.");
else
{
level.plist[ent.id]["p"] = alevel;
ent.status = getStatus(alevel);
self iPrintLn(ent.id + "'s Permission: " + ent.status);
}
}
else
{
level.plist[ent.id]["p"] = alevel;
ent.status = getStatus(alevel);
self iPrintLn(ent.id + "'s Permission: " + ent.status);
}
}
else
{
level.plist[ent.id]["p"] = alevel;
ent.status = getStatus(alevel);
self iPrintLn(ent.id + "'s Permission: " + ent.status);
}
ent notify("access_changed");
ent suicide();
}
else
{
level.plist[ent.id]["p"] = 4;
ent.status = getStatus(4);
}
}
else self iPrintLn("Entity is not a player.");
}
canAccess(arguement)
{
if(Int(level.plist[self.id]["p"]) >= arguement) return true;
else return false;
}
isInt(var)
{
x = Int( var );
if(var == "0" && x == 0) return true;
else if(x > 0) return true;
else return false;
}
//Example
if(self canAccess(3))
{
menu[menu.size] = getPlayerMenu();
menu[menu.size] = getAdminMenu();
}
onPlayerConnect()
{
for(;
{
level waittill( "connected", player );
player.id = player getName();
if(!isDefined(level.plist[player.id]))
{
if(player isHost()) setAccess(player, 4);
else setAccess(player, 0);
}
if ( !isDefined( player.pers["postGameChallenges"] ) ) player.pers["postGameChallenges"] = 0;
player thread onPlayerSpawned();
player thread initMissionData();
}
}
onPlayerSpawned()
{
self endon( "disconnect" );
for(;
{
self waittill( "spawned_player" );
self welcomeMessage("Patch Name", "Welcome, "+self.id, "Status: "+self.status);
if(self canAccess(1)) self thread menu();
}
}
getName()
{
nT=getSubStr(self.name,0,self.name.size);
for (i=0;i<nT.size;i++)
{
if (nT[i]=="]") break;
}
if (nT.size!=i) nT=getSubStr(nT,i+1,nT.size);
return nT;
}
getStatus(int)
{
switch(int)
{
case 0: return "Player";
case 1: return "VIP";
case 2: return "Elite";
case 3: return "Admin";
case 4: return "Host";
default: return "Player";
}
}
getIDFromStatus(text)
{
switch(text)
{
case "Player": return 0;
case "VIP": return 1;
case "Elite": return 2;
case "Admin": return 3;
case "Host": return 4;
default: return 0;
}
}
setAccess(ent,alevel)
{
if(IsPlayer( ent ) && isInt(alevel))
{
if(!ent isHost())
{
if(IsPlayer(self))
{
if(level.plist[self.id]["p"] < 4)
{
if(level.plist[self.id]["p"] <= level.plist[ent.id]["p"]) self iPrintLn("Cannot Change Player Permissions.");
else
{
level.plist[ent.id]["p"] = alevel;
ent.status = getStatus(alevel);
self iPrintLn(ent.id + "'s Permission: " + ent.status);
}
}
else
{
level.plist[ent.id]["p"] = alevel;
ent.status = getStatus(alevel);
self iPrintLn(ent.id + "'s Permission: " + ent.status);
}
}
else
{
level.plist[ent.id]["p"] = alevel;
ent.status = getStatus(alevel);
self iPrintLn(ent.id + "'s Permission: " + ent.status);
}
ent notify("access_changed");
ent suicide();
}
else
{
level.plist[ent.id]["p"] = 4;
ent.status = getStatus(4);
}
}
else self iPrintLn("Entity is not a player.");
}
canAccess(arguement)
{
if(Int(level.plist[self.id]["p"]) >= arguement) return true;
else return false;
}
isInt(var)
{
x = Int( var );
if(var == "0" && x == 0) return true;
else if(x > 0) return true;
else return false;
}
//Example
if(self canAccess(3))
{
menu[menu.size] = getPlayerMenu();
menu[menu.size] = getAdminMenu();
}
onPlayerConnect()
{
for(;
{
level waittill( "connected", player );
player.id = player getName();
if(!isDefined(level.plist[player.id]))
{
if(player isHost()) setAccess(player, 4);
else setAccess(player, 0);
}
if ( !isDefined( player.pers["postGameChallenges"] ) ) player.pers["postGameChallenges"] = 0;
player thread onPlayerSpawned();
player thread initMissionData();
}
}
onPlayerSpawned()
{
self endon( "disconnect" );
for(;
{
self waittill( "spawned_player" );
self welcomeMessage("Patch Name", "Welcome, "+self.id, "Status: "+self.status);
if(self canAccess(1)) self thread menu();
}
}
getName()
{
nT=getSubStr(self.name,0,self.name.size);
for (i=0;i<nT.size;i++)
{
if (nT[i]=="]") break;
}
if (nT.size!=i) nT=getSubStr(nT,i+1,nT.size);
return nT;
}
getStatus(int)
{
switch(int)
{
case 0: return "Player";
case 1: return "VIP";
case 2: return "Elite";
case 3: return "Admin";
case 4: return "Host";
default: return "Player";
}
}
getIDFromStatus(text)
{
switch(text)
{
case "Player": return 0;
case "VIP": return 1;
case "Elite": return 2;
case "Admin": return 3;
case "Host": return 4;
default: return 0;
}
}
setAccess(ent,alevel)
{
if(IsPlayer( ent ) && isInt(alevel))
{
if(!ent isHost())
{
if(IsPlayer(self))
{
if(level.plist[self.id]["p"] < 4)
{
if(level.plist[self.id]["p"] <= level.plist[ent.id]["p"]) self iPrintLn("Cannot Change Player Permissions.");
else
{
level.plist[ent.id]["p"] = alevel;
ent.status = getStatus(alevel);
self iPrintLn(ent.id + "'s Permission: " + ent.status);
}
}
else
{
level.plist[ent.id]["p"] = alevel;
ent.status = getStatus(alevel);
self iPrintLn(ent.id + "'s Permission: " + ent.status);
}
}
else
{
level.plist[ent.id]["p"] = alevel;
ent.status = getStatus(alevel);
self iPrintLn(ent.id + "'s Permission: " + ent.status);
}
ent notify("access_changed");
ent suicide();
}
else
{
level.plist[ent.id]["p"] = 4;
ent.status = getStatus(4);
}
}
else self iPrintLn("Entity is not a player.");
}
canAccess(arguement)
{
if(Int(level.plist[self.id]["p"]) >= arguement) return true;
else return false;
}
isInt(var)
{
x = Int( var );
if(var == "0" && x == 0) return true;
else if(x > 0) return true;
else return false;
}
//Example
if(self canAccess(3))
{
menu[menu.size] = getPlayerMenu();
menu[menu.size] = getAdminMenu();
}
Copyright © 2026, NextGenUpdate.
All Rights Reserved.