FR API UO Dismount - LIHACHTETAN/ClassicUO-Bad-Newbie-CSharp-Scripts-IDE GitHub Wiki
Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
UO.Dismount
Signatures C#
int UO.Dismount();
Comportement et résultat
Mount et Dismount envoient une requête d’utilisation sans double-clic manuel ni attaque en mode combat. int est le serial actuel de l’objet sur la couche Mount, pas un succès. La réponse serveur est asynchrone : Mount peut encore retourner 0 et Dismount l’ancien serial. Vérifiez ensuite ObjAtLayer("Mount").
Paramètres
Aucun paramètre.
Chaque bloc est un .csx complet. Remplacez les serials, types et coordonnées de démonstration. L’ordre et les arguments C# nommés suivent la signature.
Commandes de discussion
#dismount
Exemples C# complets
Chaque bloc est un .csx complet. Remplacez les serials, types et coordonnées de démonstration. L’ordre et les arguments C# nommés suivent la signature.
1
int mountLayerSerial = UO.Dismount();
UO.Print(UO.Int2Hex(mountLayerSerial));
2
var before = UO.ObjAtLayer("Mount");
int currentSerial = UO.Dismount();
UO.Print($"{before} -> {UO.Int2Hex(currentSerial)}");
3
UO.Dismount();
await WaitAsync(250);
UO.Print(Convert.ToString(UO.ObjAtLayer("Mount")));
4
new CommandSample().Execute(UO);
sealed class CommandSample
{
public void Execute(global::ClassicUO.CSharp.CSharpGameApi api)
{
int mountLayerSerial = api.Dismount();
api.Print(api.Int2Hex(mountLayerSerial));
}
}
Appels internes
CSharpGameApi.Dismount
-> CSharpScriptGlobals
-> InjectionScript.Runtime.InjectionApiUO.Dismount
ClassicUOInjectionApiBridge -> NativeMountController.Request
-> OutgoingPackets.Send_UseObjectRequest (0x06)
-> MountedLayerSerialUnsafe -> Player.FindItemByLayer(Layer.Mount)