TR2-Rando icon indicating copy to clipboard operation
TR2-Rando copied to clipboard

Refactor level IO

Open lahm86 opened this issue 2 years ago • 0 comments

An initial goal so we can use a single class per game version for reading and writing.

Stage 1

  • [x] Rename BaseTRLevel to TRLevelBase
  • [x] Create common level version enums and class
  • [x] Create common base TRLevelControlBase class for IO

Stage 2

  • [x] Rename TRLevel to TR1Level
  • [x] Rename TRLevelNames to TR1LevelNames

Stage 3

  • [x] Expand on common base TRLevelControlBase class to manage reading and writing
  • [x] Merge TRLevelReader and TRLevelWriter into TR1LevelControl
  • [x] Merge TR2LevelReader and TR2LevelWriter into TR2LevelControl
  • [x] Merge TR3LevelReader and TR3LevelWriter into TR3LevelControl
  • [x] Merge TR4LevelReader and TR4LevelWriter into TR4LevelControl
  • [x] Merge TR5LevelReader and TR5LevelWriter into TR5LevelControl

Stage 4

  • [ ] Create common classes for reading/writing and remove the various utility classes
  • [ ] Move writing logic into TRXLevelControl classes

lahm86 avatar Jul 28 '23 13:07 lahm86