Functions that allow messages to be sent to clients in any unicode language UO supports.
02/10/2009
const _DEFAULT_UCFONT := 3;
const _DEFAULT_UCCOLOR := 0x3B2;
// Constants for PrintTextAbove*
const JOURNAL_UC_PRINT_NAME := 0x00; // Implicit. Print's the object's description / npc's name in the journal.
const JOURNAL_UC_PRINT_YOU_SEE := 0x01; // Will print "You see:" in the journal.
BroadcastUC(uc_text, langcode, font:=_DEFAULT_UCFONT, color:=_DEFAULT_UCCOLOR, required_cmdlevel := _DEFAULT_UCTEXT_REQUIREDCMD)
Broadcasts a unicode string to every online player whos cmd level is above required_cmdlevel.
uc_text MUST be an array of integers representing unicode characters.
Integers must be "Big Endian" (0x1234) and not "Little Endian" (0x3412).
Integers will be clipped internally to 2-bytes (value masked with 0xFFFF)
The Array must be terminated with zero. (0x0000)
1 on success
"Unicode array exceeds maximum size." (200 characters)
"langcode must be a 3-character code."
"Invalid value in Unicode array."
"A parameter was invalid"
Array
PrintTextAboveUC(above_object, uc_text, langcode, font:=_DEFAULT_UCFONT, color:=_DEFAULT_UCCOLOR, journal_print := JOURNAL_UC_PRINT_NAME)
Displays a unicode string above 'above_object'
uc_text MUST be an array of integers representing unicode characters.
Integers must be "Big Endian" (0x1234) and not "Little Endian" (0x3412).
Integers will be clipped internally to 2-bytes (value masked with 0xFFFF)
The Array must be terminated with zero. (0x0000)
Notes: journal_print flags:
const JOURNAL_UC_PRINT_NAME := 0x00; // Implicit. Print's the object's description / npc's name in the journal.
const JOURNAL_UC_PRINT_YOU_SEE := 0x01; // Will print "You see:" in the journal.
1 on success, 0 on failure
"Unicode array exceeds maximum size." (200 characters)
"langcode must be a 3-character code."
"Invalid value in Unicode array."
"A parameter was invalid"
Array
UObject
PrintTextAbovePrivateUC(above_object, uc_text, langcode, character, font:=_DEFAULT_UCFONT, color:=_DEFAULT_UCCOLOR, journal_print := JOURNAL_UC_PRINT_NAME)
Displays a unicode string above 'above_object' only to 'character'
uc_text MUST be an array of integers representing unicode characters.
Integers must be "Big Endian" (0x1234) and not "Little Endian" (0x3412).
Integers will be clipped internally to 2-bytes (value masked with 0xFFFF)
The Array must be terminated with zero. (0x0000)
Notes: journal_print flags:
const JOURNAL_UC_PRINT_NAME := 0x00; // Implicit. Print's the object's description / npc's name in the journal.
const JOURNAL_UC_PRINT_YOU_SEE := 0x01; // Will print "You see:" in the journal.
1 on success, 0 on failure
"Unicode array exceeds maximum size." (200 characters)
"langcode must be a 3-character code."
"Invalid value in Unicode array."
"A parameter was invalid"
Array
UObject
Character
SendSysMessageUC(character, uc_text, langcode, font:=_DEFAULT_UCFONT, color:=_DEFAULT_UCCOLOR)
Displays a unicode system message to 'character'
uc_text MUST be an array of integers representing unicode characters.
Integers must be "Big Endian" (0x1234) and not "Little Endian" (0x3412).
Integers will be clipped internally to 2-bytes (value masked with 0xFFFF)
The Array must be terminated with zero. (0x0000)
1 on success
"Unicode array exceeds maximum size." (200 characters)
"langcode must be a 3-character code."
"Invalid value in Unicode array."
"A parameter was invalid"
Array
RequestInputUC(character, item, uc_prompt, langcode)
Displays a unicode system message prompt to 'character', the character can then enter unicode characters which will be returned to the script.
uc_prompt MUST be an array of integers representing unicode characters.
Integers must be "Big Endian" (0x1234) and not "Little Endian" (0x3412).
Integers will be clipped internally to 2-bytes (value masked with 0xFFFF)
The Array must be terminated with zero. (0x0000)
a struct with members "lang" (3-character string), and "uc_text" (a "unicode array" of 2-byte integers representing unicode characters in the specified language) on success.
"No client attached"
"Another script has an active prompt"
"Unicode array exceeds maximum size." (200 characters)
"langcode must be a 3-character code."
"Invalid value in Unicode array."
"Invalid control characters in text entry"
"A parameter was invalid"
Array