Summary:
In which a boss is advanced; bosses may have "on-death" scripts; room-loading is implemented; the current room may be detected; room-map handling is generalised; exits are shown and clickable on maps; mana-consumption is tweaked; and a backdrop texture is begun.
Greetings and salutations!
This week's screenshot shows progress on a sequential boss found in the Ossuary Moon:
The week just was one of content-work, of structural-work, and of more besides:
First, and as shown above, the previously-shown sequential-boss now has a model (and animations) for its third-and-final stage.
And indeed, the encounter itself has been advanced, I believe, with changes in the attacks of the boss, and the removal of some previously-planned turrets. (Which work was aided by some research done into similar bosses in other games!) Furthermore, some of the scripting for the encounter has now been added, with entry to each stage closing doors behind the player and the defeat of each stage (save the last) opening doors to the next.
(Which in part involved the implementation of "on-death" scripts for bosses.)
You may also note above that the boss is located in a (very work-in-progress) room of its own. Indeed, I've begun work on the small level in which this encounter is found!
Now, the presence of rooms may not seem significant in and of itself, as I've previously shown rooms being present in Moons in Crystal. However, those rooms, as I recall, all belonged to one specific moon--the Treasure Hoard Moon--which had somewhat-specific code for the construction of said rooms. Such things were previously not available for other moons.
In the week just past, then, I changed that: building on and modifying the code from the Treasure Hoard Moon, I implemented a more-general approach to loading room-based levels.
Similarly, the Treasure Hoard Moon had its own, grid-based approach to detecting which room the player was in. This wouldn't suit for a more-arbitrary layout, I daresay, and thus I've implemented a new approach to such detection.
Furthermore, much the same was true of the mapping of levels: an implementation had been made specific to the Treasure Hoard Moon, but none was available beyond it. In this case, rather than leaving the Treasure Hoard implementation alone and creating a new version based on it, I generalised the Treasure Hoard's implementation to apply to all room-based levels.
(Doing so does, alas, mean that I no longer have a class in the game named "MapTreasure".
)
Speaking of maps, it had been suggested to me, I believe, that level-maps include icons showing exits, and that those exits be clickable, taking the player to their target location. This has been at least partially implemented now: there are such icons shown for discovered rooms, and clicking on them opens up the map for the level to which they lead.
On the minor side, I've tweaked the way that attack-spells consume mana--they no longer do if there's insufficient to fire them--and begun work on a backdrop-texture for the Ossuary Moon.
And once again, there were various tweaks, fixes, and changes that don't seem worth detailing here!
That, then, is all for this week--stay well, and thank you for reading! ^_^