Kannst anstatt "x" auch immer #x schreiben.
Danke dir !
Kannst anstatt "x" auch immer #x schreiben.
Danke dir !
Nicht direkt Scripting bezogen, aber ist es normal, dass an Spieler attached 3D Labels je nach Distanz von Spieler zu Spieler sich in der höhe verschieben, da sie nicht skaliert werden?
Nicht direkt Scripting bezogen, aber ist es normal, dass an Spieler attached 3D Labels je nach Distanz von Spieler zu Spieler sich in der höhe verschieben, da sie nicht skaliert werden?
Soweit ich weiß ist das normal. War bei mir auch so.
Danke dir !
Warum auch immer man sich seinen Code absichtlich unleserlich macht bliebt hier das Rätsel.
Schreib das bitte auf keinen Fall so. Du weißt zwar jetzt dass es geht und was es macht, nutze das aber bitte nicht.
Erstens kennen 99,99% diese Schreibweise nicht und zweitens macht es den Code unleserlich, vor allem deshalb weil das Syntax Highlighting für Strings nicht funktioniert.
Und drittens klappt es nicht, wenn eingebettete Farbcodes im String sind.
Soweit ich weiß ist das normal. War bei mir auch so.
An sich könnte man doch wenn das Label sich von der gewollten Stelle zu weit entfernt hat, ein neues Label erstellen und es so positionieren, dass es wieder passt.
Ich gruesse dich Kaliber
Leider funktioniert die Variante mit strcat.. nicht, es wird einfach nichts angezeigt im Gegensatz zur anderen Variante
Wuesste da jetzt auch nicht weiter, da ich die Limitation von SA-MP nicht kenne
Guten Morgen,
gibt es bereits eine Funktion, oder weiß einer wie man Sie schrieben muss, dass der gespeicherte Geldbetrag "120000" mit einem Trennpunkt angezeigt wird ?
Hinzu kommt, dass ich komischerweise "SelectTextDraw" nicht bei einem PlayerTextDraw nutzen kann.
Wie muss ich diese Funktion anwenden um herauszubekommen ob das Format stimmt?
stock GetPlayerAge(input[])//(c) Jeffry
{
new date[12];
strcat(date, input);
if(date[1] == '.') strins(date, "0", 0, 12);
if(date[4] == '.') strins(date, "0", 3, 12);
if(!date[9] || date[10]) return -1;
new day = 10*(date[0]-48)+(date[1]-48);
new month = 10*(date[3]-48)+(date[4]-48);
new year = 1000*(date[6]-48)+100*(date[7]-48)+10*(date[8]-48)+(date[9]-48);
if(year < 1000 || year > 9999 || month < 1 || month > 12 || day < 1) return -1;
if(month == 2)
{
if(day > 28 && (year % 4 != 0 || (year % 100 == 0 && year % 400 != 0))) return -1;
}
else if(day > g_days_m[month-1]) return -1;
new d, m, y;
getdate(y, m, d);
new age = y - year;
if(m < month) age--;
else if(m == month && d < day) age--;
return (age < 0) ? (-1) : (age);
}
Wie muss ich diese Funktion anwenden um herauszubekommen ob das Format stimmt?
ich bekomme in der Armybase die Kollision nicht weg. Ich fahr immer gegen unsichtbare Wände, was kann ich tun
Jetzt kommen diese Fehler:
C:\Users\Marcel\Desktop\New-Reallife\Server\Server\gamemodes\NewReallife.pwn(407) : error 017: undefined symbol "g_days_m"
C:\Users\Marcel\Desktop\New-Reallife\Server\Server\gamemodes\NewReallife.pwn(407) : warning 215: expression has no effect
C:\Users\Marcel\Desktop\New-Reallife\Server\Server\gamemodes\NewReallife.pwn(407) : error 001: expected token: ";", but found "]"
C:\Users\Marcel\Desktop\New-Reallife\Server\Server\gamemodes\NewReallife.pwn(407) : error 029: invalid expression, assumed zero
C:\Users\Marcel\Desktop\New-Reallife\Server\Server\gamemodes\NewReallife.pwn(407) : 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.
Zeile 407:
else if(day > g_days_m[month-1]) return -1;
Schreib da mal oben rein:
static const g_days_m[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
Wie muss ich diese Funktion anwenden um herauszubekommen ob das Format stimmt?
Hier der Link zum Originalen Post, mit Beispiel:
Nützliche Codeschnipsel
Kann mir jemand helfen?
Code:
new query[256];
mysql_format(handle, query, sizeof(query), "INSERT INTO `accounts` (Spielername, Passwort, LastIP, Geschlecht, Alter) VALUES ('%e', '%e','%e','%e','%e')", sI[playerid][pName], sI[playerid][pPasswort], Spielerip(playerid), sI[playerid][pGeschlecht], sI[playerid][pAlter]);
mysql_pquery(handle, query, "OnUserRegister", "d", playerid);
Fehler:
[17:25:47] [ERROR] error #1064 while executing query "INSERT INTO `accounts` (Spielername, Passwort, LastIP, Geschlecht, Alter) VALUES ('Marcel', 'C78C301F26DD92130F40B097EB023A35200AFDF202E3A2C67249B802C0E1ED06','127.0.0.1','','')": You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'Alter) VALUES ('Marcel', 'C78C301F26DD92130F40B097EB023A35200AFDF202E3A2C67249B8' at line 1
Schreib es so:
INSERT INTO `accounts` (Spielername, Passwort, LastIP, Geschlecht, `Alter`)
Danke, und wie kann ich hier das Geburtsdatum und Passwort anzeigen lassen? Passwort ist mit SHA256 Gehasht
format(t_info, sizeof(t_info), ""HTML_WHITE"Spielername: "HTML_YELLOW"%s"HTML_WHITE" \nPasswort: "HTML_YELLOW"%s"HTML_WHITE" \nGeschlecht: "HTML_YELLOW"Männlich"HTML_WHITE" \nGeburtsdatum: "HTML_YELLOW"%s"HTML_WHITE" \nIP-Adresse: "HTML_YELLOW"%s \n \n"HTML_WHITE"Wenn du deinen Spieleraccount erstellen willst, dann drücke auf 'Erstellen'", sI[playerid][pName], unhash, sI[playerid][pAlter], Spielerip(playerid));
ShowPlayerDialog(playerid, D_REGISTER_CONFIRM, DIALOG_STYLE_MSGBOX, ""SERVER_HTML""SERVER_NAME" - Registration", t_info, "Erstellen", "Abbruch");
Kann mir jemand helfen?
Das Query funktioniert nicht, weil ALTER ein SQL Befehl ist.
Entweder du packst es in die Anführungszeichen `Alter` oder nennst es zum Beispiel pAlter.
Außerdem nutzt du %e beim pAlter. Das Alter ist aber eine Zahl und damit %d.
Außer du hast dort das Geburtsdatum drin stehen, dann solltest du das aber ohnehin zu Geburtstag ändern.
mysql_format(handle, query, sizeof(query), "INSERT INTO `accounts` (Spielername, Passwort, LastIP, Geschlecht, `Alter`) VALUES ('%e', '%e','%e','%e','%d')", sI[playerid][pName], sI[playerid][pPasswort], Spielerip(playerid), sI[playerid][pGeschlecht], sI[playerid][pAlter]);
bzw
mysql_format(handle, query, sizeof(query), "INSERT INTO `accounts` (Spielername, Passwort, LastIP, Geschlecht, Geburtstag) VALUES ('%e', '%e','%e','%e','%e')", sI[playerid][pName], sI[playerid][pPasswort], Spielerip(playerid), sI[playerid][pGeschlecht], sI[playerid][pAlter]);
format(t_info, sizeof(t_info), ""HTML_WHITE"Spielername: "HTML_YELLOW"%s"HTML_WHITE" \nPasswort: "HTML_YELLOW"%s"HTML_WHITE" \nGeschlecht: "HTML_YELLOW"Männlich"HTML_WHITE" \Geburtstag: "HTML_YELLOW"%s"HTML_WHITE" \nIP-Adresse: "HTML_YELLOW"%s \n \n"HTML_WHITE"Wenn du deinen Spieleraccount erstellen willst, dann drücke auf 'Erstellen'", sI[playerid][pName], unhash, sI[playerid][pAlter], Spielerip(playerid));
C:\Users\Marcel\Desktop\New-Reallife\Server\Server\gamemodes\NewReallife.pwn(335) : error 027: invalid character constant
C:\Users\Marcel\Desktop\New-Reallife\Server\Server\gamemodes\NewReallife.pwn(335) : error 027: invalid character constant
C:\Users\Marcel\Desktop\New-Reallife\Server\Server\gamemodes\NewReallife.pwn(343) : error 027: invalid character constant
C:\Users\Marcel\Desktop\New-Reallife\Server\Server\gamemodes\NewReallife.pwn(343) : error 027: invalid character constant
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
\Geburtstag:
zu
\nGeburtstag:
Also Geburtstag wird als "0" ausgegeben und Passwort wird garnicht angezeigt.
Aktueller Stand:
new t_info[2048], unhash[65];
SHA256_PassHash(unhash, SERVER_SALT, sI[playerid][pPasswort], 65);
format(t_info, sizeof(t_info), ""HTML_WHITE"Spielername: "HTML_YELLOW"%s"HTML_WHITE" \nPasswort: "HTML_YELLOW"%s"HTML_WHITE" \nGeschlecht: "HTML_YELLOW"Männlich"HTML_WHITE" \nGeburtstag: "HTML_YELLOW"%d"HTML_WHITE" \nIP-Adresse: "HTML_YELLOW"%s \n \n"HTML_WHITE"Wenn du deinen Spieleraccount erstellen willst, dann drücke auf 'Erstellen'", sI[playerid][pName], unhash, sI[playerid][pAlter], Spielerip(playerid));
ShowPlayerDialog(playerid, D_REGISTER_CONFIRM, DIALOG_STYLE_MSGBOX, ""SERVER_HTML""SERVER_NAME" - Registration", t_info, "Erstellen", "Abbruch");