Auf wunsch von Jeffry habe ich hier einen neuen Thread
mysql_query(query);
switch(pInfo[playerid][pRang])
{
case 0:{return SCM(playerid,ROT,"Du hast keinen Fraktionsrang!");}
case 1:{format(query, sizeof(query), "SELECT `Rang1` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 2:{format(query, sizeof(query), "SELECT `Rang2` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 3:{format(query, sizeof(query), "SELECT `Rang3` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 4:{format(query, sizeof(query), "SELECT `Rang4` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 5:{format(query, sizeof(query), "SELECT `Rang5` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 6:{format(query, sizeof(query), "SELECT `Rang6` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 7:{format(query, sizeof(query), "SELECT `Rang7` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 8:{format(query, sizeof(query), "SELECT `Rang8` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 9:{format(query, sizeof(query), "SELECT `Rang9` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 10:{format(query, sizeof(query), "SELECT `Rang10` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
}
Online Leader-Liste
- SlashQ
- Geschlossen
- Erledigt
-
-
Was genau willst du nun von uns?
-
-
Den Code den du da gepostet hast, wie wird "fname" mit Daten gefüllt? Das brauchen wir.
@Alle: Es geht um diesen Thread:
/fraktionsliste Hilfe -
mysql_SetString("raenge", rname, name, "Fraktion",fname);
-
Nein, das ist es nicht.
-
Also. Wenn ich nun alles richtig verstehe, möchtest du die Leaderliste da haben.
Dann müssen wir wissen, wo genau "pFraktion" deklariert ist, vielleicht in etwas ähnlichem wie "SpielerInfo[playerid][pFraktion]" oder so.
Und was genau ist die Spalte "accounts" in deiner Tabelle? Der Spielername? @xXBastianXx: -
Die spalte Accounts ist eig. alles der name,leader,member usw...
-
Irgendwo wird doch etwas in fname geschrieben, oder? Poste gegebenenfalls mal alles von dem Code-Teil, das du da gepostet hast.
-
nop sonst gibt es nichts mit fname
-
Du musst die Leader-Namen in eine Variable laden und dann prüfen ob dieser Spieler online ist mit z.B. der Funktion:
stock IsPlayerOnline(const name[])
{
for(new i=GetPlayerPoolSize(),n[MAX_PLAYER_NAME]; i!=-1; i--) if(GetPlayerName(i,n,MAX_PLAYER_NAME) && !strcmp(n,name)) return 1;
return 0;
}Wenn die Funktion 1 ausgibt ist der Spieler online, ansonsten offline
mfg.
-
nop sonst gibt es nichts mit fname
Doch da muss es noch was geben. Sonst wäre der Wert von fname leer.
Über dem mysql_SetString muss noch was mit fname kommen. -
Das ist das letzte was ich habe mit Fraktion oder sonst was
mysql_SetInt("accounts", "Fraktion", pInfo[playerid][pFraktion], "Name", SpielerName(playerid)); -
Poste doch mal die 200 Zeilen vor
case 0:{return SCM(playerid,ROT,"Du hast keinen Fraktionsrang!");}
Und 50 danach. -
Davor ocmd:f(playerid,params[])
{
if(pInfo[playerid][pFraktion] == 0)return SCM(playerid, ROT,"Du bist in keiner Fraktion!");
new inputtext[128],string[256],fname[100],ausgabe[128];
if(sscanf(params,"s",inputtext))return SCM(playerid, ROT,"{FFD200}Benutze:{FEFEFE}/F [Nachricht]");switch(pInfo[playerid][pFraktion])
{
case 1:{fname = "LSPD";}
case 2:{fname = "BND";}
case 3:{fname = "Hitman Agency";}
case 4:{fname = "SAA";}
case 5:{fname = "Regierung";}
case 6:{fname = "LSMD";}
case 7:{fname = "OAmt";}
case 8:{fname = "Varrios Los Aztecas";}
case 9:{fname = "SAM AG";}
case 10:{fname = "Grove";}
case 11:{fname = "Ballas";}
case 12:{fname = "Terror";}
case 13:{fname = "LCN";}
}
new query[256];
mysql_query(query);
switch(pInfo[playerid][pRang])Danach {
case 0:{return SCM(playerid,ROT,"Du hast keinen Fraktionsrang!");}
case 1:{format(query, sizeof(query), "SELECT `Rang1` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 2:{format(query, sizeof(query), "SELECT `Rang2` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 3:{format(query, sizeof(query), "SELECT `Rang3` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 4:{format(query, sizeof(query), "SELECT `Rang4` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 5:{format(query, sizeof(query), "SELECT `Rang5` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 6:{format(query, sizeof(query), "SELECT `Rang6` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 7:{format(query, sizeof(query), "SELECT `Rang7` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 8:{format(query, sizeof(query), "SELECT `Rang8` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 9:{format(query, sizeof(query), "SELECT `Rang9` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
case 10:{format(query, sizeof(query), "SELECT `Rang10` FROM `raenge` WHERE `Fraktion` = '%s'",fname);}
}
mysql_query(query);
mysql_store_result();
new rows = mysql_num_rows();
if(rows > 0)
{
mysql_fetch_row(ausgabe);
}
if(pInfo[playerid][pFraktion] == 1)
{
format(string,sizeof(string),"[%s]{C30000}%s %s: {FFFFFF}%s,over.",fname,ausgabe,SpielerName(playerid),inputtext);
}
else
{
format(string,sizeof(string),"[%s]{C30000}%s %s: {FFFFFF}%s",fname,ausgabe,SpielerName(playerid),inputtext);
}
for(new i=0;i<MAX_PLAYERS;i++)
{
if(IsPlayerConnected(i))
{
if(pInfo[i][pFraktion] == pInfo[playerid][pFraktion])
{
SCM(i,0x0091FFFF,string);
}
}
}
BigearCast(playerid,string,1);
switch(pInfo[playerid][pFraktion])
{
case 1: FrakLog1(string);
case 2: FrakLog2(string);
case 3: FrakLog3(string);
case 4: FrakLog4(string);
case 5: FrakLog5(string);
case 6: FrakLog6(string);
case 7: FrakLog7(string);
case 8: FrakLog8(string);
case 9: FrakLog9(string);
case 10:FrakLog10(string);
case 11:FrakLog11(string);
case 12:FrakLog12(string);
case 13:FrakLog13(string);
}
return 1;
} -
Na also, da ist die Zuweisung doch!
Versuche es in deinem Online-List Befehl so:
mysql_query("SELECT name, fraktion FROM users WHERE rank = 6;");
mysql_store_result();
new rows = mysql_num_rows();
if(!rows) return SendClientMessage(playerid, 0xFF0000FF, "Error: Etwas ist schief gegangen.");
new str[512], row[64], name[32], frak, fname[32];
while(mysql_fetch_row(row, "|"))
{
sscanf(row, "p<|>sd", name, frak);
switch(frak)
{
case 1:{fname = "LSPD";}
case 2:{fname = "BND";}
case 3:{fname = "Hitman Agency";}
case 4:{fname = "SAA";}
case 5:{fname = "Regierung";}
case 6:{fname = "LSMD";}
case 7:{fname = "OAmt";}
case 8:{fname = "Varrios Los Aztecas";}
case 9:{fname = "SAM AG";}
case 10:{fname = "Grove";}
case 11:{fname = "Ballas";}
case 12:{fname = "Terror";}
case 13:{fname = "LCN";}
}
if(ReturnPlayerID(name) != INVALID_PLAYER_ID) format(str, sizeof(str), "%s{FFFFFF}%d [%s] - {00FF00}Online\n", str, name, fname);
else format(str, sizeof(str), "%s{FFFFFF}%d [%s] - {FF0000}Offline\n", str, name, fname);
}
ShowPlayerDialog(playerid, 4521, DIALOG_STYLE_MSGBOX, "OnlineList", str, "Ok");
return 1;Bedenke, dass du das Query anpassen musst:
mysql_query("SELECT name, fraktion FROM users WHERE rank = 6;");
//users = Tabelle die die Userdaten enthält
//name = Spalte in der der Name steht
//fraktion = Spalte in der die Fraktions ID steht -
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8608) : error 017: undefined symbol "ReturnPlayerID"
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8611) : warning 217: loose indentation
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8611) : warning 202: number of arguments does not match definition
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8615) : warning 225: unreachable code
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8615) : error 029: invalid expression, assumed zero
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8615) : error 017: undefined symbol "ReturnPlayerID"
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8623) : error 017: undefined symbol "l_PlayerName"
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8630) : warning 225: unreachable code
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8630) : error 029: invalid expression, assumed zero
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8630) : error 017: undefined symbol "ocmd_bkoffer"
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8630) : error 029: invalid expression, assumed zero
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8630) : fatal error 107: too many error messages on one lineCompilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
8 Errors.
Da kommen fehler :o -
Du hast die Funktion ReturnPlayerID noch immer nicht in deinen Code eingefügt (ganz unten im Gamemode). Das sage ich dir nun zum dritten mal.
Die Funktion steht im anderen Thread, suche sie dir dort raus und füge sie in deinen Gamemode ein. -
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8624) : warning 217: loose indentation
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8624) : warning 202: number of arguments does not match definition
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8627) : warning 225: unreachable code
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8627) : error 029: invalid expression, assumed zero
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8627) : error 017: undefined symbol "ocmd_bkoffer"
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8627) : error 029: invalid expression, assumed zero
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(8627) : fatal error 107: too many error messages on one lineCompilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
Habe ich eig. die ganze zeit drin gehabt -
Kannst du bitte den Code zu den Fehlern posten und die Zeilen markieren?
-