Beiträge von iNTiMEE

    Also ich bin grad am Laptop, kann daher nicht überprüfen, ob der Code richtig ist, aber ich versuchs dir mal ungefähr deutlich zu machen.
    ocmd:gcv(playerid)
    {
    new string[128];
    format(string, sizeof(string), "Das nächste Fahrzeug hat die ID %i", GetClosestVehicle(playerid));
    SendClientMessage(playerid, COLOR_RED, string);


    //Oder den Spieler in das nächste Fahrzeug setzen
    PutPlayerInVehicle(playerid, GetClostestVehicle(playerid), 0);
    return 1;
    }




    GetClosestVehicle(playerid)
    {
    for(new i=0;i<MAX_VEHICLES;i++)
    {
    new nearestid, Float:nearestdist,Float:currentdist, Float:X, Float:Y, Float:Z;
    nearestdist = 999999.0; //auf einen hohen Wert setzten
    if(!IsVehicleStreamedIn(i, playerid); continue; //kannst du auch rauslassen, kommt drauf an was du damit anstellen willst
    GetVehiclePos(i, X, Y, Z); //position des Fahrzeuges rausfinden
    currentdist= GetPlayerDistanceToPoint(playerid, X, Y, Z); //distanz zwichen dem Player und dem Wagen i
    if(!currentdist < nearestdist) continue; //wenn currentdist größer ist als nearestdist dann an den Anfang springen


    nearestdist = currentdist; //ansonsten wenn currentdist kleiner ist als nearestdist... dann haben wir ein neues nearestdist. undzwar die aktuelle.
    nearestid = i; //nearestid wird solange auf i gesetzt, bis er das nächste Auto gefunden hat.
    }
    return nearestid; //die nächste Fahrzeugid wird hier zurückgegeben
    }


    Das hab ich jetzt grad auf die schnelle geschrieben, knnte daher evtl. Fehler enthalten.
    Ich kann dir aber heute Nachmittag weiterhelfen, falls du noch fragen hast.


    MfG

    Danke für die schnelle Antwort.. mit deiner Lösung hab ich dato keine Probleme gehabt :D


    Ich frag mich jedoch immer noch, wo das Problem mit dini liegt.
    Anfangs hab ich gedacht, das könnte daran liegen, dass ich die CPs beim schnellen Fahren gesetzt habe.
    Dass das System, wieso auch immer, nicht mitkommt, aber daran lags auch nicht. Ich bin bei jedem CP stehen geblieben und hab so den Punkt gesetzt.. Aber das Problem bleibt weiterhin bestehen. Einige Dateien sind komplett Fehlerfrei und andere haben dann 3-4 Fehler auf einmal.


    PS: Ja in pInfo[playerid][bRacename] ist der Dateipfad enthalten. Das wird beim benutzen des Befehls "/buildmode" automatisch gesetzt.
    MfG

    Hallo liebe Community,
    Ich habe ein kleines Problem, beim erstellen von Racecheckpoints.
    Ich hab sehr lange nicht mehr gescriptet und hab jetzt mal versucht mich zum ersten mal an ein Race system zu setzten.
    Ich kann mir nicht erklären wo der Fehler liegen könnte und wieso das überhaupt nicht funktioniert..
    mein Code zum speichern von Racecheckpoints:
    if(newkeys == KEY_FIRE && pInfo[playerid][inBM]==3) {
    new CPX[64], CPY[64], CPZ[64],string[256];
    new Float:pX, Float:pY, Float:pZ;
    GetVehiclePos(cCar[playerid], pX, pY, pZ);
    format(CPX, sizeof(CPX),"CPX%d", BMCP[playerid]);
    format(CPY, sizeof(CPY),"CPY%d", BMCP[playerid]);
    format(CPZ, sizeof(CPZ),"CPZ%d", BMCP[playerid]);
    dini_FloatSet(pInfo[playerid][bRacename], CPX,pX);
    dini_FloatSet(pInfo[playerid][bRacename], CPY,pY);
    dini_FloatSet(pInfo[playerid][bRacename], CPZ,pZ);
    format(string,sizeof(string),"[Buildmode] Der "_red"CP #%d "_msg"wurde gesetzt. Für das nächste CP, bitte Maustaste klicken.",BMCP[playerid]);
    SendClientMessage(playerid, MSG,string);
    BMCP[playerid]++; }



    So an sich funktioniert das ganze, aber ich zeig euch mal wie die .ini datei aussieht.


    "CPX11=1737.645629
    CPY11=1638.150512
    CPZ11=8.963583


    CPX12=1538.276855
    CPY12=1607.076660
    CPZ12=10.524776


    CPX13=1425.489013
    CPZ13=10.526561


    CPX14=1376.775024
    CPY14=1393.381713


    CPX15=1469.130737


    CPX16=1497.761230
    CPY16=1121.891967
    CPZ16=24.322010
    cpAnzahl=16"



    Man beachte CP 13 bis CP 15..
    Alle vorherigen CPs (0-12) funktionieren hervorragend.


    Hier ein anderes Rennen...
    "CPX13=2213.405029
    CPY13=2610.084960
    CPZ13=6.490880


    CPX14=1967.792114


    CPX15=1785.658325
    CPZ15=6.168214


    CPX16=1789.464843
    CPY16=2198.604003
    CPZ16=3.913159"


    Da fehlen einfach mal die Y oder Z Koordinaten..


    Ich hoffe mir kann da jemand weiterhelfen :/