I actually got a lot of stuff done today that's been bugging me for some time. Most of it had to do with getting some Flak functionality working, but I also was able to work out some bugs in the load/save functions of the editor/game.
For a long time I was having some trouble with the engine's save code. The levels are stored in text files(for now), and the tricky parts are outputted in english, so it's easy to hand edit them. For example, the part of the level file that codes for a light AAA site would look like this:
Obj Class = LIGHTAAA
Obj Type = 0
Obj Xpos = 350
Obj Ypos = 222
Obj Rot = 0
Well, all of a sudden, I was getting really wierd values getting outputted to the text, stuff like 10197384738477 for the type. I couldn't figure out what the hell was wrong until I looked inside the "Tree" class header. Turns out I was redefining the type variable in there, when it was already defined in the "Thing" baseclass header, so when I called Thing::getType(), it was grabbing the type from the "Thing", which hadn't been initialized.... or something like that, in any case, it works now[grin]
The big thing I got done today was get the Flak AI working. The Light AAA AI is pretty simple, all it does is find the nearest target, point at it, and fire; pretty simple stuff. The Heavy AAA goes one step further, and can actually "lead" it's target, so that it's shells burst right where the target will be, instead of where the target was (assuming the target is flying relatively straight). This was a pretty cool addition, and it makes dodging the shot pretty difficult. Another addition I made was creating a new type of "Bullet" that explodes after flying a certain distance, blowing shrapnel everywhere. It's pretty cool, but it only looks good in motion, and I don't have a movie of the new Flak ready yet, so you'll have to wait to see it in action. I do have a screeny of flak infested hills firing bursts of bullets at my hapless aircraft.
We're actually planning on releasing a "demo" pretty soon here, once I get Collision detection working right. The "demo" will probably consist of a simple unscripted level where you can fly around, drop bombs, land/takeoff you plane, get shot at by flak, etc. It's more of a test to see the performance of the engine than the see if the game is fun or not, but we'll try and make it as fun as possible, hell, we may even leave the editor there for you guys to mess around with[wink]
Well, thats all for now, as always, comments are welcome, and I'll talk to you guys later. Peace Out!