Features
- Per-position states
3643d5c261This allows specific combo positions to remember change between screen transitions. Each combo position and each ffc gets 8 states (0-7). The memory usage of this feature may add up if used excessively.
- FFC Flag for solidity based on the combo being solid or not
d460b968ddThe whole ffc will be either solid or not, based on if the combo has at least some soldiity. Useful for FFCs changing via triggers.
ZScript
itemsprite->PickupExState+npc->DeathExState6584696e49These features already existed for combo trigger use, now they have script access as well; setting an exstate when an item is collected or an npc dies.
- Open debugger window in background
51d15daeb8
Bug Fixes
Player
- Fix ePatra firing too early when ENEMY_FLAG7 is set
5e458ccbf7When the "don't fire while looping" flag was set, ePatra could still fire in certain attack modes (dmisc20==4 and default) regardless of whether it was mid-loop. Now all modes correctly wait until the loop finishes before allowing fire.
- Absolute combo/cset trigger change not working for combo/cset 0
ecc6406c030 was being wrongly ignored as an empty value, rather than being used directly to mean combo 0 / CSet 0.
- Set proper screen's item-related states in regions
716f1a466bIf an item was moved to a different screen than it spawned in, the new screen's states were being set instead of the spawn screen, but only when picking up an item by hitting it with a melee weapon!
Now it properly sets for the spawn screen of the item in all cases.
- Item sounds sometimes being wrongly killed
00df15948bThe hookshot resetting code was killing the sound of the currently in-use item, without regard for if that item was a hookshot or not.
- Exstate reset carryover checking wrong state
a802934d93same error as fixed in 57b2514 but for unsetting the state
Editor
- Crash on Show Misalignments
a4c9cb8848 - Water/shallow water combo wizard not setting levels properly
c50251cf98If you didn't edit the
Req Item Level/Flippers Levelfields, they would stay at value 0, despite showing as value 1 in the GUI. For req item level, this could completely disable the passive hp mod. - Don't show confirmation on exit in new quest wizard
a94d6a7f64
ZScript
- Reset scripting engine earlier in init_game
ca5c19f68bThis prevents strange error messages about unknown script objects when retrying via the F6 menu.
Regressed recently in 48df2ca.
Build
- Resolve -Wlogical-op-parentheses
7d2396bc26Add explicit parentheses around all && sub-expressions inside || to clarify precedence without changing logic, in Scope.cpp, sprite.cpp, guys.cpp, hero.cpp, maps.cpp, saves.cpp, weapons.cpp, and zc_sprite.cpp.
- Enable many compiler errors
a73e6d203b - Delete unused variables
42eb3b68dd - Fix building without SSL
218cc6be3d
Tests
- Add replay to test positional-state and combo-based ffc solidity
3fb2a3cd8d