Had a bug where we'd do down a path that didn't result in calling the
nextPhase, meaning we'd end up with zero events in the queue and then
just sit there. Wasn't great.
We've mostly got this working. Events get executed in the array of
events. We don't use setTimeout anymore thankfully. I'm not in love with
this system, it still isn't straight forward about what events happen
where, but I do at least now have an ability to better control the flow.
The bottom newsbar still needs conversion, as do numerous other pieces,
but we're working our way there. Attempting adding some tests with
Claude, but they aren't functioning yet, making them effectively
useless. Continuing to iterate.
There is logic littered all over the place. We don't have some central
way of determining order for operations and it's driving me insane. This
needs a refactoring so we have a central way to control the order of
operations here.
Reintroducing the fix for the bug in tween.js (issue 677) that causes
the map to jump at the end of the tween.
Leaderboard name was used twice in the code base, once for the modal at
the beginning of games, and also for the rotating display in the bottom
left. I've removed the modal at the beggining of the game as its data is
stale and not updated yet. I've renamed the bottom left to
'rotatingDisplay' and the bottom right to 'leaderboard'.
The moments are now triggered correctly and have the phases happen as
expected.
Also added an instant chat tool that skips the playing out of all the
messages and instead lets us quickly move through a game
The tween animation uses the tweening library to smoothly move the
camera across the board. Also added a smoothing for any large jumps in
the position of the camera.
Moved the assets to public, as assets is the directory that vite preview
serves it's files from and that confuses vite. Using public is just
easier. Updated all the needed links.
The gamestate object is now where most of the "state" of both the map
and the board live. The units load, just working on loading the colors
of the map ownership again.