It’s not a functional UI. The game doesn’t play yet, but all UI elements are present and rendering. To be totally honest, I’m fairly certain that this entire UI could have been programmed by a seasoned code-jockey in like a day. It has taken me (according to my git), about 17 days.
I am a little concerned that I might be shooting myself in the foot somewhere around here by setting the thing up to render without any other functionality, like gameflow or states or anything of that nature. I have some skeleton code in place for the various game phases (modeled after the actual game phases: Planning, Execution, Reset), but none of it does anything yet and it is totally possible that as I start building in that functionality, that there will be inefficiencies.
C’est la vie, I suppose.
Anyway, as you can see, all UI elements are rendering. You can turn any bit of the UI off with a click of one of the three buttons on the bottom of the screen. The player element mats are individually switched (though this could become tedious, I’m trying to do things which will keep the screen from getting cluttered).
The thing I don’t know at this point is whether the rest of the process will be faster or slower than what I’ve done so far. I mean, all I have left is to actually program the game. The entire data structure that represents the game in its initial conditions is in place. The UI is rendering. Basically, I’ve set the game up on the table. Now it’s time to tell the computer how to actually play the game.
And I thought Twilight Imperium had an awful setup time.
Lasst die Spiele beginnen.