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

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Szkript kérések => A témát indította: Bone - 2010. december 26. - 10:17:41

Cím: Adminscript, regisztráció nélkül
Írta: Bone - 2010. december 26. - 10:17:41
Na szóval szeretnék egy olyan admin scriptet ami ugyan névhez kötött de amilkor belép az admin még semmilyen joga nincs, de ha beírja a /admin [jelszó]-t és egyezik a nevével akkor beengedi adminnak, de viszont nem kell regisztrálni a szerveren. Köszönöm elõre is!
Cím: Adminscript, regisztráció nélkül
Írta: nyE - 2010. december 26. - 10:30:42
http://solidfiles.com/d/4c97a/
Cím: Adminscript, regisztráció nélkül
Írta: Bone - 2010. december 26. - 10:36:00
Köszönöm, de én nem RCONra gondoltam mert az a FõAdmin hanem olyanra amiben vannak admin szintek.
Cím: Adminscript, regisztráció nélkül
Írta: nyE - 2010. december 26. - 10:38:00
http://sampforum.hu/index.php?topic=2727.msg31954#msg31954
Cím: Adminscript, regisztráció nélkül
Írta: Bone - 2010. december 26. - 10:47:20
Még egyszer köszönöm, de ez szerintem nem olyan hogy ha az admin beírja hogy /admin [JELSZAVA] akkor adja meg neki az admint, valahogy ilyet kéne, de ha nincs akkor marad a normális adminscript.
Cím: Adminscript, regisztráció nélkül
Írta: nyE - 2010. december 26. - 11:01:32
Most az nem mindegy, hogy azt írja be, hogy /rcon login jelszó vagy /admin jelszó?
Keress!
Cím: Adminscript, regisztráció nélkül
Írta: Iceaac - 2010. december 26. - 11:33:46
Mit keressen? Nincs ilyen script.
Cím: Adminscript, regisztráció nélkül
Írta: Bone - 2010. december 26. - 17:07:06
Öhm azért keretsem iylet, mert nem akarok minden adminnak RCON-t adni, mert fõadmin egy kicsit nagy rang mindenkinek. Köszönöm a segítséget.
Cím: Adminscript, regisztráció nélkül
Írta: Iceaac - 2010. december 26. - 17:57:17
Ha lesz idõm, megírom, most sajnos ennyire sincs.  :dead:
Cím: Adminscript, regisztráció nélkül
Írta: Bone - 2010. december 26. - 18:12:34
Köszi Iceaac!
Cím: Adminscript, regisztráció nélkül
Írta: Iceaac - 2010. december 27. - 11:18:59
Kész.
Töltsd le a ZCMDt és a SSCANFt, ha nincs meg, innen: http://sampforum.hu/index.php?topic=4400.0
A szkripted elejére, az #include <a_samp> alá:
 
#include <zcmd>
#include <sscanf>

 
Ezzel beágyaztuk a zcmd és a sscanf függvénykönyvtárakat.
Most defináljuk a maximum admin jelszó hosszát(ezt az include sorok alá írd):
 
#define MAX_JELSZO_HOSSZ 16

 
Ezzel lehet belépni adminisztrátornak(3 admint írtam, írd át többre, csak az utolsó else if sort kell másolnod):
 
CMD:admin(playerid, params[])
{
new jelszo[MAX_JELSZO_HOSSZ+1], nev[20];
if (sscanf(params, \"s[MAX_JELSZO_HOSSZ+1]\", jelszo)) return SendClientMessage(playerid, 0xFF0000FF, \"Használat: /admin [jelszó]\");
GetPlayerName(playerid, nev, 20);
if (!strcmp(nev, \"admin_név_1\", true) && !strcmp(jelszo, \"admin_1_jelszava\", false)) SetPVarInt(playerid, \"Admin\", 1);
else if (!strcmp(nev, \"admin_név_2\", true) && !strcmp(jelszo, \"admin_2_jelszava\", false)) SetPVarInt(playerid, \"Admin\", 1);
        else if (!strcmp(nev, \"admin_név_3\", true) && !strcmp(jelszo, \"admin_3_jelszava\", false)) SetPVarInt(playerid, \"Admin\", 1);
else return SendClientMessage(playerid, 0xFF0000FF, \"Nem egy admin nevével csatlakoztál fel vagy rossz jelszót adtál meg!\");
return 1;
}

 
Ezzel tudjuk ellenõrizni, hogy adminisztrátor a felhasználó, vagy sem:
 
stock IsAnAdmin(playerid) return GetPVarInt(playerid, \"Admin\");

 
És itt egy példa egy admin parancsra:
 
CMD:adminuzenet(playerid, params[])
{
new auzenet[128], kuzenet[128], nev[20];
if (sscanf(params, \"s\", auzenet)) return SendClientMessage(playerid, 0xFF0000FF, \"Használat: /adminuzenet [üzenet] - mindenkinek elküldi az üzenetet zöld színnel\");
if (!IsAnAdmin(playerid)) return SendClientMessage(playerid, 0xFF0000FF, \"Ezt a parancsot csak adminisztrátorok használhatják.\");
        GetPlayerName(playerid, nev, 20);
format(kuzenet, 128, \"Admin %s: %s\", nev, auzenet);
SendClientMessageToAll(0x00FF00FF, kuzenet);
return 1;
}

 
Ha bármi gond van, szólj.
Edit: Mielõtt bárki is belekötne, tudom, hogy pár dolgot máshogy is meg lehet oldani, de így lehet a legkönnyebben megérteni.
Cím: Adminscript, regisztráció nélkül
Írta: Bone - 2010. december 27. - 11:56:31
Nagyon szépen köszönöm, de lennének kérdéseim:
1. Letöltöttem sscanfos dolgot bemásoltam az includes mappába de nem mûködik. A PAWN azt írja hogy nem lehet fájlból kiolvasni a sscanfot.
2. Nem volt plugins mappa a szervermappába, és nem volt plugins sor a server.cfg-ben.
Elõre is köszi a válaszod.
Cím: Adminscript, regisztráció nélkül
Írta: Sheet - 2010. december 27. - 11:59:18
létrehozol egy pluzgind mappát és bemásolod.
cfg-ba a végére beirod hogy plugins sscanf
Cím: Adminscript, regisztráció nélkül
Írta: Iceaac - 2010. december 27. - 12:20:36
Idézetet írta: Bone date=1293447391\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"4909\" data-ipsquote-contentclass=\"forums_Topic
Nagyon szépen köszönöm, de lennének kérdéseim:
1. Letöltöttem sscanfos dolgot bemásoltam az includes mappába de nem mûködik. A PAWN azt írja hogy nem lehet fájlból kiolvasni a sscanfot.
2. Nem volt plugins mappa a szervermappába, és nem volt plugins sor a server.cfg-ben.
Elõre is köszi a válaszod.
 
1. Valószínûleg több pawno van telepítve a gépeden és nem annak az include mappájába tetted be, amiben fordítani akartad a szkriptet.
2. Létrehozod a mappát, beleírod a sort.  ;)
U.I.: Ha nem sikerül, küldök egy plugin mentes régebbi sscanfot, de az valamivel lassabb.