Szerző Téma: Adminscript, strtok  (Megtekintve 799 alkalommal)

Nem elérhető Benceee

  • 4785
    • Profil megtekintése
Adminscript, strtok
« Dátum: 2011. augusztus 03. - 07:58:54 »
0 Show voters
ÜDv, egy adminscriptet írok, strtok-kal. Nos, /adadmin, /kick mûködik, de a /rejtõzés az már nem.
Ez mûködik:
 
   if(strcmp(cmd, \"/adadmin\", true) == 0)
{
       new string[128];
       new tmp[256];
       new player[MAX_PLAYER_NAME], giveplayer[MAX_PLAYER_NAME];
       new giveplayerid;
       if(PlayerInfo[playerid][AdminLevel] == 3 || IsPlayerAdmin(playerid))
       {
               tmp = strtok(cmdtext, idx);
               if(!strlen(tmp))
               {
                       SendClientMessage(playerid, COLOR_ORANGE, \"Használat: /adadmin <id> <szint>\");
                       return 1;
               }
               giveplayerid = ReturnUser(tmp);
               tmp = strtok(cmdtext, idx);
               new level = strval(tmp);
               if(giveplayerid != INVALID_PLAYER_ID)
               {
                       GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                       GetPlayerName(playerid, player, sizeof(player));
                       PlayerInfo[giveplayerid][AdminLevel] = level;
                       format(string, sizeof(string), \"*** %s %d szintû adminnak nevezett ki.\", player, level);
                       SendClientMessage(giveplayerid, COLOR_BLUE, string);
                       format(string, sizeof(string), \"Kinevezted %s-t %d szintû adminná\",  giveplayer,PlayerInfo[giveplayerid][AdminLevel]);
                       SendClientMessage(playerid, COLOR_RED, string);
               }
               else if(giveplayerid == INVALID_PLAYER_ID)
               {
                       format(string, sizeof(string), \"%i nem elérhetõ.\", giveplayerid);
                       SendClientMessage(playerid, COLOR_RED, string);
               }
       }
       else
       {
           SendClientMessage(playerid, COLOR_RED, \"Nem vagy admin\");
       }
}

 
Ez viszint már nem:
 

if(strcmp(cmd, \"/rejtõzés\", true) == 0)
{
    if(PlayerInfo[playerid][AdminLevel] == 2)
    {
           SendClientMessage(playerid, COLOR_WHITE, \"Rejtõzködõs üzemmódba álltál.\");
    PlayerInfo[playerid][Rejtozes] = 1;
    return 1;
        } else { SendClientMessage(playerid, COLOR_WHITE, \"Nem vagy admin.\"); return 1; }
}

 
Ez mitõl lehet? A módban az alap parancsok sem jók, ( /help )
Valami más is kéne?

Adminscript, strtok
« Válasz #1 Dátum: 2011. augusztus 03. - 09:49:31 »
0 Show voters
Az egész az visszatér?
( return1; , return0;  )

Kovacs_Bela

  • Vendég
Adminscript, strtok
« Válasz #2 Dátum: 2011. augusztus 03. - 11:09:19 »
0 Show voters
én nem playerinfo-val használnám hanem
mod elejére
***********************************
[pawn]new Admin[MAX_PLAYERS];[/pawn]
***********************************
Használata:
[pawn]if(Admin[playerid] == (adminszint))[/pawn]
ezzel lekérded hogy admin-e
[pawn]Admin[playerid] == (adminszint);[/pawn]
Ezzel pedig admint adsz vele :)

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal