Surprise! Dev diary #7.
Be warned, the sound quality is not so great on this one.
https://youtu.be/Dmy9po5qOTg == Major Features ==
- Addition of new kitchen area. Smooth camera transitioning when the player enters or leaves this area. Lighting of the kitchen or common room is turned on or off when the player moves in or out of the area, as is transparency of the kitchen walls. The lighting on the bar and tables as well as the pipe smoke is also factored in to take visibility into account.
- Trapdoor with cellar GUI has been added. This is the first GUI interface to be added into the game. It initially allows for swapping barrels in and out of use under the bar, although other possible functions may be added later.
== Minor Features ==
- Addition of day counter appearing briefly in the middle of the screen at the start of each day.
- New camera system. Zooming has been removed, with what is visible on the screen fixed to make sure all the tables can be seen properly. When the player walks to either side of the screen it will move a little to show what is on either side, but then snap back once they are in the main area where all the game play takes place. There are basically two main areas where the view is fixed. The common room, and the kitchen.
== Improvements ==
- Replacement of path finding system... While I had managed to improve the previous system it was still too unreliable and hard to work with. An entirely new approach was necessary. It has been working now without any serious problems. While implementing this system I have also improved related/connected code and unified some processes that were done separately, making everything more clear and concise.
- The code handling the players pathing towards interactable objects has been revamped. Partially as an improvement using the newly added pathing code, but also in how it handled the required distance the player needs to be from the interactable object. Previously you could directly interact with objects with certain radius, but outside that radius you would path to a specific coordinate. Now you will instead path to that coordinate -until- you fall within that same radius limit that made the pathing take place to begin with. This is much more sensible and easier to use.
- Rationalization of guest sprite system to make more modular. Tankards are no longer baked into the guest sprite, but are drawn separately. Decreases workload later for adding new guest types as the total number of sprites is much reduced. This was done previously, but baking was used to deal with the scaling issue. I found a better solution by simply changing and drawing the sprite index multiple times within a single frame of animation. Underlying code has also been vastly simplified in preparation for reproducing with new guest types.
- Guests will now come up to the bar properly instead of standing at some distance from it. They will also place their tankards on the bar surface.
- Adjustments of background tiling and positioning of objects such as the fireplace in order to ensure matching between grid and objects and room borders.
- You can now see the tankards of guests sitting facing away from the screen.
- Tankards held by guests facing the screen are now drawn on top of the tables.
- Position of the shadows of sitting guests now match up properly with their bodies.
- Tankards now have three variations instead of two, with an added "drunk a little bit" version. As guests drink the tankards transition through these states, giving you a little bit more information on how much they have left to drink.
- The contents of barrels are now shown simply by mousing over instead of selecting for ease of access to information.
- Needs icons will now pop down a little when highlighted, and also be more colorful, in order to increase visible feedback. They will also highlight (but not pop down) if their owner is moused-over.
- You will now longer highlight guests you mouse over when holding a full tankard. Instead only those guests without drinks will highlight in response to being moused-over, making it easier to quickly locate and provide drinks to those who need them.
- Improvements to menu and GUI icons to make them displayed relative to the resolution of the screen. Basically making things less likely to break and look odd when playing on other computers.
== Bug Fixing ==
- Fixed a bug where sending a guest to a table before they had arrived at their bar slot would leave the bar slot unavailable.
- Massive streamlining of code for sending guests to tables. This had the benefit of fixing a bug which made it necessary sometimes to click multiple times to send a guest to a table which was quite full. Kind of happy about this while also embarrassed about how crazily I coded it the first time though.
- Fixed an issue with mouse-over text being written directly over the top of selected-guest text instead of replacing it.
- You will now now longer move if you click on top of a guest needs icon.
- Guest masks will now adjust to take into account if the guest is sitting (i.e. the invisible mask object will also sit), meaning you can no longer select them by hovering your mouse some distance over their head.
- Fixed character shadows being too light.