Several adjustments for difficulty purposes.
Started out adjusting prices, then ended up doing other things while testing. Committing this now before I start doing other random stuff! But all of the changes are related to balancing difficulty, mostly with prices, except for a couple bugfixes in the shop. Most notably: * Ammo now costs $10, not $50. You no longer have to worry about saving ammo quite as much as a result. * Plasma upgrades' cost is now calculated differently, and the result is slightly lower prices than before. * Easy mode now grants the player more max ammo than other difficulties. * Increasing max plasma ammo now costs less at the start, and increases in cost faster. * You increase max plasma ammo by 25 at a time, not 10. (10 was just too small of a number.) * Destroying enemy ships no longer gives you money. I found that, even in hard mode, I had *way* too much money coming in, and this cuts it down substantially. It also makes the shield bonus at the end of missions much more significant. To compensate for the loss of massive bonuses bosses used to give, these bosses now drop a lot more stuff. * Kline has decreased health in his first encounter, and increased health in his last two encounters (the numbers have been reversed).
This commit is contained in:
parent
a3efbc06cc
commit
22fcdae8cc
|
@ -125,7 +125,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_DUALFIGHTER].weaponType[1] = W_ROCKETS;
|
alien_defs[CD_DUALFIGHTER].weaponType[1] = W_ROCKETS;
|
||||||
alien_defs[CD_DUALFIGHTER].chance[0] = 100;
|
alien_defs[CD_DUALFIGHTER].chance[0] = 100;
|
||||||
alien_defs[CD_DUALFIGHTER].chance[1] = 1;
|
alien_defs[CD_DUALFIGHTER].chance[1] = 1;
|
||||||
alien_defs[CD_DUALFIGHTER].score = 25;
|
|
||||||
alien_defs[CD_DUALFIGHTER].collectChance = 50;
|
alien_defs[CD_DUALFIGHTER].collectChance = 50;
|
||||||
alien_defs[CD_DUALFIGHTER].collectType = P_ANYTHING;
|
alien_defs[CD_DUALFIGHTER].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_DUALFIGHTER].collectValue = 50;
|
alien_defs[CD_DUALFIGHTER].collectValue = 50;
|
||||||
|
@ -143,7 +142,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_MISSILEBOAT].weaponType[1] = W_DOUBLE_ROCKETS;
|
alien_defs[CD_MISSILEBOAT].weaponType[1] = W_DOUBLE_ROCKETS;
|
||||||
alien_defs[CD_MISSILEBOAT].chance[0] = 25;
|
alien_defs[CD_MISSILEBOAT].chance[0] = 25;
|
||||||
alien_defs[CD_MISSILEBOAT].chance[1] = 4;
|
alien_defs[CD_MISSILEBOAT].chance[1] = 4;
|
||||||
alien_defs[CD_MISSILEBOAT].score = 250;
|
|
||||||
alien_defs[CD_MISSILEBOAT].collectChance = 25;
|
alien_defs[CD_MISSILEBOAT].collectChance = 25;
|
||||||
alien_defs[CD_MISSILEBOAT].collectType = P_ANYTHING;
|
alien_defs[CD_MISSILEBOAT].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_MISSILEBOAT].collectValue = 75;
|
alien_defs[CD_MISSILEBOAT].collectValue = 75;
|
||||||
|
@ -161,7 +159,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_PROTOFIGHTER].weaponType[1] = P_ANYTHING;
|
alien_defs[CD_PROTOFIGHTER].weaponType[1] = P_ANYTHING;
|
||||||
alien_defs[CD_PROTOFIGHTER].chance[0] = 100;
|
alien_defs[CD_PROTOFIGHTER].chance[0] = 100;
|
||||||
alien_defs[CD_PROTOFIGHTER].chance[1] = 1;
|
alien_defs[CD_PROTOFIGHTER].chance[1] = 1;
|
||||||
alien_defs[CD_PROTOFIGHTER].score = 50;
|
|
||||||
alien_defs[CD_PROTOFIGHTER].collectChance = 50;
|
alien_defs[CD_PROTOFIGHTER].collectChance = 50;
|
||||||
alien_defs[CD_PROTOFIGHTER].collectType = P_ANYTHING;
|
alien_defs[CD_PROTOFIGHTER].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_PROTOFIGHTER].collectValue = 50;
|
alien_defs[CD_PROTOFIGHTER].collectValue = 50;
|
||||||
|
@ -179,7 +176,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_FRIEND].weaponType[1] = W_HOMING_MISSILE;
|
alien_defs[CD_FRIEND].weaponType[1] = W_HOMING_MISSILE;
|
||||||
alien_defs[CD_FRIEND].chance[0] = 100;
|
alien_defs[CD_FRIEND].chance[0] = 100;
|
||||||
alien_defs[CD_FRIEND].chance[1] = 5;
|
alien_defs[CD_FRIEND].chance[1] = 5;
|
||||||
alien_defs[CD_FRIEND].score = 0;
|
|
||||||
alien_defs[CD_FRIEND].collectChance = 0;
|
alien_defs[CD_FRIEND].collectChance = 0;
|
||||||
alien_defs[CD_FRIEND].collectType = P_CASH;
|
alien_defs[CD_FRIEND].collectType = P_CASH;
|
||||||
alien_defs[CD_FRIEND].collectValue = 0;
|
alien_defs[CD_FRIEND].collectValue = 0;
|
||||||
|
@ -197,10 +193,9 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_FRIGATE].weaponType[1] = W_ENERGYRAY;
|
alien_defs[CD_FRIGATE].weaponType[1] = W_ENERGYRAY;
|
||||||
alien_defs[CD_FRIGATE].chance[0] = 100;
|
alien_defs[CD_FRIGATE].chance[0] = 100;
|
||||||
alien_defs[CD_FRIGATE].chance[1] = 85;
|
alien_defs[CD_FRIGATE].chance[1] = 85;
|
||||||
alien_defs[CD_FRIGATE].score = 500;
|
|
||||||
alien_defs[CD_FRIGATE].collectChance = 100;
|
alien_defs[CD_FRIGATE].collectChance = 100;
|
||||||
alien_defs[CD_FRIGATE].collectType = P_CASH;
|
alien_defs[CD_FRIGATE].collectType = P_CASH;
|
||||||
alien_defs[CD_FRIGATE].collectValue = 250;
|
alien_defs[CD_FRIGATE].collectValue = 500;
|
||||||
alien_defs[CD_FRIGATE].flags = FL_WEAPCO;
|
alien_defs[CD_FRIGATE].flags = FL_WEAPCO;
|
||||||
|
|
||||||
alien_defs[CD_FRIGATE_WING1].classDef = CD_FRIGATE_WING1;
|
alien_defs[CD_FRIGATE_WING1].classDef = CD_FRIGATE_WING1;
|
||||||
|
@ -214,7 +209,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_FRIGATE_WING1].weaponType[1] = W_ROCKETS;
|
alien_defs[CD_FRIGATE_WING1].weaponType[1] = W_ROCKETS;
|
||||||
alien_defs[CD_FRIGATE_WING1].chance[0] = 100;
|
alien_defs[CD_FRIGATE_WING1].chance[0] = 100;
|
||||||
alien_defs[CD_FRIGATE_WING1].chance[1] = 10;
|
alien_defs[CD_FRIGATE_WING1].chance[1] = 10;
|
||||||
alien_defs[CD_FRIGATE_WING1].score = 500;
|
|
||||||
alien_defs[CD_FRIGATE_WING1].collectChance = 100;
|
alien_defs[CD_FRIGATE_WING1].collectChance = 100;
|
||||||
alien_defs[CD_FRIGATE_WING1].collectType = P_ANYTHING;
|
alien_defs[CD_FRIGATE_WING1].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_FRIGATE_WING1].collectValue = 250;
|
alien_defs[CD_FRIGATE_WING1].collectValue = 250;
|
||||||
|
@ -231,7 +225,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_FRIGATE_WING2].weaponType[1] = W_ROCKETS;
|
alien_defs[CD_FRIGATE_WING2].weaponType[1] = W_ROCKETS;
|
||||||
alien_defs[CD_FRIGATE_WING2].chance[0] = 100;
|
alien_defs[CD_FRIGATE_WING2].chance[0] = 100;
|
||||||
alien_defs[CD_FRIGATE_WING2].chance[1] = 10;
|
alien_defs[CD_FRIGATE_WING2].chance[1] = 10;
|
||||||
alien_defs[CD_FRIGATE_WING2].score = 500;
|
|
||||||
alien_defs[CD_FRIGATE_WING2].collectChance = 100;
|
alien_defs[CD_FRIGATE_WING2].collectChance = 100;
|
||||||
alien_defs[CD_FRIGATE_WING2].collectType = P_ANYTHING;
|
alien_defs[CD_FRIGATE_WING2].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_FRIGATE_WING2].collectValue = 250;
|
alien_defs[CD_FRIGATE_WING2].collectValue = 250;
|
||||||
|
@ -249,7 +242,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_TRANSPORTSHIP].weaponType[1] = W_DOUBLE_SHOT;
|
alien_defs[CD_TRANSPORTSHIP].weaponType[1] = W_DOUBLE_SHOT;
|
||||||
alien_defs[CD_TRANSPORTSHIP].chance[0] = 0;
|
alien_defs[CD_TRANSPORTSHIP].chance[0] = 0;
|
||||||
alien_defs[CD_TRANSPORTSHIP].chance[1] = 0;
|
alien_defs[CD_TRANSPORTSHIP].chance[1] = 0;
|
||||||
alien_defs[CD_TRANSPORTSHIP].score = 25;
|
|
||||||
alien_defs[CD_TRANSPORTSHIP].collectChance = 100;
|
alien_defs[CD_TRANSPORTSHIP].collectChance = 100;
|
||||||
alien_defs[CD_TRANSPORTSHIP].collectType = P_WEAPONS;
|
alien_defs[CD_TRANSPORTSHIP].collectType = P_WEAPONS;
|
||||||
alien_defs[CD_TRANSPORTSHIP].collectValue = 30;
|
alien_defs[CD_TRANSPORTSHIP].collectValue = 30;
|
||||||
|
@ -267,7 +259,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_CARGOSHIP].weaponType[1] = W_DOUBLE_SHOT;
|
alien_defs[CD_CARGOSHIP].weaponType[1] = W_DOUBLE_SHOT;
|
||||||
alien_defs[CD_CARGOSHIP].chance[0] = 0;
|
alien_defs[CD_CARGOSHIP].chance[0] = 0;
|
||||||
alien_defs[CD_CARGOSHIP].chance[1] = 0;
|
alien_defs[CD_CARGOSHIP].chance[1] = 0;
|
||||||
alien_defs[CD_CARGOSHIP].score = 25;
|
|
||||||
alien_defs[CD_CARGOSHIP].collectChance = 50;
|
alien_defs[CD_CARGOSHIP].collectChance = 50;
|
||||||
alien_defs[CD_CARGOSHIP].collectType = P_ANYTHING;
|
alien_defs[CD_CARGOSHIP].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_CARGOSHIP].collectValue = 100;
|
alien_defs[CD_CARGOSHIP].collectValue = 100;
|
||||||
|
@ -285,7 +276,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_MINER].weaponType[1] = W_DOUBLE_SHOT;
|
alien_defs[CD_MINER].weaponType[1] = W_DOUBLE_SHOT;
|
||||||
alien_defs[CD_MINER].chance[0] = 0;
|
alien_defs[CD_MINER].chance[0] = 0;
|
||||||
alien_defs[CD_MINER].chance[1] = 0;
|
alien_defs[CD_MINER].chance[1] = 0;
|
||||||
alien_defs[CD_MINER].score = 100;
|
|
||||||
alien_defs[CD_MINER].collectChance = 100;
|
alien_defs[CD_MINER].collectChance = 100;
|
||||||
alien_defs[CD_MINER].collectType = P_ANYTHING;
|
alien_defs[CD_MINER].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_MINER].collectValue = 30;
|
alien_defs[CD_MINER].collectValue = 30;
|
||||||
|
@ -295,15 +285,14 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_KLINE].classDef = CD_KLINE;
|
alien_defs[CD_KLINE].classDef = CD_KLINE;
|
||||||
alien_defs[CD_KLINE].AIType = AI_OFFENSIVE;
|
alien_defs[CD_KLINE].AIType = AI_OFFENSIVE;
|
||||||
alien_defs[CD_KLINE].speed = 5;
|
alien_defs[CD_KLINE].speed = 5;
|
||||||
alien_defs[CD_KLINE].maxShield = 750;
|
alien_defs[CD_KLINE].maxShield = 500;
|
||||||
alien_defs[CD_KLINE].shield = 750;
|
alien_defs[CD_KLINE].shield = 500;
|
||||||
alien_defs[CD_KLINE].imageIndex[0] = 18;
|
alien_defs[CD_KLINE].imageIndex[0] = 18;
|
||||||
alien_defs[CD_KLINE].imageIndex[1] = 19;
|
alien_defs[CD_KLINE].imageIndex[1] = 19;
|
||||||
alien_defs[CD_KLINE].weaponType[0] = W_TRIPLE_SHOT;
|
alien_defs[CD_KLINE].weaponType[0] = W_TRIPLE_SHOT;
|
||||||
alien_defs[CD_KLINE].weaponType[1] = W_MICRO_ROCKETS;
|
alien_defs[CD_KLINE].weaponType[1] = W_MICRO_ROCKETS;
|
||||||
alien_defs[CD_KLINE].chance[0] = 100;
|
alien_defs[CD_KLINE].chance[0] = 100;
|
||||||
alien_defs[CD_KLINE].chance[1] = 2;
|
alien_defs[CD_KLINE].chance[1] = 2;
|
||||||
alien_defs[CD_KLINE].score = 0;
|
|
||||||
alien_defs[CD_KLINE].collectChance = 0;
|
alien_defs[CD_KLINE].collectChance = 0;
|
||||||
alien_defs[CD_KLINE].collectType = P_ANYTHING;
|
alien_defs[CD_KLINE].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_KLINE].collectValue = 0;
|
alien_defs[CD_KLINE].collectValue = 0;
|
||||||
|
@ -321,7 +310,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_AIMFIGHTER].weaponType[1] = W_AIMED_SHOT;
|
alien_defs[CD_AIMFIGHTER].weaponType[1] = W_AIMED_SHOT;
|
||||||
alien_defs[CD_AIMFIGHTER].chance[0] = 7;
|
alien_defs[CD_AIMFIGHTER].chance[0] = 7;
|
||||||
alien_defs[CD_AIMFIGHTER].chance[1] = 1;
|
alien_defs[CD_AIMFIGHTER].chance[1] = 1;
|
||||||
alien_defs[CD_AIMFIGHTER].score = 50;
|
|
||||||
alien_defs[CD_AIMFIGHTER].collectChance = 75;
|
alien_defs[CD_AIMFIGHTER].collectChance = 75;
|
||||||
alien_defs[CD_AIMFIGHTER].collectType = P_ANYTHING;
|
alien_defs[CD_AIMFIGHTER].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_AIMFIGHTER].collectValue = 100;
|
alien_defs[CD_AIMFIGHTER].collectValue = 100;
|
||||||
|
@ -339,7 +327,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_SLAVETRANSPORT].weaponType[1] = W_DOUBLE_SHOT;
|
alien_defs[CD_SLAVETRANSPORT].weaponType[1] = W_DOUBLE_SHOT;
|
||||||
alien_defs[CD_SLAVETRANSPORT].chance[0] = 0;
|
alien_defs[CD_SLAVETRANSPORT].chance[0] = 0;
|
||||||
alien_defs[CD_SLAVETRANSPORT].chance[1] = 0;
|
alien_defs[CD_SLAVETRANSPORT].chance[1] = 0;
|
||||||
alien_defs[CD_SLAVETRANSPORT].score = 25;
|
|
||||||
alien_defs[CD_SLAVETRANSPORT].collectChance = 100;
|
alien_defs[CD_SLAVETRANSPORT].collectChance = 100;
|
||||||
alien_defs[CD_SLAVETRANSPORT].collectType = P_SLAVES;
|
alien_defs[CD_SLAVETRANSPORT].collectType = P_SLAVES;
|
||||||
alien_defs[CD_SLAVETRANSPORT].collectValue = 25;
|
alien_defs[CD_SLAVETRANSPORT].collectValue = 25;
|
||||||
|
@ -357,7 +344,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_GOODTRANSPORT].weaponType[1] = W_AIMED_SHOT;
|
alien_defs[CD_GOODTRANSPORT].weaponType[1] = W_AIMED_SHOT;
|
||||||
alien_defs[CD_GOODTRANSPORT].chance[0] = 100;
|
alien_defs[CD_GOODTRANSPORT].chance[0] = 100;
|
||||||
alien_defs[CD_GOODTRANSPORT].chance[1] = 100;
|
alien_defs[CD_GOODTRANSPORT].chance[1] = 100;
|
||||||
alien_defs[CD_GOODTRANSPORT].score = 0;
|
|
||||||
alien_defs[CD_GOODTRANSPORT].collectChance = 0;
|
alien_defs[CD_GOODTRANSPORT].collectChance = 0;
|
||||||
alien_defs[CD_GOODTRANSPORT].collectType = P_ANYTHING;
|
alien_defs[CD_GOODTRANSPORT].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_GOODTRANSPORT].collectValue = 0;
|
alien_defs[CD_GOODTRANSPORT].collectValue = 0;
|
||||||
|
@ -375,7 +361,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_SID].weaponType[1] = W_IONCANNON;
|
alien_defs[CD_SID].weaponType[1] = W_IONCANNON;
|
||||||
alien_defs[CD_SID].chance[0] = 100;
|
alien_defs[CD_SID].chance[0] = 100;
|
||||||
alien_defs[CD_SID].chance[1] = 0;
|
alien_defs[CD_SID].chance[1] = 0;
|
||||||
alien_defs[CD_SID].score = 0;
|
|
||||||
alien_defs[CD_SID].collectChance = 0;
|
alien_defs[CD_SID].collectChance = 0;
|
||||||
alien_defs[CD_SID].collectType = P_ANYTHING;
|
alien_defs[CD_SID].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_SID].collectValue = 0;
|
alien_defs[CD_SID].collectValue = 0;
|
||||||
|
@ -393,10 +378,9 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_MINEBOSS].weaponType[1] = W_SPREADSHOT;
|
alien_defs[CD_MINEBOSS].weaponType[1] = W_SPREADSHOT;
|
||||||
alien_defs[CD_MINEBOSS].chance[0] = 0;
|
alien_defs[CD_MINEBOSS].chance[0] = 0;
|
||||||
alien_defs[CD_MINEBOSS].chance[1] = 0;
|
alien_defs[CD_MINEBOSS].chance[1] = 0;
|
||||||
alien_defs[CD_MINEBOSS].score = 1000;
|
|
||||||
alien_defs[CD_MINEBOSS].collectChance = 100;
|
alien_defs[CD_MINEBOSS].collectChance = 100;
|
||||||
alien_defs[CD_MINEBOSS].collectType = P_ANYTHING;
|
alien_defs[CD_MINEBOSS].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_MINEBOSS].collectValue = 255;
|
alien_defs[CD_MINEBOSS].collectValue = 1000;
|
||||||
alien_defs[CD_MINEBOSS].flags = FL_WEAPCO | FL_IMMORTAL;
|
alien_defs[CD_MINEBOSS].flags = FL_WEAPCO | FL_IMMORTAL;
|
||||||
|
|
||||||
alien_defs[CD_BOSS2_WING1].classDef = CD_BOSS2_WING1;
|
alien_defs[CD_BOSS2_WING1].classDef = CD_BOSS2_WING1;
|
||||||
|
@ -410,10 +394,9 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_BOSS2_WING1].weaponType[1] = W_SPREADSHOT;
|
alien_defs[CD_BOSS2_WING1].weaponType[1] = W_SPREADSHOT;
|
||||||
alien_defs[CD_BOSS2_WING1].chance[0] = 0;
|
alien_defs[CD_BOSS2_WING1].chance[0] = 0;
|
||||||
alien_defs[CD_BOSS2_WING1].chance[1] = 0;
|
alien_defs[CD_BOSS2_WING1].chance[1] = 0;
|
||||||
alien_defs[CD_BOSS2_WING1].score = 1000;
|
|
||||||
alien_defs[CD_BOSS2_WING1].collectChance = 100;
|
alien_defs[CD_BOSS2_WING1].collectChance = 100;
|
||||||
alien_defs[CD_BOSS2_WING1].collectType = P_ANYTHING;
|
alien_defs[CD_BOSS2_WING1].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_BOSS2_WING1].collectValue = 255;
|
alien_defs[CD_BOSS2_WING1].collectValue = 250;
|
||||||
alien_defs[CD_BOSS2_WING1].flags = FL_WEAPCO | FL_DAMAGEOWNER;
|
alien_defs[CD_BOSS2_WING1].flags = FL_WEAPCO | FL_DAMAGEOWNER;
|
||||||
|
|
||||||
alien_defs[CD_BOSS2_WING2].classDef = CD_BOSS2_WING2;
|
alien_defs[CD_BOSS2_WING2].classDef = CD_BOSS2_WING2;
|
||||||
|
@ -427,10 +410,9 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_BOSS2_WING2].weaponType[1] = W_SPREADSHOT;
|
alien_defs[CD_BOSS2_WING2].weaponType[1] = W_SPREADSHOT;
|
||||||
alien_defs[CD_BOSS2_WING2].chance[0] = 0;
|
alien_defs[CD_BOSS2_WING2].chance[0] = 0;
|
||||||
alien_defs[CD_BOSS2_WING2].chance[1] = 0;
|
alien_defs[CD_BOSS2_WING2].chance[1] = 0;
|
||||||
alien_defs[CD_BOSS2_WING2].score = 1000;
|
|
||||||
alien_defs[CD_BOSS2_WING2].collectChance = 100;
|
alien_defs[CD_BOSS2_WING2].collectChance = 100;
|
||||||
alien_defs[CD_BOSS2_WING2].collectType = P_ANYTHING;
|
alien_defs[CD_BOSS2_WING2].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_BOSS2_WING2].collectValue = 255;
|
alien_defs[CD_BOSS2_WING2].collectValue = 250;
|
||||||
alien_defs[CD_BOSS2_WING2].flags = FL_WEAPCO | FL_DEPLOYDRONES | FL_DAMAGEOWNER;
|
alien_defs[CD_BOSS2_WING2].flags = FL_WEAPCO | FL_DEPLOYDRONES | FL_DAMAGEOWNER;
|
||||||
|
|
||||||
alien_defs[CD_BOSS2_WING3].classDef = CD_BOSS2_WING3;
|
alien_defs[CD_BOSS2_WING3].classDef = CD_BOSS2_WING3;
|
||||||
|
@ -444,10 +426,9 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_BOSS2_WING3].weaponType[1] = W_SPREADSHOT;
|
alien_defs[CD_BOSS2_WING3].weaponType[1] = W_SPREADSHOT;
|
||||||
alien_defs[CD_BOSS2_WING3].chance[0] = 0;
|
alien_defs[CD_BOSS2_WING3].chance[0] = 0;
|
||||||
alien_defs[CD_BOSS2_WING3].chance[1] = 0;
|
alien_defs[CD_BOSS2_WING3].chance[1] = 0;
|
||||||
alien_defs[CD_BOSS2_WING3].score = 1000;
|
|
||||||
alien_defs[CD_BOSS2_WING3].collectChance = 100;
|
alien_defs[CD_BOSS2_WING3].collectChance = 100;
|
||||||
alien_defs[CD_BOSS2_WING3].collectType = P_ANYTHING;
|
alien_defs[CD_BOSS2_WING3].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_BOSS2_WING3].collectValue = 255;
|
alien_defs[CD_BOSS2_WING3].collectValue = 250;
|
||||||
alien_defs[CD_BOSS2_WING3].flags = FL_WEAPCO | FL_DEPLOYDRONES | FL_DAMAGEOWNER;
|
alien_defs[CD_BOSS2_WING3].flags = FL_WEAPCO | FL_DEPLOYDRONES | FL_DAMAGEOWNER;
|
||||||
|
|
||||||
alien_defs[CD_BOSS2_WING4].classDef = CD_BOSS2_WING4;
|
alien_defs[CD_BOSS2_WING4].classDef = CD_BOSS2_WING4;
|
||||||
|
@ -461,10 +442,9 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_BOSS2_WING4].weaponType[1] = W_SPREADSHOT;
|
alien_defs[CD_BOSS2_WING4].weaponType[1] = W_SPREADSHOT;
|
||||||
alien_defs[CD_BOSS2_WING4].chance[0] = 0;
|
alien_defs[CD_BOSS2_WING4].chance[0] = 0;
|
||||||
alien_defs[CD_BOSS2_WING4].chance[1] = 0;
|
alien_defs[CD_BOSS2_WING4].chance[1] = 0;
|
||||||
alien_defs[CD_BOSS2_WING4].score = 1000;
|
|
||||||
alien_defs[CD_BOSS2_WING4].collectChance = 100;
|
alien_defs[CD_BOSS2_WING4].collectChance = 100;
|
||||||
alien_defs[CD_BOSS2_WING4].collectType = P_ANYTHING;
|
alien_defs[CD_BOSS2_WING4].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_BOSS2_WING4].collectValue = 255;
|
alien_defs[CD_BOSS2_WING4].collectValue = 250;
|
||||||
alien_defs[CD_BOSS2_WING4].flags = FL_WEAPCO | FL_DAMAGEOWNER;
|
alien_defs[CD_BOSS2_WING4].flags = FL_WEAPCO | FL_DAMAGEOWNER;
|
||||||
|
|
||||||
// Drone
|
// Drone
|
||||||
|
@ -479,7 +459,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_DRONE].weaponType[1] = W_LASER;
|
alien_defs[CD_DRONE].weaponType[1] = W_LASER;
|
||||||
alien_defs[CD_DRONE].chance[0] = 100;
|
alien_defs[CD_DRONE].chance[0] = 100;
|
||||||
alien_defs[CD_DRONE].chance[1] = 0;
|
alien_defs[CD_DRONE].chance[1] = 0;
|
||||||
alien_defs[CD_DRONE].score = 0;
|
|
||||||
alien_defs[CD_DRONE].collectChance = 10;
|
alien_defs[CD_DRONE].collectChance = 10;
|
||||||
alien_defs[CD_DRONE].collectType = P_SHIELD;
|
alien_defs[CD_DRONE].collectType = P_SHIELD;
|
||||||
alien_defs[CD_DRONE].collectValue = 1;
|
alien_defs[CD_DRONE].collectValue = 1;
|
||||||
|
@ -497,10 +476,9 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_CLOAKFIGHTER].weaponType[1] = W_DOUBLE_ROCKETS;
|
alien_defs[CD_CLOAKFIGHTER].weaponType[1] = W_DOUBLE_ROCKETS;
|
||||||
alien_defs[CD_CLOAKFIGHTER].chance[0] = 100;
|
alien_defs[CD_CLOAKFIGHTER].chance[0] = 100;
|
||||||
alien_defs[CD_CLOAKFIGHTER].chance[1] = 5;
|
alien_defs[CD_CLOAKFIGHTER].chance[1] = 5;
|
||||||
alien_defs[CD_CLOAKFIGHTER].score = 550;
|
|
||||||
alien_defs[CD_CLOAKFIGHTER].collectChance = 100;
|
alien_defs[CD_CLOAKFIGHTER].collectChance = 100;
|
||||||
alien_defs[CD_CLOAKFIGHTER].collectType = P_CASH;
|
alien_defs[CD_CLOAKFIGHTER].collectType = P_CASH;
|
||||||
alien_defs[CD_CLOAKFIGHTER].collectValue = 255;
|
alien_defs[CD_CLOAKFIGHTER].collectValue = 1000;
|
||||||
alien_defs[CD_CLOAKFIGHTER].flags = FL_WEAPCO | FL_CANCLOAK | FL_RUNSAWAY;
|
alien_defs[CD_CLOAKFIGHTER].flags = FL_WEAPCO | FL_CANCLOAK | FL_RUNSAWAY;
|
||||||
|
|
||||||
// Evil Ursula
|
// Evil Ursula
|
||||||
|
@ -515,7 +493,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_EVILURSULA].weaponType[1] = W_HOMING_MISSILE;
|
alien_defs[CD_EVILURSULA].weaponType[1] = W_HOMING_MISSILE;
|
||||||
alien_defs[CD_EVILURSULA].chance[0] = 100;
|
alien_defs[CD_EVILURSULA].chance[0] = 100;
|
||||||
alien_defs[CD_EVILURSULA].chance[1] = 100;
|
alien_defs[CD_EVILURSULA].chance[1] = 100;
|
||||||
alien_defs[CD_EVILURSULA].score = 500;
|
|
||||||
alien_defs[CD_EVILURSULA].collectChance = 100;
|
alien_defs[CD_EVILURSULA].collectChance = 100;
|
||||||
alien_defs[CD_EVILURSULA].collectType = P_ESCAPEPOD;
|
alien_defs[CD_EVILURSULA].collectType = P_ESCAPEPOD;
|
||||||
alien_defs[CD_EVILURSULA].collectValue = 1;
|
alien_defs[CD_EVILURSULA].collectValue = 1;
|
||||||
|
@ -533,10 +510,9 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_KRASS].weaponType[1] = W_CHARGER;
|
alien_defs[CD_KRASS].weaponType[1] = W_CHARGER;
|
||||||
alien_defs[CD_KRASS].chance[0] = 100;
|
alien_defs[CD_KRASS].chance[0] = 100;
|
||||||
alien_defs[CD_KRASS].chance[1] = 0;
|
alien_defs[CD_KRASS].chance[1] = 0;
|
||||||
alien_defs[CD_KRASS].score = 2000;
|
|
||||||
alien_defs[CD_KRASS].collectChance = 100;
|
alien_defs[CD_KRASS].collectChance = 100;
|
||||||
alien_defs[CD_KRASS].collectType = P_ANYTHING;
|
alien_defs[CD_KRASS].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_KRASS].collectValue = 255;
|
alien_defs[CD_KRASS].collectValue = 2250;
|
||||||
alien_defs[CD_KRASS].flags = FL_FRIEND | FL_IMMORTAL;
|
alien_defs[CD_KRASS].flags = FL_FRIEND | FL_IMMORTAL;
|
||||||
|
|
||||||
// Executive Transport
|
// Executive Transport
|
||||||
|
@ -551,10 +527,9 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_EXEC].weaponType[1] = W_HOMING_MISSILE;
|
alien_defs[CD_EXEC].weaponType[1] = W_HOMING_MISSILE;
|
||||||
alien_defs[CD_EXEC].chance[0] = 0;
|
alien_defs[CD_EXEC].chance[0] = 0;
|
||||||
alien_defs[CD_EXEC].chance[1] = 0;
|
alien_defs[CD_EXEC].chance[1] = 0;
|
||||||
alien_defs[CD_EXEC].score = 2000;
|
|
||||||
alien_defs[CD_EXEC].collectChance = 0;
|
alien_defs[CD_EXEC].collectChance = 0;
|
||||||
alien_defs[CD_EXEC].collectType = P_ANYTHING;
|
alien_defs[CD_EXEC].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_EXEC].collectValue = 0;
|
alien_defs[CD_EXEC].collectValue = 2000;
|
||||||
alien_defs[CD_EXEC].flags = FL_WEAPCO | FL_NOFIRE;
|
alien_defs[CD_EXEC].flags = FL_WEAPCO | FL_NOFIRE;
|
||||||
|
|
||||||
// Asteroid
|
// Asteroid
|
||||||
|
@ -569,7 +544,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_ASTEROID].weaponType[1] = W_HOMING_MISSILE;
|
alien_defs[CD_ASTEROID].weaponType[1] = W_HOMING_MISSILE;
|
||||||
alien_defs[CD_ASTEROID].chance[0] = 0;
|
alien_defs[CD_ASTEROID].chance[0] = 0;
|
||||||
alien_defs[CD_ASTEROID].chance[1] = 0;
|
alien_defs[CD_ASTEROID].chance[1] = 0;
|
||||||
alien_defs[CD_ASTEROID].score = 0;
|
|
||||||
alien_defs[CD_ASTEROID].collectChance = 25;
|
alien_defs[CD_ASTEROID].collectChance = 25;
|
||||||
alien_defs[CD_ASTEROID].collectType = P_ORE;
|
alien_defs[CD_ASTEROID].collectType = P_ORE;
|
||||||
alien_defs[CD_ASTEROID].collectValue = 1;
|
alien_defs[CD_ASTEROID].collectValue = 1;
|
||||||
|
@ -586,7 +560,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_ASTEROID2].weaponType[1] = W_HOMING_MISSILE;
|
alien_defs[CD_ASTEROID2].weaponType[1] = W_HOMING_MISSILE;
|
||||||
alien_defs[CD_ASTEROID2].chance[0] = 0;
|
alien_defs[CD_ASTEROID2].chance[0] = 0;
|
||||||
alien_defs[CD_ASTEROID2].chance[1] = 0;
|
alien_defs[CD_ASTEROID2].chance[1] = 0;
|
||||||
alien_defs[CD_ASTEROID2].score = 0;
|
|
||||||
alien_defs[CD_ASTEROID2].collectChance = 25;
|
alien_defs[CD_ASTEROID2].collectChance = 25;
|
||||||
alien_defs[CD_ASTEROID2].collectType = P_ORE;
|
alien_defs[CD_ASTEROID2].collectType = P_ORE;
|
||||||
alien_defs[CD_ASTEROID2].collectValue = 1;
|
alien_defs[CD_ASTEROID2].collectValue = 1;
|
||||||
|
@ -604,7 +577,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_ESCORT].weaponType[1] = W_LASER;
|
alien_defs[CD_ESCORT].weaponType[1] = W_LASER;
|
||||||
alien_defs[CD_ESCORT].chance[0] = 25;
|
alien_defs[CD_ESCORT].chance[0] = 25;
|
||||||
alien_defs[CD_ESCORT].chance[1] = 25;
|
alien_defs[CD_ESCORT].chance[1] = 25;
|
||||||
alien_defs[CD_ESCORT].score = 450;
|
|
||||||
alien_defs[CD_ESCORT].collectChance = 100;
|
alien_defs[CD_ESCORT].collectChance = 100;
|
||||||
alien_defs[CD_ESCORT].collectType = P_ANYTHING;
|
alien_defs[CD_ESCORT].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_ESCORT].collectValue = 100;
|
alien_defs[CD_ESCORT].collectValue = 100;
|
||||||
|
@ -622,10 +594,9 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_MOBILE_RAY].weaponType[1] = W_ENERGYRAY;
|
alien_defs[CD_MOBILE_RAY].weaponType[1] = W_ENERGYRAY;
|
||||||
alien_defs[CD_MOBILE_RAY].chance[0] = 50;
|
alien_defs[CD_MOBILE_RAY].chance[0] = 50;
|
||||||
alien_defs[CD_MOBILE_RAY].chance[1] = 50;
|
alien_defs[CD_MOBILE_RAY].chance[1] = 50;
|
||||||
alien_defs[CD_MOBILE_RAY].score = 1000;
|
|
||||||
alien_defs[CD_MOBILE_RAY].collectChance = 75;
|
alien_defs[CD_MOBILE_RAY].collectChance = 75;
|
||||||
alien_defs[CD_MOBILE_RAY].collectType = P_SHIELD;
|
alien_defs[CD_MOBILE_RAY].collectType = P_SHIELD;
|
||||||
alien_defs[CD_MOBILE_RAY].collectValue = 2;
|
alien_defs[CD_MOBILE_RAY].collectValue = 100;
|
||||||
alien_defs[CD_MOBILE_RAY].flags = FL_WEAPCO;
|
alien_defs[CD_MOBILE_RAY].flags = FL_WEAPCO;
|
||||||
|
|
||||||
// Rebel Carrier
|
// Rebel Carrier
|
||||||
|
@ -640,7 +611,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_REBELCARRIER].weaponType[1] = W_MICRO_ROCKETS;
|
alien_defs[CD_REBELCARRIER].weaponType[1] = W_MICRO_ROCKETS;
|
||||||
alien_defs[CD_REBELCARRIER].chance[0] = 50;
|
alien_defs[CD_REBELCARRIER].chance[0] = 50;
|
||||||
alien_defs[CD_REBELCARRIER].chance[1] = 2;
|
alien_defs[CD_REBELCARRIER].chance[1] = 2;
|
||||||
alien_defs[CD_REBELCARRIER].score = 0;
|
|
||||||
alien_defs[CD_REBELCARRIER].collectChance = 0;
|
alien_defs[CD_REBELCARRIER].collectChance = 0;
|
||||||
alien_defs[CD_REBELCARRIER].collectType = P_SHIELD;
|
alien_defs[CD_REBELCARRIER].collectType = P_SHIELD;
|
||||||
alien_defs[CD_REBELCARRIER].collectValue = 0;
|
alien_defs[CD_REBELCARRIER].collectValue = 0;
|
||||||
|
@ -658,10 +628,9 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_PLUTOBOSS].weaponType[1] = W_MICRO_ROCKETS;
|
alien_defs[CD_PLUTOBOSS].weaponType[1] = W_MICRO_ROCKETS;
|
||||||
alien_defs[CD_PLUTOBOSS].chance[0] = 50;
|
alien_defs[CD_PLUTOBOSS].chance[0] = 50;
|
||||||
alien_defs[CD_PLUTOBOSS].chance[1] = 2;
|
alien_defs[CD_PLUTOBOSS].chance[1] = 2;
|
||||||
alien_defs[CD_PLUTOBOSS].score = 1000;
|
|
||||||
alien_defs[CD_PLUTOBOSS].collectChance = 0;
|
alien_defs[CD_PLUTOBOSS].collectChance = 0;
|
||||||
alien_defs[CD_PLUTOBOSS].collectType = P_SHIELD;
|
alien_defs[CD_PLUTOBOSS].collectType = P_SHIELD;
|
||||||
alien_defs[CD_PLUTOBOSS].collectValue = 0;
|
alien_defs[CD_PLUTOBOSS].collectValue = 1000;
|
||||||
alien_defs[CD_PLUTOBOSS].flags = FL_WEAPCO;
|
alien_defs[CD_PLUTOBOSS].flags = FL_WEAPCO;
|
||||||
|
|
||||||
// Pluto Boss Barrier
|
// Pluto Boss Barrier
|
||||||
|
@ -676,7 +645,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_BARRIER].weaponType[1] = W_MICRO_ROCKETS;
|
alien_defs[CD_BARRIER].weaponType[1] = W_MICRO_ROCKETS;
|
||||||
alien_defs[CD_BARRIER].chance[0] = 0;
|
alien_defs[CD_BARRIER].chance[0] = 0;
|
||||||
alien_defs[CD_BARRIER].chance[1] = 0;
|
alien_defs[CD_BARRIER].chance[1] = 0;
|
||||||
alien_defs[CD_BARRIER].score = 1000;
|
|
||||||
alien_defs[CD_BARRIER].collectChance = 100;
|
alien_defs[CD_BARRIER].collectChance = 100;
|
||||||
alien_defs[CD_BARRIER].collectType = P_ANYTHING;
|
alien_defs[CD_BARRIER].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_BARRIER].collectValue = 25;
|
alien_defs[CD_BARRIER].collectValue = 25;
|
||||||
|
@ -694,10 +662,9 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_NEPTUNEBOSS].weaponType[1] = W_MICRO_ROCKETS;
|
alien_defs[CD_NEPTUNEBOSS].weaponType[1] = W_MICRO_ROCKETS;
|
||||||
alien_defs[CD_NEPTUNEBOSS].chance[0] = 100;
|
alien_defs[CD_NEPTUNEBOSS].chance[0] = 100;
|
||||||
alien_defs[CD_NEPTUNEBOSS].chance[1] = 0;
|
alien_defs[CD_NEPTUNEBOSS].chance[1] = 0;
|
||||||
alien_defs[CD_NEPTUNEBOSS].score = 1000;
|
|
||||||
alien_defs[CD_NEPTUNEBOSS].collectChance = 100;
|
alien_defs[CD_NEPTUNEBOSS].collectChance = 100;
|
||||||
alien_defs[CD_NEPTUNEBOSS].collectType = P_ANYTHING;
|
alien_defs[CD_NEPTUNEBOSS].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_NEPTUNEBOSS].collectValue = 25;
|
alien_defs[CD_NEPTUNEBOSS].collectValue = 1000;
|
||||||
alien_defs[CD_NEPTUNEBOSS].flags = FL_WEAPCO;
|
alien_defs[CD_NEPTUNEBOSS].flags = FL_WEAPCO;
|
||||||
|
|
||||||
// Mobile Shield
|
// Mobile Shield
|
||||||
|
@ -712,7 +679,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_MOBILESHIELD].weaponType[1] = W_MICRO_ROCKETS;
|
alien_defs[CD_MOBILESHIELD].weaponType[1] = W_MICRO_ROCKETS;
|
||||||
alien_defs[CD_MOBILESHIELD].chance[0] = 0;
|
alien_defs[CD_MOBILESHIELD].chance[0] = 0;
|
||||||
alien_defs[CD_MOBILESHIELD].chance[1] = 0;
|
alien_defs[CD_MOBILESHIELD].chance[1] = 0;
|
||||||
alien_defs[CD_MOBILESHIELD].score = 250;
|
|
||||||
alien_defs[CD_MOBILESHIELD].collectChance = 100;
|
alien_defs[CD_MOBILESHIELD].collectChance = 100;
|
||||||
alien_defs[CD_MOBILESHIELD].collectType = P_ANYTHING;
|
alien_defs[CD_MOBILESHIELD].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_MOBILESHIELD].collectValue = 25;
|
alien_defs[CD_MOBILESHIELD].collectValue = 25;
|
||||||
|
@ -730,7 +696,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_FIREFLY].weaponType[1] = W_DOUBLE_ROCKETS;
|
alien_defs[CD_FIREFLY].weaponType[1] = W_DOUBLE_ROCKETS;
|
||||||
alien_defs[CD_FIREFLY].chance[0] = 100;
|
alien_defs[CD_FIREFLY].chance[0] = 100;
|
||||||
alien_defs[CD_FIREFLY].chance[1] = 5;
|
alien_defs[CD_FIREFLY].chance[1] = 5;
|
||||||
alien_defs[CD_FIREFLY].score = 500;
|
|
||||||
alien_defs[CD_FIREFLY].collectChance = 100;
|
alien_defs[CD_FIREFLY].collectChance = 100;
|
||||||
alien_defs[CD_FIREFLY].collectType = P_ANYTHING;
|
alien_defs[CD_FIREFLY].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_FIREFLY].collectValue = 250;
|
alien_defs[CD_FIREFLY].collectValue = 250;
|
||||||
|
@ -748,10 +713,9 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_URANUSBOSS].weaponType[1] = W_DOUBLE_ROCKETS;
|
alien_defs[CD_URANUSBOSS].weaponType[1] = W_DOUBLE_ROCKETS;
|
||||||
alien_defs[CD_URANUSBOSS].chance[0] = 100;
|
alien_defs[CD_URANUSBOSS].chance[0] = 100;
|
||||||
alien_defs[CD_URANUSBOSS].chance[1] = 5;
|
alien_defs[CD_URANUSBOSS].chance[1] = 5;
|
||||||
alien_defs[CD_URANUSBOSS].score = 500;
|
|
||||||
alien_defs[CD_URANUSBOSS].collectChance = 100;
|
alien_defs[CD_URANUSBOSS].collectChance = 100;
|
||||||
alien_defs[CD_URANUSBOSS].collectType = P_ANYTHING;
|
alien_defs[CD_URANUSBOSS].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_URANUSBOSS].collectValue = 250;
|
alien_defs[CD_URANUSBOSS].collectValue = 500;
|
||||||
alien_defs[CD_URANUSBOSS].flags = FL_WEAPCO;
|
alien_defs[CD_URANUSBOSS].flags = FL_WEAPCO;
|
||||||
|
|
||||||
// Uranus Boss Wing 1
|
// Uranus Boss Wing 1
|
||||||
|
@ -766,7 +730,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_URANUSBOSSWING1].weaponType[1] = W_DOUBLE_ROCKETS;
|
alien_defs[CD_URANUSBOSSWING1].weaponType[1] = W_DOUBLE_ROCKETS;
|
||||||
alien_defs[CD_URANUSBOSSWING1].chance[0] = 5;
|
alien_defs[CD_URANUSBOSSWING1].chance[0] = 5;
|
||||||
alien_defs[CD_URANUSBOSSWING1].chance[1] = 0;
|
alien_defs[CD_URANUSBOSSWING1].chance[1] = 0;
|
||||||
alien_defs[CD_URANUSBOSSWING1].score = 500;
|
|
||||||
alien_defs[CD_URANUSBOSSWING1].collectChance = 100;
|
alien_defs[CD_URANUSBOSSWING1].collectChance = 100;
|
||||||
alien_defs[CD_URANUSBOSSWING1].collectType = P_ANYTHING;
|
alien_defs[CD_URANUSBOSSWING1].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_URANUSBOSSWING1].collectValue = 250;
|
alien_defs[CD_URANUSBOSSWING1].collectValue = 250;
|
||||||
|
@ -784,7 +747,6 @@ int main(int argc, char **argv)
|
||||||
alien_defs[CD_URANUSBOSSWING2].weaponType[1] = W_DOUBLE_ROCKETS;
|
alien_defs[CD_URANUSBOSSWING2].weaponType[1] = W_DOUBLE_ROCKETS;
|
||||||
alien_defs[CD_URANUSBOSSWING2].chance[0] = 5;
|
alien_defs[CD_URANUSBOSSWING2].chance[0] = 5;
|
||||||
alien_defs[CD_URANUSBOSSWING2].chance[1] = 0;
|
alien_defs[CD_URANUSBOSSWING2].chance[1] = 0;
|
||||||
alien_defs[CD_URANUSBOSSWING2].score = 500;
|
|
||||||
alien_defs[CD_URANUSBOSSWING2].collectChance = 100;
|
alien_defs[CD_URANUSBOSSWING2].collectChance = 100;
|
||||||
alien_defs[CD_URANUSBOSSWING2].collectType = P_ANYTHING;
|
alien_defs[CD_URANUSBOSSWING2].collectType = P_ANYTHING;
|
||||||
alien_defs[CD_URANUSBOSSWING2].collectValue = 250;
|
alien_defs[CD_URANUSBOSSWING2].collectValue = 250;
|
||||||
|
|
|
@ -416,17 +416,17 @@ void alien_setAI(object *alien)
|
||||||
|
|
||||||
void alien_setKlineAttackMethod(object *alien)
|
void alien_setKlineAttackMethod(object *alien)
|
||||||
{
|
{
|
||||||
alien->maxShield -= 500;
|
alien->maxShield -= 750;
|
||||||
if (alien->maxShield == 0)
|
if (alien->maxShield == 0)
|
||||||
alien->flags &= ~FL_CANNOTDIE;
|
alien->flags &= ~FL_CANNOTDIE;
|
||||||
|
|
||||||
if (alien->maxShield == 1000)
|
if (alien->maxShield == 1500)
|
||||||
{
|
{
|
||||||
setRadioMessage(FACE_KLINE, "Very good, Bainfield. Now let's get a little more serious...", 1);
|
setRadioMessage(FACE_KLINE, "Very good, Bainfield. Now let's get a little more serious...", 1);
|
||||||
alien->weaponType[0] = W_SPREADSHOT;
|
alien->weaponType[0] = W_SPREADSHOT;
|
||||||
alien->chance[1] = 40;
|
alien->chance[1] = 40;
|
||||||
}
|
}
|
||||||
else if (alien->maxShield == 500)
|
else if (alien->maxShield == 750)
|
||||||
{
|
{
|
||||||
setRadioMessage(FACE_KLINE, "Your ability to stay alive irritates me!! Try dodging some of these!!", 1);
|
setRadioMessage(FACE_KLINE, "Your ability to stay alive irritates me!! Try dodging some of these!!", 1);
|
||||||
alien->weaponType[0] = W_DIRSHOCKMISSILE;
|
alien->weaponType[0] = W_DIRSHOCKMISSILE;
|
||||||
|
@ -445,7 +445,7 @@ void alien_setKlineAttackMethod(object *alien)
|
||||||
alien->chance[1] = 2;
|
alien->chance[1] = 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
alien->shield = 500;
|
alien->shield = 750;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -202,7 +202,8 @@ void fireBullet(object *attacker, int weaponType)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Reset the weapon reload time. Double it if it is not friendly or a boss or Kline
|
// Reset the weapon reload time. Double it if it is not friendly or
|
||||||
|
// a boss or Kline
|
||||||
attacker->reload[weaponType] = theWeapon->reload[0];
|
attacker->reload[weaponType] = theWeapon->reload[0];
|
||||||
if ((attacker->flags & FL_WEAPCO) && (attacker != &aliens[WC_BOSS]) && (attacker != &aliens[WC_KLINE]) && (theWeapon->id != W_LASER))
|
if ((attacker->flags & FL_WEAPCO) && (attacker != &aliens[WC_BOSS]) && (attacker != &aliens[WC_KLINE]) && (theWeapon->id != W_LASER))
|
||||||
attacker->reload[weaponType] *= 2;
|
attacker->reload[weaponType] *= 2;
|
||||||
|
@ -215,7 +216,7 @@ void fireBullet(object *attacker, int weaponType)
|
||||||
if (player.ammo[0] > 0)
|
if (player.ammo[0] > 0)
|
||||||
{
|
{
|
||||||
player.ammo[0]--;
|
player.ammo[0]--;
|
||||||
if (player.ammo[0] == 0)
|
if (player.ammo[0] <= 0)
|
||||||
{
|
{
|
||||||
weapon[W_PLAYER_WEAPON].ammo[0] = currentGame.minPlasmaOutput;
|
weapon[W_PLAYER_WEAPON].ammo[0] = currentGame.minPlasmaOutput;
|
||||||
weapon[W_PLAYER_WEAPON].damage = currentGame.minPlasmaDamage;
|
weapon[W_PLAYER_WEAPON].damage = currentGame.minPlasmaDamage;
|
||||||
|
@ -302,12 +303,7 @@ static void alien_destroy(object *alien, object *attacker)
|
||||||
{
|
{
|
||||||
if (attacker == &player)
|
if (attacker == &player)
|
||||||
{
|
{
|
||||||
// Once again, stop point leeching
|
|
||||||
if (currentGame.area != MAX_MISSIONS - 1)
|
|
||||||
currentGame.cash += alien->score;
|
|
||||||
currentGame.cashEarned += alien->score;
|
|
||||||
currentGame.totalKills++;
|
currentGame.totalKills++;
|
||||||
updateMissionRequirements(M_COLLECT, P_CASH, alien->score);
|
|
||||||
}
|
}
|
||||||
else if (attacker->classDef == CD_PHOEBE)
|
else if (attacker->classDef == CD_PHOEBE)
|
||||||
{
|
{
|
||||||
|
@ -345,7 +341,7 @@ static void alien_destroy(object *alien, object *attacker)
|
||||||
{
|
{
|
||||||
value = (10 + (rand() % alien->collectValue));
|
value = (10 + (rand() % alien->collectValue));
|
||||||
if (value > alien->collectValue)
|
if (value > alien->collectValue)
|
||||||
value =alien->collectValue;
|
value = alien->collectValue;
|
||||||
addCollectable(alien->x, alien->y, alien->collectType, value, 600);
|
addCollectable(alien->x, alien->y, alien->collectType, value, 600);
|
||||||
alien->collectValue -= value;
|
alien->collectValue -= value;
|
||||||
}
|
}
|
||||||
|
@ -578,7 +574,8 @@ void doBullets()
|
||||||
okayToHit = true;
|
okayToHit = true;
|
||||||
if ((bullet->flags & WF_WEAPCO) && (alien->flags & FL_FRIEND))
|
if ((bullet->flags & WF_WEAPCO) && (alien->flags & FL_FRIEND))
|
||||||
okayToHit = true;
|
okayToHit = true;
|
||||||
if ((bullet->id == WT_ROCKET) || (bullet->id == WT_LASER) || (bullet->id == WT_CHARGER))
|
if ((bullet->id == WT_ROCKET) || (bullet->id == WT_LASER) ||
|
||||||
|
(bullet->id == WT_CHARGER))
|
||||||
okayToHit = true;
|
okayToHit = true;
|
||||||
|
|
||||||
if (bullet->owner == alien->owner)
|
if (bullet->owner == alien->owner)
|
||||||
|
@ -591,7 +588,8 @@ void doBullets()
|
||||||
if (bullet->owner == &player)
|
if (bullet->owner == &player)
|
||||||
{
|
{
|
||||||
currentGame.hits++;
|
currentGame.hits++;
|
||||||
if ((alien->classDef == CD_PHOEBE) || (alien->classDef == CD_URSULA))
|
if ((alien->classDef == CD_PHOEBE) ||
|
||||||
|
(alien->classDef == CD_URSULA))
|
||||||
getMissFireMessage(alien);
|
getMissFireMessage(alien);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -617,7 +615,7 @@ void doBullets()
|
||||||
alien->flags |= FL_LEAVESECTOR;
|
alien->flags |= FL_LEAVESECTOR;
|
||||||
alien->flags &= ~FL_CIRCLES;
|
alien->flags &= ~FL_CIRCLES;
|
||||||
if (currentGame.area == 11)
|
if (currentGame.area == 11)
|
||||||
setRadioMessage(FACE_KLINE, "Seems I underestimated you, Bainfield! We'll meet again!", 1);
|
setRadioMessage(FACE_KLINE, "Seems I underestimated you, Bainfield. We'll meet again!", 1);
|
||||||
else if (currentGame.area == 25)
|
else if (currentGame.area == 25)
|
||||||
setRadioMessage(FACE_SID, "Chris, Kethlan is getting away!", 1);
|
setRadioMessage(FACE_SID, "Chris, Kethlan is getting away!", 1);
|
||||||
}
|
}
|
||||||
|
|
|
@ -61,7 +61,7 @@ void addCollectable(float x, float y, int type, int value, int life)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (type == P_SUPER)
|
if (type == P_SUPER)
|
||||||
value = 1;
|
value = max(value, 1);
|
||||||
|
|
||||||
if (value == 0)
|
if (value == 0)
|
||||||
return; // don't bother!
|
return; // don't bother!
|
||||||
|
@ -224,11 +224,13 @@ void addCollectable(float x, float y, int type, int value, int life)
|
||||||
|
|
||||||
static void explodeMine(collectables *collectable)
|
static void explodeMine(collectables *collectable)
|
||||||
{
|
{
|
||||||
if ((collectable->x >= 0) && (collectable->x <= 800) && (collectable->y >= 0) && (collectable->y <= 600))
|
if ((collectable->x >= 0) && (collectable->x <= screen->w) &&
|
||||||
|
(collectable->y >= 0) && (collectable->y <= screen->h))
|
||||||
playSound(SFX_EXPLOSION, collectable->x);
|
playSound(SFX_EXPLOSION, collectable->x);
|
||||||
|
|
||||||
for (int i = 0 ; i < 10 ; i++)
|
for (int i = 0 ; i < 10 ; i++)
|
||||||
addExplosion(collectable->x + rand() % 25 - rand() % 25, collectable->y + rand() % 25 - rand() % 25, E_BIG_EXPLOSION);
|
addExplosion(collectable->x + rand() % 25 - rand() % 25,
|
||||||
|
collectable->y + rand() % 25 - rand() % 25, E_BIG_EXPLOSION);
|
||||||
|
|
||||||
if (checkPlayerShockDamage(collectable->x, collectable->y))
|
if (checkPlayerShockDamage(collectable->x, collectable->y))
|
||||||
setInfoLine("Warning: Mine damage to shield!!", FONT_RED);
|
setInfoLine("Warning: Mine damage to shield!!", FONT_RED);
|
||||||
|
@ -303,7 +305,10 @@ void doCollectables()
|
||||||
|
|
||||||
if (collectable->active)
|
if (collectable->active)
|
||||||
{
|
{
|
||||||
if ((collectable->x + collectable->image->w > 0) && (collectable->x < 800) && (collectable->y + collectable->image->h > 0) && (collectable->y < 600))
|
if ((collectable->x + collectable->image->w > 0) &&
|
||||||
|
(collectable->x < screen->w) &&
|
||||||
|
(collectable->y + collectable->image->h > 0) &&
|
||||||
|
(collectable->y < screen->h))
|
||||||
blit(collectable->image, (int)collectable->x, (int)collectable->y);
|
blit(collectable->image, (int)collectable->x, (int)collectable->y);
|
||||||
|
|
||||||
collectable->x += engine.ssx + engine.smx;
|
collectable->x += engine.ssx + engine.smx;
|
||||||
|
@ -435,7 +440,8 @@ void doCollectables()
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
updateMissionRequirements(M_COLLECT, collectable->type, collectable->value);
|
updateMissionRequirements(M_COLLECT, collectable->type,
|
||||||
|
collectable->value);
|
||||||
|
|
||||||
collectable->active = false;
|
collectable->active = false;
|
||||||
if (collectable->type != P_MINE)
|
if (collectable->type != P_MINE)
|
||||||
|
@ -460,7 +466,9 @@ void doCollectables()
|
||||||
if (collectable->life < 1)
|
if (collectable->life < 1)
|
||||||
{
|
{
|
||||||
collectable->active = false;
|
collectable->active = false;
|
||||||
if ((collectable->type == P_CARGO) || (collectable->type == P_ESCAPEPOD) || (collectable->type == P_SLAVES))
|
if ((collectable->type == P_CARGO) ||
|
||||||
|
(collectable->type == P_ESCAPEPOD) ||
|
||||||
|
(collectable->type == P_SLAVES))
|
||||||
updateMissionRequirements(M_PROTECT_PICKUP, collectable->type, 1);
|
updateMissionRequirements(M_PROTECT_PICKUP, collectable->type, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -87,6 +87,8 @@ void newGame()
|
||||||
currentGame.maxPlasmaRate = 3;
|
currentGame.maxPlasmaRate = 3;
|
||||||
currentGame.maxPlasmaOutput = 3;
|
currentGame.maxPlasmaOutput = 3;
|
||||||
currentGame.maxPlasmaDamage = 3;
|
currentGame.maxPlasmaDamage = 3;
|
||||||
|
currentGame.maxPlasmaAmmo = 150;
|
||||||
|
currentGame.maxRocketAmmo = 20;
|
||||||
|
|
||||||
currentGame.minPlasmaRateLimit = 3;
|
currentGame.minPlasmaRateLimit = 3;
|
||||||
currentGame.minPlasmaDamageLimit = 3;
|
currentGame.minPlasmaDamageLimit = 3;
|
||||||
|
@ -111,7 +113,7 @@ void newGame()
|
||||||
|
|
||||||
player.shield = player.maxShield;
|
player.shield = player.maxShield;
|
||||||
player.ammo[0] = 0;
|
player.ammo[0] = 0;
|
||||||
player.ammo[1] = 5;
|
player.ammo[1] = currentGame.maxRocketAmmo / 2;
|
||||||
player.weaponType[0] = W_PLAYER_WEAPON;
|
player.weaponType[0] = W_PLAYER_WEAPON;
|
||||||
player.weaponType[1] = W_ROCKETS;
|
player.weaponType[1] = W_ROCKETS;
|
||||||
|
|
||||||
|
@ -194,7 +196,7 @@ int mainGameLoop()
|
||||||
{
|
{
|
||||||
aliens[WC_KLINE].target = &player;
|
aliens[WC_KLINE].target = &player;
|
||||||
if (currentGame.area == 25)
|
if (currentGame.area == 25)
|
||||||
aliens[WC_KLINE].shield = 500;
|
aliens[WC_KLINE].shield = 750;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (aliens[index].classDef == CD_CLOAKFIGHTER)
|
if (aliens[index].classDef == CD_CLOAKFIGHTER)
|
||||||
|
|
|
@ -535,6 +535,17 @@ int galaxyMap()
|
||||||
bool movePlanets = true;
|
bool movePlanets = true;
|
||||||
signed char saveSlot = -1;
|
signed char saveSlot = -1;
|
||||||
|
|
||||||
|
// Remove the Supercharge, if it is there
|
||||||
|
if (currentGame.difficulty > DIFFICULTY_EASY)
|
||||||
|
{
|
||||||
|
weapon[W_PLAYER_WEAPON].reload[0] = max(weapon[W_PLAYER_WEAPON].reload[0],
|
||||||
|
rate2reload[currentGame.maxPlasmaRate]);
|
||||||
|
weapon[W_PLAYER_WEAPON].ammo[0] = min(weapon[W_PLAYER_WEAPON].ammo[0],
|
||||||
|
currentGame.maxPlasmaOutput);
|
||||||
|
weapon[W_PLAYER_WEAPON].damage = min(weapon[W_PLAYER_WEAPON].damage,
|
||||||
|
currentGame.maxPlasmaDamage);
|
||||||
|
}
|
||||||
|
|
||||||
if (currentGame.system > 0)
|
if (currentGame.system > 0)
|
||||||
interceptionChance = (300 / currentGame.system);
|
interceptionChance = (300 / currentGame.system);
|
||||||
|
|
||||||
|
|
|
@ -80,17 +80,6 @@ void exitPlayer()
|
||||||
|
|
||||||
if (player.weaponType[1] == W_LASER)
|
if (player.weaponType[1] == W_LASER)
|
||||||
player.ammo[1] = 0;
|
player.ammo[1] = 0;
|
||||||
|
|
||||||
// Remove the Supercharge, if it is there
|
|
||||||
if (currentGame.difficulty > DIFFICULTY_EASY)
|
|
||||||
{
|
|
||||||
weapon[W_PLAYER_WEAPON].reload[0] = max(weapon[W_PLAYER_WEAPON].reload[0],
|
|
||||||
rate2reload[currentGame.maxPlasmaRate]);
|
|
||||||
weapon[W_PLAYER_WEAPON].ammo[0] = min(weapon[W_PLAYER_WEAPON].ammo[0],
|
|
||||||
currentGame.maxPlasmaOutput);
|
|
||||||
weapon[W_PLAYER_WEAPON].damage = min(weapon[W_PLAYER_WEAPON].damage,
|
|
||||||
currentGame.maxPlasmaDamage);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void doPlayer()
|
void doPlayer()
|
||||||
|
|
39
src/shop.cpp
39
src/shop.cpp
|
@ -72,13 +72,19 @@ static void drawSecondaryWeaponSurface()
|
||||||
|
|
||||||
static void adjustShopPrices()
|
static void adjustShopPrices()
|
||||||
{
|
{
|
||||||
shopItems[SHOP_PLASMA_MAX_OUTPUT].price = (1500 * currentGame.maxPlasmaOutput);
|
shopItems[SHOP_PLASMA_MAX_OUTPUT].price = (1000 *
|
||||||
shopItems[SHOP_PLASMA_MAX_DAMAGE].price = (1500 * currentGame.maxPlasmaDamage);
|
(currentGame.maxPlasmaOutput + 1));
|
||||||
shopItems[SHOP_PLASMA_MAX_RATE].price = (1500 * currentGame.maxPlasmaRate);
|
shopItems[SHOP_PLASMA_MAX_DAMAGE].price = (1000 *
|
||||||
|
(currentGame.maxPlasmaDamage + 1));
|
||||||
|
shopItems[SHOP_PLASMA_MAX_RATE].price = (1000 *
|
||||||
|
(currentGame.maxPlasmaRate + 1));
|
||||||
|
|
||||||
shopItems[SHOP_PLASMA_MIN_OUTPUT].price = (4000 * currentGame.minPlasmaOutput);
|
shopItems[SHOP_PLASMA_MIN_OUTPUT].price = (2000 *
|
||||||
shopItems[SHOP_PLASMA_MIN_DAMAGE].price = (4000 * currentGame.minPlasmaDamage);
|
(currentGame.minPlasmaOutput + 1));
|
||||||
shopItems[SHOP_PLASMA_MIN_RATE].price = (4000 * currentGame.minPlasmaRate);
|
shopItems[SHOP_PLASMA_MIN_DAMAGE].price = (2000 *
|
||||||
|
(currentGame.minPlasmaDamage + 1));
|
||||||
|
shopItems[SHOP_PLASMA_MIN_RATE].price = (2000 *
|
||||||
|
(currentGame.minPlasmaRate + 1));
|
||||||
|
|
||||||
if (currentGame.maxPlasmaOutput <= currentGame.minPlasmaOutput)
|
if (currentGame.maxPlasmaOutput <= currentGame.minPlasmaOutput)
|
||||||
shopItems[SHOP_PLASMA_MIN_OUTPUT].price += shopItems[SHOP_PLASMA_MAX_OUTPUT].price;
|
shopItems[SHOP_PLASMA_MIN_OUTPUT].price += shopItems[SHOP_PLASMA_MAX_OUTPUT].price;
|
||||||
|
@ -87,7 +93,7 @@ static void adjustShopPrices()
|
||||||
if (currentGame.maxPlasmaRate <= currentGame.minPlasmaRate)
|
if (currentGame.maxPlasmaRate <= currentGame.minPlasmaRate)
|
||||||
shopItems[SHOP_PLASMA_MIN_RATE].price += shopItems[SHOP_PLASMA_MAX_RATE].price;
|
shopItems[SHOP_PLASMA_MIN_RATE].price += shopItems[SHOP_PLASMA_MAX_RATE].price;
|
||||||
|
|
||||||
shopItems[SHOP_PLASMA_MAX_AMMO].price = (5 * currentGame.maxPlasmaAmmo);
|
shopItems[SHOP_PLASMA_MAX_AMMO].price = (10 * (currentGame.maxPlasmaAmmo - 75));
|
||||||
shopItems[SHOP_ROCKET_MAX_AMMO].price = (25 * currentGame.maxRocketAmmo);
|
shopItems[SHOP_ROCKET_MAX_AMMO].price = (25 * currentGame.maxRocketAmmo);
|
||||||
|
|
||||||
if (currentGame.maxPlasmaOutput >= currentGame.maxPlasmaOutputLimit)
|
if (currentGame.maxPlasmaOutput >= currentGame.maxPlasmaOutputLimit)
|
||||||
|
@ -310,12 +316,12 @@ void initShop()
|
||||||
"Increases plasma firing rate");
|
"Increases plasma firing rate");
|
||||||
shopItems[SHOP_PLASMA_MAX_RATE].image = 11;
|
shopItems[SHOP_PLASMA_MAX_RATE].image = 11;
|
||||||
|
|
||||||
shopItems[SHOP_PLASMA_AMMO].price = 50;
|
shopItems[SHOP_PLASMA_AMMO].price = 10;
|
||||||
strcpy(shopItems[SHOP_PLASMA_AMMO].name, "10 Plasma cells");
|
strcpy(shopItems[SHOP_PLASMA_AMMO].name, "10 Plasma cells");
|
||||||
strcpy(shopItems[SHOP_PLASMA_AMMO].description, "Plasma ammunition");
|
strcpy(shopItems[SHOP_PLASMA_AMMO].description, "Plasma ammunition");
|
||||||
shopItems[SHOP_PLASMA_AMMO].image = 12;
|
shopItems[SHOP_PLASMA_AMMO].image = 12;
|
||||||
|
|
||||||
shopItems[SHOP_ROCKET_AMMO].price = 50;
|
shopItems[SHOP_ROCKET_AMMO].price = 10;
|
||||||
strcpy(shopItems[SHOP_ROCKET_AMMO].name, "Rocket Ammo");
|
strcpy(shopItems[SHOP_ROCKET_AMMO].name, "Rocket Ammo");
|
||||||
strcpy(shopItems[SHOP_ROCKET_AMMO].description,
|
strcpy(shopItems[SHOP_ROCKET_AMMO].description,
|
||||||
"High velocity dumb fire rocket");
|
"High velocity dumb fire rocket");
|
||||||
|
@ -612,7 +618,7 @@ static void buy(int i)
|
||||||
shopSelectedItem = -3;
|
shopSelectedItem = -3;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
limitCharAdd(¤tGame.maxPlasmaAmmo, 10, 0, 250);
|
currentGame.maxPlasmaAmmo += 25;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SHOP_ROCKET_MAX_AMMO:
|
case SHOP_ROCKET_MAX_AMMO:
|
||||||
|
@ -817,6 +823,8 @@ static void sell(int i)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
currentGame.minPlasmaOutput--;
|
currentGame.minPlasmaOutput--;
|
||||||
|
if (player.ammo[0] <= 0)
|
||||||
|
weapon[W_PLAYER_WEAPON].ammo[0] = currentGame.minPlasmaOutput;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SHOP_PLASMA_MIN_DAMAGE:
|
case SHOP_PLASMA_MIN_DAMAGE:
|
||||||
|
@ -826,6 +834,8 @@ static void sell(int i)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
currentGame.minPlasmaDamage--;
|
currentGame.minPlasmaDamage--;
|
||||||
|
if (player.ammo[0] <= 0)
|
||||||
|
weapon[W_PLAYER_WEAPON].damage = currentGame.minPlasmaDamage;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SHOP_PLASMA_MIN_RATE:
|
case SHOP_PLASMA_MIN_RATE:
|
||||||
|
@ -835,6 +845,8 @@ static void sell(int i)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
currentGame.minPlasmaRate--;
|
currentGame.minPlasmaRate--;
|
||||||
|
if (player.ammo[0] <= 0)
|
||||||
|
weapon[W_PLAYER_WEAPON].reload[0] = rate2reload[currentGame.minPlasmaRate];
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SHOP_PLASMA_AMMO:
|
case SHOP_PLASMA_AMMO:
|
||||||
|
@ -846,7 +858,12 @@ static void sell(int i)
|
||||||
if (player.ammo[0] > 10)
|
if (player.ammo[0] > 10)
|
||||||
player.ammo[0] -= 10;
|
player.ammo[0] -= 10;
|
||||||
else
|
else
|
||||||
|
{
|
||||||
player.ammo[0] = 0;
|
player.ammo[0] = 0;
|
||||||
|
weapon[W_PLAYER_WEAPON].ammo[0] = currentGame.minPlasmaOutput;
|
||||||
|
weapon[W_PLAYER_WEAPON].damage = currentGame.minPlasmaDamage;
|
||||||
|
weapon[W_PLAYER_WEAPON].reload[0] = rate2reload[currentGame.minPlasmaRate];
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SHOP_ROCKET_AMMO:
|
case SHOP_ROCKET_AMMO:
|
||||||
|
@ -864,7 +881,7 @@ static void sell(int i)
|
||||||
shopSelectedItem = -1;
|
shopSelectedItem = -1;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
currentGame.maxPlasmaAmmo -= 10;
|
currentGame.maxPlasmaAmmo -= 25;
|
||||||
|
|
||||||
while (player.ammo[0] > currentGame.maxPlasmaAmmo)
|
while (player.ammo[0] > currentGame.maxPlasmaAmmo)
|
||||||
sell(SHOP_PLASMA_AMMO);
|
sell(SHOP_PLASMA_AMMO);
|
||||||
|
|
|
@ -38,7 +38,6 @@ struct object {
|
||||||
|
|
||||||
signed char speed;
|
signed char speed;
|
||||||
unsigned char damage; // Contact damage for bullets
|
unsigned char damage; // Contact damage for bullets
|
||||||
int score; // How much a kill of this is worth
|
|
||||||
unsigned char ammo[2]; // Ammo for 2nd weapon.
|
unsigned char ammo[2]; // Ammo for 2nd weapon.
|
||||||
|
|
||||||
signed char face; // Either 0 or 1
|
signed char face; // Either 0 or 1
|
||||||
|
@ -59,7 +58,7 @@ struct object {
|
||||||
|
|
||||||
signed char collectChance; // Chance of dropping the object
|
signed char collectChance; // Chance of dropping the object
|
||||||
signed char collectType; // What the object is carrying
|
signed char collectType; // What the object is carrying
|
||||||
unsigned char collectValue; // What it is worth
|
unsigned int collectValue; // What it is worth
|
||||||
|
|
||||||
int flags; // Various flags for an object
|
int flags; // Various flags for an object
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue