XJDHDR / impressions-resolution-customiser

Programs used to turn the 1024x768 resolution option in the various isometric Impressions Studios City Building series games and allow the user to define a resolution different from the default.
Other
32 stars 1 forks source link

Early version of reading an EngText file into memory. #2

Closed IcySon55 closed 2 years ago

XJDHDR commented 2 years ago

Sorry for taking so long to review your work.

I see a few ways things can be improved but I think this is a great starting point for ENG reading & writing capabilities. Thank you.

The writing portion should, hypothetically, just be a case of converting all the data into bytes and glue them together.

Finally, I decided to review my EditorConfig and removed the underscore requirement from Method Parameters and Fields. I wanted to differentiate these from other accessibility levels but I've found that Visual Studios and Rider already does so by colouring them differently.

IcySon55 commented 2 years ago

Good stuff. Glad to have helped. :)

A quick note about the loading routine. In the group loading loop, empty groups are not initialized and added to the list. This constitutes a loss of data. When you go to save, the file will contain less groups and thus will not match byte for byte (which I normally strive for). I would recommend removing the if statement that checks the incoming group data for a string count greater than 0. Instead adding all groups including the empty ones.

Cheers~

XJDHDR commented 2 years ago

Sorry, I only just noticed the edit you made. But no worries regardless. I needed to do some refactoring of the entire project's codebase after I merged this PR.

While doing so, I double-checked your code against the file format specification. I did change the loading code so that it retrieved the header data for all 1000 string groups.