Would you like to react to this message? Create an account in a few clicks or log in to continue.

    [TUT] VIP SYSTEM

    DooM
    DooM
    Moderátor


    Posts : 39
    Join date : 27.04.2011

    [TUT] VIP SYSTEM Empty [TUT] VIP SYSTEM

    Odoslať pre DooM St apríl 27, 2011 1:50 am

    Ahojte udělám vám tu základy VIP systému aby si ho mohl udělat každý

    1.Nahoru do módu/FS

    kód:
    new Vip[MAX_PLAYERS]

    2.Budeme potřebovat params tak budeme pracovat s dcmd.
    Takze k definicim si dame :


    kód:
    #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1

    3.Ted jdeme na prikazy.Do OnPlayerCommandText si dáme :

    kód:
    dcmd(odebratvip,10,cmdtext);
    dcmd(nastavitvip,11,cmdtext);

    4.Kamkoli do modu/FS nejlepe na konec si dame :

    kód:
    dcmd_nastavitvip(playerid,params[])
    {
    new id = strval(params);
    new string[256];
    if (!strlen(params)) return SendClientMessage(playerid,  barva, "Použijte: /nastavitvip ID");// pokud napise nastavitvip bez id vypise se mu tato zprava
    else if(!IsPlayerConnected(id)) return SendClientMessage(playerid,  barva, "Toto ID není pripojené!");// pokud zadane ID neni na serveru pripojene
    else if(!IsPlayerAdmin(playerid)) return  SendClientMessage(playerid,  barva, "Nejste RCON Admin");// pokud ten co nastavuje VIP neni Rcon Admin
    else {// jinak
    {
    format(string, sizeof(string), "Hl.Admin %s dal VIP Účet hráči %s !",//vypsani zpravy ze nejaky hrac dostal VIP
    PlayerName(playerid), PlayerName(id));
    SendClientMessageToAll(barva, string);
    Vip[id] = 1;// nastavi  hodnotu Vip na 1
    }
    }
    return 1;
    }

    dcmd_odebratvip(playerid,params[])
    {
    new id = strval(params);
    new string[256];
    if (!strlen(params)) return SendClientMessage(playerid,  barva, "Použijte: /odebratvip ID");// pokud napise nastavitvip bez id vypise se mu tato zprava
    else if(!IsPlayerConnected(id)) return SendClientMessage(playerid,  barva, "Toto ID není pripojené!");// pokud zadane ID neni na serveru pripojene
    else if(!IsPlayerAdmin(playerid)) return  SendClientMessage(playerid,  barva, "Nejste RCON Admin");// pokud ten co zadava /nastavitvip neni Rcon Admin
    else {//jinak
    {
    format(string, sizeof(string), "Hl.Admin %s odebral VIP Účet hráči %s !", PlayerName(playerid), PlayerName(id));
    SendClientMessageToAll(barva, string);
    Vip[id] = 0;// nastavi zadanemu ID Vip na 0
    }
    }
    return 1;
    }

    5. Do OnPlayerConnect nebo OnPlayerSpawn si dáme:

    kód:
    Vip[playerid]=dUserINT(PlayerName(playerid)).("Vip ucet");

    aby nám to načetlo VIP


    6. Do OnPlayerDisconnect si dáme

    kód:
    dUserSetINT(PlayerName(playerid)).("Vip ucet",Vip[playerid]);

    Aby se nám VIP účet ukládal


    A ted ukazka jak se vytvareji prikazy pro Vip :

    kód:
    if (strcmp("/prikaz", cmdtext, true, 10) == 0)
          {
                  if(Vip[playerid]==1){//pokud je VIP 1
            SetPlayerHealth(playerid,100); //nastavi zivoty na 100
            SendClientMessage(playerid,barva,"Doplnil jste si HP pomoci VIP");
                }
                else if(Vip[playerid]==0){//pokud je Vip 0
                SendClientMessage(playerid,barva,"Nevlastnite VIP Ucet");
                }
            return 1;
          }

    Doufam ze vam muj TUT pomohl
    Psal sem tu zde v okynku tak kdyby byly errory piste:)

      Práve je So apríl 27, 2024 8:26 pm