This week, I mainly revised some classes that I wrote previously and added some essential base classes for TRASTRAPS.
First of all, I defined XML files for all units and systems that are used in TRASTRAPS and wrote Initializer class that parses those XML files and initializes database.
Another Initializer class that I implemented is scenario initializer. It gathers scenario units and their properties from database and accumulates them in our singleton unit manager to make them easily reachable during the rule evaluation.
I also implemented RTI communication to be able to send multiple units' positions. In our prototype, there was a single hard-coded unit of which positions were changed manually by us. Now, Simulation Engine calculates positions of each unit and sends them all to the Graphics Engine. I added MissionController class into the Simulation Engine that controls whether units have missions and if they have any, it tries to accomplish that mission. For the time being, I tried to accomplish Move Mission only.
I hope, there will be lots of improvements in the following week.