Difference between revisions of "DisplayMessage"
Line 1: | Line 1: | ||
= {10} {{IE_10}} = | = {10} {{IE_10}} = | ||
This instruction is used to display any text stored after the event's instruction in various ways like a character thinking, speaking, or simply printing text on the screen. | This instruction is used to display any text stored after the event's instruction in various ways like a character thinking, speaking, or simply printing text on the screen. | ||
+ | |||
+ | |||
+ | See Also: [[Event_Instruction_50|{50} {{IE_50}}]], [[Event_Instruction_51|{51} {{IE_51}}]], [[Event_Instruction_E5|{E5} {{IE_E5}}(x01,x00)]] | ||
== Unknown 1 : Byte (hex) == | == Unknown 1 : Byte (hex) == | ||
− | This always seems to be x10. Probably just a | + | This always seems to be x10. Probably just a programming error. Any value shouldn't matter. |
Line 14: | Line 17: | ||
*x10 : Dialog Box | *x10 : Dialog Box | ||
*x20 : Named box ("Check" if x10 = FALSE; "Help" if TRUE) | *x20 : Named box ("Check" if x10 = FALSE; "Help" if TRUE) | ||
− | *x40 : | + | *x40 : Independent Message Box (becomes a page if x10 = TRUE, if x20 = TRUE too, it becomes a regular Dialog Box forced under unit) |
*x80 : Close with instruction | *x80 : Close with instruction | ||
Line 39: | Line 42: | ||
== Portrait Row : Byte (hex) == | == Portrait Row : Byte (hex) == | ||
− | For the list and more explanation read [[Event_Instruction_50|{50} | + | For the list and more explanation read [[Event_Instruction_50|{50} {{IE_50}}]]. |
Revision as of 16:23, 30 December 2013
Contents
- 1 {10} DisplayMessage
- 1.1 Unknown 1 : Byte (hex)
- 1.2 Dialog Type : Byte (hex)
- 1.3 Message ID : Half-Word (hex)
- 1.4 Unit ID : Byte (hex)
- 1.5 Unknown 2 : Byte (hex)
- 1.6 Portrait Row : Byte (hex)
- 1.7 X Coordinate : Half-Word (signed)
- 1.8 Y Coordinate : Half-Word (signed)
- 1.9 Arrow Position : Half-Word (signed)
- 1.10 Dialog Box Opening Type : Byte (hex)
{10} DisplayMessage
This instruction is used to display any text stored after the event's instruction in various ways like a character thinking, speaking, or simply printing text on the screen.
See Also: {50} PortraitCol, {51} ChangeDialog, {E5} WaitForInstruction(x01,x00)
Unknown 1 : Byte (hex)
This always seems to be x10. Probably just a programming error. Any value shouldn't matter.
Dialog Type : Byte (hex)
- x01 : Top of screen (over unit with Dialog Box)
- x02 : Bottom of screen (under unit with Dialog Box)
- x04 : Thinking (Dialog Box)
- x08 : Remove Arrow (for Dialog Box)
- x10 : Dialog Box
- x20 : Named box ("Check" if x10 = FALSE; "Help" if TRUE)
- x40 : Independent Message Box (becomes a page if x10 = TRUE, if x20 = TRUE too, it becomes a regular Dialog Box forced under unit)
- x80 : Close with instruction
By default the game will print overlaying text on the screen unless x10-x20-x40 are set.
Always set x01 or x02 when using Dialog Box alone, else the game might ignore other parameters.
Combining x01 & x02 displays the message at the center of the screen, except for Dialog Box (the box is over the unit's head and the arrow is flipped horizontally).
Message ID : Half-Word (hex)
ID of the Message that will be displayed. Message x0001 starts at the text offset of the event. Therefore there is no Message x0000. This parameter being a Half-Word, you could even go take lines that are stored in the RAM, which is pretty pointless IMHO.
Unit ID : Byte (hex)
ID of the unit specified in the ENTD. This is only required for Dialog Box.
If a unit with the same Unit ID is found, the dialog box will be centered over or under it and the unit's portrait will be displayed.
Else, it will display a blank portrait (which still takes up the place of a normal portrait) and display on the left side of the screen.
Unknown 2 : Byte (hex)
Seems to always be x00.
Portrait Row : Byte (hex)
For the list and more explanation read {50} PortraitCol.
X Coordinate : Half-Word (signed)
Move the Displayed Message on the screen's X axis based on default location.
Determines the portrait's facing.
Y Coordinate : Half-Word (signed)
Move the Displayed Message on the screen's Y axis based on default location.
Arrow Position : Half-Word (signed)
Move the Arrow on the Dialog Box's X axis based on its default location.
Determines the portrait's facing.
If you don't move the Dialog Box in X, you can simply set this byte to -1 and the portrait will switch side.
Dialog Box Opening Type : Byte (hex)
- x01 : +50% speed
- x02 : -50% speed, remove bouncing*
- x10 : Toggle Arrow (points left if FALSE; point right if TRUE)
*bounce: the message box grows in size gradually and goes a bit over it's real size (about 110%) in the process then shrinks back to 100%.