Skip to content

IT API UO SetGlobal

Bad Newbie edited this page Oct 16, 2026 · 3 revisions

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

UO.SetGlobal

Firme C#

void UO.SetGlobal(object? name, object? value);
void UO.SetGlobal(object? globalRegion, object? varName, object? varValue);

Comportamento e risultato

SetGlobal e GetGlobal condividono valori tra tutti gli script, profili e processi Full Client/Client. I valori sono stringhe; una chiave assente dà "N/A". Le maiuscole contano; le forme region usano region/name. Manager/Game Manager/CSharp/globals.json persiste e viene riletto con blocco fra processi. Le forme Shared usano lo stesso archivio.

Parametri

  • globalRegion — Spazio dei nomi associato alla chiave.
  • name — Nome della chiave condivisa, sensibile alle maiuscole.
  • value — Valore memorizzato come testo.
  • varName — Nome della chiave condivisa, sensibile alle maiuscole.
  • varValue — Valore memorizzato come testo.

Ogni blocco è un .csx completo. Sostituire serial, tipi e coordinate di esempio. Ordine e argomenti C# nominati seguono la firma.

Comandi chat

#setglobal team.target 0x40001234
#set global team.message Привіт усім

Esempi C# completi

Ogni blocco è un .csx completo. Sostituire serial, tipi e coordinate di esempio. Ordine e argomenti C# nominati seguono la firma.

1

UO.SetGlobal("team.target", 0x40001234);
UO.Print(UO.GetGlobal("team.target"));

2

UO.SetGlobal("team.message", "Привіт");
UO.Print(UO.GetGlobal("team.message"));

3

UO.SetGlobal("team", "delay", "350");
UO.Print(Convert.ToString(UO.GetGlobal("team", "delay")));

4

new CommandSample().Execute(UO);

sealed class CommandSample
{
    public void Execute(global::ClassicUO.CSharp.CSharpGameApi api)
    {
        api.SetGlobal("team.target", 0x40001234);
        api.Print(api.GetGlobal("team.target"));
    }
}

Chiamate interne

CSharpGameApi.SetGlobal
  -> CSharpScriptGlobals
  -> InjectionScript.Runtime.InjectionApiUO.RegisterClientApiCompatibility
  -> InjectionScript.Runtime.State.Globals.SetGlobal
Globals -> SharedGlobalStore -> named mutex -> atomic JSON replacement

InjectionScript.Runtime.State.SharedGlobalStore.Set

Clone this wiki locally