for(new i =0; i < sizeof autoanzahl; i++)
Zu
for(new i = 0; i < MAX_AUTOS; i++)
Beiträge von Jeffry
-
-
So war es von N0SKILL gemeint:
Unter den Includes:
new ClickedPlayer[MAX_PLAYERS];Und dann:
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
if(IstSpielerInFraktion(playerid,1))
{
if(IstSpielerImDienst(playerid,1))
{
ClickedPlayer[playerid] = clickedplayerid;
ShowPlayerDialog(playerid,DIALOG_WANTEDS,DIALOG_STYLE_LIST,"Fahndungsliste","Beamtenbehinderung\nFlucht\nBeamtenbeleidigung\nKörperverletzung","Bestätigen","Abbrechen");
}
}
return 1;
}if(dialogid == DIALOG_WANTEDS)
{
if(listitem == 0)
{
SetPlayerWantedLevel(ClickedPlayer[playerid],2);
}
} -
Dann kannst du es so machen:
new query[128];
format(query,sizeof(query),"SELECT * FROM gutschein WHERE Code = '%d'",code);
mysql_function_query(dbhandle,query,false,"OnPlayerEnterCode","d", playerid);Und dann:
forward OnPlayerEnterCode(playerid);
public OnPlayerEnterCode(playerid)
{
new rows = cache_get_row_count();
if(rows > 0)
{
//Code existiert.
}
else
{
//Code existiert nicht.
}
return 1;
} -
Danke.
Welche MySQL Version nutzt du denn? (Siehst du im Server Log, wenn du den Server startest.) -
ist zu schnell. ab und zu überspringen ein paar skins
Mache es dann so:
if(ud == KEY_UP)
{
static lastPress[MAX_PLAYERS];
if(lastPress[playerid] + 500 < GetTickCount()) //Erlaubt den Aufruf nur alle 500ms.
{
lastPress[playerid] = GetTickCount();
//Skin wechseln...
}
} -
Wie ist die Funktion "mysql_GetString" in mysql r-39-4?
Die gibt es da nicht mehr, bzw. selbst wenn man sie sie sich zusammenbasteln würde, ist es nicht zu empfehlen das zu nutzen.
Du kannst dir in deinem Tutorial beim Login-Part anschauen, wie man Daten aus der Datenbank liest: [jTuT] MySQL R39-3 (Installation, XAMPP, Verwendung, Bedienung & Registrations-System)
Bei Fragen dazu kannst du gerne nachfragen.
-
Dann kannst du den Rang des Spielers so anzeigen lassen:
new string[145], fID = SpielerInfo[playerid][pFraktion], rID = SpielerInfo[playerid][pFraktionRang];
format(string, sizeof(string), "Mein Rang: %s", rangName[fID][rID]);
SendClientMessage(playerid, 0xFFFFFFFF, string);In MySQL musst du die Datensätze mit den Namen eben einfügen, die Ladefunktion habe ich dir ja oben gegeben.
-
Wie sehen denn deine Spielervariablen für die Fraktion und den Rang des Spielers aus?
-
Unter den Includes:
new rangName[10][6][32]; //10 Fraktionen, 6 Ränge, 32 ZeichenUnter OnGameModeInit:
new tmp[16];
for(new i = 0; i < sizeof(rangName); i++)
{
for(new j = 0; j < sizeof(rangName[]); j++)
{
format(tmp, sizeof(tmp), "rangname%d", j);
format(rangName[i][j], sizeof(rangName[][]), mysql_GetString("tabellenname", tmp, "frakid", i));
}
}Ersetze den "tabellenname" oben, da ich nicht weiß, wie deine Tabelle heißt.
-
Du nutzt ja diese Funktionen, dann so:
mysql_GetString("tabellenname", "rangname1", "frakid", frakid);Beispiel:
printf("Rang 1 von Fraktion 2 heißt: %s", mysql_GetString("tabellenname", "rangname1", "frakid", 2)); -
Gibt es irgendeine andere Möglichkeit die Tasten KEY_UP etc. ohne OnPlayerUpdate oder einen extra Timer, abzufragen?
Nein, da diese Keys nicht unter OnPlayerKeyStateChange abgefragt werden, muss man es in einen Timer oder OnPlayerUpdate packen. Eine einfache if-Abfrage ist aber in OnPlayerUpdate absolut kein Problem.
-
ALTER ist eine MySQL Anweisung.
Versuche es deshalb mit dem Spalten Namen pAlter:
mysql_SetInt("accounts", "pAlter", strval(inputtext), "Name", SpielerInfo[playerid][pName]);Wenn das nicht hilft, füge davor noch ein GetPlayerName ein:
GetPlayerName(playerid, SpielerInfo[playerid][pName], MAX_PLAYER_NAME); -
Du kannst es doch eigentlich so machen, wenn ich das richtig interpretiere:
SetPlayerProgressBarValue(i, tankbar[i], Gas[vehicleid]);Dann sollte es immer automatisch passen.
-
mysql_SetInt("accounts", "pAlter", strval(inputtext), "Name", SpielerInfo[playerid][pName]);
In der Tabelle heißt das Feld dann pAlter.
-
SpielerInfo[playerid][pAlter] = strval(inputtext);
-
-
-
Kannst du bitte etwas mehr von dem Code posten?
-
if(!strcmp(dini_Get(Player,"passwort"),password,true)){
zu:
if(!strcmp(dini_Get(Player,"Passwort"),password,true)){Und beim Register das hier einfügen:
format(PlayerInfo[playerid][pPass],128,password); -
Zum Beispiel so:
GangZoneShowForPlayer(playerid, gangzone, 0xFF000066);Das wäre ein transparentes Rot.