-
Notifications
You must be signed in to change notification settings - Fork 0
API Basic SafeCall ko
Codex edited this page Sep 21, 2026
·
1 revision
ClassicUO • Basic
Safe Call은 일반 호출을 위한 호환 접두어입니다. 오류 보호, 시간 제한, 잠금 또는 백그라운드 실행을 추가하지 않습니다.
Safe Call FunctionName(arguments)
VAR value = Safe Call FunctionName(arguments)
-
FunctionName— 이미 존재하는 프로시저/함수 이름입니다. 게임 API에는 UO.가 필요하며 BASIC 내장 함수에는 접두어를 붙이지 않습니다. -
arguments— 선택한 함수의 일반 인수입니다. 괄호가 필수이며 Safe와 Call 사이에는 공백을 사용합니다.
원래 함수 결과를 반환합니다. Unit은 여전히 값 없음을 뜻하며 Safe Call이 결과를 true/false로 변환하지 않습니다.
- 현재 스크립트 흐름에서 일반 인수, ByRef, 반환, 취소 규칙에 따라 실행됩니다. 별도 작업은 만들지 않습니다.
- 오류를 억제하지 않습니다. Try/Catch로 처리하세요. Safe Call 자체는 오류 처리기가 아닙니다.
- RaiseEvent에서는 이 접두어를 사용할 수 없습니다. 새 코드에서는 보통 FunctionName(...)을 직접 호출하면 됩니다. 이 엔진의 호환 문법이며 표준 VB.NET 구문이 아닙니다.
# Sum은 x=20과 y=22를 받아 42를 반환합니다. Safe Call은 결과 형식이나 숫자를 바꾸지 않습니다.
FUNCTION Sum(x, y)
RETURN x + y
END FUNCTION
SUB Main()
RETURN Safe Call Sum(20, 22)
END SUB매개변수 및 실행 설명:
Sum은 x=20과 y=22를 받아 42를 반환합니다. Safe Call은 결과 형식이나 숫자를 바꾸지 않습니다.
# Val은 문자열 "123"을 받아 숫자를 반환합니다. 7을 더하면 130입니다. Val은 BASIC 내장 함수이므로 UO.를 붙이지 않습니다.
SUB Main()
VAR text = "123"
RETURN Safe Call Val(text) + 7
END SUB매개변수 및 실행 설명:
Val은 문자열 "123"을 받아 숫자를 반환합니다. 7을 더하면 130입니다. Val은 BASIC 내장 함수이므로 UO.를 붙이지 않습니다.
# Fail이 명시적으로 오류를 발생시킵니다. Catch가 받아 caught를 TRUE (1)로 설정합니다. Try/Catch가 없으면 전파됩니다. 아래에 Fail의 전체 코드가 있습니다.
FUNCTION Fail()
THROW "sample error"
END FUNCTION
SUB Main()
VAR caught = FALSE
TRY
VAR value = Safe Call Fail()
CATCH problem
caught = TRUE
END TRY
RETURN caught
END SUB매개변수 및 실행 설명:
Fail이 명시적으로 오류를 발생시킵니다. Catch가 받아 caught를 TRUE (1)로 설정합니다. Try/Catch가 없으면 전파됩니다. 아래에 Fail의 전체 코드가 있습니다.
ClassicUO
Bad Newbie & Basic IDE
Найти в справочнике
Клиент и скрипты
Каталоги значений
Разработка и помощь