GF Haussystem - Interiorbug (/exit)

In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums
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
  • Wenn du verschiedene Gebäude mit dem selben Interior hast, dann solltest du für jede Interior-"Version" eine Zahl definieren.
    Also z.B.
    #define INTERIOR_ARBEITSAMT 1
    #define INTERIOR_STADTHALLE 2
    ...Dann kannst du beim Betreten eines Interiors die VirtualWorld zuweisen
    SetPlayerVirtualWorld(playerid, INTERIOR_STADTHALLE);
    Und dadurch kannst du beim Verlassen des Interiors die VirtualWorld abfragen (mit GetPlayerVirtualWorld) und dann je nach Gebäude wieder den passenden Teleport nach draußen setzen. Nicht vergessen, die VirtualWorld nach dem Verlassen wieder auf 0 zu setzen, sonst sieht der Spieler die anderen User+Cars nicht.


    Ich denke, jetzt hast du das Prinzip verstanden ;)

    Professioneller Webentwickler.

  • Das ist ganz einfach, beim /enter-cmd wird ja eine Schleife erstelle, die alle Häuser abfragt und ob der Spieler in der Nähe eines Hauses ist. Die Variable für das jeweilige haus ist im GF-Skript "i". Also dann wird der Spieler in die VirtualWorld i gesetzt, siehe:
    SetPlayerVirtualWorld(playerid, i);


    Beim /exit-cmd fragst du dann neben der Interiorposition noch die Virtual World ab.
    (... && GetPlayerVirtualWorld(playerid) == i)


    Dann setzt du den Spieler zur Position des Hauses "i" und zudem noch die VirtualWorld 0.


    Ganz einfach.