Beiträge von Jeffry

    Ok, gleich den ganzen Code. Dann musst du aber noch kurz erklären, welche Schritte du nacheinander gemacht hast um dieses Ergebnis zustande zu bekommen (welche Befehle hast du eingegeben?).

    Das ist, sofern nicht gewollt, schlecht wenn das da steht, daher ist es nicht zu empfehlen es zu erzwingen.
    Wenn du es aber haben willst, erstelle im Pawno-Ordner eine Datei pawn.cfg und schreibe dort "-d3" rein (ohne die Anführungszeichen).

    Zeile 3:
    if(player_car[playerid]) return //hier hat er schon ein auto!
    Zu
    if(player_car[0][playerid]) return //hier hat er schon ein auto!


    Außerdem bei OnPlayerDisconnect:
    if(player_car[0][playerid])
    {
    DestroyVehicle(player_car[0][i]);
    player_car[0][i]=0;
    }

    [19:18:34] CMySQLHandler::CMySQLHandler() - Connecting to "5.39.74.166" | DB: "samp5290_mvd" | Username: "samp5290" ...
    [19:18:34] CMySQLHandler::Connect() - Can't connect to MySQL server on '5.39.74.166' (111) (Error ID: 2003)


    Entweder die Login-Daten sind falsch oder du hast keinen Zugriff auf die Datenbank (Server down oder keine Berechtigung).

    Lass dir die Koordinaten mal ausgeben, dann weißt du wo das Fahrzeug steht.
    FactionCars[fc][fCarid] = CreateVehicle(FactionCars[fc][fVehid],FactionCars[fc][fPos][0],FactionCars[fc][fPos][1],FactionCars[fc][fPos][2],FactionCars[fc][fPos][3],FactionCars[fc][fCol][0],FactionCars[fc][fCol][1],-255);
    zu:
    FactionCars[fc][fCarid] = CreateVehicle(FactionCars[fc][fVehid],FactionCars[fc][fPos][0],FactionCars[fc][fPos][1],FactionCars[fc][fPos][2],FactionCars[fc][fPos][3],FactionCars[fc][fCol][0],FactionCars[fc][fCol][1],-255);
    printf("Fahrzeug %d (Idx: %d) steht: %f / %f / %f", FactionCars[fc][fCarid], fc, FactionCars[fc][fPos][0],FactionCars[fc][fPos][1],FactionCars[fc][fPos][2]);

    Naja, übertreiben solltest du es nicht, weil du bedenken musst, dass der Speicher dafür reserviert wird, die amx Datei größer wird und der Compiler länger braucht zum kompilieren.
    Das Limit ist also abhängig von den Ressourcen.


    Angenommen du hast 10 Registrationen pro Tag auf deinem Server, dann reichen 10000 für die nächsten drei Jahre. Erst dann müsstest du es erhöhen. Ich, an deiner Stelle, würde es auf 1000 lassen und beobachten wie viele Spieler pro Tag dazu kommen. Entsprechend kannst du es dann anpassen.

    Ok, dann ändere das zu:
    public DestroyAndCreateFactionCar(fc)
    {
    if(FactionCars[fc][fVehid] >= 400 && FactionCars[fc][fVehid] <= 611)
    {
    DestroyVehicle(FactionCars[fc][fCarid]);
    FactionCars[fc][fCarid] = CreateVehicle(FactionCars[fc][fVehid],FactionCars[fc][fPos][0],FactionCars[fc][fPos][1],FactionCars[fc][fPos][2],FactionCars[fc][fPos][3],FactionCars[fc][fCol][0],FactionCars[fc][fCol][1],-255);
    #if defined FACTION_CARS_TUNEABLE
    if(IsAllowedFactionToTune(FactionCars[fc][fFaction][0]))
    {
    for(new i=0; i<13; i++)
    {
    if(FactionCars[fc][fTuning][i] != 0)
    {
    AddVehicleComponent(FactionCars[fc][fCarid],FactionCars[fc][fTuning][i]);
    }
    }
    }
    #endif
    }
    return true;
    }


    Und OnVehicleDeath zu:
    Function OnVehicleDeath(vehicleid)
    {
    for(new playerid = 0; playerid < MAX_PLAYERS; playerid++)
    {
    for(new x = 0; x < MaxVeh; x++)
    {
    if(IsPlayerConnected(playerid) && Dtc_PlayerHaveCar[playerid][x])
    {
    if (vehicleid == PlayerCar[playerid][x][CarId])
    {
    DestroyVehicle(PlayerCar[playerid][x][CarId]);
    PlayerCarSpawn(playerid,x);
    }
    }
    }
    }
    for(new fc;fc<sizeof(FactionCars);fc++)
    {
    if(vehicleid == FactionCars[fc][fCarid])
    {
    DestroyAndCreateFactionCar(fc);
    break;
    }
    }
    return 1;
    }

    Die Nutzung von
    PlayerGlobalName[PlayerInfo[playerid][pId]]
    würde keinerlei Ladedauer haben, da es ja komplett im RAM steht.


    Du kannst also problemlos
    format(string, sizeof(string), "Globaler Name: %s", PlayerGlobalName[PlayerInfo[playerid][pId]]);
    nutzen.


    Wenn ich mir die Varianten so durchdenke, ist das wahrscheinlich sogar die beste Möglichkeit. Es kann halt sein, dass du etwas Verzögerung beim Server-Start hast.

    Das ist auch keine so gute Idee, da du davon ausgehen musst, dass du vielleicht mal 100.000 registrierte Benutzer hast, und das würde doch ziemlich Speicher nutzen und auch etwas beim Laden dauern.
    Kannst du zwar machen (funktioniert auch), ist aber ebenfalls nicht empfohlen.