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
2.Budeme potřebovat params tak budeme pracovat s dcmd.
Takze k definicim si dame :
3.Ted jdeme na prikazy.Do OnPlayerCommandText si dáme :
4.Kamkoli do modu/FS nejlepe na konec si dame :
5. Do OnPlayerConnect nebo OnPlayerSpawn si dáme:
aby nám to načetlo VIP
6. Do OnPlayerDisconnect si dáme
Aby se nám VIP účet ukládal
A ted ukazka jak se vytvareji prikazy pro Vip :
Doufam ze vam muj TUT pomohl
Psal sem tu zde v okynku tak kdyby byly errory piste:)
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:)