Soweit habe ich das erstellt, jetzt ist nur die Frage wie ich diese Balken, zum Beispiel den grünen erstelle. Wie mache ich das am besten??
Beiträge von Winnetou
-
-
Funktioniert beides nicht, auch nicht zusammmen, man busted sich immer noch selbst
-
Das kommt aus der uf.inc (also müsste das ja eigentlich richtig sein):
stock GetClosestPlayer(playerid) //By Slick (edited by Gabriel "Larcius" Cordes)
{
if(IsPlayerConnected(playerid) && IsPlayerConnected(0))
{
new closestplayer=0;
new Float:closestdist=GetDistanceBetweenPlayers(playerid,0);
for(new playerid2=0; playerid2<MAX_PLAYERS; playerid2++)
{
new Float:dist = GetDistanceBetweenPlayers(playerid,playerid2);
if ((dist < closestdist))
{
closestdist = dist;
closestplayer = playerid;
}
}
return closestplayer;
}
return -1;
} -
Was ist daran falsch?
Wenn ich als Polizist / bust eingebe werde ich gebustetdcmd_bust(playerid,params[]) {
#pragma unused params
if(IsPlayerPolizei(playerid)) {
new
cplayerid,
Float:x,Float:y,Float:z;
GetClosestPlayer(cplayerid);
GetPlayerPos(cplayerid,x,y,z);
if(IsPlayerInRangeOfPoint(playerid,5.0,x,y,z)) {
if(controll) {
TogglePlayerControllable2(cplayerid,0);
controll = false;
}
else {
TogglePlayerControllable2(cplayerid,1);
controll = true;
}
}
}
else SendClientMessage(playerid, COLOR_LIGHTBLUE, "/bust: Du bist kein Polizist");
return 1;
} -
Was bringt das "IsPlayerConnected" in CMDs ohne Parameter?
-
kann man das nicht auch einfach bei OnPlayerEnterVehicle einfügen?
public OnPlayerStateChange
if(newstate == PLAYER_STATE_DRIVER) TextDrawShowForPlayer
public OnPlayerExitVehicle
TextDrawHideForPlayer -
-
Das Problem, dass keine Funktionen an der rechten Seite stehen hatte ich auch mal
einfach Pawno als Admin ausführen -
-
Wenn man sich mit diesem System registriert und dann den Server verlässt wird nur das Passwort gespeichert. Wenn man zum 2. mal den Server verlässt wird alles ordnungsgemäß gespeichert. Wo liegt der Fehler???
OnPlayerConnect
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"/loginsystem/%s.ini",pname);
if(fexist(accFormat))
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein, indem du dein Passwort eingibst.","Weiter","Abbrechen");
}
else
{
ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich, indem du dein Passwort eingibst.","Weiter","Abbrechen");
}
OnPlayerDisconnect
new playername[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,playername,sizeof playername);
format(accFormat,sizeof accFormat,"/loginsystem/%s.ini",playername);
if(fexist(accFormat) && Spieler[playerid][eingeloggt] && !classselection)
{
dini_IntSet(accFormat,"wanted",GetPlayerWantedLevel(Spieler[playerid][wanted]));
if(Spieler[playerid][beruf] == 0) {
dini_IntSet(accFormat,"skin",GetPlayerSkin(playerid));
}
GetPlayerPos(playerid,Spieler[playerid][lastx],Spieler[playerid][lasty],Spieler[playerid][lastz]);
dini_FloatSet(accFormat,"lastx",Spieler[playerid][lastx]);
dini_FloatSet(accFormat,"lasty",Spieler[playerid][lasty]);
dini_FloatSet(accFormat,"lastz",Spieler[playerid][lastz]);
dini_IntSet(accFormat,"Geld",GetPlayerMoney(playerid));
dini_IntSet(accFormat,"Score",GetPlayerScore(playerid));
dini_IntSet(accFormat,"Beruf",Spieler[playerid][beruf]);
}
OnDialogResponse
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"/loginsystem/%s.ini",pname);
if(response)
{
switch(dialogid) //Möglichkeit auswählen
{
case DIALOG_LOGIN: //Login
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein, indem du dein Passwort eingibst.","Weiter","Abbrechen");
return SendClientMessage(playerid,0xFFFFFFFF,"Kein Passwort angegeben!");
}
if(strcmp(inputtext,dini_Get(accFormat,"Passwort")) == 0)
{
Spieler[playerid][wanted] = dini_Int(accFormat,"wanted");
Spieler[playerid][skin] = dini_Int(accFormat,"skin");
Spieler[playerid][lastx] = dini_Float(accFormat,"lastx");
Spieler[playerid][lasty] = dini_Float(accFormat,"lasty");
Spieler[playerid][lastz] = dini_Float(accFormat,"lastz");
Spieler[playerid][beruf] = dini_Int(accFormat,"Beruf");
GivePlayerMoney(playerid,dini_Int(accFormat,"Geld"));
SetPlayerScore(playerid,dini_Int(accFormat,"Score"));
SetPlayerWantedLevel(playerid,dini_Int(accFormat,"wanted"));
Spieler[playerid][eingeloggt] = 1;
SendClientMessage(playerid,0xFFFFFFFF,"Du wurdest erfolgreich eingeloggt.");
}
else
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein, indem du dein Passwort eingibst.","Weiter","Abbrechen");
SendClientMessage(playerid,0xFFFFFFFF,"Das Passwort war Falsch!");
}
}
case DIALOG_REG: // Registrierung
{
if(!strlen(inputtext)) // Falls leere Eingabe
{
ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich, indem du dein Passwort eingibst.","Weiter","Abbrechen");
return SendClientMessage(playerid,0xFFFFFFFF,"Das Passwort ist zu kurz!");
}
dini_Create(accFormat);
dini_Set(accFormat,"Passwort",inputtext);
Spieler[playerid][eingeloggt] = 1;
Spieler[playerid][beruf] = 0;
SendClientMessage(playerid,0xFFFFFFFF,"Account wurde angelegt und du wurdest eingeloggt.");
classselection = true;
ForceClassSelection(playerid);
}
}
}
else
{
switch(dialogid)
{
case DIALOG_LOGIN:ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein, indem du dein Passwort eingibst.","Weiter","Abbrechen");
case DIALOG_REG:ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich, indem du dein Passwort eingibst.","Weiter","Abbrechen");
}
}
Weiß niemand wo der Fehler liegt? -
-
-
-
-
Hi,
wie kann ich Interiors mehrfach verwenden?
Es gibt ja viel mehr Häuser auf der Karte als Interiors.
Beispiel:
Ich nehme das Cityhall-Interior für eine Bank und ein Krankenhaus
Wie trenne ich das nun voneinander, sodass 2Spieler, jeder in einem dieser Gebäude, sich nicht treffen können -
liegt das vielleicht daran, dass mit der datei beim erstellen irgendetwas gemacht wird?
Problem gelöst!! Danke
Ich habe die Dateien vom SA:MP-Server einfach auf dem Desktop gespeichert.
Allerdings ergibt sich jetzt ein weiteres Problem:
Wenn man sich registriert wird nur das Passwort, aber nichts anderes gespeichert. Beim nächsten Login und darauf folgenden Verlassen wird alles ordnungsgemäß gespeichert. Wo liegt der Fehler? (deswegen das lange Zitat) -
Extra Anleitung: DCMD
-
Problem gelöst!! Danke
Ich habe die Dateien vom SA:MP-Server einfach auf dem Desktop gespeichert.
Allerdings ergibt sich jetzt ein weiteres Problem:
Wenn man sich registriert wird nur das Passwort, aber nichts anderes gespeichert. Beim nächsten Login und darauf folgenden Verlassen wird alles ordnungsgemäß gespeichert. Wo liegt der Fehler? (deswegen das lange Zitat)Ich habe das Loginsystem mit Hilfe des Tutorials von Blackfox erstellt. Die Datei muss ja erstellt worden sein, sonst wäre ja beim nächsten Connect nichts geladen worden. Es ist aber alles geladen worden.
Soweit ist die Ordnerstruktur vorhanden: C:\Program Files (x86)\GTA\GTA San Andreas 1\scriptfiles\loginsystem
und so sieht der Quellcode aus, der vom Loginsystem stammt:
OnPlayerConnect
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"/loginsystem/%s.ini",pname);
if(fexist(accFormat))
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein, indem du dein Passwort eingibst.","Weiter","Abbrechen");
}
else
{
ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich, indem du dein Passwort eingibst.","Weiter","Abbrechen");
}
OnPlayerDisconnect
new playername[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,playername,sizeof playername);
format(accFormat,sizeof accFormat,"/loginsystem/%s.ini",playername);
if(fexist(accFormat) && Spieler[playerid][eingeloggt] && !classselection)
{
dini_IntSet(accFormat,"wanted",GetPlayerWantedLevel(Spieler[playerid][wanted]));
if(Spieler[playerid][beruf] == 0) {
dini_IntSet(accFormat,"skin",GetPlayerSkin(playerid));
}
GetPlayerPos(playerid,Spieler[playerid][lastx],Spieler[playerid][lasty],Spieler[playerid][lastz]);
dini_FloatSet(accFormat,"lastx",Spieler[playerid][lastx]);
dini_FloatSet(accFormat,"lasty",Spieler[playerid][lasty]);
dini_FloatSet(accFormat,"lastz",Spieler[playerid][lastz]);
dini_IntSet(accFormat,"Geld",GetPlayerMoney(playerid));
dini_IntSet(accFormat,"Score",GetPlayerScore(playerid));
dini_IntSet(accFormat,"Beruf",Spieler[playerid][beruf]);
}
OnDialogResponse
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"/loginsystem/%s.ini",pname);
if(response)
{
switch(dialogid) //Möglichkeit auswählen
{
case DIALOG_LOGIN: //Login
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein, indem du dein Passwort eingibst.","Weiter","Abbrechen");
return SendClientMessage(playerid,0xFFFFFFFF,"Kein Passwort angegeben!");
}
if(strcmp(inputtext,dini_Get(accFormat,"Passwort")) == 0)
{
Spieler[playerid][wanted] = dini_Int(accFormat,"wanted");
Spieler[playerid][skin] = dini_Int(accFormat,"skin");
Spieler[playerid][lastx] = dini_Float(accFormat,"lastx");
Spieler[playerid][lasty] = dini_Float(accFormat,"lasty");
Spieler[playerid][lastz] = dini_Float(accFormat,"lastz");
Spieler[playerid][beruf] = dini_Int(accFormat,"Beruf");
GivePlayerMoney(playerid,dini_Int(accFormat,"Geld"));
SetPlayerScore(playerid,dini_Int(accFormat,"Score"));
SetPlayerWantedLevel(playerid,dini_Int(accFormat,"wanted"));
Spieler[playerid][eingeloggt] = 1;
SendClientMessage(playerid,0xFFFFFFFF,"Du wurdest erfolgreich eingeloggt.");
}
else
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein, indem du dein Passwort eingibst.","Weiter","Abbrechen");
SendClientMessage(playerid,0xFFFFFFFF,"Das Passwort war Falsch!");
}
}
case DIALOG_REG: // Registrierung
{
if(!strlen(inputtext)) // Falls leere Eingabe
{
ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich, indem du dein Passwort eingibst.","Weiter","Abbrechen");
return SendClientMessage(playerid,0xFFFFFFFF,"Das Passwort ist zu kurz!");
}
dini_Create(accFormat);
dini_Set(accFormat,"Passwort",inputtext);
Spieler[playerid][eingeloggt] = 1;
Spieler[playerid][beruf] = 0;
SendClientMessage(playerid,0xFFFFFFFF,"Account wurde angelegt und du wurdest eingeloggt.");
classselection = true;
ForceClassSelection(playerid);
}
}
}
else
{
switch(dialogid)
{
case DIALOG_LOGIN:ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein, indem du dein Passwort eingibst.","Weiter","Abbrechen");
case DIALOG_REG:ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich, indem du dein Passwort eingibst.","Weiter","Abbrechen");
}
} -
was ist jetzt mit der gl_common.inc, dass bei mir so viele errors angezeigt werden??
Oder hat keiner Ahnung woran das jetzt liegen könnte?
in dem grandlarc-GM funktioniert die ja, aber wieso gehts bei mir nicht?
-
Ich habe das Loginsystem mit Hilfe des Tutorials von Blackfox erstellt. Die Datei muss ja erstellt worden sein, sonst wäre ja beim nächsten Connect nichts geladen worden. Es ist aber alles geladen worden.
Soweit ist die Ordnerstruktur vorhanden: C:\Program Files (x86)\GTA\GTA San Andreas 1\scriptfiles\loginsystem
und so sieht der Quellcode aus, der vom Loginsystem stammt:
OnPlayerConnect
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"/loginsystem/%s.ini",pname);
if(fexist(accFormat))
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein, indem du dein Passwort eingibst.","Weiter","Abbrechen");
}
else
{
ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich, indem du dein Passwort eingibst.","Weiter","Abbrechen");
}
OnPlayerDisconnect
new playername[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,playername,sizeof playername);
format(accFormat,sizeof accFormat,"/loginsystem/%s.ini",playername);
if(fexist(accFormat) && Spieler[playerid][eingeloggt] && !classselection)
{
dini_IntSet(accFormat,"wanted",GetPlayerWantedLevel(Spieler[playerid][wanted]));
if(Spieler[playerid][beruf] == 0) {
dini_IntSet(accFormat,"skin",GetPlayerSkin(playerid));
}
GetPlayerPos(playerid,Spieler[playerid][lastx],Spieler[playerid][lasty],Spieler[playerid][lastz]);
dini_FloatSet(accFormat,"lastx",Spieler[playerid][lastx]);
dini_FloatSet(accFormat,"lasty",Spieler[playerid][lasty]);
dini_FloatSet(accFormat,"lastz",Spieler[playerid][lastz]);
dini_IntSet(accFormat,"Geld",GetPlayerMoney(playerid));
dini_IntSet(accFormat,"Score",GetPlayerScore(playerid));
dini_IntSet(accFormat,"Beruf",Spieler[playerid][beruf]);
}
OnDialogResponse
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"/loginsystem/%s.ini",pname);
if(response)
{
switch(dialogid) //Möglichkeit auswählen
{
case DIALOG_LOGIN: //Login
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein, indem du dein Passwort eingibst.","Weiter","Abbrechen");
return SendClientMessage(playerid,0xFFFFFFFF,"Kein Passwort angegeben!");
}
if(strcmp(inputtext,dini_Get(accFormat,"Passwort")) == 0)
{
Spieler[playerid][wanted] = dini_Int(accFormat,"wanted");
Spieler[playerid][skin] = dini_Int(accFormat,"skin");
Spieler[playerid][lastx] = dini_Float(accFormat,"lastx");
Spieler[playerid][lasty] = dini_Float(accFormat,"lasty");
Spieler[playerid][lastz] = dini_Float(accFormat,"lastz");
Spieler[playerid][beruf] = dini_Int(accFormat,"Beruf");
GivePlayerMoney(playerid,dini_Int(accFormat,"Geld"));
SetPlayerScore(playerid,dini_Int(accFormat,"Score"));
SetPlayerWantedLevel(playerid,dini_Int(accFormat,"wanted"));
Spieler[playerid][eingeloggt] = 1;
SendClientMessage(playerid,0xFFFFFFFF,"Du wurdest erfolgreich eingeloggt.");
}
else
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein, indem du dein Passwort eingibst.","Weiter","Abbrechen");
SendClientMessage(playerid,0xFFFFFFFF,"Das Passwort war Falsch!");
}
}
case DIALOG_REG: // Registrierung
{
if(!strlen(inputtext)) // Falls leere Eingabe
{
ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich, indem du dein Passwort eingibst.","Weiter","Abbrechen");
return SendClientMessage(playerid,0xFFFFFFFF,"Das Passwort ist zu kurz!");
}
dini_Create(accFormat);
dini_Set(accFormat,"Passwort",inputtext);
Spieler[playerid][eingeloggt] = 1;
Spieler[playerid][beruf] = 0;
SendClientMessage(playerid,0xFFFFFFFF,"Account wurde angelegt und du wurdest eingeloggt.");
classselection = true;
ForceClassSelection(playerid);
}
}
}
else
{
switch(dialogid)
{
case DIALOG_LOGIN:ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein, indem du dein Passwort eingibst.","Weiter","Abbrechen");
case DIALOG_REG:ShowPlayerDialog(playerid,DIALOG_REG,1,"Registrieren","Bitte Registriere dich, indem du dein Passwort eingibst.","Weiter","Abbrechen");
}
}