Denkfehler

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
  • Hallo,


    ich habe einen sehr komischen Denkfehler im Script.
    Die Registrierung und Login auf basierenden Textdraws ist fertig, also kommt nun die Skin Auswahl.


    Man muss sich das so vorstellen

    • Spieler akzeptiert Nutzungsbestimmungen
    • InterpolateCameraPos und InterplateCameraLookAt folgen, welche im selbst gemappten Interior in die Kabine switchen
    • Spieler befindet sich nicht dort, obwohl ich mit SetPlayerPos arbeite (Virtuelle Welt ausgeschlossen)


    Klar, ich denke es ist ein kleiner Denkfehler, jedoch habe ich gerade echt 0 Plan.
    Hier mal die Pastebin ID, damit man vielleicht mal drüber schauen kann. (http://pastebin.com/qGcUyd6S)


    Ich lasse den Spieler nirgendwo spawnen, sondern gebe ihn direkt in den Spectating Modus und dann folgen auch schon die Textdraws.


    Hoffentlich kann wer helfen.


    MfG,
    Cheevy

    2 Mal editiert, zuletzt von Cheevy.Shakur () aus folgendem Grund: //e: Text bearbeitet //e: Text bearbeitet

  • Funktioniert irgendwie nicht.

    • Timer bei OnPlayerRequestClass ruft Login/Register System auf -> Spectacting dort auf 1
    • Bei der Skin Auswahl dann erst SetSpawnInfo und dann Spectating auf 0
    • Spieler spawnt an den Koordinaten vom Public OnPlayerSpawn


    //Skin Auswahl
    SetSpawnInfo(playerid, 0, 0, 0,0,0,0,0,0,0,0, 0, 0 );
    TogglePlayerSpectating(playerid,0);
    InterpolateCameraPos(playerid, 1506.195678, -1580.983032, 14.677125, 1492.117309, -1571.259521, 14.386649, 5000);
    InterpolateCameraLookAt(playerid, 1504.332153, -1576.355224, 14.345337, 1489.328979, -1567.197387, 13.535666, 5000);
    SetPlayerPos(playerid,1490.3431,-1571.6420,13.5659);
    SetPlayerFacingAngle(playerid,217.1232);
    SetTimerEx("SkinAuswahl",5000,false,"i",playerid);

  • Also ich versteh das bei dir so du switchst direkt zum Spieler in die Kabine , also soll man den Spieler in der Kabine sehen.


    Das ganze geht halt eben nicht du kannst die Positionen des Spielers nicht setzen während er gerade in der Kamerafahrt ist bzw TogglePlayerSpectating ist auf 1.
    Dazu müsstest du einen Actor erstellen, damit das möglich ist oder


    du brichst die Kamerafahrt ab setzst mit SetSpawnInfo erst die Spawninformationen setzst TogglePlayerSpectating auf 0 und setzst die Kamera vor den Spieler via SetPlayerCameraPos und SetPlayerCameraLookAt

  • Also ich versteh das bei dir so du switchst direkt zum Spieler in die Kabine , also soll man den Spieler in der Kabine sehen.


    Das ganze geht halt eben nicht du kannst die Positionen des Spielers nicht setzen während er gerade in der Kamerafahrt ist bzw TogglePlayerSpectating ist auf 1.
    Dazu müsstest du einen Actor erstellen, damit das möglich ist oder


    du brichst die Kamerafahrt ab setzst mit SetSpawnInfo erst die Spawninformationen setzst TogglePlayerSpectating auf 0 und setzst die Kamera vor den Spieler via SetPlayerCameraPos und SetPlayerCameraLookAt

    Sicher das es nicht funktioniert, den Spieler in die Kabine zu setzten und dann InterpolateCameraPos etc.. mit zu nutzen?
    Wenn ich z.B SetSpawnInfo verwende, spawnt der Spieler an den Positionen unter OnPlayerSpawn..

  • Jop sobald du TogglePlayerSpectating(1) nutzst befindet sich der Spieler direkt über der Kamera damit die Umgebung eingestreamt wird. Wenn SpawnPlayer oder TogglePlayerSpectating(0) aufgerufen wird wirs der spieler gespawnt und OnPlayerSpawn wird aufgerufen.