Beiträge von Jeffry

    Ich hab den Code oben mal gelöscht. Irgendwie hab ich da nicht das geschrieben was ich schreiben wollte. :pinch:


    new query[128],name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, MAX_PLAYER_NAME);
    mysql_real_escape_string(name, name);
    format(query, sizeof(query), "INSERT INTO inventar (Name) VALUES ('%s')", name);
    mysql_query(query);


    Jetzt passt es aber.

    Sorry, hab ein "," vergessen. Ohne es zu kompilieren kommt das leider hin und wieder vor. :whistling:
    format(query, sizeof(query), "INSERT INTO inventar (Name) VALUES ('%s')" name);
    zu:
    format(query, sizeof(query), "INSERT INTO inventar (Name) VALUES ('%s')", name);

    if(strcmp("/items",cmdtext, true) == 0)
    {
    ShowPlayerDialog(playerid, DIALOG_ITEMS, DIALOG_STYLE_LIST, "Items Help", "Bloodbag\nMedkit\nBandage", "Explain", "Back");
    return 1;
    }


    OnDialogResponse:
    if(dialogid == DIALOG_ITEMS)
    {
    if(response)
    {
    switch(listitem)
    {
    case 0: ShowPlayerDialog(playerid, DIALOG_EXPLANATION, DIALOG_STYLE_MSGBOX, "Explanation", "Das ist ein ...", "Ok", "");
    case 1: ShowPlayerDialog(playerid, DIALOG_EXPLANATION, DIALOG_STYLE_MSGBOX, "Explanation", "Das ist ein ...", "Ok", "");
    case 2: ShowPlayerDialog(playerid, DIALOG_EXPLANATION, DIALOG_STYLE_MSGBOX, "Explanation", "Das ist ein ...", "Ok", "");
    }
    }
    return 1;
    }

    Kannst du einfach so machen:
    ocmd:usegutschein(playerid, params[])
    {
    new gutscheinid, string[256];
    if(sscanf(params, "d", gutscheinid)) return SendClientMessage(playerid, COLOR_ERRORTEXT, "Benutze: /usegutschein [GutscheinCode]");
    for(new g = 0; g <MAX_GUTSCHEINE; g++)
    {
    if(gutscheinid != Gutschein[g][gCode]) continue;
    if(Gutschein[g][gUsed] == 1) return SendClientMessage(playerid, COLOR_ERRORTEXT, "Dieser Code wurde bereits aktiviert.");
    Gutschein[g][gUsed] = 1;
    format(string, sizeof(string), "Gutschein Aktiviert - von %s", SpielerName(playerid));
    SendClientMessage(playerid, COLOR_WHITE, string);
    format(string, sizeof(string), "UPDATE `gutscheine` SET `gUsed` = '1', `gUsedBy` = '%s'", SpielerName(playerid));
    self_mysql_query(string);
    return 1;
    }
    return SendClientMessage(playerid, COLOR_ERRORTEXT, "Dieser Code existiert nicht!");
    }

    Erstelle es unter OnGameModeInit.
    Ganz oben unter die Includes:
    new Text:Textdraw0;
    new Text:Textdraw1;


    Bei OnGameModeInit die Textdraws erstellen.


    Bei mir tut es:

    format(fstring,100,"%i %i %i %i %i %i",FrakInfo[i][ffrak],FrakInfo[i][modelidd],FrakInfo[i][fx],FrakInfo[i][fy],FrakInfo[i][fz],FrakInfo[i][fr]);
    zu:
    format(fstring,100,"%i %i %0.2f %0.2f %0.2f %0.2f",FrakInfo[i][ffrak],FrakInfo[i][modelidd],FrakInfo[i][fx],FrakInfo[i][fy],FrakInfo[i][fz],FrakInfo[i][fr]);


    sscanf(fstring,"iiiiii",FrakInfo[i][ffrak],FrakInfo[i][modelidd],FrakInfo[i][fx],FrakInfo[i][fy],FrakInfo[i][fz],FrakInfo[i][fr]);
    zu:
    sscanf(fstring,"iiffff",FrakInfo[i][ffrak],FrakInfo[i][modelidd],FrakInfo[i][fx],FrakInfo[i][fy],FrakInfo[i][fz],FrakInfo[i][fr]);


    Wenn es dann immer noch nicht geht: Steht denn was in der Datei? Wenn ja, was? Wird die Datei erstellt, oder sind die schon erstellt?

    format(string, sizeof(string), "UPDATE `gutscheine` SET `gUsed` = '1', `gUsedBy` = '%s'", SpielerName(playerid));
    zu:
    format(string, sizeof(string), "UPDATE `gutscheine` SET `gUsed` = '1', `gUsedBy` = '%s' WHERE gCode = '%d'", SpielerName(playerid),Gutschein[g][gCode]);

    Ja was willst du denn?


    Wenn Welt 100 voll ist (also 10 Spieler), soll der 11te dann in Welt 101 kommen, oder eine Nachricht, dass der Wettkampf voll ist?