Today was a long ass day for me. I had to wake up at 7:00AM (gasp!) and go to school to register, then I waited in line for an hour to get a locker, but before I got to the front, I had to leave and go to a dentist appointment, after that was over, I went back to the school, waited another hour, got my locker, showed my sister around the school, went home, played pool, went to work until 6:00PM, came home, and worked on A20 for awhile.
Anyways, I got two things done today that I've been putting off: making a better particle system, and making the laser pointer.
Item 1: The Laser Range Finder , or "Red Line"
This was really simple. I put a flag in the player class that says whether to display the laser or not, if so, I render a semitransparent red line from the player, to a position off-screen. All this really does is help the player aim projectile weapons like the rockets and your guns. But now I have a question for you guys. Wpuld you prefer the laser to be able to be toggled on and off, or would you like it to turn on just when you were firing your weapons? Anyways, let me know, and here's a screen of it in action:
Item 2: Improved Particle System
This problem has been plaguing A20 since Day 1. The current particle system has a wierd tendency to move the particles in wierd directions, and to not have particles stream out, but instead go out in bursts (as shown in the screen below)
Anyways, today I decided to sit down and write up a new particle emmitter class. The big improvements I've made over the previous one are:
-More control over particle behavior
-Particles can be Textured
-Pull values have been included(like gravity and wind)
-Control over the rate that particles are emitted
Here's a screen of the new emitter in action. This emitter has values that make it look like rising smoke that drifts in the wind. Note: I was having trouble with the texturing, so these quads are untextured.
Today I also began to design the scripting language that will be used to create cutscenes using the game engine. The scripts are easy to read and modify since they are simple text files you can open in notepad. Here's an example of a script that makes an airplane fly by.
#number of entities in scene
#duration of scene in seconds
#Entity 1's texture
#Entity 1's starting x position
#Entity 1's starting y position
#Entity 1's x velocity
#Entity 1's y velocity
#Entity 1's image angle
You can create multiple scenes in a sequence, by creating a scene file like the one below:
Plane Flying By
#Number of Sequences
#Scene 1 Filename
#Scene 2 Filename
As you may have guessed, the # symbols designate comments, and are just there for readability. While it's really not that flexible of a system, it's easy to use, and it will work for most of the cutscenes in A20.
Well, I've decided that Mark and I really need a website. We already have a domain name, and a server (where I host all my images), but neither of us has the skill to write good HTML[crying]. Hopefully when school starts I can find someone who is good at it who can make us one.
Well, I've got to go, as always, we're open to suggestions and comments on Angels 20, or anything else I mentioned in this entry, so drop a comment if you have something to say.
Angels 20 Feature WorkList
-An Actual Front-End Menu
-Ground Vehicles that can shoot at you
-More weapons (ie. Napalm, Cluster Bombs, etc)
-Fully Automatic Gun
-Forward Supply Bases
-More mission parameters (ie. timelimits , targets , etc)