[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Dann unter den Includes:
    new specID[MAX_PLAYERS] = {-1, ...};


    Im Befehl:
    specID[playerid] = playerID;


    Beim beenden:
    specID[playerid] = -1;


    Und bei OnPlayerSpawn:
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(specID[i] == playerid)
    {
    //Spectate für "i" neu starten, auf "playerid".
    }
    }

  • Schaut so aus @Jeffry , aber das Problem ist immer noch vorhanden :(



    public OnPlayerSpawn(playerid) {



    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    new playerID;
    if(specID[i] == playerid)
    {
    if(!IsPlayerInAnyVehicle(playerID)) {
    TogglePlayerSpectating(playerid,1);
    PlayerSpectatePlayer(playerid,playerID);
    SetPlayerInterior(playerid,GetPlayerInterior(playerID));
    SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(playerID));
    } else {
    TogglePlayerSpectating(playerid,1);
    PlayerSpectateVehicle(playerid,GetPlayerVehicleID(playerID));
    SetPlayerInterior(playerid,GetPlayerInterior(playerID));
    SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(playerID));
    return 1;
    }
    }
    }


    Mit freundlichen Grüßen
    JustMe.77 8)

  • Beitrag von AirM4X ()

    Dieser Beitrag wurde vom Autor aus folgendem Grund gelöscht: Ah, falsch. Sorry! ().
  • Warum kommt diese Warning-Meldung?


    Im MySQL Log

    SQL
    [22:15:19] [WARNING] CMySQLConnection::Disconnect - no connection available

    Ich lasse die MySQL Verbindung bei OnGameModeExit zuletzt schließen, oder ist das ein andere Fehler.

  • Schaut so aus @Jeffry , aber das Problem ist immer noch vorhanden

    Versuche es so:
    public OnPlayerSpawn(playerid)
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(specID[i] == playerid)
    {
    if(!IsPlayerInAnyVehicle(playerid))
    {
    TogglePlayerSpectating(i,1);
    PlayerSpectatePlayer(i,playerid);
    SetPlayerInterior(i,GetPlayerInterior(playerid));
    SetPlayerVirtualWorld(i,GetPlayerVirtualWorld(playerid));
    }
    else
    {
    TogglePlayerSpectating(i,1);
    PlayerSpectateVehicle(i,GetPlayerVehicleID(playerid));
    SetPlayerInterior(i,GetPlayerInterior(playerid));
    SetPlayerVirtualWorld(i,GetPlayerVirtualWorld(playerid));
    }
    }
    }



    Warum kommt diese Warning-Meldung?

    Scheint so, als sei die Verbindung nicht mehr aktiv. Entferne die Zeile mal und schaue, ob der Fehler weiterhin auftritt, oder dann weg ist.

  • Wenn ich mysql_close(handle); entferne wird eine crashinfo.txt Datei erstellt.

  • Nein ich habe '/exit' benutzt.
    Aber wenn ich '/gmx' benutze kommt das die Verbindung bereits vorhanden ist ( [WARNING] CMySQLHandle::Create - connection already exists ).
    Jedoch wenn ich '/exit' benutze, kommt im MySQL Log zwar keine Warning / Error Meldung, aber stattdessen wird eine Crashinfo.txt Datei erstellt.
    Mit dem Inhalt kann ich nichts anfangen.


    // Edit:
    Diese Fehlermeldung ( [WARNING] CMySQLConnection::Disconnect - no connection available ) taucht nur auf wenn ich bei OnGameModeExit mysql_close(handle); stehen habe.

  • Habe alles ausgeklammert, aber es stürzt immer noch ab.
    -
    Es stürzt ab wenn ich, mysql_close(handle); aus OnGameModeExit() ausklammere.
    Es stürzt nicht ab wenn ich, mysql_close(handle); nicht aus OnGameModeExit() ausklammere, jedoch taucht diese [WARNING] CMySQLConnection::Disconnect - no connection available Meldung in der MySQL Log auf.


    Aber mir sind keine Problemen aufgefallen wenn das warning in der MySQL Log kommt.

  • Die Kritik an anderen hat noch keinem die eigene Leistung erspart.

    – Noël Coward