480 Commits

Author SHA1 Message Date
Julie Marchant
3e453a2f3c Added an "original AI type" definition for the sake of the exec transport.
This is something I forgot about before: the executive transport
A.I. was changed by me at some point from "Normal" to "Evasive".
This change re-introduces "Normal" A.I. for this ship in Classic
difficulty.
2019-05-26 15:35:46 -04:00
Julie Marchant
72cb75fb7e Added a preference for giving the player needed items. 2019-05-26 01:08:58 -04:00
Julie Marchant
d7dc0844c8 Adjusted the delay of ray damage, plus some misc code fixes. 2019-05-24 22:05:09 -04:00
Julie Marchant
281687b1c5 Small adjustment to some checks. 2019-05-23 12:18:29 -04:00
Julie Marchant
d17a8f36c7 Better malloc practice, plus several missing warnings 2019-05-23 11:25:54 -04:00
Julie Marchant
b251acb4fe Removed the now unnecessary casting for malloc calls. 2019-05-23 11:07:03 -04:00
Julie Marchant
908a6059ac Finished C conversion! Hoorah!
Note: Autoconf files must be cleaned up and regenerated to ensure
proper compilation.
2019-05-23 11:02:48 -04:00
Julie Marchant
ed0cc2ec97 Updated one more copyright notice. 2019-05-22 23:35:18 -04:00
Julie Marchant
7dc10025f0 Merge branch 'master' of git.savannah.nongnu.org:/srv/git/starfighter 2019-05-22 22:19:52 -04:00
Julie Marchant
f552b66c10 Restored behavior of attachments for Classic difficulty. 2019-05-22 22:19:34 -04:00
Julie Marchant
371896eb60 Updated copyright dates. 2019-05-21 18:47:32 -04:00
Julie Marchant
5670032156 Added difficulty indicator to the status screen. 2019-05-21 18:36:45 -04:00
Julie Marchant
5931846f03 Restored original triple and quad spread for Classic difficulty. 2019-05-21 13:49:28 -04:00
Julie Marchant
0bacdfa494 Removed the camera fix for Classic difficulty.
This re-implements the bug where the edge of the screen effectively
slows you down. I might revert this; we'll see.
2019-05-21 13:35:38 -04:00
Julie Marchant
0801188bd6 Removed prevention of useless plasma in Classic difficulty. 2019-05-21 13:28:09 -04:00
Julie Marchant
e398440a56 Made Classic difficulty almost exactly like the original.
There are only a couple changes that I've left in:

1. On normal missions, the edge of the screen still doesn't slow you down.
2. The shop still does not have the old bug where selling was based on the price of the next item.
3. Not sure about this, but some powerups don't spawn if they're of no use to you; I believe this was not in the original, but it's been left in anyway.
4. Not sure about this either, but I believe the original had the 3-way spread much wider. This has not been adjusted for Classic difficulty.

Other than those three, Classic difficulty is now exactly the same,
including a re-implementation of the whole "score" system where destroying
a ship nets you money instantly and the absurd system where you buy only
10 plasma capacity at a time. I might adjust 1, 3, and/or 4 above later
on.
2019-05-21 13:17:07 -04:00
Julie Marchant
838722590c Moved some variable declarations to top of function. 2019-05-21 02:09:26 -04:00
Julie Marchant
e22a2bc168 Converted consts to #define calls. 2019-05-21 01:51:39 -04:00
Julie Marchant
aa9d673aab Changed screenWidth and screenHeight to #defines. 2019-05-20 11:25:05 -04:00
Julie Marchant
e51c55b16b Revert "Converted to C... tried and failed to convert Autoconf."
This reverts commit 7fd19f29ba5d8774e111536464ff6b193d5f21b8.
2019-05-20 01:56:16 -04:00
Julie Marchant
7fd19f29ba Converted to C... tried and failed to convert Autoconf.
Broken for now. Committing so I can switch computers.
2019-05-19 23:57:55 -04:00
Julie Marchant
9014be8678 Merge branch 'master' of git.savannah.nongnu.org:/srv/git/starfighter 2019-05-19 23:46:46 -04:00
Julie Marchant
624d5bcb37 Parenthesis 2019-05-19 23:46:26 -04:00
Julie Marchant
8fc30e61f3 Finished conversion to malloc/free. 2019-05-19 18:22:53 -04:00
Julie Marchant
0ba13df0d7 Merge branch 'master' of git.savannah.nongnu.org:/srv/git/starfighter 2019-05-19 13:41:42 -04:00
Julie Marchant
6644be553e Converted some new and delete calls to malloc and free.
This is the last step to converting Starfighter to C. Almost there!
2019-05-19 13:40:50 -04:00
Julie Marchant
c5ee1b3e09 Fixed failure to use player_damage for explosions.
Also made one tweak: when shield gets to "low" or "critical",
damage delay is reset (so that you get more protection from rays).
2019-05-11 02:49:21 -04:00
Julie Marchant
e406c8eecd Fixed indentation. 2019-05-11 02:38:21 -04:00
Julie Marchant
5cc48d3f9f Tweaked the reduction method of damageDelay. 2019-05-11 02:26:37 -04:00
Julie Marchant
3b7bb45e28 Improved damaged nerfing
Limited damage prevention to only at the "low" and "critical" levels,
plus added a delay for when damage is first inflicted by rays.

