Here's a little screenshot of it (the font that I used is the one provided by one of HGE's tutorials, 6 I think):
Full sized
Thats running the following string:
^This is a test of the ^2emergency^0 font ^1cast system^0.\nThis is only a test; had this been a real disaster, you would be dead.\nThat is all.
The first ^ is there to show that it will be printed if you don't supply a number. The ^# chooses which color to use, which is stored in a global array (so that the user can change the colors.) It also supports \t (4 spaces) and \n. \b is spit out, since its not really a character.
I'm thinking about allowing for the ^# in input, letting the user color his/her text (if I ever use it in a multiplayer game.)
On a side note, I've eliminated the texture pack and dot notation addressing because I can't quite settle on a way to implement it. So, for now its just going to be regular file names. I will probably include it in version 2 of the engine (once I'm done with my project.)
Another side note, the game project is being changed (I'm giving myself until monday to decide.) I tried my hand at making a side scrolling project, and I'm thinking about doing one of those instead (although I'd really like to do an RPG.) Come monday we'll know 1 of 2 things thats going to happen - either I'm changing the game or the deadline. We'll see (I'd really rather not change the deadline, but a month is a short time to learn everything and implement it.)
Maybe I'll skip scripting for this first project, since I think it will be the biggest hassle. I could just hard code the script parts, although that might be just as hard. I'll know more once I dive into it next week.
Anyway, enough updating, I've got some programming to do!
Edit: Also, for those that are interested, I am thinking about releasing this as a free module. It uses variable width fonts, mutliple colors, and I am going to be adding formatting to it (at the moment, it just tests for what was said above, you can't right align or center the text), and it also tests to see if it is visible (or atleast partially.)
Edit 2: I removed the manager classes because all of the functionality is wrapped into a templated class called ResourceManager. So, I just typedefed them (typedef ResourceManager TextureManager.) Works exactly the same, except instead of calling GetXXX(), you call GetResource().
Nope. It just comes out as that handy square character. I guess I need to keep working!
Yours looks great though :]