Szerző Téma: DAdmin  (Megtekintve 3009 alkalommal)

Nem elérhető BoSS

  • 816
    • Profil megtekintése
DAdmin
« Válasz #15 Dátum: 2012. május 13. - 16:40:24 »
0 Show voters
Nálam néha bugolnak a parancsok tehát /goto /get beírom akár milyen idet és magamat getelem vagy magamhoz gotozok....vagy pl /spec vkikire néznék és semmit nem mutat....többi parancsot nem próbáltam végig...

DAdmin
« Válasz #16 Dátum: 2012. május 24. - 19:56:50 »
0 Show voters
Nálam látszódik. Nyissátok le a spoilert,és ott kijelölés. :)
Amúgy szép!

Nem elérhető Benceee

  • 4785
    • Profil megtekintése
DAdmin
« Válasz #17 Dátum: 2012. május 25. - 21:03:23 »
0 Show voters
Köszi.

Nem elérhető Benceee

  • 4785
    • Profil megtekintése
DAdmin
« Válasz #18 Dátum: 2012. május 10. - 18:46:30 »
0 Show voters
Sziasztok.

A régebbi adminscriptem elég bugos volt. Ezért írtam egy újat.


Parancsok:



/adadmin - 3, vagy RCON
/a - adminsegéd
/asay - adminsegéd
/adminok - 0
/vip  - 3
/vipel - 3
/as - 1
/asel - 1
/kick - adminsegéd
/ban - 1
/goto - adminsegéd
/get - 2
/veh - VIP
/spec - 1
/specki - 1
/ip - VIP.

 

Újítások:


Spoiler for V0.2:
-Adminnév rendszer.

Spoiler for V0.3:
-Pontok, pénz mentése.

Maga a script:


Spoiler for V0.1:



