2011/02/28 (Villainmad): Changes!
So, I haven't resolved the issue from last time, and given that the problem is clearly "LuaFunction.call() doesn't like being called 150 times in a single frame, much less 500" and/or that the information therein is bouncing back and forth between Lua and C#, I'm frankly not sure solving it is even possible without altering LuaInterface's source; anyway, it's generally best to deal with bullets in bulk instead of individually,1 whereas it doesn't matter as much if you have enemies using it, since it's rare to have more than i.e. ten enemies onscreen at once, I guess. The game doesn't even seem to notice the single object using Draw() to do the background, at any rate. So this article is mostly going to be about unrelated stuff.
First, Sixten is unfortunately unable to continue working on Villainmad's art assets due to his own RL-and-other commitments, so Shintear is going to be doing it instead. Here are his current drafts of the two player characters, Lexy Striker (biker babe bitch) and Hiyasu Ikoma (android Emotionless Girl):
Second of all, I am adding a new value to the GameEntity structs: Rotation. Things Which Are Able To Rotate is a longstanding video game tradition, both for things which spin and things which point in the direction they are moving in. I discovered that I really didn't have any feasible way of handling this in the current setup, so, I made one!
In fact, all I have left at this point is to make user-input, spawning the player, creation of UI-objects (score, boss-meter, dialogue, etc), and menus (which will be an entirely different creature and exist outside the stage), and a little bit more sound-and-music stuff, and that'll really be it for the base engine.2 Oh, and documenting everything, of course. All I'll have left to do is making the actual game.
1Random thought: if you want to change the appearance of ALL THE BULLETS, you could just change the texture on the controller-table. Hmm ... maybe have a stage.Update() function, too! Could do all kinds of things there ... Sure, let's do that!
2Making it so you can have 3D-backgrounds will be a much later, longer-term goal, and perhaps outside the scope of Villainmad.