Ich arbeite mit DINI ja richtig.
Ich verstehe das nicht mit den Timer...
Es geht nichts mit der white list ich geht einfach nicht...
Ich arbeite mit DINI ja richtig.
Ich verstehe das nicht mit den Timer...
Es geht nichts mit der white list ich geht einfach nicht...
Alles anzeigenliegt daran das du sofort returnst ... so ist es richtig:
public OnPlayerConnect(...........)
{
if(isPlayerWhitList(playerid,0))
{
SendClientMessage(playerid,FARBE_ROT,"Du bist nicht auf der Whitelist");
Kick(playerid);
return 1;
}
}
Bitte bedenkt
das es bei OnPlayerSpawn hin soll.
Ja es wird richtig ausgelsen
hab auch halt 1 hingeschrieben
dan kommt nicht die message....
also das auslesen funkt.!
public OnPlayerSpawn(playerid)
{
if(isPlayerWhitList(playerid,0))
{
SpawnPlayer(playerid);
}
else
{
SendClientMessage(playerid,FARBE_ROT,"Du bist nicht auf der Whitelist"); Kick(playerid);
}
return 1;
}
Das geht auch nicht.
und SpawnPlayer(Playerid);
geht nicht
immer wenn ich mich bewege wird er gespawnt
Wie macht man man das, dass der spieler nicht auf Spawn drücken muss ?
Zitatif(isPlayerWhitList(playerid,0))return SendClientMessage(playerid,FARBE_ROT,"Du bist nicht auf der Whitelist");
SetTimerEx("SpielerWK",3000,false,"i",playerid);
Pack
das mal unter OnPlayerConnect, also dort wo man das Passwort eingeben
muss, weil unter OnPlayerSpawn ist es nicht gerade vorteilhaft.
Der Spieler soll sich erst registrieren
danach erst gekickt werden.
Es geht auch nicht bei OnP...Connect...
Ja hab ich:
forward SpielerWK(playerid);
public OnPlayerSpawn(playerid)
{
if(isPlayerWhitList(playerid,0))return SendClientMessage(playerid,FARBE_ROT,"Du bist nicht auf der Whitelist");
SetTimerEx("SpielerWK",3000,false,"i",playerid);
return 1;
}
stock isPlayerWhitList(playerid,rang)
{
if(GetPVarInt(playerid,"WhiteList")>=rang)return 1;
return 0;
}
InGame:
Problem:
Der Spieler wird nicht gekickt.
Die SpielerDatei:
Ist aber
WhiteList=1
Darf der Spieler spawnen und wird NICHT gekickt.
Alles anzeigenZitat von »Krrboy«
Zitat von »Beavis«
Nutz mal die include und lass dein versuch per timer sein
[ INCLUDE ] Kick/Ban Fix
Dies werde ich nicht benutzen
weil ich das selber machen will.
Willst du komplett ohne Includes scripten?
Dann mal viel Spaß.
Alter überleg mal...
Ich will nur alleine alles mit den kicks machen und OHNE kick/Ban includs
Geht auch nicht bei mir (Mit dem Timer)
Dies werde ich nicht benutzen
weil ich das selber machen will.
OnPlayerconnect....
{
if(isPlayerWhitList(playerid,0))return SendClientMessage(playerid,FARBE_ROT,"Du bist nicht auf der Whitelist");
SetTimer("timer",1000*60*10,true); Kick(playerid);
}
So oder was ?
Das geht nicht:
Aber im Chat steht:
Du bist nicht auf der whitelist aber kannst trozdem joinen.
Hey Leute ich hab mal ne whitelist erstellt,
aber es geht nicht.
Das Problem:
Im Chat steht: "Du stehst nicht auf der Whiteliste."
Im Script hab ich das bei:
public OnPlayerConnect(...........)
{
if(isPlayerWhitList(playerid,0))return SendClientMessage(playerid,FARBE_ROT,"Du bist nicht auf der Whitelist"); Kick(playerid);
}
Es wird auch alles in der Spieler datei gespeichert.
in der Spieler Datei:
0 = Nicht whitelist == Kick:
1 = Ja == Join...Register/Login...
HELP Pls
Hab mir mal
MrMonat angeguckt.
Aber ich habs immer noch nicht ganz
so ist es nun bei mir:
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);
SendClientMessage(playerid,FARBE_GRUEN,"Du hast dich erfolgreich auf Big-RolePlay registriert.");
SetPlayerScore(playerid,0);
SetPVarInt(playerid,"loggedin",1);
return 1;
}
stock Login(playerid,key[])
{
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
if(gettime()<dini_Int(Spielerdatei,"timeban"))
{
SendClientMessage(playerid,FARBE_ROT,"Dein TimeBan ist noch nicht abgelaufen.");
Kick(playerid);
return 1;
}
if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
{
LoadAccount(playerid);
SendClientMessage(playerid,FARBE_GRUEN,"Du hast dich auf Big-RolePlay eingeloggt.");
return 1;
}
else
{
SendClientMessage(playerid,FARBE_ROT,"Du hast das Falsche Passwort eingegeben.");
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Dein Account wurde gefunden. Gib bitte das Passwort ein.","Login","Abbrechen");
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);
SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
SetPVarInt(playerid,"Baned",dini_Int(Spielerdatei,"Baned"));
if(GetPVarInt(playerid,"Baned")==1)
{
SendClientMessage(playerid,FARBE_ROT,"Du bist auf Big-RolePlay Gebannt.");
SendClientMessage(playerid,FARBE_ROT,"Drücke F8 und schreibe ein Entbann Antrag auf:");
SendClientMessage(playerid,FARBE_ORANGE,"www.Big-RP.de");
Kick(playerid);
}
SetPVarInt(playerid,"loggedin",1);
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,"Level",GetPlayerScore(playerid));
dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
dini_IntSet(Spielerdatei,"Baned",GetPVarInt(playerid,"Baned"));
dini_IntSet(Spielerdatei,"timeban",GetPVarInt(playerid,"timeban"));
}
return 1;
}
Nein man soll den Namen sehen normal
aber auf der Minimap (screen)
soll man das vier eck nicht sehen.
geht Danke...
aber wie geht das mit der Minimap ?
Wo ist dein stock SpielerSpeichern?
Was meinst du damit ?
Und ja ich hab alles angelegt
SetPlayerColor(playerid,FARBE);
Genauer Pls
Ich hab da ein problem und
das heißt Minimap und PlayerNameColor :D...
Ich wollte fragen wie man das beides weg macht:
MINIMAP: Mann soll den player dort NICHT mehr sehen.
PlayerColor: So wie man im Tab sieht sind dort verschiedene Farben. Wie macht man die weg also die Normale weiße farbe oder so:
Bei mir werden die accounts erstellt.
aber wenn ich reconnecte steht da du hast noch kein account.
was kann man da machen ?
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid==DIALOG_LOGIN)
{
if(response==0)
{
SendClientMessage(playerid,FARBE_ROT,"Du hast den Vorgang abgebrochen.");
Kick(playerid);
return 1;
}
if(response==1)
{
if(!strlen(inputtext))
{
SendClientMessage(playerid,FARBE_ROT,"Das Passwort war nicht lang genug.");
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"{00FFF0}Login","{FFFFFF}Willkommen auf {FFC000}Big-RolePlay.{FFFFFF}\nDein Account wurde gefunden.\nGib nun das{00FF00}Passwort{FFFFFF} ein: ","Login","Abbrechen");
return 1;
}
else
{
Login(playerid,inputtext);
return 1;
}
}
}
if(dialogid==DIALOG_REGISTER)
{
if(response==0)
{
SendClientMessage(playerid,FARBE_ROT,"Du hast den Vorgang abgebrochen.");
Kick(playerid);
return 1;
}
if(response==1)
{
if(!strlen(inputtext))
{
SendClientMessage(playerid,FARBE_ROT,"Das Passwort war nicht lang genug.");
ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"{00FFF0}Registrieren{FFFFFF}","{FFFFFF}Willkommen auf {FFC000}Big-RolePlay.{FFFFFF}\n Du hast noch {FF0000}KEINEN{FFFFFF} Account!\n Um ein Account zu besitzen gib nun dein\n {00FF00}Gewünschtes Passwort{FFFFFF} ein:","Register","Abbruch");
return 1;
}
else
{
Register(playerid,inputtext);
return 1;
}
}
}
return 1;
}
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
return 1;
}
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);
SendClientMessage(playerid,FARBE_GRUEN,"Du hast dich erfolgreich auf Big-RolePlay registriert.");
SetPlayerScore(playerid,0);
SetPVarInt(playerid,"loggedin",1);
return 1;
}
stock Login(playerid,key[])
{
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
if(gettime()<dini_Int(Spielerdatei,"timeban"))
{
SendClientMessage(playerid,FARBE_ROT,"Dein TimeBan ist noch nicht abgelaufen.");
Kick(playerid);
return 1;
}
if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
{
LoadAccount(playerid);
SendClientMessage(playerid,FARBE_GRUEN,"Du hast dich auf Big-RolePlay eingeloggt.");
return 1;
}
else
{
SendClientMessage(playerid,FARBE_ROT,"Du hast das Falsche Passwort eingegeben.");
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Dein Account wurde gefunden. Gib bitte das Passwort ein.","Login","Abbrechen");
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);
SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
SetPVarInt(playerid,"Baned",dini_Int(Spielerdatei,"Baned"));
if(GetPVarInt(playerid,"Baned")==1)
{
SendClientMessage(playerid,FARBE_ROT,"Du bist auf Big-RolePlay Gebannt.");
SendClientMessage(playerid,FARBE_ROT,"Drücke F8 und schreibe ein Entbann Antrag auf:");
SendClientMessage(playerid,FARBE_ORANGE,"www.Big-RP.de");
Kick(playerid);
}
SetPVarInt(playerid,"loggedin",1);
return 1;
}
Ja aber dann kommt das:
Script zeile:
ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Willkommen auf {#FFC000}Big-RolePlay.{#FFFFFF}\n Du hast noch {#FF0000}KEINEN{#FFFFFF} Account!\n Um ein Account zu besitzen geb nun dein\n {#00FF00}Gewünschtes Passwort{#FFFFFF} ein:","Register","Abbruch");