Repository navigation
DE API UO Resend
Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
Hide blendet geladene Objekte lokal aus, ohne Hiding zu verwenden. Resend/Resync hebt dieses Ausblenden auf und stellt den vorherigen Zeichenstatus wieder her, auch nach mehrfachem Hide. Objektdaten und das serverseitige Hidden bleiben unverändert.
Home · C# · IDE · UO API · A–Z · Beispiele · Sprachen
void UO.Resend();Sendet eine Anfrage zur Neusynchronisierung der Welt.
Es gibt keine Parameter.
void – kein Wert. Rufen Sie eine separate Leitung an; Der Abschluss bestätigt nicht die Aktion des Servers.
- Resync sendet NetClient.Socket.Send_Resync im Spielthread. Hierbei handelt es sich um eine Aktualisierungsanforderung, nicht um eine erneute Verbindung oder um eine Bestätigung, dass Daten empfangen wurden.
- In den Beispielen gibt UO.Wait nur eine Skriptpause an; Das Ende der Pause beweist nicht, dass der Server die Anfrage abgeschlossen hat.
Jedes Beispiel kann als separate Datei .csx gespeichert und in IDE ausgeführt werden. Die UO-Objekt- und Wartefunktionen stellen den Host der aktuellen Spielsitzung bereit. Ersetzen Sie Demo-serial-Namen, Koordinaten und Adressen durch Ihre eigenen.
Führe diesen Code als eigene .csx-Datei aus. Die Argumente stehen direkt im Aufruf; ersetze Beispielnamen, Serials und Adressen durch eigene Werte.
Der Befehl steht in einer eigenen Anweisung. Die Meldung davor zeigt den Beginn des Aufrufs und bestätigt keine Serveraktion.
UO.Print("Calling UO.Resend");
UO.Resend();Parameter und Ablauf:
- Sendet eine Anfrage zur Neusynchronisierung der Welt.
UO.Resend();Parameter und Ablauf:
- Resync sendet NetClient.Socket.Send_Resync im Spielthread. Hierbei handelt es sich um eine Aktualisierungsanforderung, nicht um eine erneute Verbindung oder um eine Bestätigung, dass Daten empfangen wurden.
return RunScenario();
object? RunScenario()
{
if (Truth(UO.IsOnline()))
{
UO.Resend();
}
return null;
}
bool Truth(object? value) => value is bool flag ? flag : value is string text ? !string.IsNullOrEmpty(text) : value != null && Convert.ToDouble(value) != 0;Parameter und Ablauf:
- In den Beispielen gibt UO.Wait nur eine Skriptpause an; Das Ende der Pause beweist nicht, dass der Server die Anfrage abgeschlossen hat.
return new ScriptScenario(UO, WaitAsync, Args, Cancellation, Checkpoint).RunScenario();
class ScriptScenario
{
private readonly global::ClassicUO.CSharp.CSharpGameApi UO;
private readonly Func<int, Task> WaitAsync;
private readonly string[] Args;
private readonly CancellationToken Cancellation;
private readonly Action Checkpoint;
public ScriptScenario(global::ClassicUO.CSharp.CSharpGameApi api, Func<int, Task> wait, string[] args, CancellationToken cancellation, Action checkpoint)
{
UO = api;
WaitAsync = wait;
Args = args;
Cancellation = cancellation;
Checkpoint = checkpoint;
}
public object? RunScenario()
{
UO.Resend();
UO.Wait(500);
UO.Print(UO.GetX());
return null;
}
}C# unterscheidet Groß- und Kleinschreibung. Verwenden Sie den genauen UO-Namen. Numerische Flags mit 0 vergleichen; bool nur bei Rückgabetyp bool verwenden.
Parameter: Keine Parameter.
Ergebnis: void / Unit.
Beim Aufruf:
-
InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Resync:bridge.Resync().
Interner Implementierungscode; kein eigenständiges Skript.
case "resend": bridge.Resync(); break;ClassicUO — Bad Newbie & C# Scripts IDE