Commit Graph

22 Commits

Author SHA1 Message Date
onpon4 788ee5eae4 Finished removing Starfighter.h. 2017-01-25 10:48:29 -05:00
onpon4 d336bb2c83 More cleanup. 2016-11-25 18:21:31 -05:00
onpon4 5b4fa64360 Tweaked the way the laser is handled.
The tweak causes you to be able to fire the laser for more time,
but the difference is subtle (112 frames instead of 100 frames).
2016-11-25 14:36:56 -05:00
onpon4 1be0fd1164 Lots of cleanup done on how weapons are handled.
I did one structural change to the way ship_fireBullet works. It
previously had two separate places for reducing ammo from the player.
I changed this so that it removes ammo in the same place regardless
of which weapon it is, but then performs the plasma "out of ammo"
action afterwards. It seems to work properly.

Also fixed a flaw in the saving which would in some cases cause
the stationed planet to not get saved properly.
2016-11-25 13:50:16 -05:00
onpon4 dc7209164a Renamed the "object" and "collectables" structs.
This was done with "replace all" actions, but I have checked and
the only collatoral damage has been to capitalize some instances
of "objective" in comments.
2016-11-25 12:37:26 -05:00
onpon4 aec30bbc3d Reorganized "misc.cpp".
Most functions have been placed into "info.cpp" and "radio.cpp",
while one has been placed into "engine.cpp".
2016-11-22 21:16:49 -05:00
onpon4 30b05b6b4e Replaced all bools with ints.
This is part of the conversion of Starfighter's code to C. C doesn't
have the bool type.
2016-11-19 11:43:50 -05:00
onpon4 063020df22 More cleanup. 2016-11-16 19:43:03 -05:00
onpon4 0929abf3a3 Added a Y component to audio_playSound, and reduction of volume by distance.
This makes it possible to remove code that made mines that exploded
off-screen completely inaudible.
2016-01-10 23:56:26 -05:00
onpon4 75029e45ee Fixed being able to get hurt after the mission is over.
There were two problems:

1. Some areas did not have any code to protect against this.

2. In one area that did have such code, it was malformed, and actually
   caused the "no damage" cheat to be negated after the mission was
   completed.

Both have been fixed.
2016-01-08 16:36:20 -05:00
onpon4 409a2efe07 Updated copyright notices.
Apparently they've all been modified this year now. The earliest
modification date is alien.h, at January 2.
2016-01-07 21:32:40 -05:00
onpon4 822ff849e4 Removed the very last of the image-related magic numbers (in source code).
The only magic numbers left now are related to positioning, image
sizing, and the remaining "data" files (the "planets" and "brief" ones).
At least, I'm pretty sure that's the case.
2016-01-06 20:35:37 -05:00
onpon4 4be080225b Fixed more magic numbers.
God, this one was definitely the biggest headache of all of the
magic number erasing. Never did I expect such cryptic problems.

The first problem was that the entirety of the player's weapon
struct was a part of the save file, *including the weapon's "image
indexes"*. Since the indexes have been changed, and the originally
used one is now unavailable when it's requested, this was causing
a segfault later on. Had to fix this by setting the image index
when the game is loaded.

The second problem was related to another bug I've been confused
about for years: the one that causes mobile rays to fire 5 green
shots. The entire reason those shots were green was because
the weapon's image indexes were undefined, and *that was causing
them to default to 0*. 0 was simply the index of green plasma.
Of course, though, now attempting to use that image causes a
segfault, so for now, I've fixed this by changing the image index
of the mobile rays to the red plasma bolts.

There are still some magic numbers left, related to the intermission
screen. But the hardest part is now done, thank God.
2016-01-05 22:12:29 -05:00
onpon4 ce94477b70 More cleanup. 2016-01-02 16:59:48 -05:00
onpon4 cce6d11510 More cleanup. 2015-11-02 17:53:05 -05:00
onpon4 c68cb3f920 More cleanup. 2015-09-26 08:49:21 -04:00
onpon4 0f10c6d5c7 Converted the three "collision" functions to four differently-named ones.
The fourth is simply a duplicate of ship_collision for bullets. A
bit redundant, but I figure it's clearer of a definition. Besides,
this opens up the door to possibly making bullets a different struct
type in the future, if that turns out to be desirable.
2015-09-25 16:28:09 -04:00
onpon4 f306825636 Removed the "nomove" and "nofire" cheats.
I honestly don't understand why these cheats were here. Preventing
enemies from moving breaks some missions and doesn't do anything
useful, and preventing enemies from firing is basically no better
than the invincibility cheat (and might even be worse, if it applies
to Sid; I didn't check).
2015-05-20 19:41:43 -04:00
onpon4 98a74e0d44 More code cleanup. 2015-04-30 18:51:26 -04:00
onpon4 c0f3310376 Changed plasma spread to the original version.
I don't know why it was changed, but the changed version caused
full spread rather than partial spread with the triple shot, and it
also caused the quaduple shot to be arguably worse than the triple
shot.
2015-04-07 21:14:30 -04:00
onpon4 717d56755c Moved fireRay to the ship module.
Also removed a really bad convention where a variable called "anEnemy"
was used, rather than just "aliens[i]".
2015-03-17 10:34:29 -04:00
onpon4 2a0234c300 Added ship module, moved fireBullet to it (as ship_fireBullet).
For functions that are used by both aliens and the player.
2015-03-13 10:10:58 -04:00