GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: Benceee - 2011. Augusztus 03. - 07:58:54

Cím: Adminscript, strtok
Írta: Benceee - 2011. Augusztus 03. - 07:58:54
Ü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?
Cím: Adminscript, strtok
Írta: kadaradam - 2011. Augusztus 03. - 09:49:31
Az egész az visszatér?
( return1; , return0;  )
Cím: Adminscript, strtok
Írta: Kovacs_Bela - 2011. Augusztus 03. - 11:09:19
é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 :)