Line: Difference between revisions
(Lines!) |
(Add visual demonstration of the line wall display glitch) |
||
(One intermediate revision by one other user not shown) | |||
Line 53: | Line 53: | ||
| {{CharSwatch|206}} || Y || Y || Y || Y | | {{CharSwatch|206}} || Y || Y || Y || Y | ||
|} | |} | ||
[[File:Line-display-glitch.png|thumb|96x96px|An object places line walls from left to right, creating a temporary visual glitch.]] | |||
If a portion of a linewall is removed from the board, then the surrounding linewalls will not update their graphics accordingly unless something forces them to redraw. The simplest way to do this is to | If a portion of a linewall is removed from the board, then the surrounding linewalls will not update their graphics accordingly unless something forces them to redraw. The simplest way to do this is to have an object run the code <code>#change line line</code>. Other events, such as re-entering the board, reloading from a save, having a text window disappear, or having the tile be revealed by a torch can also have the same effect. | ||
[[Category:Elements]] | [[Category:Elements]] | ||
{{ElementsNavbox}} | {{ElementsNavbox}} |
Latest revision as of 06:16, 14 February 2021
Line | |
---|---|
ZZT-OOP name | line |
Internal ID | 31 (0x1F) |
Character | #char 206 ╬ (0xCE) |
Category | terrain |
Stats? | no |
Other traits | |
Effect on movement | wall |
Destructible? | no |
Uses ZZT-OOP color names? | yes |
The line element (or more colloquially, "linewall") is one of the built-in wall elements in ZZT. It cannot be moved and is impervious to all damage. It is functionally identical to the solid and normal, except with a sophisticated drawing procedure. Lines can be placed in all of the default ZZT-OOP colors and can be placed in any of the available colors with an external editor.
Draw Procedure
When linewalls are drawn they check if each of the four tiles surrounding them are either another line or a board edge, and then pick the corresponding tile from the following table:
Character | E | W | S | N |
---|---|---|---|---|
#char 249 ∙ (0xF9) | N | N | N | N |
#char 208 ╨ (0xD0) | N | N | N | Y |
#char 210 ╥ (0xD2) | N | N | Y | N |
#char 186 ║ (0xBA) | N | N | Y | Y |
#char 181 ╡ (0xB5) | N | Y | N | N |
#char 188 ╝ (0xBC) | N | Y | N | Y |
#char 187 ╗ (0xBB) | N | Y | Y | N |
#char 185 ╣ (0xB9) | N | Y | Y | Y |
#char 198 ╞ (0xC6) | Y | N | N | N |
#char 200 ╚ (0xC8) | Y | N | N | Y |
#char 201 ╔ (0xC9) | Y | N | Y | N |
#char 204 ╠ (0xCC) | Y | N | Y | Y |
#char 205 ═ (0xCD) | Y | Y | N | N |
#char 202 ╩ (0xCA) | Y | Y | N | Y |
#char 203 ╦ (0xCB) | Y | Y | Y | N |
#char 206 ╬ (0xCE) | Y | Y | Y | Y |
If a portion of a linewall is removed from the board, then the surrounding linewalls will not update their graphics accordingly unless something forces them to redraw. The simplest way to do this is to have an object run the code #change line line
. Other events, such as re-entering the board, reloading from a save, having a text window disappear, or having the tile be revealed by a torch can also have the same effect.
Elements | |
---|---|
Special | |
Items | |
Terrain | |
Creatures | |
Text |