Ich habe das Problem bei diesem Stock
stock IsPlayerAnAdmin(playerid,rang)
{
if(GetPVarInt(playerid,"Adminlevel")<=rang)return 1;
return 0;
}
Ich kann als Admin Level eins bei so einer Abfrage:
if(IsPlayerAnAdmin(playerid,2))
den Befehl aus führen
Ich habe das Problem bei diesem Stock
stock IsPlayerAnAdmin(playerid,rang)
{
if(GetPVarInt(playerid,"Adminlevel")<=rang)return 1;
return 0;
}
Ich kann als Admin Level eins bei so einer Abfrage:
if(IsPlayerAnAdmin(playerid,2))
den Befehl aus führen
< zu >
< kleiner als rang
<=kleiner ist gleich rang (ausganszahl wird mitgezählt)
return 1; bestätigung
return 0; acces denied
also falls der rang kleiner ist gleich adminlevel ist wird es bestätigt und nicht abgelehnt.
Alles anzeigen< zu >
< kleiner als rang
<=kleiner ist gleich rang (ausganszahl wird mitgezählt)
return 1; bestätigung
return 0; acces denied
also falls der rang kleiner ist gleich adminlevel ist wird es bestätigt und nicht abgelehnt.
Und wie muss der stock jetzt richtig sein?
Und wie muss der stock jetzt richtig sein?
Hat er doch gesagt? <= durch >= ersetzen.
Mehr nicht.
Hat er doch gesagt? < durch > ersetzen.
Mehr nicht.
Wenn ich das in > ersetze dann kann ich den Befehl auch nicht mit Adminlevel 2 aufrufen
Mein Fehler.
>= ist richtig, da der Rang, der angegeben wurde, ja auch berücksichtigt werden soll.-
Wenn ich das so habe:
stock IsPlayerAnAdmin(playerid,rang)
{
if(GetPVarInt(playerid,"Adminlevel")>=rang)return 1;
return 0;
}
if(IsPlayerAnAdmin(playerid,2))
Dann kann ich den Befehl aber auch mit Adminlevel rank 1 ausführen
Wenn er die Bedingung erfülllt, liefert die Funktion auch 1 und nicht 0.
Bedeutet bspw.
if(IsPlayerAnAdmin(playerid, 2) == 1){
}
würde sagen, dass der Adminrang größer oder gleich 2 ist.
Wenn das beachtet wurde, lass Dir doch mal
GetPVarInt(playerid, "Adminlevel")
ausgeben.
Warscheinlich hat er
if(IsPlayerAnAdmin(playerid,2))
{
//Bedeutet, wenn sein Adminlevel "Kleiner" oder "Gleich" 2 ist, passiert das.
//...
}
Richtig wäre also
if(!IsPlayerAnAdmin(playerid,2))return 1;
Hier die weiteren Sachen
mit diesem Stock
stock IsPlayerAnAdmin(playerid,rang)
{
if(GetPVarInt(playerid,"Adminlevel")<rang)return 1;
return 0;
}
Ich verstehe es nicht....
Ich bin Adminlevel 1 kann trotzdem den Befehl ausführen
Zeig uns doch einfach mal wie dein Befehl aufgebaut ist
stock IsPlayerAnAdmin(playerid,rang)
{
if(GetPVarInt(playerid,"Adminlevel")<=rang)return 1;
return 0;
}
ocmd:supcar(playerid,params[])
{
if(IsPlayerAnAdmin(playerid,2))
{
ShowPlayerDialog(playerid,DIALOG_SUPCAR,DIALOG_STYLE_LIST,"Supcar Menü","Sultan\nCheetah\nCaddy","Wählen","Abbrechen");
}
else SendClientMessage(playerid,rot,"Du bist dazu nicht berechtigt!");
return 1;
}
stock IsPlayerAnAdmin(playerid,rang)
{
if(GetPVarInt(playerid,"Adminlevel")>=rang)return 1;
return 0;
}
ocmd:supcar(playerid,params[])
{
if(!IsPlayerAnAdmin(playerid,2)) return SendClientMessage(playerid,rot,"Du bist dazu nicht berechtigt!");
ShowPlayerDialog(playerid,DIALOG_SUPCAR,DIALOG_STYLE_LIST,"Supcar Menü","Sultan\nCheetah\nCaddy","Wählen","Abbrechen");
return 1;
}
stock IsPlayerAnAdmin(playerid,rang)
{
if(GetPVarInt(playerid,"Adminlevel")>=rang)return 1;
return 0;
}
Mach mal so....
Alles anzeigenstock IsPlayerAnAdmin(playerid,rang)
{
if(GetPVarInt(playerid,"Adminlevel")<=rang)return 1;
return 0;
}
ocmd:supcar(playerid,params[])
{
if(IsPlayerAnAdmin(playerid,2))
{
ShowPlayerDialog(playerid,DIALOG_SUPCAR,DIALOG_STYLE_LIST,"Supcar Menü","Sultan\nCheetah\nCaddy","Wählen","Abbrechen");
}
else SendClientMessage(playerid,rot,"Du bist dazu nicht berechtigt!");
return 1;
}
hast du meinen beitrag übersehen ? -.-
Ich peil gerade nichts.
Ich habe mich als adminlevel 1 eingetragen.
Ich kann den Befehl ausführen:
ocmd:restart(playerid,params[])
{
if(IsPlayerAnAdmin(playerid,1))
{
SendRconCommand("gmx");
}
else SendClientMessage(playerid,rot,"Du bist dazu nicht berechtigt!");
return 1;
}
Schön und gut,
aber den kann ich auch ausführen obwohl der als Adminrank 2 sein soll:
ocmd:supcar(playerid,params[])
{
if(IsPlayerAnAdmin(playerid,2)) return SendClientMessage(playerid,rot,"Du bist dazu nicht berechtigt!");
{
ShowPlayerDialog(playerid,DIALOG_SUPCAR,DIALOG_STYLE_LIST,"Supcar Menü","Sultan\nCheetah\nCaddy","Wählen","Abbrechen");
}
return 1;
}
Ich trage mich als Adminlevel 3 ein und kann den /supcar befehl nicht ausführen
alles verdammt komisch....
Könntest du die Cods bitte mal in den Pwn Quelltext setzen?
wenn man mit dem Handy online ist, ist es so sehr unübersichtlich.
danke
wenn du bis morgen noch keine Lösung hast, melde Dich bei mir.
Benutze bitte den pwn Tag..
als nächstes solltest du dir die Grundlagen ansehen, um sowas zu vermeiden.
Danach solltest du dir ansehen, was ein "return" macht. Dann siehst du wo der fehler liegt.
ocmd:supcar(playerid,params[])
{
if(!IsPlayerAnAdmin(playerid,2)) return SendClientMessage(playerid,rot,"Du bist dazu nicht berechtigt!");
ShowPlayerDialog(playerid,DIALOG_SUPCAR,DIALOG_STYLE_LIST,"Supcar Menü","Sultan\nCheetah\nCaddy","Wählen","Abbrechen");
return 1;
}