Repository navigation
KO API UO Resend
Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
Hide는 로드된 물체를 로컬에서 숨기며 Hiding 기술을 사용하지 않습니다. Resend/Resync는 이 숨김을 해제하고 이전 그리기 상태를 복원합니다. Hide를 반복한 경우도 같습니다. 물체 데이터와 서버 Hidden 플래그는 바뀌지 않습니다.
홈 · C# · IDE · UO API · A–Z · 예 · 언어
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;ClassicUO — Bad Newbie & C# Scripts IDE