Skip to content

DE API UO SetGlobalShared

Bad Newbie edited this page Oct 16, 2026 · 1 revision

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

UO.SetGlobalShared

C#-Signaturen

void UO.SetGlobalShared(object? name, object? value);

Verhalten und Ergebnis

SetGlobal und GetGlobal teilen Werte zwischen allen Skripten, Profilen und Full-/Client-Prozessen. Werte sind Zeichenfolgen; fehlende Schlüssel ergeben "N/A". Groß-/Kleinschreibung zählt; region-Formen verwenden region/name. Manager/Game Manager/CSharp/globals.json bleibt nach Neustarts erhalten und wird mit Prozesssperre frisch gelesen. Shared-Formen verwenden denselben Speicher.

Parameter

  • name — Gemeinsamer Schlüsselname mit Groß-/Kleinschreibung.
  • value — Als Text gespeicherter Wert.

Jeder Block ist eine vollständige .csx-Datei. Ersetzen Sie Beispiel-serials, Typen und Koordinaten. Parameterreihenfolge und benannte C#-Argumente folgen der Signatur.

Chatbefehle

#setglobalshared team.delay 350

Vollständige C#-Beispiele

Jeder Block ist eine vollständige .csx-Datei. Ersetzen Sie Beispiel-serials, Typen und Koordinaten. Parameterreihenfolge und benannte C#-Argumente folgen der Signatur.

1

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

2

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

3

string key = "team.delay";
UO.SetGlobalShared(key, 350);
UO.Print(UO.GetGlobalShared(key));

4

new CommandSample().Execute(UO);

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

Interne Aufrufe

CSharpGameApi.SetGlobalShared
  -> CSharpScriptGlobals
  -> InjectionScript.Runtime.State.Globals.SetGlobalShared
Globals -> SharedGlobalStore -> named mutex -> atomic JSON replacement

InjectionScript.Runtime.State.SharedGlobalStore.Set

Clone this wiki locally