* Maintain basic NPC queues
* Maintain NPC location table; used for tempBlocks
* Optimized numWater == 0 case for water table queries
* Optimized loops to use tables
* Mild moving layers optimizations
* Optimized reverse scroll during menu screen
* Optimized CheckSectionNPC
* Optimized generator NPC condition
* Important fix for buggy YoshiPound block break behavior
* Minor internal optimizations for table node
* View proc time and slow-frame proc time with FPS
(May want to make configurable)
* Cache onscreen blocks/BGOs
* Rewrite sizable block draw code
* Optimize block/BGO render code
* Added C string signature for cheats_contains
* Use multires architecture for NPC draw logic
* Use NPC table to optimize NPC draw logic
* Luna: use const C++ strings instead of C string macros for cheats
* Fix drawing of spin-block effect
* Update FreeImageLite
* More files got an updated copyright for 2023
* Minor tweaks for block draw cache
* gfx_update.cpp: set maxDrawNPCs to maxNPCs and max warning NPCs to 32
* gfx_update.cpp: minor tweaks for prev frame no-reset NPCs queue
* Added some additional comments
* Use table instead of old quadtree for world map items
(~20% speedup, ~35 KB lower code size)
* Corrected merge
* Fixed case where NPC 0 added to tree
(treeNPCUpdate is in a hot path, thus the non-release assert)
* For width/height 1 sizable blocks, use top-left!
* Remove the tinyfiledialogs module
It's no longer used for a while
* gfx_update.cpp: Few beautifying tweaks
* Use the release assertion for treeNPCUpdate
It's relatively hot code, but called <3 times per active NPC per frame.
* player.cpp: confirm NPC index > 0 before tree update
* lunarender.cpp: Fixed the pause menu background render
Don't iterate and don't clear the rendering content when game is paused for any reason
* Update changelog.txt
* gfx_update.cpp: keep the drawn NPCs in sorted order
* Better control of the pool allocator
* lunaspriteman.cpp: Fixed the render buffer overflow
* luna.cpp: Hide demos counter with HUD
When HUD showing got disabled by F1 key, hide the demos counter too!
* npc_update.cpp: Added missing spaces
To don't mess different if{} sections without else
* Update changelog before merge
---------
Co-authored-by: Wohlstand <admin@wohlnet.ru>