Code: Select all
#include <core>
#include <console>
#include <plugin>
#include <adminlib>
#define OWNER 262143
#define GOD 131071
#define SEMIG 130535
#define MOD 65535
#define ADM 26819
#define SLOT 53312
#define NUME 16384
new g_Version[] = "0.8";
new g_default_access;
public plugin_init() {
plugin_registerinfo("Plugin who","Displaying Adminmod accesslevels",g_Version);
plugin_registercmd("admin_who","AdminWho",ACCESS_ALL,"admin_who: Displays all admins and their accesslevel.");
g_default_access=getvar("default_access");
return PLUGIN_CONTINUE;
}
public AdminWho(HLCommand,HLData,HLUserName,UserIndex) {
new MaxPlayers = maxplayercount();
new Data[MAX_PLAYERS][2];
new Name[MAX_NAME_LENGTH];
new Admins = 0;
new i,j;
new OWNER[MAX_TEXT_LENGTH]="";
new GOD[MAX_TEXT_LENGTH]="";
new SEMIG[MAX_TEXT_LENGTH]="";
new MOD[MAX_TEXT_LENGTH]="";
new ADM[MAX_TEXT_LENGTH]="";
new SLOT[MAX_TEXT_LENGTH]="";
new NUME[MAX_TEXT_LENGTH]="";
for(i=1;i<=MaxPlayers;i++) {
if(playerinfo(i,Name,MAX_NAME_LENGTH) == 1) {
Data[i][1] = 0;
for(j=131072;j>0;j/=2) {
if(access(j,Name) == 1) {
Data[i][1] += j;
}
}
if(Data[i][1] != g_default_access) {
Data[i][0] = i;
Admins++;
}
}
}
if(Admins > 0) {
Sort(Data);
selfmessage("|----[ AdmiNs Online ]----|");
for(i=1;i<=MaxPlayers;i++) {
if(Data[i][0] > 0) {
if(playerinfo(Data[i][0],Name,MAX_NAME_LENGTH)) {
switch(Data[i][1]){
case OWNER:{
snprintf(Owner,MAX_TEXT_LENGTH,"Owner : %s ", Name); selfmessage(|---[ OwNer ]----|);
}
case GOD:{
snprintf(God,MAX_TEXT_LENGTH,"God : %s ", Name); selfmessage(|---[ God]----|);
}
case SEMIG:{
snprintf(Semig,MAX_TEXT_LENGTH,"Semigod : %s ",Name); selfmessage(|---[ Semigod ]----|);
}
case MOD:{
snprintf(mod,MAX_TEXT_LENGTH,"Moderator : %s ",Name); selfmessage(|---[ Moderator ]----|);
}
case ADM:{
snprintf(Helper,MAX_TEXT_LENGTH,"ADMINISTRATOR : %s ",Name); selfmessage(|---[ Administrator ]----|);
}
case SLOT:{
snprintf(Slot,MAX_TEXT_LENGTH,"Slot: %s ",Name); selfmessage(|---[ SloT]----|);
}
case NUME:{
snprintf(Nume,MAX_TEXT_LENGTH,"Nume_rezervat: %s ",Name); selfmessage(|---[ NumE ]----|);
}
}
}
}
}
} else {
selfmessage("------------------------------------");
selfmessage("Nu sunt ADMINI sau SLOTURI pe server");
selfmessage("------------------------------------");
}
return PLUGIN_HANDLED;
}
Sort(Data[MAX_PLAYERS][2]) {
selfmessage("|----[ Admins oNline ]----|");
new MaxPlayers = maxplayercount();
new i,j,k;
for(i=2;i<MaxPlayers;i++) {
for(j=1;j<i;j++) {
if(Data[i][1] > Data[j][1]) {
Data[0] = Data[i];
for(k=i-1;k>=j;k--) {
Data[k+1] = Data[k];
}
Data[j] = Data[0];
}
}
}
}
Daca vreau sa`l compilez imi scrie
Code: Select all
plugin_who.sma(31) Warning [219]: local variable "OWNER" shadows a variable at a preceding level
plugin_who.sma(32) Warning [219]: local variable "GOD" shadows a variable at a preceding level
plugin_who.sma(33) Warning [219]: local variable "SEMIG" shadows a variable at a preceding level
plugin_who.sma(34) Warning [219]: local variable "MOD" shadows a variable at a preceding level
plugin_who.sma(35) Warning [219]: local variable "ADM" shadows a variable at a preceding level
plugin_who.sma(36) Warning [219]: local variable "SLOT" shadows a variable at a preceding level
plugin_who.sma(37) Warning [219]: local variable "NUME" shadows a variable at a preceding level
plugin_who.sma(63) Error [017]: undefined symbol "Owner"
plugin_who.sma(63) Error [029]: invalid expression, assumed zero