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: Dj.BL3ND - 2012. február 26. - 15:18:55

Cím: ennek a parancsnak mi a baja /setlevel
Írta: Dj.BL3ND - 2012. február 26. - 15:18:55
hello all van neekm egy /setlevel parancsom de valamiért amikor rconal beirom h /setlevel 0 3 akkor azt irja ki h LuKe adott neked egy 0-ás szintû admint elõre is köszi
Parancs:
[pawn]CMD:setlevel(playerid, params[])
{
if(IsPlayerAdmin(playerid) || Info[playerid][Admin] == 1)
{
      new id;
      new szint;
            new string[512];
      if(sscanf(params,\"ud\",id, szint)) return SendClientMessage(playerid,feher,\"Használat: /setlevel [id] [1-3]\");
      if(!IsPlayerConnected(id)) return SendClientMessage(playerid, szurke, \"Nincs ilyen ID!\");
      GetPlayerName(playerid, nev, sizeof(nev));
      GetPlayerName(id, nev2, sizeof(nev2));
      format(string, sizeof(string), \"%s felkért téged %d szintû adminnak.\", nev, szint);
      SendClientMessage(id, neon, string);
      format(string, sizeof(string), \"Felkérted %s-t %d szintû adminnak.\", nev2, szint);
      SendClientMessage(playerid, piros, string);
      Info[id][Admin] = szint;
} else { SendClientMessage(playerid, szurke, \"{E60000}HIBA: {FFFFFF}Nem Vagy Admin\"); return 1; }
return 1;
}[/pawn]
By HSWT<LuKe>
Cím: ennek a parancsnak mi a baja /setlevel
Írta: CANNONN - 2012. február 26. - 15:23:46
Szia, szerintem az ud helyett rd kell. De mondjuk, utólag megnéztem, tök mindegy.
Cím: ennek a parancsnak mi a baja /setlevel
Írta: Dj.BL3ND - 2012. február 26. - 15:27:47
igy sem jo
Cím: ennek a parancsnak mi a baja /setlevel
Írta: szabyxxx - 2012. február 26. - 15:30:55
próbáld meg így
[pawn]CMD:setlevel(playerid, params[]) {
if(PlayerInfo[playerid][LoggedIn] == 1) {
   if(PlayerInfo[playerid][Level] >= 10 || IsPlayerAdmin(playerid)) {
       new tmp[256], tmp2[256], Index;      tmp = strtok(params,Index), tmp2 = strtok(params,Index);
       if(!strlen(params)) return SendClientMessage(playerid, red, \"Használat: /setlevel [playerid] [szint]\");
       new player1, level, playername[MAX_PLAYER_NAME], adminname[MAX_PLAYER_NAME], string[128];
      player1 = strval(tmp);
      if(!strlen(tmp2)) return SendClientMessage(playerid, red, \"Használat: /setlevel [playerid] [szint]\");
      level = strval(tmp2);
      if(IsPlayerConnected(player1) && player1 != INVALID_PLAYER_ID) {
         if(PlayerInfo[player1][LoggedIn] == 1) {
            if(level > ServerInfo[MaxAdminLevel] ) return SendClientMessage(playerid,red,\"HIBA: Nemlétezõ szint\");
            if(level == PlayerInfo[player1][Level]) return SendClientMessage(playerid,red,\"HIBA: A játékosnak már megvan ez a szintje\");
                CMDMessageToAdmins(playerid,\"SETLEVEL\");
            GetPlayerName(player1, playername, sizeof(playername));   GetPlayerName(playerid, adminname, sizeof(adminname));
                new year,month,day;   getdate(year, month, day); new hour,minute,second; gettime(hour,minute,second);
            if(level > 0) format(string,sizeof(string),\"Administrator %s has set you to Administrator Status [level %d]\",adminname, level);
            else format(string,sizeof(string),\"Administrator %s has set you to Player Status [level %d]\",adminname, level);
            SendClientMessage(player1,blue,string);
            if(level > PlayerInfo[player1][Level]) GameTextForPlayer(player1,\"Promoted\", 2000, 3);
            else GameTextForPlayer(player1,\"Demoted\", 2000, 3);
            format(string,sizeof(string),\"Az admin szintjét fokoztad %s-nek szint %d nap %d/%d/%d óra %d:%d:%d\", playername, level, day, month, year, hour, minute, second); SendClientMessage(playerid,blue,string);
            format(string,sizeof(string),\"Adminisztrátor %s fokozta az admin szintjét %s-nek szint %d nap %d/%d/%d óra %d:%d:%d\",adminname, playername, level, day, month, year, hour, minute, second);
            SaveToFile(\"AdminLog\",string);
            dUserSetINT(PlayerName2(player1)).(\"level\",(level));
            PlayerInfo[player1][Level] = level;
            return PlayerPlaySound(player1,1057,0.0,0.0,0.0);
         } else return SendClientMessage(playerid,red,\"HIBA: A játékos nincs regisztrálva vagy bejelentkezve, hogy fokozd a szintjét\");
      } else return SendClientMessage(playerid, red, \"Játékos nincs csatlakozva\");
   } else return SendClientMessage(playerid,red,\"HIBA: Ehez a parancshoz 5-es szintû adminnak kéne lenned!\");
} else return SendClientMessage(playerid,red,\"HIBA: A parancs használatához bekell jelentkezned\");
}[/pawn]
Cím: ennek a parancsnak mi a baja /setlevel
Írta: Norby - 2012. február 26. - 15:33:14
Próbáltad frissíteni az sscanfot ??
Cím: ennek a parancsnak mi a baja /setlevel
Írta: CANNONN - 2012. február 26. - 15:34:20
Nem találok semmi hibát. Valószínû az sscanf-al lessz a probléma, mint ahogy azt már az elõttem szóló említette.
 
Idézetet írta: Szabyxxx date=1330266655\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"17585\" data-ipsquote-contentclass=\"forums_Topic
próbáld meg így
 
CMD:setlevel(playerid, params[]) {
if(PlayerInfo[playerid][LoggedIn] == 1) {
if(PlayerInfo[playerid][Level] >= 10 || IsPlayerAdmin(playerid)) {
    new tmp[256], tmp2[256], Index;      tmp = strtok(params,Index), tmp2 = strtok(params,Index);
    if(!strlen(params)) return SendClientMessage(playerid, red, \"Használat: /setlevel [playerid] [szint]\");
       new player1, level, playername[MAX_PLAYER_NAME], adminname[MAX_PLAYER_NAME], string[128];
   player1 = strval(tmp);
   if(!strlen(tmp2)) return SendClientMessage(playerid, red, \"Használat: /setlevel [playerid] [szint]\");
   level = strval(tmp2);
   if(IsPlayerConnected(player1) && player1 != INVALID_PLAYER_ID) {
      if(PlayerInfo[player1][LoggedIn] == 1) {
         if(level > ServerInfo[MaxAdminLevel] ) return SendClientMessage(playerid,red,\"HIBA: Nemlétezõ szint\");
         if(level == PlayerInfo[player1][Level]) return SendClientMessage(playerid,red,\"HIBA: A játékosnak már megvan ez a szintje\");
                CMDMessageToAdmins(playerid,\"SETLEVEL\");
         GetPlayerName(player1, playername, sizeof(playername));   GetPlayerName(playerid, adminname, sizeof(adminname));
             new year,month,day;   getdate(year, month, day); new hour,minute,second; gettime(hour,minute,second);
         if(level > 0) format(string,sizeof(string),\"Administrator %s has set you to Administrator Status [level %d]\",adminname, level);
         else format(string,sizeof(string),\"Administrator %s has set you to Player Status [level %d]\",adminname, level);
         SendClientMessage(player1,blue,string);
         if(level > PlayerInfo[player1][Level]) GameTextForPlayer(player1,\"Promoted\", 2000, 3);
         else GameTextForPlayer(player1,\"Demoted\", 2000, 3);
         format(string,sizeof(string),\"Az admin szintjét fokoztad %s-nek szint %d nap %d/%d/%d óra %d:%d:%d\", playername, level, day, month, year, hour, minute, second); SendClientMessage(playerid,blue,string);
         format(string,sizeof(string),\"Adminisztrátor %s fokozta az admin szintjét %s-nek szint %d nap %d/%d/%d óra %d:%d:%d\",adminname, playername, level, day, month, year, hour, minute, second);
         SaveToFile(\"AdminLog\",string);
         dUserSetINT(PlayerName2(player1)).(\"level\",(level));
         PlayerInfo[player1][Level] = level;
         return PlayerPlaySound(player1,1057,0.0,0.0,0.0);
      } else return SendClientMessage(playerid,red,\"HIBA: A játékos nincs regisztrálva vagy bejelentkezve, hogy fokozd a szintjét\");
   } else return SendClientMessage(playerid, red, \"Játékos nincs csatlakozva\");
} else return SendClientMessage(playerid,red,\"HIBA: Ehez a parancshoz 5-es szintû adminnak kéne lenned!\");
} else return SendClientMessage(playerid,red,\"HIBA: A parancs használatához bekell jelentkezned\");
}

 

Ez így eléggé ki van másolva egy adminscriptbõl, 100%, hogy nem fog mûködni.
Cím: ennek a parancsnak mi a baja /setlevel
Írta: Dj.BL3ND - 2012. február 26. - 15:43:34
h tudom frissteni a sscanf-ot?
Cím: ennek a parancsnak mi a baja /setlevel
Írta: CANNONN - 2012. február 26. - 15:45:07
A legújabbat leszeded innen: http://forum.sa-mp.com/showthread.php?t=120356
Cím: ennek a parancsnak mi a baja /setlevel
Írta: szabyxxx - 2012. február 26. - 15:45:29
Ja admin  scriptbõl másoltam...
Cím: ennek a parancsnak mi a baja /setlevel
Írta: Dj.BL3ND - 2012. február 26. - 15:55:07
még igy se se jo :(
Cím: ennek a parancsnak mi a baja /setlevel
Írta: CANNONN - 2012. február 26. - 16:05:41
Egy hibát találtam, hiányzik a nev, nev2 változója.
[pawn]new nev[MAX_PLAYER_NAME], nev2[MAX_PLAYER_NAME];[/pawn]
Cím: ennek a parancsnak mi a baja /setlevel
Írta: Dj.BL3ND - 2012. február 26. - 17:10:33
az az elején van definiálva