-
Notifications
You must be signed in to change notification settings - Fork 0
API UO GetPetsMax de
ClassicUO / Basic IDE
Home · Все команды · Каталоги
Prüft, ob Platz für ein weiteres gezähmtes oder beschworenes Wesen vorhanden ist. Followers zählt belegte Kontrollplätze, FollowersMax die Gesamtgrenze. Dies ist weder die Zahl naher Tiere noch der Bewegungsbefehl Follow.
Liest den Statuszähler des aktuellen Spielers: maximale Kontrollplätze für Begleiter.
UO.GetPetsMax() -> Integer
Keine Parameter.
Integer — maximale Kontrollplätze für Begleiter, 0..255 im Modell. 0 kann echt, unbekannt oder fehlender/zerstörter Player sein. Menge, kein Boolean, ID oder type: 1 bedeutet eine Einheit, keinen Erfolg. Keine Objektsuche und kein Array.
- Bei 3 von 5 belegten Plätzen bleiben 2 frei. 4 kann vier Wesen mit je einem Platz oder eines mit vier Plätzen bedeuten. Für zwei Plätze gilt maximum - current >= 2. Kosten und Grenze bestimmt der Server; nicht pauschal 5 verwenden.
- Null beweist keinen Verlust oder Tod: Statusdaten können fehlen oder veraltet sein. Ein Anstieg identifiziert kein bestimmtes gezähmtes Tier. Tier und Servermeldungen prüfen. Stallplätze sind ein anderer Wert.
- Keine Argumente. Die angezeigten Signaturen beachten.
- Liest Player.FollowersMax im Spielthread, sofern Player vorhanden und nicht zerstört ist; sonst 0. Keine Ausrüstungssuche, Bonusberechnung, Statusanforderung oder Wartezeit. Ein vorhandener Geist ist kein zerstörter Player.
- PetsMax/FollowersMax liest ab Status type 3 die gesamte erlaubte Kontrollplatzgrenze, nicht freie Plätze. Die Belegung kann darüber liegen. Freie Kapazität als maximum - current berechnen und negative Ergebnisse auf 0 begrenzen. Kein Freilassen, Zähmen oder Beschwören.
- CharacterStatus prüft den festen Körper vor Änderungen. Weight stammt aus eigenem erweitertem Status, Plätze ab Typ 3, Luck ab Typ 4, Server-WeightMax ab Typ 5. Kompakte/alte Pakete ohne optionalen Zähler behalten den Cache. Ein neuer Player startet bei null; kein Nachweis frischer Daten.
- RegisterCharacterGetterAliases ergänzt fehlende parameterlose Funktionen und intrinsische Namen. Bestehende Zweige lesen dasselbe Feld. Namen sind unabhängig von Großschreibung; intrinsische Werte ohne Klammern werden neu gelesen, sofern keine Variable sie verdeckt.
- Jeder Aufruf liest neu. Variablen speichern Momentaufnahmen; getrennte Aufrufe können verschiedene Serverupdates sehen. Ein Wert ungleich 0 prüft keine Verbindung; 0 kann ein Wert oder fehlende Daten sein.
Native Schritte des Cachelesens. CanCarry, LuckAtLeast oder CanAddFollower im Beispiel ist eine vollständige BASIC-Hilfsfunktion, keine versteckte native Aktion. Inventar und Begleiter bleiben unverändert.
RegisterCharacterGetterAliases ergänzt fehlende parameterlose Funktionen und intrinsische Namen. Bestehende Zweige lesen dasselbe Feld. Namen sind unabhängig von Großschreibung; intrinsische Werte ohne Klammern werden neu gelesen, sofern keine Variable sie verdeckt.
PetsMax FollowersMax GetPetsMax GetFollowersMax.
Projektquelle: external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs; Funktion RegisterCharacterGetterAliases.
Liest Player.FollowersMax im Spielthread, sofern Player vorhanden und nicht zerstört ist; sonst 0. Keine Ausrüstungssuche, Bonusberechnung, Statusanforderung oder Wartezeit. Ein vorhandener Geist ist kein zerstörter Player.
Invoke liest auf dem Spielthread; Warten kann durch Skriptabbruch enden. Kein Paket, Statusabruf, Zielcursor, Ändern des Attributs oder eingebauter Wartezeitraum.
Projektquelle: src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs; Funktion Invoke.
CharacterStatus prüft den festen Körper vor Änderungen. Weight stammt aus eigenem erweitertem Status, Plätze ab Typ 3, Luck ab Typ 4, Server-WeightMax ab Typ 5. Kompakte/alte Pakete ohne optionalen Zähler behalten den Cache. Ein neuer Player startet bei null; kein Nachweis frischer Daten.
PetsMax/FollowersMax liest ab Status type 3 die gesamte erlaubte Kontrollplatzgrenze, nicht freie Plätze. Die Belegung kann darüber liegen. Freie Kapazität als maximum - current berechnen und negative Ergebnisse auf 0 begrenzen. Kein Freilassen, Zähmen oder Beschwören.
Projektquelle: src/ClassicUO.Client/Network/PacketHandlers.cs; Funktion CharacterStatus.
World.Clear entfernt Player. Bis Spieler und Daten wieder vorhanden sind, liefern Aufrufe 0. Ein gespeicherter Wert beweist nach Wiederverbindung keine erfüllte Anforderung.
Integer — maximale Kontrollplätze für Begleiter, 0..255 im Modell. 0 kann echt, unbekannt oder fehlender/zerstörter Player sein. Menge, kein Boolean, ID oder type: 1 bedeutet eine Einheit, keinen Erfolg. Keine Objektsuche und kein Array.
Projektquelle: src/ClassicUO.Client/Game/World.cs; Funktion Clear.
Jeder Aufruf liest neu. Variablen speichern Momentaufnahmen; getrennte Aufrufe können verschiedene Serverupdates sehen. Ein Wert ungleich 0 prüft keine Verbindung; 0 kann ein Wert oder fehlende Daten sein.
# Freie Kontrollplätze berechnen
#
# Prüft, ob Platz für ein weiteres gezähmtes oder beschworenes Wesen vorhanden ist. Followers
# zählt belegte Kontrollplätze, FollowersMax die Gesamtgrenze. Dies ist weder die Zahl naher
# Tiere noch der Bewegungsbefehl Follow.
#
# Liest den Statuszähler des aktuellen Spielers: maximale Kontrollplätze für Begleiter.
#
# Integer — maximale Kontrollplätze für Begleiter, 0..255 im Modell. 0 kann echt, unbekannt oder
# fehlender/zerstörter Player sein. Menge, kein Boolean, ID oder type: 1 bedeutet eine Einheit,
# keinen Erfolg. Keine Objektsuche und kein Array.
SUB Main()
# current ist belegt, maximum die Grenze, freeSlots die Differenz. Bei fehlender Grenze oder
# widersprüchlichen Daten endet das Beispiel. Es liest gespeicherten Status ohne
# Aktualisierungsanfrage.
VAR current = UO.Followers()
VAR maximum = UO.GetPetsMax()
IF UO.Self() = 0 OR maximum <= 0 OR current > maximum THEN
UO.Print("Follower status is unavailable or inconsistent")
RETURN
END IF
VAR freeSlots = maximum - current
UO.Print("Control slots: " + CStr(current) + "/" + CStr(maximum))
UO.Print("Free slots: " + CStr(freeSlots))
END SUBErläuterung der Parameter und Ausführung:
- current ist belegt, maximum die Grenze, freeSlots die Differenz. Bei fehlender Grenze oder widersprüchlichen Daten endet das Beispiel. Es liest gespeicherten Status ohne Aktualisierungsanfrage.
# Kapazität vor Animal Taming prüfen
#
# Prüft, ob Platz für ein weiteres gezähmtes oder beschworenes Wesen vorhanden ist. Followers
# zählt belegte Kontrollplätze, FollowersMax die Gesamtgrenze. Dies ist weder die Zahl naher
# Tiere noch der Bewegungsbefehl Follow.
#
# Liest den Statuszähler des aktuellen Spielers: maximale Kontrollplätze für Begleiter.
#
# Integer — maximale Kontrollplätze für Begleiter, 0..255 im Modell. 0 kann echt, unbekannt oder
# fehlender/zerstörter Player sein. Menge, kein Boolean, ID oder type: 1 bedeutet eine Einheit,
# keinen Erfolg. Keine Objektsuche und kein Array.
SUB Main()
# Zuerst das Tier für lasttarget auswählen. requiredSlots=2 durch dessen Serverkosten ersetzen.
# Ohne Platz werden weder Ziel noch Fertigkeit gestartet. Das Ziel wird vor UseSkill("Animal
# Taming") vorgemerkt; nur ein Argument. Erfolg hängt auch von Fertigkeit, Entfernung und Server
# ab.
VAR requiredSlots = 2
VAR current = UO.Followers()
VAR maximum = UO.GetPetsMax()
IF UO.Self() = 0 OR maximum <= 0 OR maximum - current < requiredSlots THEN
UO.Print("Not enough known control slots")
RETURN
END IF
VAR animal = UO.LastTarget()
IF animal = 0 THEN
UO.Print("Select the animal first")
RETURN
END IF
UO.WaitTargetObject(animal)
UO.UseSkill("Animal Taming")
END SUBErläuterung der Parameter und Ausführung:
- Zuerst das Tier für lasttarget auswählen. requiredSlots=2 durch dessen Serverkosten ersetzen. Ohne Platz werden weder Ziel noch Fertigkeit gestartet. Das Ziel wird vor UseSkill("Animal Taming") vorgemerkt; nur ein Argument. Erfolg hängt auch von Fertigkeit, Entfernung und Server ab.
# Prüfung für verschiedene Kosten wiederverwenden
#
# Prüft, ob Platz für ein weiteres gezähmtes oder beschworenes Wesen vorhanden ist. Followers
# zählt belegte Kontrollplätze, FollowersMax die Gesamtgrenze. Dies ist weder die Zahl naher
# Tiere noch der Bewegungsbefehl Follow.
#
# Liest den Statuszähler des aktuellen Spielers: maximale Kontrollplätze für Begleiter.
#
# Integer — maximale Kontrollplätze für Begleiter, 0..255 im Modell. 0 kann echt, unbekannt oder
# fehlender/zerstörter Player sein. Menge, kein Boolean, ID oder type: 1 bedeutet eine Einheit,
# keinen Erfolg. Keine Objektsuche und kein Array.
SUB Main()
# CanAddFollower ist die vollständig definierte BASIC-Hilfsfunktion. extraSlots sind zusätzliche
# Plätze, kein type/ID. 1/True bzw. 0/False prüft den gespeicherten Stand. Sie zähmt und
# beschwört nichts; unmittelbar vor der Aktion erneut prüfen.
IF CanAddFollower(2) THEN
UO.Print("Capacity check passed; verify the creature cost before acting")
ELSE
UO.Print("Insufficient capacity or unavailable status")
END IF
END SUB
SUB CanAddFollower(extraSlots)
IF extraSlots < 0 OR UO.Self() = 0 THEN
RETURN FALSE
END IF
VAR current = UO.PetsCurrent()
VAR maximum = UO.GetPetsMax()
IF maximum <= 0 THEN
RETURN FALSE
END IF
RETURN extraSlots <= maximum - current
END SUBErläuterung der Parameter und Ausführung:
- CanAddFollower ist die vollständig definierte BASIC-Hilfsfunktion. extraSlots sind zusätzliche Plätze, kein type/ID. 1/True bzw. 0/False prüft den gespeicherten Stand. Sie zähmt und beschwört nichts; unmittelbar vor der Aktion erneut prüfen.
Русский · English · Українська · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
ClassicUO
Bad Newbie & Basic IDE
Найти в справочнике
Клиент и скрипты
Каталоги значений
Разработка и помощь