TLDR
Quick Saturday morning session where I refactored hexagon colors and roll values under a single Hexagon object. Had some trouble with Angular / TypeScript typing of the dictionary for some reason.

Main work
- Updating server-side models to use
HashMap<Integer, Hexagon>withinGameState. - Updating client-side Angular code to expect this
HashMap.
Challenges
- For some reason, Angular was having trouble dealing with the
IDictionary<Hexagon>type I defined for accepting theHashMap<Integer, Hexagon>.- For now, I hacked around a null reference error by using
Object.values(). This will have to be fixed in the future, since it assumes theIDictionary<T>/HashMap<Integer, T>have ordered keys.
- For now, I hacked around a null reference error by using
Learnings
- Changes to model are relatively easy and not mentally taxing, but eat up time. If I had just done the work originally to make the Hexagon dictionary, I wouldn’t have spend an hour refactoring things and actually pushed the app’s functionality forward.