Skip to content

API UO Print ko

Codex edited this page Sep 26, 2026 · 1 revision

UO.Print

ClassicUO / Basic IDE

Home · API · Journal

스크립트 진행 상황이나 중지 조건을 로컬 메시지로 표시합니다. 자신에게만 보이며 다른 플레이어에게는 보이지 않습니다.

정확한 구문

UO.Print(msg:Any) -> Unit
UO.Print(msg:Any, color:Any) -> Unit

매개변수

  • msg — 메시지 문자열입니다. 숫자는 CStr로 명시적으로 연결하세요. 이름과 좌표는 자동으로 치환되지 않습니다. 따옴표는 문자열 경계이며 전송되지 않습니다.
  • color — RGB가 아닌 UO hue입니다. 숫자 또는 16진수 문자열의 하위 16비트를 사용합니다. graphic/type이 아닙니다. 예제는 0x0044를 사용합니다. 색상을 생략하면 hue 0x03B2입니다. UO.Print(text, color)는 텍스트가 먼저이고 UO.ColorPrint(color, text)는 색상이 먼저입니다.

반환값

Unit: 반환값이 없습니다. 별도 줄에서 호출하세요. 결과는 True/False, serial, 수량이 아닙니다. 호출 종료가 서버 응답을 보장하지 않습니다.

동작

  • 게임 창 왼쪽 아래와 로컬 저널에 표시되며 IDE 출력에도 복사됩니다. 관리자는 게임 창이 없어도 세션 시스템 저널에 로컬 기록을 표시합니다. 발언 패킷은 보내지 않습니다. 머리 위 텍스트에는 UO.CharPrint를 사용하세요.
  • 출력 자체도 저널에 기록됩니다. 진단 출력 전에 검색 결과나 마지막 줄을 저장하세요. 빠른 반복문에서는 매번 출력하지 말고 변경을 보고하세요.
  • 색상을 생략하면 hue 0x03B2입니다. UO.Print(text, color)는 텍스트가 먼저이고 UO.ColorPrint(color, text)는 색상이 먼저입니다.
  • UO.Print · UO.CharPrint · UO.Say · UO.ConColor

내부 함수: 호출부터 결과까지

게임 창 왼쪽 아래와 로컬 저널에 표시되며 IDE 출력에도 복사됩니다. 관리자는 게임 창이 없어도 세션 시스템 저널에 로컬 기록을 표시합니다. 발언 패킷은 보내지 않습니다. 머리 위 텍스트에는 UO.CharPrint를 사용하세요.

1. Print

메시지 문자열입니다. 숫자는 CStr로 명시적으로 연결하세요. 이름과 좌표는 자동으로 치환되지 않습니다. 따옴표는 문자열 경계이며 전송되지 않습니다.

색상을 생략하면 hue 0x03B2입니다. UO.Print(text, color)는 텍스트가 먼저이고 UO.ColorPrint(color, text)는 색상이 먼저입니다.

프로젝트 소스: external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs; 함수 Print.

2. PrintClientMessage

스크립트 진행 상황이나 중지 조건을 로컬 메시지로 표시합니다. 자신에게만 보이며 다른 플레이어에게는 보이지 않습니다.

게임 창 왼쪽 아래와 로컬 저널에 표시되며 IDE 출력에도 복사됩니다. 관리자는 게임 창이 없어도 세션 시스템 저널에 로컬 기록을 표시합니다. 발언 패킷은 보내지 않습니다. 머리 위 텍스트에는 UO.CharPrint를 사용하세요.

프로젝트 소스: src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs; 함수 PrintClientMessage.

3. Print

출력 자체도 저널에 기록됩니다. 진단 출력 전에 검색 결과나 마지막 줄을 저장하세요. 빠른 반복문에서는 매번 출력하지 말고 변경을 보고하세요.

Unit: 반환값이 없습니다. 별도 줄에서 호출하세요. 결과는 True/False, serial, 수량이 아닙니다. 호출 종료가 서버 응답을 보장하지 않습니다.

프로젝트 소스: src/ClassicUO.Client/Game/GameActions.cs; 함수 Print.

예제

진행 요약

# 진행 요약
#
# 스크립트 진행 상황이나 중지 조건을 로컬 메시지로 표시합니다. 자신에게만 보이며 다른 플레이어에게는 보이지 않습니다.
#
# Unit: 반환값이 없습니다. 별도 줄에서 호출하세요. 결과는 True/False, serial, 수량이 아닙니다. 호출 종료가 서버 응답을 보장하지 않습니다.

SUB Main()
    # processed=12는 이미 처리한 아이템 개수의 예시입니다. CStr로 문자열로 변환합니다. 개수만 알리며 아이템을 옮기지 않습니다.

    VAR processed = 12
    UO.Print("Processed item entries: " + CStr(processed), 0x0044)
END SUB

매개변수 및 실행 설명:

  • processed=12는 이미 처리한 아이템 개수의 예시입니다. CStr로 문자열로 변환합니다. 개수만 알리며 아이템을 옮기지 않습니다.

무게 초과 경고

# 무게 초과 경고
#
# 스크립트 진행 상황이나 중지 조건을 로컬 메시지로 표시합니다. 자신에게만 보이며 다른 플레이어에게는 보이지 않습니다.
#
# Unit: 반환값이 없습니다. 별도 줄에서 호출하세요. 결과는 True/False, serial, 수량이 아닙니다. 호출 종료가 서버 응답을 보장하지 않습니다.

SUB Main()
    # 무게와 한도를 읽습니다. 한도가 0이거나 알 수 없으면 초과로 판정하지 않습니다. weight >= maximum이면 한 줄을 출력하고 Main을 끝내며 아이템을 버리지
    # 않습니다.

    VAR weight = UO.Weight()
    VAR maximum = UO.MaxWeight()
    IF maximum > 0 AND weight >= maximum THEN
        UO.Print("Too heavy: " + CStr(weight) + "/" + CStr(maximum), 0x0044)
        RETURN
    END IF
END SUB

매개변수 및 실행 설명:

  • 무게와 한도를 읽습니다. 한도가 0이거나 알 수 없으면 초과로 판정하지 않습니다. weight >= maximum이면 한 줄을 출력하고 Main을 끝내며 아이템을 버리지 않습니다.

무게 변화만 보고

# 무게 변화만 보고
#
# 스크립트 진행 상황이나 중지 조건을 로컬 메시지로 표시합니다. 자신에게만 보이며 다른 플레이어에게는 보이지 않습니다.
#
# Unit: 반환값이 없습니다. 별도 줄에서 호출하세요. 결과는 True/False, serial, 수량이 아닙니다. 호출 종료가 서버 응답을 보장하지 않습니다.

SUB Main()
    # Main은 무게를 저장하고 1000밀리초 기다린 뒤 완전히 선언된 ReportWeight를 호출합니다. 무게가 바뀐 경우에만 출력하고 다음 확인용 새 무게를 반환합니다.
    # 무한 반복문은 만들지 않습니다.

    VAR previous = UO.Weight()
    UO.Wait(1000)
    previous = ReportWeight(previous, UO.Weight())
END SUB

SUB ReportWeight(previous, current)
    IF previous <> current THEN
        UO.Print("Weight changed: " + CStr(current), 0x0044)
    END IF
    RETURN current
END SUB

매개변수 및 실행 설명:

  • Main은 무게를 저장하고 1000밀리초 기다린 뒤 완전히 선언된 ReportWeight를 호출합니다. 무게가 바뀐 경우에만 출력하고 다음 확인용 새 무게를 반환합니다. 무한 반복문은 만들지 않습니다.

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

Clone this wiki locally