Deine Premiumränge kannste mit PVarInt machen .
Teil 1: Premium Ränge
stock Register(playerid,key[])
{
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
dini_Create(Spielerdatei);
dini_Set(Spielerdatei,"Passwort",key);
SetPVarInt(playerid,"Premium",0);//NAch Reigstration kein Premiun (Rank 0)
return 1;
}
stock LoadAccount(playerid)
{
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
SetPVarInt(playerid,"Premium",dini_Int(Spielerdatei,"Premium")); //Hier wird der Premiumrang geladen
return 1;
}
stock SpielerSpeichern(playerid)
{
if(GetPVarInt(playerid,"loggedin")==1)
{
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
dini_IntSet(Spielerdatei,"Premium",GetPVarInt(playerid,"Premium"));//Nach dem Auslogen wir der Aktuelle Premiumrang gespericher.
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
if(GetPVarInt(playerid,"loggedin")==1)
{
SpielerSpeichern(playerid); //Geht zum Stock SpielerSpeichern und Speichert alles was im Stock steht
}
return 1;
}
-----------------------------------------------------------------------------
Teil 2: Premium werden
Ein Admin nutzt ein Befehl um einen andren einen bestimmten Premiumrang zu geben
ocmd:makepremium(playerid,params[])//Der Befehl
{
if(!isPlayerAnAdmin(playerid,1))//Abfrage ob der Spieler ein Admin ist.
{
new pID, premiumrang;
if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,Hellrot,"Der Spieler is nicht online.");
if(sscanf(params,"ui",pID,rang))return SendClientMessage(playerid,Grau,"Nutzung: /makepremium [ID] [Premiumrang]");
if(premiumrang<1||premiumrang>5)return SendClientMessage(playerid,Hellrot,"Bitte geben Sie einen gültigen Rang an.");
SetPVarInt(pID,"Premium",premiumrang);
SpielerSpeichern(pID);
SendClientMessage(pID,Gelb,"Du hast einen neuen Premiumrang erhalten.");//Nachicht an den Spieler
SendClientMessage(playerid,Gelb,"Du hast dem Spieler einen neuen Premiumrang zugestellt.");//Nachicht an den Admin
return 1;
}
return 1;
}