
Waypoint
Wegpunkte als 3D-Marker in der Welt. Der GTA-Wegpunkt der Karte wird automatisch angezeigt, andere Scripts setzen eigene Wegpunkte über Exports auf dem Client oder dem Server. Das Script braucht kein Framework.
Voraussetzungen
- OneSync, nur wenn Server-Scripts
onArrivenutzen (der Server prüft dann die Entfernung)
Funktionen
- GTA-Wegpunkt als 3D-Marker mit Entfernung. Bei Ankunft wird der Wegpunkt gelöscht.
- Zwei Typen:
checkpointmit Linie bis zum Boden undsmallals schwebender Marker. - Pro Wegpunkt einstellbar: Farbe, Icon oder Bild, Text, Entfernung, Blip mit GPS-Route, Ablaufzeit und eine Funktion bei Ankunft.
- Exports für Client und Server.
- Sparsam: Nur die nächsten Wegpunkte werden gezeichnet (
maxVisible), die Browser-Instanzen werden wiederverwendet und aufgeräumt, wenn sie nicht mehr gebraucht werden.
Installation
- Ordner
off_waypointin deinenresources-Ordner legen. - In die
server.cfg:
ensure off_waypointKonfiguration
config/settings/config.lua
| Option | Standard | Beschreibung |
|---|---|---|
serverInfo.name | 'OFF SCRIPTS' | Servername, steht in der Oberfläche statt „OFF SCRIPTS“ |
serverInfo.locale | 'de' | Sprache: de, en, pl, fr, es oder it |
serverInfo.color | { 155, 89, 255 } | Serverfarbe (RGB), auch für Wegpunkte ohne eigene color |
serverInfo.design | 3 | Design der Oberfläche: 1 = Klassisch, 2 = Kassenbon, 3 = Storefront |
type | 'checkpoint' | Standard-Typ: 'checkpoint' oder 'small' |
drawDistance | 500.0 | Standard-Sichtweite in Metern |
displayDistance | true | Entfernung standardmäßig anzeigen |
maxVisible | 6 | So viele Wegpunkte werden gleichzeitig angezeigt, die nächsten zuerst |
blip | { sprite = 162, color = 17, scale = 0.8 } | Standard für Blips von Wegpunkten |
mapWaypoint.enabled | true | GTA-Wegpunkt als 3D-Marker anzeigen |
mapWaypoint.type | 'checkpoint' | Typ des GTA-Wegpunkts |
mapWaypoint.drawDistance | 10000.0 | Sichtweite des GTA-Wegpunkts |
mapWaypoint.arriveDistance | 25.0 | Ab dieser Entfernung wird der GTA-Wegpunkt gelöscht, 0 = nie |
Sprachen
Der Standardtext der Wegpunkte und die Konsolenmeldungen stehen in config/locales/ (eine Datei pro Sprache).
Wegpunkt-Optionen
Diese Felder kannst du beim Erstellen und Ändern übergeben. Nur coords ist Pflicht.
| Feld | Beschreibung |
|---|---|
coords | vector3, vector4 oder { x, y, z } |
type | 'checkpoint' oder 'small' |
label | Text unter der Entfernung, false = kein Text |
color | '#9b59ff' oder { 155, 89, 255 } |
icon / iconColor | Phosphor-Icon (z. B. 'ph-flag', Standard 'ph-map-pin') und eine eigene Icon-Farbe |
image | Bild-URL statt Icon |
displayDistance | Entfernung anzeigen |
size | Größe, Standard 1.0 |
drawDistance / fadeDistance | Sichtweite und ab wann der Wegpunkt ausgeblendet wird |
dynamicScaling | Wird mit der Entfernung größer und höher, wie der GTA-Wegpunkt |
arriveDistance | Ankunftsradius in Metern, Standard 5.0 |
onArrive | Funktion bei Ankunft: auf dem Client (id, metadata), auf dem Server (source, id) |
removeDistance | Wird gelöscht, sobald man so nah ist |
duration | Millisekunden, bis der Wegpunkt gelöscht wird |
blip | true oder { sprite, color, scale, name, shortRange } |
route / routeColor | GPS-Route zum Wegpunkt (setzt automatisch einen Blip) und ihre Farbe |
groundZ / minHeight / maxHeight | Nur checkpoint: Bodenhöhe der Linie und Grenzen ihrer Höhe |
metadata | Beliebige Daten, kommen bei onArrive und GetWaypoint zurück |
Für Entwickler
-- Client
local id = exports.off_waypoint:AddWaypoint({
coords = vector3(215.0, -810.0, 30.7),
label = 'Abholung',
icon = 'ph-package',
color = '#3B9EFF',
route = true,
onArrive = function(id)
exports.off_waypoint:RemoveWaypoint(id)
end,
})
exports.off_waypoint:UpdateWaypoint(id, { label = 'Abgabe', coords = vector3(300.0, -900.0, 29.3) })
exports.off_waypoint:RemoveWaypoint(id) -- mit Ausblenden, RemoveWaypoint(id, true) sofort
exports.off_waypoint:RemoveAllWaypoints() -- alle Wegpunkte deines Scripts
local waypoint = exports.off_waypoint:GetWaypoint(id)
local exists = exports.off_waypoint:HasWaypoint(id)
-- Server
local id = exports.off_waypoint:AddWaypoint(source, {
coords = vector3(215.0, -810.0, 30.7),
label = 'Lieferung',
onArrive = function(source, id)
exports.off_waypoint:RemoveWaypoint(source, id)
end,
})
exports.off_waypoint:UpdateWaypoint(source, id, { label = 'Neue Adresse' })
exports.off_waypoint:RemoveWaypoint(source, id)
exports.off_waypoint:RemoveAllWaypoints(source) -- alle Wegpunkte deines Scripts bei diesem Spieler
local exists = exports.off_waypoint:HasWaypoint(source, id)- Stoppt ein Script, werden seine Wegpunkte automatisch entfernt.
onArriveauf dem Server wird nur ausgelöst, wenn der Spieler laut Server wirklich in der Nähe ist.
Häufige Fehler
| Problem | Lösung |
|---|---|
| Wegpunkte sind unsichtbar | web/dist fehlt – im Ordner web npm install und npm run build ausführen. |
| Es sind nicht alle Wegpunkte zu sehen | Es werden nur die nächsten maxVisible angezeigt, Wert in der Config erhöhen. |
| Icon fehlt | Den Namen auf phosphoricons.com prüfen, z. B. ph-flag. |
onArrive auf dem Server kommt nicht an | OneSync muss an sein und arriveDistance zum Ort passen. |
Noch nicht gekauft?
Waypoint im Shop ansehen