Today started off with a relatively easy task: Add in a "grabbing" sprite for when a character grabs on to another.
I started off with getting things setup to add the sprite to the character's spritesheet. This went well, however I discovered something surprising: It was already there! Wishing I had noticed this sooner, I quickly moved on to adding in the simple logic for triggering the new sprite.
I managed to squash three bugs today. Two of these bugs are currently present in v0.3.3.
- When being grabbed by two other characters on opposite sides, it was impossible to escape.
- Characters were jittering back and forth when attempting to move into a blocked tile on a northern map.
- The character's sprite wasn't being set properly after grabbing another character. This bug was only present in development builds.
Badly Needed Refactoring
I spent the rest of the day refactoring/redesigning the server's movement code. A majority of this work involved moving methods out of the VolundServer god object and into separate classes.
The code was separated based on whether it handled synchronization or game logic. Currently I'm just throwing synchronization-related code into the PacketHandler class. Game logic code winds up in the GameLogic class, which is at least a bit better.
Captain Argentina and Pema99 have mapped out the world of Volund! WARNING: These maps contain spoilers!
Later in the evening, Red Squirrel returned to his house to find... A gigantic "R" spelled out in characters! Who could be behind this?