Beiträge von Phill

    Abend,
    und zwar will ich in der Runtime mit CreateVehicle ein Auto spawnen lassen was an sich ja auch kein Problem darstellt.
    Nun stehe ich allerdings vor dem Problem, sobald dieser Befehl ausgeführt worden ist, kommt ein GC und man ist erstmal draußen.
    Will man sich wieder Verbinden mit dem Spiel kommt immer wieder ein GC. Woran kann das liegen?
    Hier mal ein Stückel Quellcode:
    mysql_query(query);
      mysql_store_result();
      mysql_fetch_row_format(row, "|");
      split(row, carData, '|');
      mysql_free_result();


      vehid = CreateVehicle(strval(carData[1]), floatstr(carData[2]), floatstr(carData[3]), floatstr(carData[4]), floatstr(carData[5]), strval(carData[6]), strval(carData[7]), -1);

    Die Abfrage stimmt komplett, Variablen sind im richtigen Format etc.
    Der Server bleibt auch stabil und stürzt nicht mehr ab.
    Was mache ich falsch?
    mfg

    üDanke für deine Antwort.
    Also nur unter Linux stürzt dieses Konstrukt ab :)
    Habe es jetzt erstmal ohne die DB im Hintergrund laufen den Family Chat.
    Wenn trotzdem jemand eine Idee dazu hat, würde ich mich freuen diese zu lesen.
    mfg Phill

    Morgen,
    ich befasse mich seit einigen Tagen mit Pawn und mit dem mysql Plugin: http://forum.sa-mp.com/index.php?topic=79352.0
    Nun funktioniert alles so weit ohne Probleme, bis auf der Familien Chat. Ich lese aus der Datenbank aus, wer gerade von dem Team online ist, und schicke die Nachricht an die entsprechenden IDs. Hier mal der Code:
    new newtext[64];
    strmid(newtext, text, 3, strlen(text), sizeof(newtext));
    MY_MYSQL_Connect();
    new query[256];
    new row[128];
    new anzahl;
    new Daten[1][1];
    format(query, sizeof(query), "SELECT tab_online.online_playerid FROM tab_online INNER JOIN tab_user ON tab_user.user_id = tab_online.online_user_id_fs WHERE (tab_user.user_teamid = '%i') ;", PlayerInfo[id][teamid]);
    mysql_query(query);
    mysql_store_result();
    anzahl = mysql_num_rows();
    mysql_free_result();


    for (new i = 0; i < anzahl; i++){
    format(query, sizeof(query), "SELECT tab_online.online_playerid FROM tab_online INNER JOIN tab_user ON tab_user.user_id = tab_online.online_user_id_fs WHERE (tab_user.user_teamid = '%i') LIMIT %i,1 ;", PlayerInfo[id][teamid], i);
    mysql_query(query);
    mysql_store_result(),
    mysql_fetch_row_format(row, "|");
    mysql_free_result();
    split(row, Daten, '|');
    SendClientMessage(strval(Daten[0]), FAMILY, newtext);
    }


    MY_MYSQL_Close();



    Hier wird der Befehl aufgerufen: In der Funktion OnPlayerCommandText:
    // Family Chat
    if (strcmp("/f", cmdtext, true, 2) == 0)
    {
    // Überprüfen ob man in einer Familie ist!!
    if (PlayerInfo[playerid][teamid] == 0){
    SendClientMessage(playerid, RED, "Du bist in keiner Familie");
    } else {
    Chat_SendFamily(playerid, cmdtext);
    }
    return 1;
    }



    Nun besteht das Problem darin, wenn mehrere Nachrichten nacheinander schreibe stürtzt mir der Server ab.
    Woran kann das liegen? Ich könnte mir vllt. denken wo, aber bevor ich das sage, würde ich gerne von euch Meinungen einholen.
    Mit diesem Quelltext geht es, ist allerdings ohne die DB nutzung:
    for (new i = 0; i < MAX_PLAYERS; i++){
    if (PlayerInfo[i][teamid] == PlayerInfo[id][teamid]){
    SendClientMessage(i, FAMILY, newtext);
    }
    }


    [/i][i]Ich hoffe ihr könnt mir einen kleinen Tipp geben :)
    mfg Phill