Bug Fixes
Player
- subscreen items no longer hidden after collecting triforce
e4fd4d6a4
If the "No Cutscene" flag is checked for the triforce item, collecting the triforce was incorrectly hiding subscreen items indefinitely.
- some jinx enemies from 2.55 doing nothing
ee2a8186d
An off-by-one issue in the qst loading code made some jinx enemies do nothing.
Regressed in 97688da.
Editor
- View Map cutting off screens in fullscreen mode
122f3fca4
- changing resolution in View Map via space bar
b9e612da1
Changing resolution via Space resulted in a bug where the viewer would incorrectly use the wrong limit for the panning.
- add missing moveflags to enemy editor
97e1435e8
ZScript
- use better location for for-each statement implicit vars
9016ba44c
These were failing an assert in MetadataVisitor that expects identifier locations to span a single line.
- add more values to sprite
MoveFlag
enumdf609cbe6
- remove
Integer
,Short
,Byte
, etc. functions5ecc544b7
Documentation
- add cross-links between many EventData related sections of docs
7eda974dc
- fix a couple broken links from prior docs commit
e14b9a449
Refactors
- rewrite string message parsing and renderer
71b272aee
- Completely rewrite the string message parser / renderer - this will make it possible to add more advanced SCC features in the future.
- Executing a SCC no longer takes a frame per command.
- Use the same code for parsing a message string in the player and in the editor - this fixes a handful of differences w/ word wrapping that the player handled poorly.
https://discord.com/channels/876899628556091432/1277878877057978460
ZScript
- remove separate "script UID" for sprites
02028b207
Every sprite object has an internal engine ID, but for some scripting features a separate "script UID" was used. Features such as
->HitBy
,->ParentUID
used this - andScreen->LoadNPCByUID
(etc.) existed to translate to the actual engine ID. These are relevant toeweapon
,lweapon
andnpc
sprites.Now, all these features just use the engine ID, and "script UID" is no longer a separate thing.
- print context alongside script runtime errors
b7829c0f8
When a script does something that results in an error, a message is logged to the console that usually mentions the zscript source variable or function where the problem occurred. This was usually right, but sometimes would mention the wrong thing.
Some automation is added to more consistently print the correct variable or function name when encountering an error. In addition, potentially multiple bits of context may now print alongside error messages (one or all of: function, variable, or the name of a specific parameter).