Szerző Téma: AdminSzolgálat  (Megtekintve 1200 alkalommal)

AdminSzolgálat
« Dátum: 2014. Augusztus 13. - 21:44:15 »
0 Show voters
Olyan kód kéne amibe belehet lépni adminszolgálatba és ki lehet lépni! de a 5 os szintû alattiak ne tudjanak adminszolgálatba lépni! ladmin4v2 adminrendszert használok! és itt egy if hát ha kell segítségre! és /adminsz legyen a parancs! :D
[pawn]if(IsPlayerAdminLevel(playerid, 5))[/pawn]
Köszi! más már nem kell csak ez!

AdminSzolgálat
« Válasz #1 Dátum: 2014. Augusztus 13. - 22:08:10 »
0 Show voters
Gyorsan összedobtam :D
ZCMD szükséges: (nem feltétlen, de így egyszerûbb a parancskezelés)
 

#include <zcmd>

 
Ha tárolod valamiben a játékos adatait, (pl. ha úgy hívod meg hogy pInfo[playerid][pIP] esetleg, akkor abba csinálj egy olyat, hogy \"bool:Aszoli\". A scriptben erre fogok hivatkozni.
Csinálok egy ellenõrzõ stockot, hogy könnyû legyen neked a felhasználása:
 

stock AdminSzolgalat(playerid) {
    return pInfo[playerid][Aszoli];
}

 


CMD:adminsz(playerid) {
    if(!IsPlayerAdminLevel(playerid, 5)) return SendClientMessage(playerid,0xff0000ff,\"A parancsot csak 5-ös adminszinttõl lehet használni!\");
    if(AdminSzolgalat(playerid) == true) {
        pInfo[playerid][Aszoli] = false;
        SendClientMessage(playerid,-1,\"Sikeresen kiléptél az adminszolgálatból!\");
    } else {
        pInfo[playerid][Aszoli] = true;
        SendClientMessage(playerid,-1,\"Sikeresen adminszolgálatba léptél!\");
    }
    return 1;
}

AdminSzolgálat
« Válasz #2 Dátum: 2014. Augusztus 13. - 22:41:57 »
0 Show voters
[pawn]E:\\cucc,server\\igazi szerver\\filterscripts\\adminszolgalat.pwn(7) : error 017: undefined symbol \"pInfo\"
E:\\cucc,server\\igazi szerver\\filterscripts\\adminszolgalat.pwn(7) : warning 215: expression has no effect
E:\\cucc,server\\igazi szerver\\filterscripts\\adminszolgalat.pwn(7) : error 001: expected token: \";\", but found \"]\"
E:\\cucc,server\\igazi szerver\\filterscripts\\adminszolgalat.pwn(7) : error 029: invalid expression, assumed zero
E:\\cucc,server\\igazi szerver\\filterscripts\\adminszolgalat.pwn(7) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664           Copyright © 1997-2006, ITB CompuPhase
4 Errors.[/pawn]
[pawn]#include <a_samp>
#include <zcmd>
#endif
stock AdminSzolgalat(playerid) {
    return pInfo[playerid][Aszoli];
}
public OnPlayerCommandText(playerid, cmdtext[])
{
CMD:adminsz(playerid) {
    if(!IsPlayerAdminLevel(playerid, 5)) return SendClientMessage(playerid,0xff0000ff,\"A parancsot csak 5-ös adminszinttõl lehet használni!\");
    if(AdminSzolgalat(playerid) == true) {
        pInfo[playerid][Aszoli] = false;
        SendClientMessage(playerid,-1,\"Sikeresen kiléptél az adminszolgálatból!\");
    } else {
        pInfo[playerid][Aszoli] = true;
        SendClientMessage(playerid,-1,\"Sikeresen adminszolgálatba léptél!\");
    }
    return 1;
}
return 0;
}
[/pawn]
miért nem jó? :/

Nem elérhető ROOCK

  • 183
    • Profil megtekintése
AdminSzolgálat
« Válasz #3 Dátum: 2014. Augusztus 13. - 22:59:35 »
0 Show voters
olvass angolul mert nincs definniálva a pInfo és vedd ki az #endif-et
 
enum pInfo
{
Aszoli;
}
new PlayerInfo[MAX_PLAYERS][pInfo];

AdminSzolgálat
« Válasz #4 Dátum: 2014. Augusztus 13. - 23:12:46 »
0 Show voters
Semmi ugyan az!

Nem elérhető rayle

  • 174
    • Profil megtekintése
AdminSzolgálat
« Válasz #5 Dátum: 2014. Augusztus 13. - 23:22:22 »
0 Show voters
ZCMD:
 
CMD:adminsz(playerid)
{
    if(!IsPlayerAdminLevel(playerid, 5)) return 1;
    if(AdminSzolgalat[playerid])
    {
        AdminSzolgalat[playerid] = false;
        SendClientMessage(playerid, -1, \"Kiléptél az adminszolgálatból!\");
    }
    else
    {
        AdminSzolgalat[playerid] = true;
        SendClientMessage(playerid, -1, \"Adminszolgálatba léptél!\");
    }
    return 1;
}

 
Alap parancsfeldolgozó:
 
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(!strcmp(cmdtext, \"/adminsz\", true))
    {
        if(!IsPlayerAdminLevel(playerid, 5)) return 1;
        if(AdminSzolgalat[playerid])
        {
            AdminSzolgalat[playerid] = false;
            SendClientMessage(playerid, -1, \"Kiléptél az adminszolgálatból!\");
        }
        else
        {
            AdminSzolgalat[playerid] = true;
            SendClientMessage(playerid, -1, \"Adminszolgálatba léptél!\");
        }
        return 1;
    }
}

AdminSzolgálat
« Válasz #6 Dátum: 2014. Augusztus 13. - 23:25:14 »
0 Show voters
E:\\cucc,server\\igazi szerver\\filterscripts\\adminszolgalat.pwn(13) : error 028: invalid subscript (not an array or too many subscripts): \"AdminSzolgalat\"
E:\\cucc,server\\igazi szerver\\filterscripts\\adminszolgalat.pwn(13) : warning 215: expression has no effect
E:\\cucc,server\\igazi szerver\\filterscripts\\adminszolgalat.pwn(13) : error 001: expected token: \";\", but found \"]\"
E:\\cucc,server\\igazi szerver\\filterscripts\\adminszolgalat.pwn(13) : error 029: invalid expression, assumed zero
E:\\cucc,server\\igazi szerver\\filterscripts\\adminszolgalat.pwn(13) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase
 
4 Errors.
« Utoljára szerkesztve: 2014. Augusztus 13. - 23:27:40 írta RightonTime »

AdminSzolgálat
« Válasz #7 Dátum: 2014. Augusztus 13. - 23:29:54 »
0 Show voters
Gondoltam berakod a módodba.
Bele kellene.. de amúgy akkor átírom, de rakd bele. Amúgy nem hiszem hogy ezt nagyon nehéz lenne. Csupán egyetlen egy változó, és az értékét változtatjuk
Spoiler for Új:
[pawn]
new bool:Aszolgalat[MAX_PLAYERS];
stock Aszoli(playerid) {
    return Aszolgalat[playerid];
}
CMD:adminsz(playerid) {
    if(!IsPlayerAdminLevel(playerid, 5)) return SendClientMessage(playerid,0xff0000ff,\"A parancsot csak 5-ös adminszinttõl lehet használni!\");
    if(Aszoli(playerid) == true) {
        Aszolgalat[playerid] = false;
        SendClientMessage(playerid,-1,\"Sikeresen kiléptél az adminszolgálatból!\");
    } else {
        Aszolgalat[playerid] = true;
        SendClientMessage(playerid,-1,\"Sikeresen adminszolgálatba léptél!\");
    }
    return 1;
}
[/pawn]
Spoiler for ROOCK-nak!:
Fordítva kellett volna :D
[pawn]
    enum PlayerInfo
    {
    Aszoli;
    }
    new pInfo[MAX_PLAYERS][PlayerInfo];[/pawn]
E: rayle megelõzött :D amúgy nincs neki még ilyen változója

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
AdminSzolgálat
« Válasz #8 Dátum: 2014. Augusztus 13. - 23:39:38 »
0 Show voters
Tessék:
[pawn]#include a_samp
#include zcmd
#define ASzolgalat(%0) GetPVarInt(playerid, \"adminsz\")
CMD:adminszolgalat(playerid) {
    if(!IsPlayerAdminLevel(playerid, 5)) return SendClientMessage(playerid,0xff0000ff,\"A parancsot csak 5-ös adminszinttõl lehet használni!\");
SetPVarInt(playerid, \"adminsz\", !ASzolgalat(playerid));
SendClientMessage(playerid, -1, ASzolgalat(playerid)?(\"Adminszolgálatba léptél!\"):(\"Elhagytad az adminszolgálatot!\"));
return 1;
}
[/pawn]
Lekérdezés hogy a playerid admin szolgálatban van-e:
[pawn]ASzolgalat(playerid)[/pawn]

AdminSzolgálat
« Válasz #9 Dátum: 2014. Augusztus 13. - 23:58:26 »
0 Show voters
A Flashé kisebb volt de az õvé mûködik! köszi flash!

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal