Broken fields. Had messed up an if statement causing tiles that overlapped to have no data.
Accidently used reshaper and named all id to BattleID. Had to replace to undo this.
Fix Team Laguna's names and stats showing correctly in menu and battle.
Fix ATB timer always 0, had a variable in the wrong spot caused bar to never charge.
Tried to set more variables to readonly if not supposed to be writable.
Fix weapon and costume selection
Blacking out of screen moved from field background to module. So if background didn't load it'd still black the screen.
Fix ending field. It had reverted to not rendering correctly.
Fix after running code made scripts would fail to load saying stack empty. This was due to code maid sorting field names in structs. This can be prevented by setting a StructLayout. Which I think should be used if marshaling or using pointers to set the data.
Current Unit test wasn't running.
New features
Add support for MCINDUS's Battle field and remaster monster textures. Also reading the png from main.zzz for monsters and characters in battle.
One issue noise in alpha channel from PNGs will be rendered by OpenVIII. I created a tool to filter out the noise.
Trick is keep the UV's in the same box of the original texture. But when converting to floating point % the aspect ratio needs to match the new png textures.
The battle fields were straightforward. But I needed to organize the data by texturepage. And update the uv's to stay in the 256x256 box when reading these textures.
Rinoa and Ward remaster textures have 128 pixels of extra junk data on the bottom. Had to work around this.
Exported my editorconfig so we can be on the same page. Just need to update it if you want the settings different for everyone.
I added pan to the camera class.
New string dump tool.
Refactoring
Broke up battle.dat
Structs and enums are in their own files. I tried to put code related to them into their files
Kernel.bin
Tried to make every class read the dat in the constructor so fields would be readonly. And used IReadOnlyList and IReadOnlyDictionary more to prevent adding and removing and modifying the data.
Cleaned up names of variables and files using reshaper. Many files still need done but I tired to fix things as I opened them. Unless I had a specific goal in mind.
Month of changes.
Bug fixes
New features
Refactoring
Related issues
https://github.com/MaKiPL/OpenVIII/issues/165 https://github.com/MaKiPL/OpenVIII/issues/164 https://github.com/MaKiPL/OpenVIII/issues/158 https://github.com/MaKiPL/OpenVIII/issues/157 https://github.com/MaKiPL/OpenVIII/issues/160