Pack in die SQL-Abfrage einfach order by Name rein, dann musst du's nicht mehr selbst sortieren.
Beiträge von FineTime
In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums
-
-
Das Thema wurde als erledigt markiert, also klappt's jetzt wohl doch.
-
mysql_format(handle, query, sizeof(query), "UPDATE `users` SET `level` = '%d', `money` = '%d', `kills` = '%d', `deaths` = '%d',`ban` = '%d', `admin` = '%d', `fraktion` = '%d' WHERE `id` = '%d'", PlayerInfo[playerid][pLevel], PlayerInfo[playerid][pMoney], PlayerInfo[playerid][pKills], PlayerInfo[playerid][pDeaths], PlayerInfo[playerid][p_id], PlayerInfo[playerid][pBan], PlayerInfo[playerid][pAdmin], PlayerInfo[playerid][pFraktion]);
Die ID gehört natürlich an den Schluss -
Bei deinem stock SaveUserStats hast du im mysql_format die Variablen vertauscht.
Im stock SafeFToDB erzeugst du jedes mal einen neuen Tabelleneintrag. (Ich glaube nicht, dass du das willst) -
- bei der if Abfrage hattest du die Fehlermeldung direkt hinten dran als return, obwohl es drunter als else gehört
- im sscanf hast du frakid als string deklariert
- die Farbcodes waren unvollständig
- mit SendClientMessage hättest du die MySQL query und nicht die Chatmeldung ausgegeben
-
Ich hab mal die gröbsten Fehler aus deinem /makeleader Befehl entfernt.
CMD:makeleader(playerid,params[])
{
if(PlayerInfo[playerid][pAdmin]>=1 && PlayerInfo[playerid][pFraktion]>=1)
{
new frakid, p_ID, name[MAX_PLAYER_NAME], string[128];
if(sscanf(params,"ui", p_ID, frakid))return SendClientMessage(playerid, 0x00FF00FF, "[ Info ]Benutzung: /makeleader [id][frakid]");
GetPlayerName(playerid, string, MAX_PLAYER_NAME);
GetPlayerName(p_ID, name, MAX_PLAYER_NAME);
PlayerInfo[p_ID][pFraktion] = frakid;
mysql_format(handle, string, sizeof(string), "UPDATE `users` SET `fraktion` = '%d' WHERE `id` = '%d'", frakid, PlayerInfo[p_ID][p_id]);
mysql_pquery(handle, string);
format(string, sizeof(string), "[ ! ]Admin: %s hat %s zum Leader einer Fraktion: %d gemacht!", string, name, GetFraktionRang(p_ID));
SendClientMessage(playerid, -1, string);
} else SendClientMessage(playerid, 0x00FF00FF,"Du kannst diesen Befehl nicht ausführen");
return 1;
} -
Du kannst dir ja mal diese Liste ansehen: [LISTE] aller Gamemodes
Ob du dort jedoch was brauchbares findest, ist die andere Frage. -
Suchst du jetzt nen Server oder ein Script?
-
Kennt vlt noch jemand von euch eine seite wo man das üben kann oder wo es Tutorials gibt ?
Du kannst dich ja mal durch https://www.w3schools.com/ klicken, wenn dir das hilft.
-
Wieso wird das Plugin nicht mehr weiter unterstützt?
Weil der Entwickler keine Zeit mehr dafür hat -
Nein, das gehört entweder über oder unter folgende Zeile:
if(verwid < 1 || verwid > 7)return adminrangnichtexistent; -
Müsste so klappen:
new bool:exists;
for(new verwalter = 0; verwalter < 4; verwalter ++)
{
if(SD[pID][pVerwalter][verwalter] == verwid) exists = true;
}
if(exists) return SendClientMessage(playerid, GRAU, "Der Spieler hat diesen Rang bereits."); -
Gehört ja auch in die Zeile drunter
-
Wenn ich das richtig sehe, musst du unter die sscanf Abfrage einfach nur spalte--; einfügen.
-
Jedoch ist Verwalter1 0 anstatt1 und Verwalter4 3 anstatt 4. Ist das normal?
Ja, weil das Script ab 0 zu zählen beginnt. Wenn dich das stört kannst du das in deinem Befehl kosmetisch überarbeiten.
-
Woran genau liegt es denn? Hast du es schon an die neue MySQL Datenbank angepasst und ggf. die Verschlüsselung des Passwortes geändert?
-
CSGO
oder natürlich der Klassiker SAMP -
Dass ein Dialog nicht kommt, hat wohl kaum was mit der MySQL-Verbindung zu tun.
Hast du sonst noch was im Script verändert bzw. gibts was auffälliges in der Serverlog? -
Im Prinzip musst du nur alles in das Verzeichnis /var/www/html auf deinem vServer ziehen.
-
Was für ein Template ist das denn? Und ist Apache bereits installiert?