Tuesday, September 12, 2006

Aaah~~ Busyness!

I haven't done squat in the past days, since I'm busy with all sorts of things:
  • Procrastinating
  • Visiting clients and earning money
  • School
As you can see, I have loads of other things to do. I regret I can't work on the game, but since it's a hobby project right now, and my own business/school is more important, I shifted my priority to those 2.

Tomorrow I'm busy the entire day with work, visiting the orthodontist(Yes, I'm 23 and getting braces) and when I get home, finish some assignments for school.

However, when I have time, I hope to start spending some time on implementing a sprite-sheet system, which loads individual bitmaps and slams them onto a larger sheet. Should be done by the weekend.

Thursday, September 07, 2006

ATTACK!

Well, not completely, but here it is:

As you can see, there are 2 sides on the screen, and I'm the blue one. The units are assigned to a Player, and during the mouse-over / click events, I check what's under the mouse, and perform an attack.

Right now, I'm thinking about how to store the increasing number of sprites and prevent it from causing an enormous slowdown. With the explosions and ammunition, I add at least ANOTHER 23 bitmaps, add that to the 22 bitmaps I already have, and you get the idea(Since my game isn't done yet). After that, I can make the actual bullets fly and do some damage to units. Once units reach < 1 HP, I remove them, add an explosion and VOILA! Instant action.

Tuesday, September 05, 2006

College is starting again...

Today my classes officially started for my minor. I'm doing Small Business Skills, and while I only have 3 'contact hours' a week, I need to spend at least 30 to 40 hours a week working on my assignments and other stuff.

They figured, these people are here for their own company or want to start one in the future, and therefore should work a lot for themselfs. And, half of the curriculum is done is student prepared classes, where ALL students need to provide a powerpoint presentation, and have a 1 out of 9 chance to stand in front of the class and present what they prepared. There is a 1 out of 9 chance, because there are 9 workgroups.

In matters related to the game: I coughed up a new texture manager, which replaces the default manager, and provides functionality to store each bitmap in a different color. All the ORIGINAL images are in red, and this is what it looks like with a small change:


As you can see, it works superb. Also, Textures are stored using their ARGB value in the TextureManager, so that harvester.bmp results in harvester.bmp_ARGBVALUE, so that each color is generating a unique name. I choose for this, because that way, I didn't have to change too much in the workings of the TM.

As for new features: I'm adding a base Player class, which will be used in the future to derive the actual players off, such as LocalPlayer, NetworkedPlayer, AIPlayer, etc. This way, updating will be very simple as networked players receive their changes, and put them to work at client side.

I hope to get it working before the weekend, so I can demonstrate it with 2 players(A LocalPlayer and an AIPlayer) and start working on weaponry. But I'm not sure if I'm able to, since school might require me attention.

Sunday, September 03, 2006

New input handler

So, in the past few days, I've been working my ass off to re-implement the entire input handling code, and seperated it out in a seperate class.

This means I cut approx. 300 lines from the actual playstate class and placed this in a seperate class, making my code alot more easier to maintain, update and fix.

Also, I added all functionality needed for the sides in the input manager(Attacking, unable to select, etc.), put it's all commented out as for now. But, I should more or less have this functionality working in a few weeks, as I want to start working on weapons, and for weapons to work, I need enemies.

Tonight I finally fixed a bug in updating the colors in each image, so I can now create colors needed for different sides. First step in this is to add a PlayerController or something similar, which owns a set of units/buildings. Next step is to provide a custom made texture manager, which loads the different textures, but also takes a Color param, which is used to update the palette to the required color(This also adds the option of being able to play with 8 players without the problem of having to have 8 different textures for each player).

After having controllers I enable the code in the input handler, and then work out weapons.

In other news: I bought a Laser printer for 78 euros today(Well, ordered it), printed out a 40 page document which I need for my minor which starts tuesday(Small Business Skills) and I came home from my parents in law and was shocked at how much of a fucking mess our place is. I'm off emptying the dish washer now...