Eine Bezahlung steht für uns nicht im Raum.
Finde ich auch gut so man sollte nicht alles mit Geld hinterlegen müssen.
Eine Bezahlung steht für uns nicht im Raum.
Finde ich auch gut so man sollte nicht alles mit Geld hinterlegen müssen.
10/10
Finde sie perfekt so habe ich sie mir vorgestellt.
8/10
Der Standort ist absichtlich dort, weil dort unser Spawn ist :3
Finde es ganz hübsch mit dem Park und mit den eingezäunten Parkplätzen.
Finde es zu kalt und leer stehend. Noch dazu finde ich die Säulen viel zu "dick", eventuell helleres Material verwenden eine Strand Bar sollte einladen.
Das Glas zum Beispiel ist etwas zu dunkel eventuell mit Texturen probieren das Glas heller zumachen und der Innenraum von der Bar ist zu leer stehend,
3/10.
Job, ich google und ich google schon finde aber garnichts...
Ich habe die ganze Zeit auf meinem Windows Computer gescriptet nun wollte ich das auf meinem Server hochladen und habe mit Müh und Not meine Plugins in Linux Variante gefunden ausser beim MySQL Plugin finde ich die libmysqlclient.so.18 nicht diese MySQL Version benutze ich. https://github.com/pBlueG/SA-MP-MySQL/releases ich war auch schon auf irgendwelchen Debain Seiten sah da aber gar nicht durch SuFu hab ich auch schon durchforstet.
Habe das gleiche Problem mal gehabt hab dein einfach den Text umgeschrieben damit er keine Umlaute besitzt liegt glaube ich an der Version
Finde es nicht richtig wenn hier sich ein Projekt vorstellt und man von einem anderen Projekt dann hört das ist eine Kopie von uns... Wenn ihr öfters mal ein Update raushaut mit neuen Routen, Fahrzeugen oder eventuell sogar nen Scoreboard dann wäre das schon mal ein Schritt nach vorne in Sachen Police Pursuits. Ich bin definitiv nachher dabei und schau mal mit rein wie ihr es so umgesetzt habt.. bin gespannt... es gibt viele tolle Ideen die man einbauen könnte damit es nicht nur 10 Minuten stumpfes hinterher fahren wird.
Den Rest verkneif ich mir hier einfach mal
Gute Nacht.
Also, ich kling mich dann hier auch mal ein wir haben es lange getestet es liegt nicht am GTA es muss irgendwas am
Server oder am Streamer sein, welcher ist eigentlich der allerbeste Streamer? Würde mich mal interessieren um den
Server zu optimieren.
Nach unzähligen Versuchen funktioniert es nun ich kann mich registrieren es speichert das Startgeld und Startlevel und läd es auch beim nächsten einloggen.
DANKE Jeffry
stock SpielerSpeichern(playerid)
{
if(!pInfo[playerid][pEingeloggt])return 1;
new query[456];
mysql_format(Handle, query, sizeof query, "UPDATE `user` SET `Geld`='%i',`Level`='%i',`Adminlevel`='%i',`Neuling`='%i',`Alter`='%i',`Name`='%s' WHERE `username`='%e'",GetPlayerMoney(playerid),GetPlayerScore(playerid),pInfo[playerid][pAdmin],pInfo[playerid][pNeuling],pInfo[playerid][pAlter],pInfo[playerid][pName],Spielername(playerid)),
mysql_pquery(Handle, query, "", "");
printf("%s",query);
return 1;
}
Hatte ich zu:
stock SpielerSpeichern(playerid)
{
if(pInfo[playerid][pEingeloggt])return 1;
new query[456];
mysql_format(Handle, query, sizeof query, "UPDATE `user` SET `Geld`='%i',`Level`='%i',`Adminlevel`='%i',`Neuling`='%i',`Alter`='%i',`Name`='%s' WHERE `username`='%e'",GetPlayerMoney(playerid),GetPlayerScore(playerid),pInfo[playerid][pAdmin],pInfo[playerid][pNeuling],pInfo[playerid][pAlter],pInfo[playerid][pName],Spielername(playerid)),
mysql_pquery(Handle, query, "", "");
printf("%s",query);
return 1;
}
geändert also das if(pInfo[playerid][pEingeloggt])return 1; und nicht if(!pInfo[playerid][pEingeloggt])return 1;
ist das logisch? oder hab ich da jetzt noch mehr falsch gemacht
Immer noch nichts gespeichert überall 'NULL' und bei Geschlecht 0
Wenn du das hochsetzt, dann müsste es auch ganz normal mit dem MD5('%e') im Query klappen.
Das erklärt auch, warum es ohne den Hash ging, weil dein Passwort weniger als 25 Zeichen hat.
Danke danke danke, es funktioniert jetzt muss ich nur alles das Speichern hinbekommen wenn ich mich nämlich registriere und dann disc. steht in der Datenbank nur mein Passwort und Geschlecht auf 0 gesetzt alles andere steht auf 'NULL' hier mal ein Screen das blau durchgestrichene ist nicht wichtig.
if(dialogid == DIALOG_CHAR3)
{
if(response)
{
if(strval(inputtext) > 0)
{
ShowPlayerDialog(playerid,DIALOG_CHAR4,DIALOG_STYLE_INPUT,"Charaktererstellung [4/5]","Wie ist dein Name? (Beispiel: Max Musermann)","Weiter","Abbrechen");
pInfo[playerid][pAlter]=strval(inputtext);
}
}
else
{
Kick(playerid);
}
}
if(dialogid == DIALOG_CHAR4)
{
if(response)
{
if(strlen(inputtext)>=50)
{
ShowPlayerDialog(playerid,DIALOG_CHAR4,DIALOG_STYLE_INPUT,"Charaktererstellung [4/5]","Findest du nicht auch dein Name ist ein wenig lang?!\nNimm einen anderen Namen!","Weiter","Abbruch");
}
if(strlen(inputtext)<=3)
{
ShowPlayerDialog(playerid,DIALOG_CHAR4,DIALOG_STYLE_INPUT,"Charaktererstellung [4/5]","Findest du nicht auch dein Name ist ein wenig kurz?!\nNimm einen anderen Namen!","Weiter","Abbruch");
}
else
{
format(pInfo[playerid][pName],MAX_PLAYER_NAME,"%s",inputtext);
new string[128];
format(string,sizeof(string),"%s",pInfo[playerid][pName]);
new Text3D:label = Create3DTextLabel(string, weiss, 30.0, 40.0, 50.0, 40.0, 0);
Attach3DTextLabelToPlayer(label, playerid, 0.0, 0.0, 0.7);
SpielerSpeichern(playerid);
SpawnPlayer(playerid);
}
}
else
{
Kick(playerid);
}
}
Dort werden Alter und Name gesetzt..
/* Account Speichern und Laden */
stock LoadAccount(playerid)
{
pInfo[playerid][pEingeloggt] = 1;
SendClientMessage(playerid,gruen,"Account läd...");
pInfo[playerid][pGeld] = cache_get_field_content_int(0, "Geld", Handle);
pInfo[playerid][pLevel] = cache_get_field_content_int(0, "Level", Handle);
pInfo[playerid][pAdmin] = cache_get_field_content_int(0, "Adminlevel", Handle);
pInfo[playerid][pNeuling] = cache_get_field_content_int(0, "Neuling", Handle);
pInfo[playerid][pGeschlecht] = cache_get_field_content_int(0, "Geschlecht", Handle);
pInfo[playerid][pAlter] = cache_get_field_content_int(0, "Alter", Handle);
GivePlayerMoney(playerid,pInfo[playerid][pGeld]);
SetPlayerScore(playerid,pInfo[playerid][pLevel]);
new tmp_name[MAX_PLAYER_NAME];
cache_get_field_content(0,"Name",tmp_name,Handle);
strmid(pInfo[playerid][pName],tmp_name,0,sizeof(tmp_name),sizeof(tmp_name));
new string[128];
format(string,sizeof(string),"%s",pInfo[playerid][pName]);
new Text3D:label = Create3DTextLabel(string, weiss, 30.0, 40.0, 50.0, 40.0, 0);
Attach3DTextLabelToPlayer(label, playerid, 0.0, 0.0, 0.7);
/*
Info:
cache_get_field_content_int für eine Zahl
cache_get_field_content für einen String
cache_get_field_content_float für eine Kommerzahl
*/
return 1;
}
stock SpielerSpeichern(playerid)
{
if(!pInfo[playerid][pEingeloggt])return 1;
new query[128];
mysql_format(Handle, query, sizeof query, "UPDATE `user` SET `Geld`='%i',`Level`='%i',`Adminlevel`='%i',`Neuling`='%i',`Alter`='%i',`Name`='%s' WHERE `username`='%e'",GetPlayerMoney(playerid),GetPlayerScore(playerid),pInfo[playerid][pAdmin],pInfo[playerid][pNeuling],pInfo[playerid][pAlter],pInfo[playerid][pName],Spielername(playerid)),
mysql_pquery(Handle, query, "", "");
printf("%s",query);
return 1;
}
rüfe das mal.
Nun nachdem ich das mit passwort und password nach kontrolliert
hatte hab ich nochmal das MD5_Hash rausgenommen
und ohne hashen geht es wunderbar.
4/10
Du solltest mehr mit Texturen arbeiten und darauf achten das hinten die Rampe nicht in einem Fenster ist,
stell dir mal vor du bist in diesem Haus schaust aus dem Fenster und siehst eine Rampe
/* Account Speichern und Laden */
stock LoadAccount(playerid)
{
pInfo[playerid][pEingeloggt] = 1;
SendClientMessage(playerid,gruen,"Account läd...");
pInfo[playerid][pGeld] = cache_get_field_content_int(0, "Geld", Handle), GivePlayerMoney(playerid, pInfo[playerid][pGeld]);
pInfo[playerid][pLevel] = cache_get_field_content_int(0, "Level", Handle), SetPlayerScore(playerid, pInfo[playerid][pLevel]);
pInfo[playerid][pAdmin] = cache_get_field_content_int(0, "Adminlevel", Handle), SetPlayerScore(playerid, pInfo[playerid][pAdmin]);
SendClientMessage(playerid,gruen,"Account fertig geladen.");
return 1;
}
stock SpielerSpeichern(playerid)
{
if(!pInfo[playerid][pEingeloggt])return 1;
new query[128];
mysql_format(Handle, query, sizeof query, "UPDATE `user` SET `Geld`='%i',`Level`='%i',`Adminlevel`='%i' WHERE `username`='%e'",GetPlayerMoney(playerid),GetPlayerScore(playerid),pInfo[playerid][pAdmin],Spielername(playerid)),
mysql_pquery(Handle, query, "", "");
return 1;
}
Was genau meinst du da jetzt beim Speichern?
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == DIALOG_REGISTER)
{
if(!response)
{
return Kick(playerid);
}
if(strlen(inputtext) < 4)return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "Anmeldung", "Es wurde kein Account unter diesem namen gefunden!", "Anmelden", "Abbrechen");
new query[256];
mysql_format(Handle, query, sizeof(query), "INSERT INTO user (username, passwort) VALUES ('%e','%e')", Spielername(playerid), MD5_Hash(inputtext));
mysql_tquery(Handle, query);
SendClientMessage(playerid, gelb, "Dein Account wurde erstellt.");
GivePlayerMoney(playerid, 50000);
SetPlayerScore(playerid, 10);
}
if(dialogid == DIALOG_LOGIN)
{
if(!response)
{
return Kick(playerid);
}
new query[256];
mysql_format(Handle, query, sizeof(query), "SELECT * FROM user WHERE username='%e' AND passwort='%e'", Spielername(playerid), MD5_Hash(inputtext));
mysql_tquery(Handle, query, "OnPasswordResponse", "i", playerid);
}
return 1;
}
Jetzt wird es zwar gehasht in der Datenbank aber kein Geld und Level wird abgespeichert und nach nem relogg kann ich mich nicht mehr anmelden... Ich weis nicht weiter dafür fehlt mir einfach die Übung
Ich glaube ich bin für dich die Abend Unterhaltung wie viele Fehler ich hier mache x'D
Es wird jetzt gehasht aber es speichert nicht mehr das "Test" Geld und das "Test" Level
Noch dazu kann ich mich nicht mehr anmelden, Passwort falsch
if(dialogid == DIALOG_LOGIN)
{
if(!response)
{
return Kick(playerid);
}
new query[256];
mysql_format(Handle, query, sizeof(query), "SELECT * FROM user WHERE username='%e' AND passwort=('%e')", Spielername(playerid), MD5_Hash(inputtext));
mysql_tquery(Handle, query, "OnPasswordResponse", "i", playerid);
}
Genau das hab ich auch schon drinnen aber es hasht einfach nicht das Passwort kommt ganz normal in die Datenbank.
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == DIALOG_REGISTER)
{
if(!response)
{
return Kick(playerid);
}
if(strlen(inputtext) < 4)return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "Anmeldung", "Es wurde kein Account unter diesem namen gefunden!", "Anmelden", "Abbrechen");
new query[256];
mysql_format(Handle, query, sizeof(query), "INSERT INTO user (username, passwort) VALUES ('%e',MD5_Hash('%e')", Spielername(playerid), inputtext);
mysql_tquery(Handle, query);
SendClientMessage(playerid, gelb, "Dein Account wurde erstellt.");
GivePlayerMoney(playerid, 50000);
SetPlayerScore(playerid, 10);
}
if(dialogid == DIALOG_LOGIN)
{
if(!response)
{
return Kick(playerid);
}
new query[256];
mysql_format(Handle, query, sizeof(query), "SELECT * FROM user WHERE username='%e' AND passwort=MD5_Hash('%e')", Spielername(playerid), inputtext);
mysql_tquery(Handle, query, "OnPasswordResponse", "i", playerid);
}
return 1;
}
C:\Users\Tim\Desktop\Grand Theft Auto Multiplayer Server\gamemodes\self.pwn(384) : error 012: invalid function call, not a valid address
C:\Users\Tim\Desktop\Grand Theft Auto Multiplayer Server\gamemodes\self.pwn(384) : warning 215: expression has no effect
C:\Users\Tim\Desktop\Grand Theft Auto Multiplayer Server\gamemodes\self.pwn(384) : warning 215: expression has no effect
C:\Users\Tim\Desktop\Grand Theft Auto Multiplayer Server\gamemodes\self.pwn(384) : error 001: expected token: ";", but found ")"
C:\Users\Tim\Desktop\Grand Theft Auto Multiplayer Server\gamemodes\self.pwn(384) : error 029: invalid expression, assumed zero
C:\Users\Tim\Desktop\Grand Theft Auto Multiplayer Server\gamemodes\self.pwn(384) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
Alles anzeigen
Ich verstehe das Include/Plugin was auch immer garnicht, ich kann mich dran erinnern das damals auch MD5 verwendet hatte
gibt es nicht ein Include was genau diese Funktion von MD5 übernimmt so eins hatte ich, glaube ich