Beiträge von Tommyx3

    - Verkauf vom ehemaligen NoLimit GangFight Script -


    Hallo, ich möchte das ehemalige NoLimit GangFight Script verkaufen
    da ich es nicht mehr brauche, und ich Geld für meinem Führerschein brauche :)


    Infos zum Script:
    http://www.gemeinsam-spielen.n…it-gangfight-samp-server/


    Testserver: N/A
    Würd es auch mehrmals verkaufen falls einige möchten.


    Zahlungmöglichkeiten: Nur per Überweisung


    Eine Kopie vom Script bleibt bei mir, werde es aber nicht verkaufen, oder sonstiges.
    Und eine bekommt NoLimit GangFight...


    ______
    Unverbindlicher Hinweis: Die Sicherheit einer Transaktion kann am besten durch die Einschaltung eines Mittelsmannes gewährleistet werden. Weitere Informationen dazu gibt es hier.

    Wie würde so eine Überprüfungdenn aussehen?


    So hab ichs:

    new pQuery[MAX_PLAYERS];


    public OnPlayerConnect(playerid)
    {
    pQuery[playerid]++;
    return 1;
    }


    public OnPlayerDisconnect(playerid, reason)
    {
    pQuery[playerid]++;
    return 1;
    }



    //Dann bei Jedem Query:
    mysql_function_query(connection, "SELECT * FROM `accounts`", true, "OnPlayerDataLoad", "ii", playerid, pQuery[playerid]);


    //callback
    public OnPlayerDataLoad(playerid, secure)
    {
    if(!IsPlayerConnected(playerid) || playerid == INVALID_PLAYER_ID) return printf("[secure] Query fehler, Spieler ist nicht Online (OnPlayerDataLoad)");
    if(secure != pQuery[playerid]) return printf("[secure] Query Kollision, das Ergebins ist nicht für den Spieler [%d]%s bestimmt (OnPlayerDataLoad)", playerid, GetName(playerid));
    //...
    return 1;
    }

    Und bevor sich wieder irgendein Neuling deinen Nonsens abguckt, stellen wir hier direkt mal klar, dass man bei sowas kein * benutzt, da * (für Info an die Anfänger) für ALLE FELDER steht und dadurch unnötig große Belastung für das Script entsteht. Da sowieso nur die Zeilen gezählt werden, reicht es ein x-beliebiges Feld zu nehmen.


    Was wenn man "NULL" benutzt? (BSP: "SELECT NULL FROM table")

    new string1[MAX_PLAYERS*256];
    format(string1, sizeof(string1), "Aktuelle Tickets:\n\n");
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(Ticket[i][TicketStatus] == 1)
    format(string1, sizeof(string1), "%s[TicketID: %d | Ersteller: %s | Status: Offen | Frage: %s ]\n", string1, i, Ticket[i][TicketOwner], Ticket[i][TicketText]);
    if(Ticket[i][TicketStatus] == 2)
    format(string1, sizeof(string1), "%s[TicketID: %d | Ersteller: %s | Status: Bearbeitung | Frage: %s ]\n", string1, i, Ticket[i][TicketOwner], Ticket[i][TicketText]);
    }
    ShowPlayerDialog(playerid, DIALOG_TICKETS, DIALOG_STYLE_MSGBOX, "Tickets: Angzeigen", string1, "Schließen", "");


    Ah jetzt versteh ich es.. danke :thumbup: (Erstell sie in OnPlayerConnect)


    das wird nicht funktionieren ;) Wenn du PlayerTextDraws erstellst während die playerid Offline ist, passiert rein gar nichts :whistling:


    Eine frage, benutze die PlayerTextdraws mit "new PlayerText:tScore" nicht wie im Wiki mit "new PlayerText:tScore[MAX_PLAYERS]" aber alles klappt super ohne fehler, weißt du villeicht wieso?

    liegt daran das du sofort returnst ... so ist es richtig:

    public OnPlayerConnect(...........)
    {
    if(isPlayerWhitList(playerid,0))
    {
    SendClientMessage(playerid,FARBE_ROT,"Du bist nicht auf der Whitelist");
    Kick(playerid);
    return 1;
    }
    }


    //I-wo oben:
    new PlayerDialogSelectBox[MAX_PLAYERS][MAX_PLAYERS];


    //Dialog anzeigen:
    new string[512], name[MAX_PLAYER_NAME], count;
    for(new i=0; i!=MAX_PLAYERS; i++)
    {
    if(IsPlayerNPC(i) || !IsPlayerConnected(i)) continue;
    GetPlayerName(i, name, MAX_PLAYER_NAME);
    format(string, sizeof string, "%s%s\n", string, name);

    PlayerDialogSelectBox[playerid][count] = i, count++;
    }
    ShowPlayerDialog(playerid, DIALOG_ANRUFEN, DIALOG_STYLE_LIST, "Wenn möchtest du anrufen?", string, "Ok", "Abbruch");


    //DialogResponse:
    new pid = PlayerDialogSelectBox[playerid][listitem];
    Versuchs mal damit, müsste eig klappen

    geh mal auf pastebin.com und mach mal deinen OnPlayerDeath Public rein & poste den link hier, denke der fehler muss da drin sein