This prevents ships with multiple concentrated shots from having
a disadvantage, and it helps make rays easier to avoid at the same
time (just get out of the ray in time and you don't take damage).
Of course, neither of these apply to Classic difficulty, although
the ray damage delay does apply to Nightmare difficulty (which,
given how unpredictable rays are, I think is quite reasonable).
2019-05-11 02:15:36 -04:00
Julie Marchant
ded0be314e Added a damage-control mechanic.
Limits the damage you take somewhat. Basically, this is intended
to prevent sudden deaths; if it doesn't look like you're dying,
you probably won't suddenly get axed. Of course, this is disabled
in Classic difficulty.
2019-05-10 21:09:34 -04:00
Julie Marchant
828b56d4df Fixed broken code for Classic difficulty.
The mistake caused the Classic game to deviate from the original
by not allowing Kline to drop mines in the Elamale mission. For
some reason I accidentally put that check in for Moebo instead.
Whoops!
2019-05-04 12:47:05 -04:00
Julie Marchant
cbdbf94498 Replaced some uses of sprintf with snprintf. 2018-04-21 10:44:33 -04:00
onpon4
341ef6907a Fixed lack of braces.
No real-world effect, but it's still wrong.
2017-10-19 16:36:35 -04:00
onpon4
abc3fbd7c0 Prevent screen sizes smaller than 640x480. 2017-03-28 11:03:53 -04:00
onpon4
209a007775 Open files as text, not binary. 2017-03-28 10:35:11 -04:00
onpon4
9c089a5013 Made a change that I think might fix bug #50644. 2017-03-26 23:52:05 -04:00
onpon4
6c1e59d434 Removed SDL_gfx dependency.
At first I was going to just not bother with the resizing thing, but
then I found out that SDL actually has a scaling function built-in.
So rather than depending on SDL_gfx for this one purpose that never
sees the light of day in practice, I have handed that job over to
that function.
2017-02-20 21:46:35 -05:00
onpon4
427f92ce2b Fixed the method for checking whether compiling for Windows. 2017-02-10 10:39:27 -05:00
onpon4
6c616bb4a2 Fixed where mines appear when screen width is larger than 800.
This causes the game to be easier, but whatever. The game is easier
with a bigger view anyway.
2017-02-05 17:37:22 -05:00
onpon4
2446baf718 Cause scaling to always be square. 2017-02-05 17:25:17 -05:00
onpon4
e36a1e82e7 Changed the game to use true fullscreen.
The fake "windowed fullscreen" is less invasive, but it sometimes
causes ugly artifacts and as a general rule isn't really all that
useful.

However, I also defined it in defs.h, so that it can be more easily
changed in the future.
2017-02-05 16:40:59 -05:00
onpon4
73a7afdc25 Added Pandora/Pyra controls. 2017-02-05 15:45:24 -05:00
onpon4
aa8ab90cf4 Fixed some minor cosmetic issues. 2017-02-05 14:49:43 -05:00
onpon4
6e67ba66c0 Fixed the Buy and Sell buttons. 2017-02-05 12:59:26 -05:00
onpon4
2d2c8e9732 Fixed the shop items. 2017-02-05 12:56:53 -05:00
onpon4
0effb37d4e Fixed shop item positions. 2017-02-05 12:39:02 -05:00
onpon4
3b56b0dbfb Improved the look of the shop. 2017-02-05 12:35:32 -05:00
onpon4
9f0ceebd6a Added a hack to prevent the fullscreen flickering effect and other weirdness. 2017-02-05 12:31:08 -05:00
onpon4
a7f4edb9ea Reverted the last change.
It was just a coincidence. Nothing actually changed.
2017-02-05 12:24:22 -05:00