Skip to content

FR API UO Info

Codex edited this page Oct 18, 2026 · 6 revisions

Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어

UO.Info

Signatures C#

string UO.Info();
string UO.Info(object? serial);
string UO.Info(object? type, object? x = null, object? y = null);
string UO.Info(object? type, object? x, object? y, object? z);

Comportement et résultat

Le contexte décide de l’affichage : les commandes du chat graphique ouvrent un tableau avec champs, valeurs, Ctrl+C et défilement. Un script C# reçoit du texte sans fenêtre ni cible, même si le jeu est affiché. Seules les données connues du client sont accessibles.

Sans argument, Info et InfoTile activent une cible dans le chat graphique. Dans un script, Info() lit la dernière cible objet ou le joueur ; InfoTile() le terrain sous le joueur. serial, type et coordonnées précisent la sélection. Le troisième argument de InfoTile(x,y,map) est la carte.

Paramètres

  • serial — Numéro de série ou alias enregistré.
  • type — ID graphique ; -1 accepte tout type à cette position.
  • x — Coordonnée X du monde.
  • y — Coordonnée Y du monde.
  • z — Altitude Z ; la forme courte utilise 0.

UO.Info(type: 0x0EED) lit l’objet chargé le plus proche de ce type, sans curseur de ciblage. Pour un objet contenu, la distance est celle de son propriétaire racine ; serial départage les distances égales. Cette commande ne charge pas les objets inconnus du serveur. UO.Info(serial) désigne toujours serial, et non type. Fournissez x et y ensemble ; une seule coordonnée renvoie une explication sans ouvrir de cible. La forme de discussion #info type 0x0EED utilise la même recherche du plus proche objet.

Commandes de discussion

#info
#UO.Info id 0x40001234
#info type 0x0EED
#info xy 1450 1690
#info type 0x0EED xy 1450 1690 0

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

string report = UO.Info(0x40001234);
UO.Print(report);

2

string InspectSelf() => UO.Info("self");
UO.Print(InspectSelf());

3

foreach (int serial in new[] { 0x40001234, 0x40005678 })
{
    string report = UO.Info(serial);
    UO.Print(report);
}

4

new CommandSample().Execute(UO);

sealed class CommandSample
{
    public void Execute(global::ClassicUO.CSharp.CSharpGameApi api)
    {
        string report = api.Info(0x40001234);
        api.Print(report);
    }
}

Appels internes

CSharpGameApi.Info
  -> CSharpScriptGlobals
  -> InjectionScript.Runtime.InjectionApiUO.Info
ClassicUOInjectionApiBridge -> YokoInfoReport -> YokoInfoGump
ushort goldType = 0x0EED;
string report = UO.Info(type: goldType);
UO.Print(report);
int playerX = UO.GetX();
int playerY = UO.GetY();
int playerZ = UO.GetZ();
string report = UO.Info(type: 0x0EED, x: playerX, y: playerY, z: playerZ);
UO.Print(report);

Clone this wiki locally