17 Commits over 62 Days - 0.01cph!
Add a warning for when ticks miss their deadline and run without budgeting
Fix context menu actions getting duplicated sometimes
Make sure ECS ticks run according to the set tick rate, slowing down the game if required
Make sure StringBuffer grows to at least the required length
Allow StringBuffer to replace with null
StatManipulator pooling fixes
Getting rid of some allocations:
- StatManipulators were never being returned to the pool
- BuildingView always allocating for a closure that isn't used 99% of the time
- Add StringBuffer as an alternative to StringBuilder that doesn't shrink
Cache savegame metadata so it doesn't reload more than it needs to
Add some checks back that we probably need
Bring some changes over from tick_freq
Removed a smaller allocation PooledList was doing that isn't relevant anymore
Make PooledList<T> use FP.System's pooling so it wont allocate as much
Make sure FoW map is set when initializing drawer
Moved the campfire light source down a bit so it stays under the spit
Fix some things that blocked loading savegames
Zero allocation fog of war
Specialized fog of war for full circles so it's not as slow