ZH TW API UO Resend - LIHACHTETAN/ClassicUO-Bad-Newbie-CSharp-Scripts-IDE GitHub Wiki
Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
Hide 只在本機隱藏已載入物件,不使用 Hiding 技能。Resend/Resync 清除這種隱藏並還原原先的繪製狀態,重複 Hide 後亦然。物件資料和伺服器 Hidden 旗標不會改變。
家 · C# · IDE · UO API · A–Z · 範例 · Languages
void UO.Resend();發送重新同步世界的請求。
沒有參數。
void - 沒有值。使用單獨的線路撥打電話;完成並不確認伺服器的操作。
- Resync 在遊戲線程上發送 NetClient.Socket.Send_Resync。這是更新請求,而不是重新連接或已收到資料的確認。
- 在範例中,UO.Wait僅指定腳本暫停;暫停的結束並不能證明伺服器已經完成了請求。
每個範例都可以儲存為單獨的檔案.csx並在IDE中運行。 UO物件和等待函數提供當前遊戲會話的主機。將演示 serial 名稱、座標和地址替換為您自己的。
將這段程式碼存為獨立的 .csx 檔案執行。參數直接出現在呼叫中;請將範例名稱、serial 和網址替換成自己的值。
指令是獨立的陳述式。前面的訊息表示呼叫開始,並非伺服器已完成動作的確認。
UO.Print("Calling UO.Resend");
UO.Resend();參數與執行流程:
- 發送重新同步世界的請求。
UO.Resend();參數與執行流程:
- Resync 在遊戲線程上發送 NetClient.Socket.Send_Resync。這是更新請求,而不是重新連接或已收到資料的確認。
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;參數與執行流程:
- 在範例中,UO.Wait僅指定腳本暫停;暫停的結束並不能證明伺服器已經完成了請求。
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# 區分大小寫。請使用正確的 UO 名稱。數值旗標應與 0 比較;只有回傳型別為 bool 時才使用 bool。
參數: 沒有參數。
結果: void / Unit.
呼叫時:
-
InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Resync:bridge.Resync().
內部實作程式碼,不能作為獨立腳本執行。
case "resend": bridge.Resync(); break;