Sziasztok!
Sokat látok olyan kérdést, hogy hogyan tudok magamnak admint adni a szerveremen, mivel ha szerkesztem a fájlt, akkor nem fogadja el a jelszavam...
Most, egy teljesen profi megoldást mutatok nektek, ami eltér a megszokott választól, és egyszerûbb is...
Tehát, ugye, mikor megnyitod a gamemodet, akkor lesz benne egy \"/admintadokvalakinek\" parancs, én például a GodFather \"/makeadmin\" parancsát hozom fel példának...
Vegyük is szemügyre a parancsot:
if(strcmp(cmd, \"/makeadmin\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, \"Használat: /makeadmin [playerid/PartOfName] [level(1-3)]\");
return 1;
}
new para1;
new level;
para1 = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
level = strval(tmp);
if (PlayerInfo[playerid][pAdmin] >= 1337)
{
if(IsPlayerConnected(para1))
{
if(para1 != INVALID_PLAYER_ID)
{
GetPlayerName(para1, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
PlayerInfo[para1][pAdmin] = level;
printf(\"AdmCmd: %s kinevezte %s-t %d szintû adminnak.\", sendername, giveplayer, level);
format(string, sizeof(string), \" Kinevezett %d szintû adminnak %s\", level, sendername);
SendClientMessage(para1, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), \" Kinevezted %s-t %d szintû adminnak.\", giveplayer,level);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, \" Nem vagy jogosult használni ezt a parancsot!\");
}
}
return 1;
}
Ugye, mint látszik, ez a script akkor engedi megadni az admint, ha a parancs küldõje 1337-es, vagy nagyobb admin. Közelítsünk csak rá erre a sorra:
if (PlayerInfo[playerid][pAdmin] >= 1337)
Na hoppá, ezzel kellene kezdeni valamit, hogy amint fellépünk, tudjunk adni magunknak adminjogosultságot..
Hogy is? Az alap samp szervernek van egy olyan brilliáns funkciója, amit sokan elfelejtenek, és ezt a funkciót hívják
RCON-nak...
Módosítsuk is a scriptet:
if (PlayerInfo[playerid][pAdmin] >= 1337 || IsPlayerAdmin(playerid))
Magyarázat: A script akkor engedi ezen a szálon tovább a parancs küldõjét, ha õ 1337-es vagy nagyobb admin
és/vagy RCON admin!
Mi a teendõ? Fellépsz a szerveredre, belépsz az RCON-ba (/rcon login rconjelszó), majd /makeadmin id szint.
Köszönöm a figyelmet.