#include < a_samp >
#include < zcmd >
#include < sscanf >
#include < dini >
#define FILTERSCRIPT
#define narancs 0xFF9933AA
#define szurke (0xAFAFAFAA)
#define citrom (0xFFFF00AA)
#define piros (0xFF0000AA)
#define zold (0x33AA33AA)
#define feher (0xFFFFFFAA)
#define fekete 0x000000
#define neon 0x00FFFFFF
#undef MAX_PLAYERS
#define MAX_PLAYERS 30
enum badmin
{
admin,
ban,
as,
vip
}
new pi[MAX_PLAYERS][badmin];
new lepve[MAX_PLAYERS];
new str[128];
new rpw[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
nullazas(playerid);
format(str,sizeof(str),\"%s belépett a szerverre.\",nev(playerid));
SendClientMessageToAll(narancs,str);
new fajl[128];
format(fajl,sizeof(fajl),\"/badmin/%s.ini\",nev(playerid));
if(!fexist(fajl))
{
    ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,\"Regisztráció\",\"Írj be egy tetszõleges jelszót.\\nA késõbbiekben is ezt fogod használni.\",\"Oké\",\"Mégse\");
}
else
{
    ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,\"Belépés\",\"Írd be a jelszavad.\",\"Oké\",\"Mégse\");
}
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1)
{
       if(!response) Kick(playerid);
           new file[128];
   if(strlen(inputtext) == 0)
   {
      ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, \"Regisztráció\", \"Írj be egy tetszõleges jelszót.\\nA késõbbiekben is ezt fogod használni.\", \"Oké\", \"Mégse\");
      return 0;
   }
   format(file,sizeof(file),\"/badmin/%s.ini\",nev(playerid));
   if(!fexist(file))
   {
      dini_Create(file);
      nullazas(playerid);
      dini_Set(file,\"jelszo\", inputtext);
       save(playerid);
      ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,\"Belépés\",\"Írd be a jelszavad.\",\"Oké\",\"Mégse\");
      printf(\"%s sikeresen regisztrált.\", nev(playerid));
   }
}
if(dialogid == 2)
{
        new file[128];
        format(file,sizeof(file),\"/badmin/%s.ini\",nev(playerid));
        if(!response) Kick(playerid);
        new pw[64];
   format(pw,64,\"%s\",dini_Get(file,\"jelszo\"));
   if(!strcmp(inputtext, pw, false))
   {
       SendClientMessage(playerid,zold,\"Sikeres belépés.\");
       load(playerid);
       lepve[playerid] = 1;
      if(pi[playerid][ban] == 1)
      {
          Ban(playerid);
      }
   }
   else
   {
       rpw[playerid] ++;
       SendClientMessage(playerid,piros,\"Rossz jelszó.\");
       if(rpw[playerid] == 2)
       {
           Kick(playerid);
      }
      ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,\"Belépés\",\"Írd be a jelszavad.\",\"Oké\",\"Mégse\");
   }
}
return 1;
}
public OnPlayerDisconnect(playerid)
{
    format(str,sizeof(str),\"%s kilépett a szerverrõl.\",nev(playerid));
SendClientMessageToAll(narancs,str);
if(lepve[playerid] == 1)
{
    save(playerid);
}
nullazas(playerid);
return 1;
}
CMD:adadmin(playerid,params[])
{
if(pi[playerid][admin] == 3 || IsPlayerAdmin(playerid))
{
    new id,szint;
    if(sscanf(params,\"ud\",id,szint)) return SendClientMessage(playerid,szurke,\"Használat:/adadmin [id][szint(0-3)]\");
    if(szint >= 0 && szint <= 3)
    {
        format(str,128,\"%s %d adminjogot adott.\",nev(playerid),szint);
        msg(id,str);
        format(str,128,\"%st kinevezted %d adminnak.\",nev(id),szint);
        msg(playerid,str);
        pi[id][admin] = szint;
} else msg(playerid, \"Az adminszint 0 és 3 között lehet.\");
} else msg(playerid,\"Nem vagy admin.\");
return 1;
}
CMD:a(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] != 0)
{
new szoveg[128];
    if(sscanf(params,\"s\",szoveg)) return SendClientMessage(playerid,feher,\"Használat: /a [szöveg]\");
    format(str, sizeof(str), \"AdminChat: %s(%d): %s\", nev(playerid), pi[playerid][admin], szoveg);
for(new i=0; i<MAX_PLAYERS; i++)
{
    if(pi[admin] >= 1 ||pi[as] != 0)
    {
      SendClientMessage(i, zold, str);
   }
}
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
return 1;
}
CMD:asay(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] != 0)
{
new szoveg[128];
    if(sscanf(params,\"s\",szoveg)) return SendClientMessage(playerid,feher,\"Használat: /asay [szöveg]\");
    if(pi[playerid][admin] != 0)
    {
    format(str, sizeof(str), \"Admin %s: %s\", nev(playerid), szoveg);
   SendClientMessageToAll(neon,str);
}
else if(pi[playerid][as] != 0)
{
    format(str, sizeof(str), \"Adminsegéd %s: %s\", nev(playerid), szoveg);
   SendClientMessageToAll(neon,str);
}
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
return 1;
}
CMD:adminok(playerid, params[])
{
SendClientMessage(playerid, feher, \"Elérhetõ adminisztrátorok és segédek:\");
for(new i=0; i<MAX_PLAYERS; i++)
{
    if(pi[admin] != 0)
    {
        format(str, 128, \"Admin %s | Szint: %d\", nev(i),pi[admin]);
        SendClientMessage(playerid, citrom, str);
}
else if(pi[as] == 1)
    {
        format(str, 128, \"Adminsegéd %s\", nev(i));
        SendClientMessage(playerid, citrom, str);
}
}
return 1;
}
CMD:as(playerid, params[])
{
if(pi[playerid][admin] >= 1)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /as [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Kinevezted adminsegédnek.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor kinevezett téged adminsegédnek.\");
    pi[id][as] = 1;
    return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
}
CMD:vip(playerid, params[])
{
if(pi[playerid][admin] == 3)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /vip [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Kinevezted VIP-nek.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor kinevezett téged VIP-nek..\");
    pi[id][vip] = 1;
    return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy fõadmin.\"); return 1; }
}
CMD:vipel(playerid, params[])
{
if(pi[playerid][admin] == 3)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /vipel [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Elvetted a VIP-et.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor elvette a VIP jogodat.\");
    pi[id][vip] = 0;
    return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy fõadmin.\"); return 1; }
}
CMD:asel(playerid, params[])
{
if(pi[playerid][admin] >= 1)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /asel [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Elvetted az adminsegéd jogát.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor elvette az adminsegéd rangodat.\");
    pi[id][as] = 0;
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
return 1;
}
CMD:kick(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] == 1)
{
new id;
new indok[64];
if(sscanf(params,\"us\",id,indok)) return SendClientMessage(playerid,feher,\"Használat: /kick [id][indok]\");
format(str, 128, \"-= %s ki lett rúgva %s által. |=| Indoklás: %s =-\", nev(id), nev(playerid), indok);
SendClientMessageToAll(piros, str);
Kick(id);
return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin, vagy haladó adminsegéd.\"); return 1; }
}
CMD:ban(playerid, params[])
{
if(pi[playerid][admin] >= 1)
{
new id;
new indok[64];
if(sscanf(params,\"us\",id,indok)) return SendClientMessage(playerid,feher,\"Használat: /ban [id][indok]\");
pi[id][ban] = 1;
format(str, 128, \"-= %s ki lett tiltva %s által. |=| Indoklás: %s =-\", nev(id), nev(playerid), indok);
SendClientMessageToAll(piros, str);
Ban(id);
return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
}
CMD:goto(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] == 1)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /goto [id]\");
new Float: X, Float: Y, Float: Z;
GetPlayerPos(id, X, Y, Z);
SetPlayerPos(playerid, X+2, Y, Z);
return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy admin\"); return 1; }
}
CMD:get(playerid, params[])
{
if(pi[playerid][admin] >= 2)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /get [id]\");
new Float: X, Float: Y, Float: Z;
GetPlayerPos(playerid, X, Y, Z);
SetPlayerPos(id, X+2, Y, Z);
return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy admin\"); return 1; }
}
CMD:veh(playerid,params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][vip] != 0)
{
new kocsi;
if(sscanf(params,\"d\",kocsi)) return SendClientMessage(playerid,feher,\"Használat: /veh [kocsiid]\");
new Float: X, Float: Y, Float: Z;
GetPlayerPos(playerid, X, Y, Z);
CreateVehicle(kocsi,X,Y+2,Z,0,0,0,600);
msg(playerid,\"Kocsi lekérve.\");
} else msg(playerid,\"Nem vagy 2es admin.\");
return 1;
}
CMD:spec(playerid,params[])
{
if(pi[playerid][admin] >= 1)
{
    new spec;
    if(sscanf(params,\"u\",spec)) return SendClientMessage(playerid, feher, \"Használat: /spec [id]\");
    TogglePlayerSpectating(playerid, 1);
       PlayerSpectatePlayer(playerid, spec);
       SendClientMessage(playerid, feher, \"Megfigyelés bekapcsolva.\");
       SetPlayerInterior(playerid,GetPlayerInterior(spec));
       SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(spec));
} else { SendClientMessage(playerid, piros, \"Nem vagy admin.\"); }
return 1;
}
CMD:ip(playerid,params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][vip] != 0)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid, feher, \"Használat: /ip [id]\");
       new ipci[16];
       GetPlayerIp(id,ipci,16);
       format(str,128,\"%s IP: %s\",nev(id),ipci);
       SendClientMessage(playerid, -1, str);
} else { SendClientMessage(playerid, piros, \"Nem vagy admin.\"); }
return 1;
}
CMD:specki(playerid)
{
if(pi[playerid][admin] >= 1)
{
    SendClientMessage(playerid, feher, \"Megfigyelés kikapcsolva.\");
    TogglePlayerSpectating(playerid, 0);
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,0,0,5);
} else { SendClientMessage(playerid, piros, \"Nem vagy admin.\"); }
return 1;
}
stock nev(id)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(id,name,sizeof(name));
return name;
}
stock msg(id,uzi[])
{
SendClientMessage(id,feher,uzi);
}
stock nullazas(id)
{
lepve[id] = 0;
pi[id][admin] = 0;
pi[id][ban] = 0;
pi[id][as] = 0;
pi[id][vip] = 0;
rpw[id] = 0;
}
stock save(id)
{
new fajl[128];
format(fajl,sizeof(fajl),\"/badmin/%s.ini\",nev(id));
if(fexist(fajl))
{
   dini_IntSet(fajl,\"admin\", pi[id][admin]);
   dini_IntSet(fajl,\"ban\", pi[id][ban]);
   dini_IntSet(fajl,\"as\", pi[id][as]);
   dini_IntSet(fajl,\"vip\", pi[id][vip]);
}
}
stock load(id)
{
new fajl[128];
format(fajl,sizeof(fajl),\"/badmin/%s.ini\",nev(id));
if(fexist(fajl))
{
pi[id][admin] = dini_Int(fajl,\"admin\");
pi[id][ban] = dini_Int(fajl,\"ban\");
pi[id][as] = dini_Int(fajl,\"as\");
pi[id][vip] = dini_Int(fajl,\"vip\");
}
}

 

Spoiler for V0.2:

#include < a_samp >
#include < zcmd >
#include < sscanf >
#include < dini >
#define FILTERSCRIPT
#define narancs 0xFF9933AA
#define szurke (0xAFAFAFAA)
#define citrom (0xFFFF00AA)
#define piros (0xFF0000AA)
#define zold (0x33AA33AA)
#define feher (0xFFFFFFAA)
#define fekete 0x000000
#define neon 0x00FFFFFF
#undef MAX_PLAYERS
#define MAX_PLAYERS 30
enum badmin
{
admin,
ban,
as,
aname[25],
vip
}
new pi[MAX_PLAYERS][badmin];
new lepve[MAX_PLAYERS];
new str[128];
new rpw[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
nullazas(playerid);
format(str,sizeof(str),\"%s belépett a szerverre.\",nev(playerid));
SendClientMessageToAll(narancs,str);
new fajl[128];
format(fajl,sizeof(fajl),\"/badmin/%s.ini\",nev(playerid));
if(!fexist(fajl))
{
    ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,\"Regisztráció\",\"Írj be egy tetszõleges jelszót.\\nA késõbbiekben is ezt fogod használni.\",\"Oké\",\"Mégse\");
}
else
{
    ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,\"Belépés\",\"Írd be a jelszavad.\",\"Oké\",\"Mégse\");
}
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1)
{
       if(!response) Kick(playerid);
           new file[128];
   if(strlen(inputtext) == 0)
   {
      ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, \"Regisztráció\", \"Írj be egy tetszõleges jelszót.\\nA késõbbiekben is ezt fogod használni.\", \"Oké\", \"Mégse\");
      return 0;
   }
   format(file,sizeof(file),\"/badmin/%s.ini\",nev(playerid));
   if(!fexist(file))
   {
      dini_Create(file);
      nullazas(playerid);
      dini_Set(file,\"jelszo\", inputtext);
       save(playerid);
      ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,\"Belépés\",\"Írd be a jelszavad.\",\"Oké\",\"Mégse\");
      printf(\"%s sikeresen regisztrált.\", nev(playerid));
   }
}
if(dialogid == 2)
{
        new file[128];
        format(file,sizeof(file),\"/badmin/%s.ini\",nev(playerid));
        if(!response) Kick(playerid);
        new pw[64];
   format(pw,64,\"%s\",dini_Get(file,\"jelszo\"));
   if(!strcmp(inputtext, pw, false))
   {
       SendClientMessage(playerid,zold,\"Sikeres belépés.\");
       load(playerid);
       lepve[playerid] = 1;
      if(pi[playerid][ban] == 1)
      {
          Ban(playerid);
      }
   }
   else
   {
       rpw[playerid] ++;
       SendClientMessage(playerid,piros,\"Rossz jelszó.\");
       if(rpw[playerid] == 2)
       {
           Kick(playerid);
      }
      ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,\"Belépés\",\"Írd be a jelszavad.\",\"Oké\",\"Mégse\");
   }
}
return 1;
}
public OnPlayerDisconnect(playerid)
{
    format(str,sizeof(str),\"%s kilépett a szerverrõl.\",nev(playerid));
SendClientMessageToAll(narancs,str);
if(lepve[playerid] == 1)
{
    save(playerid);
}
nullazas(playerid);
return 1;
}
CMD:adadmin(playerid,params[])
{
if(pi[playerid][admin] == 3 || IsPlayerAdmin(playerid))
{
    new id,szint;
    new anev[24];
    if(sscanf(params,\"uds\",id,szint)) return SendClientMessage(playerid,szurke,\"Használat:/adadmin [id][szint(0-3)] [adminnév]\");
    if(szint >= 0 && szint <= 3)
    {
        format(str,128,\"%s %d adminjogot adott.\",pi[playerid][aname],szint);
        msg(id,str);
        format(str,128,\"%st kinevezted %d adminnak.\",nev(id),szint);
        msg(playerid,str);
        pi[id][admin] = szint;
   format(pi[id][aname],24,\"%s\",anev);
} else msg(playerid, \"Az adminszint 0 és 3 között lehet.\");
} else msg(playerid,\"Nem vagy admin.\");
return 1;
}
CMD:a(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] != 0)
{
new szoveg[128];
    if(sscanf(params,\"s\",szoveg)) return SendClientMessage(playerid,feher,\"Használat: /a [szöveg]\");
    format(str, sizeof(str), \"AdminChat: %s(%d): %s\", pi[playerid][aname], pi[playerid][admin], szoveg);
for(new i=0; i<MAX_PLAYERS; i++)
{
    if(pi[admin] >= 1 ||pi[as] != 0)
    {
      SendClientMessage(i, zold, str);
   }
}
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
return 1;
}
CMD:asay(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] != 0)
{
new szoveg[128];
    if(sscanf(params,\"s\",szoveg)) return SendClientMessage(playerid,feher,\"Használat: /asay [szöveg]\");
    if(pi[playerid][admin] != 0)
    {
    format(str, sizeof(str), \"Admin %s: %s\", pi[playerid][aname], szoveg);
   SendClientMessageToAll(neon,str);
}
else if(pi[playerid][as] != 0)
{
    format(str, sizeof(str), \"Adminsegéd %s: %s\", nev(playerid), szoveg);
   SendClientMessageToAll(neon,str);
}
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
return 1;
}
CMD:adminok(playerid, params[])
{
SendClientMessage(playerid, feher, \"Elérhetõ adminisztrátorok és segédek:\");
for(new i=0; i<MAX_PLAYERS; i++)
{
    if(pi[admin] != 0)
    {
        format(str, 128, \"Admin %s | Szint: %d\", pi[aname],pi[admin]);
        SendClientMessage(playerid, citrom, str);
}
else if(pi[as] == 1)
    {
        format(str, 128, \"Adminsegéd %s\", nev(i));
        SendClientMessage(playerid, citrom, str);
}
}
return 1;
}
CMD:as(playerid, params[])
{
if(pi[playerid][admin] >= 1)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /as [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Kinevezted adminsegédnek.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor kinevezett téged adminsegédnek.\");
    pi[id][as] = 1;
    return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
}
CMD:vip(playerid, params[])
{
if(pi[playerid][admin] == 3)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /vip [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Kinevezted VIP-nek.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor kinevezett téged VIP-nek..\");
    pi[id][vip] = 1;
    return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy fõadmin.\"); return 1; }
}
CMD:vipel(playerid, params[])
{
if(pi[playerid][admin] == 3)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /vipel [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Elvetted a VIP-et.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor elvette a VIP jogodat.\");
    pi[id][vip] = 0;
    return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy fõadmin.\"); return 1; }
}
CMD:asel(playerid, params[])
{
if(pi[playerid][admin] >= 1)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /asel [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Elvetted az adminsegéd jogát.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor elvette az adminsegéd rangodat.\");
    pi[id][as] = 0;
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
return 1;
}
CMD:kick(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] == 1)
{
    if(pi[playerid][as] == 1)
{
   new id;
   new indok[64];
   if(sscanf(params,\"us\",id,indok)) return SendClientMessage(playerid,feher,\"Használat: /kick [id][indok]\");
   format(str, 128, \"-= %s ki lett rúgva %s által. |=| Indoklás: %s =-\", nev(id), nev(playerid), indok);
   SendClientMessageToAll(piros, str);
   Kick(id);
}
else if(pi[playerid][admin] >= 1)
{
   new id;
   new indok[64];
   if(sscanf(params,\"us\",id,indok)) return SendClientMessage(playerid,feher,\"Használat: /kick [id][indok]\");
   format(str, 128, \"-= %s ki lett rúgva %s által. |=| Indoklás: %s =-\", nev(id), pi[playerid][aname], indok);
   SendClientMessageToAll(piros, str);
   Kick(id);
}
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin, vagy haladó adminsegéd.\"); }
return 1;
}
CMD:ban(playerid, params[])
{
if(pi[playerid][admin] >= 1)
{
new id;
new indok[64];
if(sscanf(params,\"us\",id,indok)) return SendClientMessage(playerid,feher,\"Használat: /ban [id][indok]\");
pi[id][ban] = 1;
format(str, 128, \"-= %s ki lett tiltva %s által. |=| Indoklás: %s =-\", nev(id), pi[playerid][aname], indok);
SendClientMessageToAll(piros, str);
Ban(id);
return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
}
CMD:goto(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] == 1)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /goto [id]\");
new Float: X, Float: Y, Float: Z;
GetPlayerPos(id, X, Y, Z);
SetPlayerPos(playerid, X+2, Y, Z);
return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy admin\"); return 1; }
}
CMD:get(playerid, params[])
{
if(pi[playerid][admin] >= 2)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /get [id]\");
new Float: X, Float: Y, Float: Z;
GetPlayerPos(playerid, X, Y, Z);
SetPlayerPos(id, X+2, Y, Z);
return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy admin\"); return 1; }
}
CMD:veh(playerid,params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][vip] != 0)
{
new kocsi;
if(sscanf(params,\"d\",kocsi)) return SendClientMessage(playerid,feher,\"Használat: /veh [kocsiid]\");
new Float: X, Float: Y, Float: Z;
GetPlayerPos(playerid, X, Y, Z);
CreateVehicle(kocsi,X,Y+2,Z,0,0,0,600);
msg(playerid,\"Kocsi lekérve.\");
} else msg(playerid,\"Nem vagy 2es admin.\");
return 1;
}
CMD:spec(playerid,params[])
{
if(pi[playerid][admin] >= 1)
{
    new spec;
    if(sscanf(params,\"u\",spec)) return SendClientMessage(playerid, feher, \"Használat: /spec [id]\");
    TogglePlayerSpectating(playerid, 1);
       PlayerSpectatePlayer(playerid, spec);
       SendClientMessage(playerid, feher, \"Megfigyelés bekapcsolva.\");
       SetPlayerInterior(playerid,GetPlayerInterior(spec));
       SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(spec));
} else { SendClientMessage(playerid, piros, \"Nem vagy admin.\"); }
return 1;
}
CMD:ip(playerid,params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][vip] != 0)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid, feher, \"Használat: /ip [id]\");
       new ipci[16];
       GetPlayerIp(id,ipci,16);
       format(str,128,\"%s IP: %s\",nev(id),ipci);
       SendClientMessage(playerid, -1, str);
} else { SendClientMessage(playerid, piros, \"Nem vagy admin.\"); }
return 1;
}
CMD:specki(playerid)
{
if(pi[playerid][admin] >= 1)
{
    SendClientMessage(playerid, feher, \"Megfigyelés kikapcsolva.\");
    TogglePlayerSpectating(playerid, 0);
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,0,0,5);
} else { SendClientMessage(playerid, piros, \"Nem vagy admin.\"); }
return 1;
}
stock nev(id)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(id,name,sizeof(name));
return name;
}
stock msg(id,uzi[])
{
SendClientMessage(id,feher,uzi);
}
stock nullazas(id)
{
lepve[id] = 0;
pi[id][admin] = 0;
pi[id][ban] = 0;
pi[id][as] = 0;
pi[id][vip] = 0;
rpw[id] = 0;
}
stock save(id)
{
new fajl[128];
format(fajl,sizeof(fajl),\"/badmin/%s.ini\",nev(id));
if(fexist(fajl))
{
   dini_IntSet(fajl,\"admin\", pi[id][admin]);
   dini_IntSet(fajl,\"ban\", pi[id][ban]);
   dini_IntSet(fajl,\"as\", pi[id][as]);
   dini_IntSet(fajl,\"vip\", pi[id][vip]);
   dini_Set(fajl,\"aname\", pi[id][aname]);
}
}
stock load(id)
{
new fajl[128];
format(fajl,sizeof(fajl),\"/badmin/%s.ini\",nev(id));
if(fexist(fajl))
{
pi[id][admin] = dini_Int(fajl,\"admin\");
pi[id][ban] = dini_Int(fajl,\"ban\");
pi[id][as] = dini_Int(fajl,\"as\");
pi[id][vip] = dini_Int(fajl,\"vip\");
format(pi[id][aname],24,\"%s\",dini_Get(fajl,\"aname\"));
}
}

 

Spoiler for V0.3:

#include < a_samp >
#include < zcmd >
#include < sscanf >
#include < dini >
#define FILTERSCRIPT
#define narancs 0xFF9933AA
#define szurke (0xAFAFAFAA)
#define citrom (0xFFFF00AA)
#define piros (0xFF0000AA)
#define zold (0x33AA33AA)
#define feher (0xFFFFFFAA)
#define fekete 0x000000
#define neon 0x00FFFFFF
#undef MAX_PLAYERS
#define MAX_PLAYERS 30
enum badmin
{
admin,
ban,
as,
aname[25],
vip
}
new pi[MAX_PLAYERS][badmin];
new lepve[MAX_PLAYERS];
new str[128];
new rpw[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
nullazas(playerid);
format(str,sizeof(str),\"%s belépett a szerverre.\",nev(playerid));
SendClientMessageToAll(narancs,str);
new fajl[128];
format(fajl,sizeof(fajl),\"/badmin/%s.ini\",nev(playerid));
if(!fexist(fajl))
{
    ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,\"Regisztráció\",\"Írj be egy tetszõleges jelszót.\\nA késõbbiekben is ezt fogod használni.\",\"Oké\",\"Mégse\");
}
else
{
    ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,\"Belépés\",\"Írd be a jelszavad.\",\"Oké\",\"Mégse\");
}
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1)
{
       if(!response) Kick(playerid);
           new file[128];
   if(strlen(inputtext) == 0)
   {
      ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, \"Regisztráció\", \"Írj be egy tetszõleges jelszót.\\nA késõbbiekben is ezt fogod használni.\", \"Oké\", \"Mégse\");
      return 0;
   }
   format(file,sizeof(file),\"/badmin/%s.ini\",nev(playerid));
   if(!fexist(file))
   {
      dini_Create(file);
      nullazas(playerid);
      dini_Set(file,\"jelszo\", inputtext);
       save(playerid);
      ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,\"Belépés\",\"Írd be a jelszavad.\",\"Oké\",\"Mégse\");
      printf(\"%s sikeresen regisztrált.\", nev(playerid));
   }
}
if(dialogid == 2)
{
        new file[128];
        format(file,sizeof(file),\"/badmin/%s.ini\",nev(playerid));
        if(!response) Kick(playerid);
        new pw[64];
   format(pw,64,\"%s\",dini_Get(file,\"jelszo\"));
   if(!strcmp(inputtext, pw, false))
   {
       SendClientMessage(playerid,zold,\"Sikeres belépés.\");
       load(playerid);
       lepve[playerid] = 1;
      if(pi[playerid][ban] == 1)
      {
          Ban(playerid);
      }
   }
   else
   {
       rpw[playerid] ++;
       SendClientMessage(playerid,piros,\"Rossz jelszó.\");
       if(rpw[playerid] == 2)
       {
           Kick(playerid);
      }
      ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,\"Belépés\",\"Írd be a jelszavad.\",\"Oké\",\"Mégse\");
   }
}
return 1;
}
public OnPlayerDisconnect(playerid)
{
    format(str,sizeof(str),\"%s kilépett a szerverrõl.\",nev(playerid));
SendClientMessageToAll(narancs,str);
if(lepve[playerid] == 1)
{
    save(playerid);
}
nullazas(playerid);
return 1;
}
CMD:adadmin(playerid,params[])
{
if(pi[playerid][admin] == 3 || IsPlayerAdmin(playerid))
{
    new id,szint;
    new anev[24];
    if(sscanf(params,\"uds\",id,szint)) return SendClientMessage(playerid,szurke,\"Használat:/adadmin [id][szint(0-3)] [adminnév]\");
    if(szint >= 0 && szint <= 3)
    {
        format(str,128,\"%s %d adminjogot adott.\",pi[playerid][aname],szint);
        msg(id,str);
        format(str,128,\"%st kinevezted %d adminnak.\",nev(id),szint);
        msg(playerid,str);
        pi[id][admin] = szint;
   format(pi[id][aname],24,\"%s\",anev);
} else msg(playerid, \"Az adminszint 0 és 3 között lehet.\");
} else msg(playerid,\"Nem vagy admin.\");
return 1;
}
CMD:a(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] != 0)
{
new szoveg[128];
    if(sscanf(params,\"s\",szoveg)) return SendClientMessage(playerid,feher,\"Használat: /a [szöveg]\");
    format(str, sizeof(str), \"AdminChat: %s(%d): %s\", pi[playerid][aname], pi[playerid][admin], szoveg);
for(new i=0; i<MAX_PLAYERS; i++)
{
    if(pi[admin] >= 1 ||pi[as] != 0)
    {
      SendClientMessage(i, zold, str);
   }
}
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
return 1;
}
CMD:asay(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] != 0)
{
new szoveg[128];
    if(sscanf(params,\"s\",szoveg)) return SendClientMessage(playerid,feher,\"Használat: /asay [szöveg]\");
    if(pi[playerid][admin] != 0)
    {
    format(str, sizeof(str), \"Admin %s: %s\", pi[playerid][aname], szoveg);
   SendClientMessageToAll(neon,str);
}
else if(pi[playerid][as] != 0)
{
    format(str, sizeof(str), \"Adminsegéd %s: %s\", nev(playerid), szoveg);
   SendClientMessageToAll(neon,str);
}
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
return 1;
}
CMD:adminok(playerid, params[])
{
SendClientMessage(playerid, feher, \"Elérhetõ adminisztrátorok és segédek:\");
for(new i=0; i<MAX_PLAYERS; i++)
{
    if(pi[admin] != 0)
    {
        format(str, 128, \"Admin %s | Szint: %d\", pi[aname],pi[admin]);
        SendClientMessage(playerid, citrom, str);
}
else if(pi[as] == 1)
    {
        format(str, 128, \"Adminsegéd %s\", nev(i));
        SendClientMessage(playerid, citrom, str);
}
}
return 1;
}
CMD:as(playerid, params[])
{
if(pi[playerid][admin] >= 1)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /as [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Kinevezted adminsegédnek.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor kinevezett téged adminsegédnek.\");
    pi[id][as] = 1;
    return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
}
CMD:vip(playerid, params[])
{
if(pi[playerid][admin] == 3)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /vip [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Kinevezted VIP-nek.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor kinevezett téged VIP-nek..\");
    pi[id][vip] = 1;
    return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy fõadmin.\"); return 1; }
}
CMD:vipel(playerid, params[])
{
if(pi[playerid][admin] == 3)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /vipel [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Elvetted a VIP-et.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor elvette a VIP jogodat.\");
    pi[id][vip] = 0;
    return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy fõadmin.\"); return 1; }
}
CMD:asel(playerid, params[])
{
if(pi[playerid][admin] >= 1)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /asel [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Elvetted az adminsegéd jogát.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor elvette az adminsegéd rangodat.\");
    pi[id][as] = 0;
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
return 1;
}
CMD:kick(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] == 1)
{
    if(pi[playerid][as] == 1)
{
   new id;
   new indok[64];
   if(sscanf(params,\"us\",id,indok)) return SendClientMessage(playerid,feher,\"Használat: /kick [id][indok]\");
   format(str, 128, \"-= %s ki lett rúgva %s által. |=| Indoklás: %s =-\", nev(id), nev(playerid), indok);
   SendClientMessageToAll(piros, str);
   Kick(id);
}
else if(pi[playerid][admin] >= 1)
{
   new id;
   new indok[64];
   if(sscanf(params,\"us\",id,indok)) return SendClientMessage(playerid,feher,\"Használat: /kick [id][indok]\");
   format(str, 128, \"-= %s ki lett rúgva %s által. |=| Indoklás: %s =-\", nev(id), pi[playerid][aname], indok);
   SendClientMessageToAll(piros, str);
   Kick(id);
}
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin, vagy haladó adminsegéd.\"); }
return 1;
}
CMD:ban(playerid, params[])
{
if(pi[playerid][admin] >= 1)
{
new id;
new indok[64];
if(sscanf(params,\"us\",id,indok)) return SendClientMessage(playerid,feher,\"Használat: /ban [id][indok]\");
pi[id][ban] = 1;
format(str, 128, \"-= %s ki lett tiltva %s által. |=| Indoklás: %s =-\", nev(id), pi[playerid][aname], indok);
SendClientMessageToAll(piros, str);
Ban(id);
return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
}
CMD:goto(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] == 1)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /goto [id]\");
new Float: X, Float: Y, Float: Z;
GetPlayerPos(id, X, Y, Z);
SetPlayerPos(playerid, X+2, Y, Z);
return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy admin\"); return 1; }
}
CMD:get(playerid, params[])
{
if(pi[playerid][admin] >= 2)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /get [id]\");
new Float: X, Float: Y, Float: Z;
GetPlayerPos(playerid, X, Y, Z);
SetPlayerPos(id, X+2, Y, Z);
return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy admin\"); return 1; }
}
CMD:veh(playerid,params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][vip] != 0)
{
new kocsi;
if(sscanf(params,\"d\",kocsi)) return SendClientMessage(playerid,feher,\"Használat: /veh [kocsiid]\");
new Float: X, Float: Y, Float: Z;
GetPlayerPos(playerid, X, Y, Z);
CreateVehicle(kocsi,X,Y+2,Z,0,0,0,600);
msg(playerid,\"Kocsi lekérve.\");
} else msg(playerid,\"Nem vagy 2es admin.\");
return 1;
}
CMD:spec(playerid,params[])
{
if(pi[playerid][admin] >= 1)
{
    new spec;
    if(sscanf(params,\"u\",spec)) return SendClientMessage(playerid, feher, \"Használat: /spec [id]\");
    TogglePlayerSpectating(playerid, 1);
       PlayerSpectatePlayer(playerid, spec);
       SendClientMessage(playerid, feher, \"Megfigyelés bekapcsolva.\");
       SetPlayerInterior(playerid,GetPlayerInterior(spec));
       SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(spec));
} else { SendClientMessage(playerid, piros, \"Nem vagy admin.\"); }
return 1;
}
CMD:ip(playerid,params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][vip] != 0)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid, feher, \"Használat: /ip [id]\");
       new ipci[16];
       GetPlayerIp(id,ipci,16);
       format(str,128,\"%s IP: %s\",nev(id),ipci);
       SendClientMessage(playerid, -1, str);
} else { SendClientMessage(playerid, piros, \"Nem vagy admin.\"); }
return 1;
}
CMD:specki(playerid)
{
if(pi[playerid][admin] >= 1)
{
    SendClientMessage(playerid, feher, \"Megfigyelés kikapcsolva.\");
    TogglePlayerSpectating(playerid, 0);
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,0,0,5);
} else { SendClientMessage(playerid, piros, \"Nem vagy admin.\"); }
return 1;
}
stock nev(id)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(id,name,sizeof(name));
return name;
}
stock msg(id,uzi[])
{
SendClientMessage(id,feher,uzi);
}
stock nullazas(id)
{
lepve[id] = 0;
pi[id][admin] = 0;
pi[id][ban] = 0;
pi[id][as] = 0;
pi[id][vip] = 0;
rpw[id] = 0;
}
stock save(id)
{
new fajl[128];
format(fajl,sizeof(fajl),\"/badmin/%s.ini\",nev(id));
if(fexist(fajl))
{
   dini_IntSet(fajl,\"admin\", pi[id][admin]);
   dini_IntSet(fajl,\"ban\", pi[id][ban]);
   dini_IntSet(fajl,\"as\", pi[id][as]);
   dini_IntSet(fajl,\"vip\", pi[id][vip]);
   dini_Set(fajl,\"aname\", pi[id][aname]);
   dini_IntSet(fajl,\"penz\",GetPlayerMoney(id));
   dini_IntSet(fajl,\"pont\",GetPlayerScore(id));
}
}
stock load(id)
{
new fajl[128];
format(fajl,sizeof(fajl),\"/badmin/%s.ini\",nev(id));
if(fexist(fajl))
{
pi[id][admin] = dini_Int(fajl,\"admin\");
pi[id][ban] = dini_Int(fajl,\"ban\");
pi[id][as] = dini_Int(fajl,\"as\");
pi[id][vip] = dini_Int(fajl,\"vip\");
format(pi[id][aname],24,\"%s\",dini_Get(fajl,\"aname\"));
GivePlayerMoney(id,dini_Int(fajl,\"penz\"));
SetPlayerScore(id,dini_Int(fajl,\"pont\"));
}
}

 

A regisztrációs rendszer mûködéséhez létre kell hozni a scriptfiles mappában egy badmin mappát.

// Azért \'badmin\', mert elõször BenceeeAdmin-t akartam, de itt fórumon is páran DAdmin néven ismerik, ezért marad DAdmin.
« Utoljára szerkesztve: 2012. május 13. - 11:05:20 írta Benceee »

DAdmin
« Válasz #19 Dátum: 2012. május 10. - 18:55:37 »
0 Show voters
Idézetet írta: Benceee date=1336668390\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"21264\" data-ipsquote-contentclass=\"forums_Topic
A regisztrációs rendszer mûködéséhez létre kell hozni a scriptfiles mappában egy badmin mappát.



Az erre való figyelmeztetést megoldhatod ezzel a sorral



if(!fexist(\"badmin/\")) print(\"!!!!! hiányzik a \'scriptfiles/badmin\' mappa\");

 

Szép munka, de ismét felteszek egy kérdést.


Minek az enum, ha mellé is létrehozol [MAX_PLAYERS] méretû tömböket?

Nem elérhető BoSS

  • 816
    • Profil megtekintése
DAdmin
« Válasz #20 Dátum: 2012. május 11. - 12:28:02 »
0 Show voters
Nekem nem müködik mindegyik parancs pl /asay üzenet és ha írok üzenetet akkor újra kiírja /asay üzenet ...sscanf frissítve van..esetleg zcmd-t is kéne? ha igen vki linkelne egy újabb zcmd-t?

DAdmin
« Válasz #21 Dátum: 2012. május 11. - 14:08:06 »
0 Show voters
Benceee... Nagyon sok benne a hiba!


Idézetet írta: BoSS date=1336732082\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"21264\" data-ipsquote-contentclass=\"forums_Topic
Nekem nem müködik mindegyik parancs pl /asay üzenet és ha írok üzenetet akkor újra kiírja /asay üzenet ...sscanf frissítve van..esetleg zcmd-t is kéne? ha igen vki linkelne egy újabb zcmd-t?
 
Fogadok, hogy Plugint használsz...
Ehhez pedig a Kód forma kell, ahogy látom.

Nem elérhető Amf

  • 1459
    • Profil megtekintése
DAdmin
« Válasz #22 Dátum: 2012. május 11. - 17:59:40 »
0 Show voters
Nekem, pluginnal is ment!Szép munka!Grat Bence!

Nem elérhető Benceee

  • 4785
    • Profil megtekintése
DAdmin
« Válasz #23 Dátum: 2012. május 11. - 21:32:49 »
0 Show voters
Idézetet írta: TengeriMalac date=1336738086\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"21264\" data-ipsquote-contentclass=\"forums_Topic
Benceee... Nagyon sok benne a hiba!
 
Bõvebben?

DAdmin
« Válasz #24 Dátum: 2012. május 11. - 22:35:10 »
0 Show voters
if(sscanf(params,\"us\",id)) return SendClientMessage(playerid,feher,\"Használat: /goto [id]\");
if(sscanf(params,\"us\",id)) return SendClientMessage(playerid,feher,\"Használat: /get [id]\");

 
Na jó, azért nem tele, de ez a 2 például feltûnõ

DAdmin
« Válasz #25 Dátum: 2012. május 12. - 17:34:58 »
0 Show voters
A pénzt menti?

Nem elérhető Benceee

  • 4785
    • Profil megtekintése
DAdmin
« Válasz #26 Dátum: 2012. május 12. - 19:21:15 »
0 Show voters
Idézetet írta: N@rbirock date=1336836898\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"21264\" data-ipsquote-contentclass=\"forums_Topic
A pénzt menti?
 
Nem.

DAdmin
« Válasz #27 Dátum: 2012. május 12. - 19:48:04 »
0 Show voters
És, hogylehetne megcsinálni,hogy mentse mert nem nagyon értem a dinit.

Nem elérhető #Nexus#

  • 1374
    • Profil megtekintése
DAdmin
« Válasz #28 Dátum: 2012. május 12. - 19:49:54 »
0 Show voters
Csak nekem buggol a spoiler már mint lenyitom és ilyen egy soros az egész ?

DAdmin
« Válasz #29 Dátum: 2012. május 12. - 20:41:39 »
0 Show voters
Idézetet írta: Benceee date=1336668390\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"21264\" data-ipsquote-contentclass=\"forums_Topic

Sziasztok.

A régebbi adminscriptem elég bugos volt. Ezért írtam egy újat.


Parancsok:



/adadmin - 3, vagy RCON
/a - adminsegéd
/asay - adminsegéd
/adminok - 0
/vip  - 3
/vipel - 3
/as - 1
/asel - 1
/kick - adminsegéd
/ban - 1
/goto - adminsegéd
/get - 2
/veh - VIP
/spec - 1
/specki - 1
/ip - VIP.

 

Újítások:


Spoiler for V0.2:
-Adminnév rendszer.

Maga a script:


Spoiler for V0.1:



#include < a_samp >
#include < zcmd >
#include < sscanf >
#include < dini >
#define FILTERSCRIPT
#define narancs 0xFF9933AA
#define szurke (0xAFAFAFAA)
#define citrom (0xFFFF00AA)
#define piros (0xFF0000AA)
#define zold (0x33AA33AA)
#define feher (0xFFFFFFAA)
#define fekete 0x000000
#define neon 0x00FFFFFF
#undef MAX_PLAYERS
#define MAX_PLAYERS 30
enum badmin
{
admin,
ban,
as,
vip
}
new pi[MAX_PLAYERS][badmin];
new lepve[MAX_PLAYERS];
new str[128];
new rpw[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
nullazas(playerid);
format(str,sizeof(str),\"%s belépett a szerverre.\",nev(playerid));
SendClientMessageToAll(narancs,str);
new fajl[128];
format(fajl,sizeof(fajl),\"/badmin/%s.ini\",nev(playerid));
if(!fexist(fajl))
{
    ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,\"Regisztráció\",\"Írj be egy tetszõleges jelszót.\\nA késõbbiekben is ezt fogod használni.\",\"Oké\",\"Mégse\");
}
else
{
    ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,\"Belépés\",\"Írd be a jelszavad.\",\"Oké\",\"Mégse\");
}
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1)
{
       if(!response) Kick(playerid);
           new file[128];
   if(strlen(inputtext) == 0)
   {
      ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, \"Regisztráció\", \"Írj be egy tetszõleges jelszót.\\nA késõbbiekben is ezt fogod használni.\", \"Oké\", \"Mégse\");
      return 0;
   }
   format(file,sizeof(file),\"/badmin/%s.ini\",nev(playerid));
   if(!fexist(file))
   {
      dini_Create(file);
      nullazas(playerid);
      dini_Set(file,\"jelszo\", inputtext);
       save(playerid);
      ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,\"Belépés\",\"Írd be a jelszavad.\",\"Oké\",\"Mégse\");
      printf(\"%s sikeresen regisztrált.\", nev(playerid));
   }
}
if(dialogid == 2)
{
        new file[128];
        format(file,sizeof(file),\"/badmin/%s.ini\",nev(playerid));
        if(!response) Kick(playerid);
        new pw[64];
   format(pw,64,\"%s\",dini_Get(file,\"jelszo\"));
   if(!strcmp(inputtext, pw, false))
   {
       SendClientMessage(playerid,zold,\"Sikeres belépés.\");
       load(playerid);
       lepve[playerid] = 1;
      if(pi[playerid][ban] == 1)
      {
          Ban(playerid);
      }
   }
   else
   {
       rpw[playerid] ++;
       SendClientMessage(playerid,piros,\"Rossz jelszó.\");
       if(rpw[playerid] == 2)
       {
           Kick(playerid);
      }
      ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,\"Belépés\",\"Írd be a jelszavad.\",\"Oké\",\"Mégse\");
   }
}
return 1;
}
public OnPlayerDisconnect(playerid)
{
    format(str,sizeof(str),\"%s kilépett a szerverrõl.\",nev(playerid));
SendClientMessageToAll(narancs,str);
if(lepve[playerid] == 1)
{
    save(playerid);
}
nullazas(playerid);
return 1;
}
CMD:adadmin(playerid,params[])
{
if(pi[playerid][admin] == 3 || IsPlayerAdmin(playerid))
{
    new id,szint;
    if(sscanf(params,\"ud\",id,szint)) return SendClientMessage(playerid,szurke,\"Használat:/adadmin [id][szint(0-3)]\");
    if(szint >= 0 && szint <= 3)
    {
        format(str,128,\"%s %d adminjogot adott.\",nev(playerid),szint);
        msg(id,str);
        format(str,128,\"%st kinevezted %d adminnak.\",nev(id),szint);
        msg(playerid,str);
        pi[id][admin] = szint;
} else msg(playerid, \"Az adminszint 0 és 3 között lehet.\");
} else msg(playerid,\"Nem vagy admin.\");
return 1;
}
CMD:a(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] != 0)
{
new szoveg[128];
    if(sscanf(params,\"s\",szoveg)) return SendClientMessage(playerid,feher,\"Használat: /a [szöveg]\");
    format(str, sizeof(str), \"AdminChat: %s(%d): %s\", nev(playerid), pi[playerid][admin], szoveg);
for(new i=0; i<MAX_PLAYERS; i++)
{
    if(pi[admin] >= 1 ||pi[as] != 0)
    {
      SendClientMessage(i, zold, str);
   }
}
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
return 1;
}
CMD:asay(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] != 0)
{
new szoveg[128];
    if(sscanf(params,\"s\",szoveg)) return SendClientMessage(playerid,feher,\"Használat: /asay [szöveg]\");
    if(pi[playerid][admin] != 0)
    {
    format(str, sizeof(str), \"Admin %s: %s\", nev(playerid), szoveg);
   SendClientMessageToAll(neon,str);
}
else if(pi[playerid][as] != 0)
{
    format(str, sizeof(str), \"Adminsegéd %s: %s\", nev(playerid), szoveg);
   SendClientMessageToAll(neon,str);
}
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
return 1;
}
CMD:adminok(playerid, params[])
{
SendClientMessage(playerid, feher, \"Elérhetõ adminisztrátorok és segédek:\");
for(new i=0; i<MAX_PLAYERS; i++)
{
    if(pi[admin] != 0)
    {
        format(str, 128, \"Admin %s | Szint: %d\", nev(i),pi[admin]);
        SendClientMessage(playerid, citrom, str);
}
else if(pi[as] == 1)
    {
        format(str, 128, \"Adminsegéd %s\", nev(i));
        SendClientMessage(playerid, citrom, str);
}
}
return 1;
}
CMD:as(playerid, params[])
{
if(pi[playerid][admin] >= 1)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /as [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Kinevezted adminsegédnek.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor kinevezett téged adminsegédnek.\");
    pi[id][as] = 1;
    return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
}
CMD:vip(playerid, params[])
{
if(pi[playerid][admin] == 3)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /vip [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Kinevezted VIP-nek.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor kinevezett téged VIP-nek..\");
    pi[id][vip] = 1;
    return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy fõadmin.\"); return 1; }
}
CMD:vipel(playerid, params[])
{
if(pi[playerid][admin] == 3)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /vipel [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Elvetted a VIP-et.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor elvette a VIP jogodat.\");
    pi[id][vip] = 0;
    return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy fõadmin.\"); return 1; }
}
CMD:asel(playerid, params[])
{
if(pi[playerid][admin] >= 1)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /asel [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Elvetted az adminsegéd jogát.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor elvette az adminsegéd rangodat.\");
    pi[id][as] = 0;
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
return 1;
}
CMD:kick(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] == 1)
{
new id;
new indok[64];
if(sscanf(params,\"us\",id,indok)) return SendClientMessage(playerid,feher,\"Használat: /kick [id][indok]\");
format(str, 128, \"-= %s ki lett rúgva %s által. |=| Indoklás: %s =-\", nev(id), nev(playerid), indok);
SendClientMessageToAll(piros, str);
Kick(id);
return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin, vagy haladó adminsegéd.\"); return 1; }
}
CMD:ban(playerid, params[])
{
if(pi[playerid][admin] >= 1)
{
new id;
new indok[64];
if(sscanf(params,\"us\",id,indok)) return SendClientMessage(playerid,feher,\"Használat: /ban [id][indok]\");
pi[id][ban] = 1;
format(str, 128, \"-= %s ki lett tiltva %s által. |=| Indoklás: %s =-\", nev(id), nev(playerid), indok);
SendClientMessageToAll(piros, str);
Ban(id);
return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
}
CMD:goto(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] == 1)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /goto [id]\");
new Float: X, Float: Y, Float: Z;
GetPlayerPos(id, X, Y, Z);
SetPlayerPos(playerid, X+2, Y, Z);
return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy admin\"); return 1; }
}
CMD:get(playerid, params[])
{
if(pi[playerid][admin] >= 2)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /get [id]\");
new Float: X, Float: Y, Float: Z;
GetPlayerPos(playerid, X, Y, Z);
SetPlayerPos(id, X+2, Y, Z);
return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy admin\"); return 1; }
}
CMD:veh(playerid,params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][vip] != 0)
{
new kocsi;
if(sscanf(params,\"d\",kocsi)) return SendClientMessage(playerid,feher,\"Használat: /veh [kocsiid]\");
new Float: X, Float: Y, Float: Z;
GetPlayerPos(playerid, X, Y, Z);
CreateVehicle(kocsi,X,Y+2,Z,0,0,0,600);
msg(playerid,\"Kocsi lekérve.\");
} else msg(playerid,\"Nem vagy 2es admin.\");
return 1;
}
CMD:spec(playerid,params[])
{
if(pi[playerid][admin] >= 1)
{
    new spec;
    if(sscanf(params,\"u\",spec)) return SendClientMessage(playerid, feher, \"Használat: /spec [id]\");
    TogglePlayerSpectating(playerid, 1);
       PlayerSpectatePlayer(playerid, spec);
       SendClientMessage(playerid, feher, \"Megfigyelés bekapcsolva.\");
       SetPlayerInterior(playerid,GetPlayerInterior(spec));
       SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(spec));
} else { SendClientMessage(playerid, piros, \"Nem vagy admin.\"); }
return 1;
}
CMD:ip(playerid,params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][vip] != 0)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid, feher, \"Használat: /ip [id]\");
       new ipci[16];
       GetPlayerIp(id,ipci,16);
       format(str,128,\"%s IP: %s\",nev(id),ipci);
       SendClientMessage(playerid, -1, str);
} else { SendClientMessage(playerid, piros, \"Nem vagy admin.\"); }
return 1;
}
CMD:specki(playerid)
{
if(pi[playerid][admin] >= 1)
{
    SendClientMessage(playerid, feher, \"Megfigyelés kikapcsolva.\");
    TogglePlayerSpectating(playerid, 0);
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,0,0,5);
} else { SendClientMessage(playerid, piros, \"Nem vagy admin.\"); }
return 1;
}
stock nev(id)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(id,name,sizeof(name));
return name;
}
stock msg(id,uzi[])
{
SendClientMessage(id,feher,uzi);
}
stock nullazas(id)
{
lepve[id] = 0;
pi[id][admin] = 0;
pi[id][ban] = 0;
pi[id][as] = 0;
pi[id][vip] = 0;
rpw[id] = 0;
}
stock save(id)
{
new fajl[128];
format(fajl,sizeof(fajl),\"/badmin/%s.ini\",nev(id));
if(fexist(fajl))
{
   dini_IntSet(fajl,\"admin\", pi[id][admin]);
   dini_IntSet(fajl,\"ban\", pi[id][ban]);
   dini_IntSet(fajl,\"as\", pi[id][as]);
   dini_IntSet(fajl,\"vip\", pi[id][vip]);
}
}
stock load(id)
{
new fajl[128];
format(fajl,sizeof(fajl),\"/badmin/%s.ini\",nev(id));
if(fexist(fajl))
{
pi[id][admin] = dini_Int(fajl,\"admin\");
pi[id][ban] = dini_Int(fajl,\"ban\");
pi[id][as] = dini_Int(fajl,\"as\");
pi[id][vip] = dini_Int(fajl,\"vip\");
}
}

 


#include < a_samp >
#include < zcmd >
#include < sscanf >
#include < dini >
#define FILTERSCRIPT
#define narancs 0xFF9933AA
#define szurke (0xAFAFAFAA)
#define citrom (0xFFFF00AA)
#define piros (0xFF0000AA)
#define zold (0x33AA33AA)
#define feher (0xFFFFFFAA)
#define fekete 0x000000
#define neon 0x00FFFFFF
#undef MAX_PLAYERS
#define MAX_PLAYERS 30
enum badmin
{
admin,
ban,
as,
aname[25],
vip
}
new pi[MAX_PLAYERS][badmin];
new lepve[MAX_PLAYERS];
new str[128];
new rpw[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
nullazas(playerid);
format(str,sizeof(str),\"%s belépett a szerverre.\",nev(playerid));
SendClientMessageToAll(narancs,str);
new fajl[128];
format(fajl,sizeof(fajl),\"/badmin/%s.ini\",nev(playerid));
if(!fexist(fajl))
{
    ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,\"Regisztráció\",\"Írj be egy tetszõleges jelszót.\\nA késõbbiekben is ezt fogod használni.\",\"Oké\",\"Mégse\");
}
else
{
    ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,\"Belépés\",\"Írd be a jelszavad.\",\"Oké\",\"Mégse\");
}
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1)
{
       if(!response) Kick(playerid);
           new file[128];
   if(strlen(inputtext) == 0)
   {
      ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, \"Regisztráció\", \"Írj be egy tetszõleges jelszót.\\nA késõbbiekben is ezt fogod használni.\", \"Oké\", \"Mégse\");
      return 0;
   }
   format(file,sizeof(file),\"/badmin/%s.ini\",nev(playerid));
   if(!fexist(file))
   {
      dini_Create(file);
      nullazas(playerid);
      dini_Set(file,\"jelszo\", inputtext);
       save(playerid);
      ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,\"Belépés\",\"Írd be a jelszavad.\",\"Oké\",\"Mégse\");
      printf(\"%s sikeresen regisztrált.\", nev(playerid));
   }
}
if(dialogid == 2)
{
        new file[128];
        format(file,sizeof(file),\"/badmin/%s.ini\",nev(playerid));
        if(!response) Kick(playerid);
        new pw[64];
   format(pw,64,\"%s\",dini_Get(file,\"jelszo\"));
   if(!strcmp(inputtext, pw, false))
   {
       SendClientMessage(playerid,zold,\"Sikeres belépés.\");
       load(playerid);
       lepve[playerid] = 1;
      if(pi[playerid][ban] == 1)
      {
          Ban(playerid);
      }
   }
   else
   {
       rpw[playerid] ++;
       SendClientMessage(playerid,piros,\"Rossz jelszó.\");
       if(rpw[playerid] == 2)
       {
           Kick(playerid);
      }
      ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,\"Belépés\",\"Írd be a jelszavad.\",\"Oké\",\"Mégse\");
   }
}
return 1;
}
public OnPlayerDisconnect(playerid)
{
    format(str,sizeof(str),\"%s kilépett a szerverrõl.\",nev(playerid));
SendClientMessageToAll(narancs,str);
if(lepve[playerid] == 1)
{
    save(playerid);
}
nullazas(playerid);
return 1;
}
CMD:adadmin(playerid,params[])
{
if(pi[playerid][admin] == 3 || IsPlayerAdmin(playerid))
{
    new id,szint;
    new anev[24];
    if(sscanf(params,\"uds\",id,szint)) return SendClientMessage(playerid,szurke,\"Használat:/adadmin [id][szint(0-3)] [adminnév]\");
    if(szint >= 0 && szint <= 3)
    {
        format(str,128,\"%s %d adminjogot adott.\",pi[playerid][aname],szint);
        msg(id,str);
        format(str,128,\"%st kinevezted %d adminnak.\",nev(id),szint);
        msg(playerid,str);
        pi[id][admin] = szint;
   format(pi[id][aname],24,\"%s\",anev);
} else msg(playerid, \"Az adminszint 0 és 3 között lehet.\");
} else msg(playerid,\"Nem vagy admin.\");
return 1;
}
CMD:a(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] != 0)
{
new szoveg[128];
    if(sscanf(params,\"s\",szoveg)) return SendClientMessage(playerid,feher,\"Használat: /a [szöveg]\");
    format(str, sizeof(str), \"AdminChat: %s(%d): %s\", pi[playerid][aname], pi[playerid][admin], szoveg);
for(new i=0; i<MAX_PLAYERS; i++)
{
    if(pi[admin] >= 1 ||pi[as] != 0)
    {
      SendClientMessage(i, zold, str);
   }
}
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
return 1;
}
CMD:asay(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] != 0)
{
new szoveg[128];
    if(sscanf(params,\"s\",szoveg)) return SendClientMessage(playerid,feher,\"Használat: /asay [szöveg]\");
    if(pi[playerid][admin] != 0)
    {
    format(str, sizeof(str), \"Admin %s: %s\", pi[playerid][aname], szoveg);
   SendClientMessageToAll(neon,str);
}
else if(pi[playerid][as] != 0)
{
    format(str, sizeof(str), \"Adminsegéd %s: %s\", nev(playerid), szoveg);
   SendClientMessageToAll(neon,str);
}
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
return 1;
}
CMD:adminok(playerid, params[])
{
SendClientMessage(playerid, feher, \"Elérhetõ adminisztrátorok és segédek:\");
for(new i=0; i<MAX_PLAYERS; i++)
{
    if(pi[admin] != 0)
    {
        format(str, 128, \"Admin %s | Szint: %d\", pi[aname],pi[admin]);
        SendClientMessage(playerid, citrom, str);
}
else if(pi[as] == 1)
    {
        format(str, 128, \"Adminsegéd %s\", nev(i));
        SendClientMessage(playerid, citrom, str);
}
}
return 1;
}
CMD:as(playerid, params[])
{
if(pi[playerid][admin] >= 1)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /as [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Kinevezted adminsegédnek.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor kinevezett téged adminsegédnek.\");
    pi[id][as] = 1;
    return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
}
CMD:vip(playerid, params[])
{
if(pi[playerid][admin] == 3)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /vip [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Kinevezted VIP-nek.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor kinevezett téged VIP-nek..\");
    pi[id][vip] = 1;
    return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy fõadmin.\"); return 1; }
}
CMD:vipel(playerid, params[])
{
if(pi[playerid][admin] == 3)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /vipel [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Elvetted a VIP-et.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor elvette a VIP jogodat.\");
    pi[id][vip] = 0;
    return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy fõadmin.\"); return 1; }
}
CMD:asel(playerid, params[])
{
if(pi[playerid][admin] >= 1)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /asel [id]\");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
    SendClientMessage(playerid, feher, \"Elvetted az adminsegéd jogát.\");
    SendClientMessage(id, feher, \"Egy adminisztrátor elvette az adminsegéd rangodat.\");
    pi[id][as] = 0;
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
return 1;
}
CMD:kick(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] == 1)
{
    if(pi[playerid][as] == 1)
{
   new id;
   new indok[64];
   if(sscanf(params,\"us\",id,indok)) return SendClientMessage(playerid,feher,\"Használat: /kick [id][indok]\");
   format(str, 128, \"-= %s ki lett rúgva %s által. |=| Indoklás: %s =-\", nev(id), nev(playerid), indok);
   SendClientMessageToAll(piros, str);
   Kick(id);
}
else if(pi[playerid][admin] >= 1)
{
   new id;
   new indok[64];
   if(sscanf(params,\"us\",id,indok)) return SendClientMessage(playerid,feher,\"Használat: /kick [id][indok]\");
   format(str, 128, \"-= %s ki lett rúgva %s által. |=| Indoklás: %s =-\", nev(id), pi[playerid][aname], indok);
   SendClientMessageToAll(piros, str);
   Kick(id);
}
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin, vagy haladó adminsegéd.\"); }
return 1;
}
CMD:ban(playerid, params[])
{
if(pi[playerid][admin] >= 1)
{
new id;
new indok[64];
if(sscanf(params,\"us\",id,indok)) return SendClientMessage(playerid,feher,\"Használat: /ban [id][indok]\");
pi[id][ban] = 1;
format(str, 128, \"-= %s ki lett tiltva %s által. |=| Indoklás: %s =-\", nev(id), pi[playerid][aname], indok);
SendClientMessageToAll(piros, str);
Ban(id);
return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy egyes szintû admin.\"); return 1; }
}
CMD:goto(playerid, params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][as] == 1)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /goto [id]\");
new Float: X, Float: Y, Float: Z;
GetPlayerPos(id, X, Y, Z);
SetPlayerPos(playerid, X+2, Y, Z);
return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy admin\"); return 1; }
}
CMD:get(playerid, params[])
{
if(pi[playerid][admin] >= 2)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid,feher,\"Használat: /get [id]\");
new Float: X, Float: Y, Float: Z;
GetPlayerPos(playerid, X, Y, Z);
SetPlayerPos(id, X+2, Y, Z);
return 1;
} else { SendClientMessage(playerid, szurke, \"Nem vagy admin\"); return 1; }
}
CMD:veh(playerid,params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][vip] != 0)
{
new kocsi;
if(sscanf(params,\"d\",kocsi)) return SendClientMessage(playerid,feher,\"Használat: /veh [kocsiid]\");
new Float: X, Float: Y, Float: Z;
GetPlayerPos(playerid, X, Y, Z);
CreateVehicle(kocsi,X,Y+2,Z,0,0,0,600);
msg(playerid,\"Kocsi lekérve.\");
} else msg(playerid,\"Nem vagy 2es admin.\");
return 1;
}
CMD:spec(playerid,params[])
{
if(pi[playerid][admin] >= 1)
{
    new spec;
    if(sscanf(params,\"u\",spec)) return SendClientMessage(playerid, feher, \"Használat: /spec [id]\");
    TogglePlayerSpectating(playerid, 1);
       PlayerSpectatePlayer(playerid, spec);
       SendClientMessage(playerid, feher, \"Megfigyelés bekapcsolva.\");
       SetPlayerInterior(playerid,GetPlayerInterior(spec));
       SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(spec));
} else { SendClientMessage(playerid, piros, \"Nem vagy admin.\"); }
return 1;
}
CMD:ip(playerid,params[])
{
if(pi[playerid][admin] >= 1 || pi[playerid][vip] != 0)
{
    new id;
    if(sscanf(params,\"u\",id)) return SendClientMessage(playerid, feher, \"Használat: /ip [id]\");
       new ipci[16];
       GetPlayerIp(id,ipci,16);
       format(str,128,\"%s IP: %s\",nev(id),ipci);
       SendClientMessage(playerid, -1, str);
} else { SendClientMessage(playerid, piros, \"Nem vagy admin.\"); }
return 1;
}
CMD:specki(playerid)
{
if(pi[playerid][admin] >= 1)
{
    SendClientMessage(playerid, feher, \"Megfigyelés kikapcsolva.\");
    TogglePlayerSpectating(playerid, 0);
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,0,0,5);
} else { SendClientMessage(playerid, piros, \"Nem vagy admin.\"); }
return 1;
}
stock nev(id)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(id,name,sizeof(name));
return name;
}
stock msg(id,uzi[])
{
SendClientMessage(id,feher,uzi);
}
stock nullazas(id)
{
lepve[id] = 0;
pi[id][admin] = 0;
pi[id][ban] = 0;
pi[id][as] = 0;
pi[id][vip] = 0;
rpw[id] = 0;
}
stock save(id)
{
new fajl[128];
format(fajl,sizeof(fajl),\"/badmin/%s.ini\",nev(id));
if(fexist(fajl))
{
   dini_IntSet(fajl,\"admin\", pi[id][admin]);
   dini_IntSet(fajl,\"ban\", pi[id][ban]);
   dini_IntSet(fajl,\"as\", pi[id][as]);
   dini_IntSet(fajl,\"vip\", pi[id][vip]);
   dini_Set(fajl,\"aname\", pi[id][aname]);
}
}
stock load(id)
{
new fajl[128];
format(fajl,sizeof(fajl),\"/badmin/%s.ini\",nev(id));
if(fexist(fajl))
{
pi[id][admin] = dini_Int(fajl,\"admin\");
pi[id][ban] = dini_Int(fajl,\"ban\");
pi[id][as] = dini_Int(fajl,\"as\");
pi[id][vip] = dini_Int(fajl,\"vip\");
format(pi[id][aname],24,\"%s\",dini_Get(fajl,\"aname\"));
}
}

 

A regisztrációs rendszer mûködéséhez létre kell hozni a scriptfiles mappában egy badmin mappát.

// Azért \'badmin\', mert elõször BenceeeAdmin-t akartam, de itt fórumon is páran DAdmin néven ismerik, ezért marad DAdmin.




Máskor ne használj code-t a spoilerbe mert nem látszik.
« Utoljára szerkesztve: 2012. május 12. - 20:42:07 írta N@rbirock »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal