Skip to content

API UO BookSetHeader ko

Codex edited this page Sep 23, 2026 · 1 revision

UO.BookSetHeader

ClassicUO / Basic IDE

Home · API · Books

열린 편집 가능한 책의 제목과 저자를 설정합니다.

정확한 구문

UO.BookSetHeader(Title:Any, Author:Any) -> Unit

매개변수

  • Title — 제목: 명령과 화면 편집기는 앞의 47자를 유지합니다.
  • Author — 저자: 앞의 29자를 유지합니다.

반환값

Unit: 반환값이 없습니다. 쓰기 요청이며 TRUE/FALSE나 서버 완료 확인이 아닙니다. 서버가 편집을 거절할 수 있습니다.

동작

  • 먼저 게임 동작으로 대상 책을 여세요. 마지막으로 연 책을 사용하며 ID 인수는 없습니다. 여러 책이면 대상을 확인하세요. Get은 받은 내용만 읽고 없는 페이지를 요청하지 않습니다.
  • 관리자는 그래픽 없이도 세션에 책을 보관합니다. 게임 창을 닫고 다시 열어도 책과 초안은 유지됩니다. 책 자체를 닫으면 열린 책에서 제외되고 연결이 끊기면 서버 책이 초기화됩니다.
  • 편집 가능한 책에만 쓸 수 있습니다. 잘못된 페이지와 너무 긴 텍스트는 거절됩니다. BookSetText는 보내기 전에 모든 페이지를 검사하므로 뒤쪽 오류로 일부만 기록되지 않습니다.

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

서버는 헤더, 페이지 수와 본문을 전송합니다. SessionBooks는 전체 패킷을 검사하고 저장하며 화면을 갱신합니다. Basic은 bridge로 마지막 책을 고르고 SessionBook은 내용을 읽거나 검사 후 쓰기 패킷을 보냅니다. ModernBookGump는 같은 데이터를 표시하고 그래픽 분리 시 초안을 보관합니다.

1. GetOpenBook

먼저 게임 동작으로 대상 책을 여세요. 마지막으로 연 책을 사용하며 ID 인수는 없습니다. 여러 책이면 대상을 확인하세요. Get은 받은 내용만 읽고 없는 페이지를 요청하지 않습니다.

관리자는 그래픽 없이도 세션에 책을 보관합니다. 게임 창을 닫고 다시 열어도 책과 초안은 유지됩니다. 책 자체를 닫으면 열린 책에서 제외되고 연결이 끊기면 서버 책이 초기화됩니다.

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

2. SessionBooks.ReceiveHeader/ReceivePages; SessionBook.Yoko*

편집 가능한 책에만 쓸 수 있습니다. 잘못된 페이지와 너무 긴 텍스트는 거절됩니다. BookSetText는 보내기 전에 모든 페이지를 검사하므로 뒤쪽 오류로 일부만 기록되지 않습니다.

Unit: 반환값이 없습니다. 쓰기 요청이며 TRUE/FALSE나 서버 완료 확인이 아닙니다. 서버가 편집을 거절할 수 있습니다.

프로젝트 소스: src/ClassicUO.Client/Game/Managers/SessionBooks.cs; 함수 SessionBooks.ReceiveHeader/ReceivePages; SessionBook.Yoko*.

보조 함수 전체가 제공됩니다. TRUE는 로컬 검사와 호출을 했다는 뜻일 뿐 서버 저장 확인이 아닙니다.

예제

직접 사용

# 직접 사용
#
# 열린 편집 가능한 책의 제목과 저자를 설정합니다.
#
# Unit: 반환값이 없습니다. 쓰기 요청이며 TRUE/FALSE나 서버 완료 확인이 아닙니다. 서버가 편집을 거절할 수 있습니다.

SUB Main()
    # 대상 책이 열려 있고 필요한 페이지를 받았으며 쓰기에는 편집 권한이 있다고 가정합니다. 1, 2, 3은 페이지 번호이므로 존재를 확인하세요. 이름과 본문은 예시입니다.

    UO.BookSetHeader("Mining route", "Alice")
END SUB

매개변수 및 실행 설명:

  • 대상 책이 열려 있고 필요한 페이지를 받았으며 쓰기에는 편집 권한이 있다고 가정합니다. 1, 2, 3은 페이지 번호이므로 존재를 확인하세요. 이름과 본문은 예시입니다.

실제 활용

# 실제 활용
#
# 열린 편집 가능한 책의 제목과 저자를 설정합니다.
#
# Unit: 반환값이 없습니다. 쓰기 요청이며 TRUE/FALSE나 서버 완료 확인이 아닙니다. 서버가 편집을 거절할 수 있습니다.

SUB Main()
    # 대상 책이 열려 있고 필요한 페이지를 받았으며 쓰기에는 편집 권한이 있다고 가정합니다. 1, 2, 3은 페이지 번호이므로 존재를 확인하세요. 이름과 본문은 예시입니다.

    VAR route = "Northern mine"
    VAR author = "Alice"
    UO.BookSetHeader("Route: " + route, author)
END SUB

매개변수 및 실행 설명:

  • 대상 책이 열려 있고 필요한 페이지를 받았으며 쓰기에는 편집 권한이 있다고 가정합니다. 1, 2, 3은 페이지 번호이므로 존재를 확인하세요. 이름과 본문은 예시입니다.

전체 보조 함수

# 전체 보조 함수
#
# 열린 편집 가능한 책의 제목과 저자를 설정합니다.
#
# Unit: 반환값이 없습니다. 쓰기 요청이며 TRUE/FALSE나 서버 완료 확인이 아닙니다. 서버가 편집을 거절할 수 있습니다.

SUB Main()
    # 대상 책이 열려 있고 필요한 페이지를 받았으며 쓰기에는 편집 권한이 있다고 가정합니다. 1, 2, 3은 페이지 번호이므로 존재를 확인하세요. 이름과 본문은 예시입니다.
    # 보조 함수 전체가 제공됩니다. TRUE는 로컬 검사와 호출을 했다는 뜻일 뿐 서버 저장 확인이 아닙니다.

    VAR requested = SetNotebookHeader("Supply list", "Alice")
END SUB

FUNCTION SetNotebookHeader(title, author)
    IF Len(title) > 47 OR Len(author) > 29 THEN
        RETURN FALSE
    END IF
    UO.BookSetHeader(title, author)
    RETURN TRUE
END FUNCTION

매개변수 및 실행 설명:

  • 대상 책이 열려 있고 필요한 페이지를 받았으며 쓰기에는 편집 권한이 있다고 가정합니다. 1, 2, 3은 페이지 번호이므로 존재를 확인하세요. 이름과 본문은 예시입니다.
  • 보조 함수 전체가 제공됩니다. TRUE는 로컬 검사와 호출을 했다는 뜻일 뿐 서버 저장 확인이 아닙니다.

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

Clone this wiki locally