SetVehicleToRespawn

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
  • Hey ich habe ein Problem unswa wenn ich mein Fahrzeug Parke und es respawn hat es die Gleiche Rotation wie beim Spawn des Fahrzeugs aber wenn ich den Server Neustarte Spawnt es Richtig ?



    Hier nocheinmal mit Screens Verdeutlicht



    Der Park Befehl





    Screen 1 (sa-mp-132.png)
    So Wie es Spawn


    Screen 2 (sa-mp-133.png)
    So wie ich es Parke


    Screen 3 (sa-mp-134.png)
    So wie es dann Spawnt
    ( An der Postition wo ich es Geparkt habe bloß mit der Spawn Rotation ?

  • Ja die Cordinaten Stimmen Verächtig genau überein mit dennen in der Datenbank :D


  • ich bin mir jetzt nicht 100% sicher, was mir aber aufgefallen ist folgendes:


    Wenn du den Befehl /fpark eingibst wird hier ja die aktuelle Fahrzeugposition in dem Enum eingesetzt:

    Code
    GetVehiclePos(veh, FFahrzeugInfo[veh][fParkPosX], FFahrzeugInfo[veh][fParkPosY], FFahrzeugInfo[veh][fParkPosZ]);
    GetVehicleZAngle(veh, FFahrzeugInfo[veh][fParkPosA]);
    FFahrzeugInfo[veh][fPosX] = FFahrzeugInfo[veh][fParkPosX];
    FFahrzeugInfo[veh][fPosY] = FFahrzeugInfo[veh][fParkPosY];
    FFahrzeugInfo[veh][fPosZ] = FFahrzeugInfo[veh][fParkPosZ];
    FFahrzeugInfo[veh][fPosA] = FFahrzeugInfo[veh][fParkPosA];


    und dann rufst du ja das er das Speichern soll.
    Bei SaveFraktionsCar wird aber erneut die aktuelle Position aufgerufen und erneut in den Enum eingesetzt:

    Code
    GetVehiclePos(vehicleid, FFahrzeugInfo[vehicleid][fPosX], FFahrzeugInfo[vehicleid][fPosY], FFahrzeugInfo[vehicleid][fPosZ]);
    GetVehicleZAngle(vehicleid, FFahrzeugInfo[vehicleid][fPosA]);


    Es könnte daran liegen das er dann durcheinander kommt...
    Hast du mal versucht nen Query zu machen bei /fpark und so zu speichern ohne SaveFraktionsCar beim eingeben des Befehls aufzurufen?


    Wie gesagt es ist nur eine vermutung!

  • hast du mal folgendes versucht:


  • nächster Versuch :)


    ( Query wurde überarbeitet ^^ )

  • Jetze wird es an der Postion Gespawnt wo es geladen wurde sprich es wird nichts mehr verändert

    Wann wird das Fahrzeug gespawnt?
    Hier QueryMeldung?


    Wenn ja poste bitte mal den Code davon, eventuell liegt es daran etwas.
    Beim Print wird ja alles richtig angezeigt daher muss etwas beim laden nicht stimmen...


    Was du noch machen kannst ist den Query ebenfalls printen, dies würde so gehen:

  • In Zeile 3 deklarierst du die variable vehicle und in Zeile 6 das selbe mit veh jeweils mit dem Wert von GetPlayerVehicleID. Dann bei Zeile 17 im Query nutzt du FFahrzeugInfo[vehicleid][fDatabaseID]. Eine der beiden variablen aus Zeile 3 oder 6 Löschen und jeweils überall anpassen und bei FFahrzeugInfo[vehicleid][fDatabaseID] zu FFahrzeugInfo[VARAIBLE AUS ZEILE 3 oder 6][fDatabaseID] ändern.

  • Code
    [29.07.2016 - 11:36:06] UPDATE `fraktionscars` SET `ParkPosX`='1545.386474', `ParkPosY`='-1680.120849', `ParkPosZ`='5.613782', `ParkPosA`='0.000000' WHERE `ID`=''
  • Beitrag von reaL. ()

    Dieser Beitrag wurde vom Autor gelöscht ().
  • So ich konnte den Fehler Jetze schon eingrenzen.
    Unswa ist mir bei den prints aufgefallen wenn ( SetVehicleInfo ) wird mir ( nach dem Spawn des Cars ) die Richtige Rotation geprintet aber wenn ich dann die Rotations Abfrage ist sie Trotzdem Falsch ?
    Wo Liegt der Fehler ?


    @Jeffry:


    //Prints

    Code
    [30.07.2016 - 10:55:45] 359.248504
    [30.07.2016 - 10:55:45] Unter SaveFraktionsCar 359.248504
    [30.07.2016 - 10:55:45] `ParkPosA`='359.248504',
    [30.07.2016 - 10:55:45] [ - MySQL - ] Fraktionsfahrzeug 39 wurde mit einer Geschwindigkeit von 2 Millisekunden gespeichert!
    [30.07.2016 - 10:56:01] OnVehicleSpawn ( Frakcar )
    [30.07.2016 - 10:56:01] Parkpos 1595.469848 -1710.220336 5.610696 359.248504
    [30.07.2016 - 10:56:01] Pos 1595.469848 -1710.220336 5.610696 359.248504
    [30.07.2016 - 10:56:04] SetVehicleFPos 359.248504
    [30.07.2016 - 10:56:05] SetVehicleInfo 359.248504
    [30.07.2016 - 10:56:05] SetVehicleInfo TP 1595.469848 -1710.220336 5.610696 91.528701


    //Code



    Dialog zum Respawnen Eines Fahrzeug's

    Code
    public OnVehicleSpawn(vehicleid)
    {
        new engine, lights, alarm, doors, bonnet, boot, objective;
    	if(IsFraktionsCar[vehicleid] || IsSpielerCar[vehicleid])
    	{
    		printf("OnVehicleSpawn ( Frakcar )");
    		SetVehicleVirtualWorld(vehicleid, 999);
    		SetTimerEx("SetVehicleInfo", 3000, false, "i", vehicleid);
    	}
    Code
    stock SetVehicleFPos(vehicleid, Float:x, Float:y, Float:z, Float:angle)
    {
    	SetVehiclePos(vehicleid, x, y, z);
    	SetVehicleZAngle(vehicleid, angle);
    	printf("SetVehicleFPos %f",angle);
    	return 1;
    }