From 2eaa3b94c2eca73ef5a34d65153bcaaabbe106bb Mon Sep 17 00:00:00 2001 From: onpon4 Date: Sat, 28 Feb 2015 09:45:26 -0500 Subject: [PATCH] Completely eliminate the chance of grinding at interceptions. It was previously just ineffective. Now it's impossible. The reason I'm doing this is when you *can* grind (in this case, by constantly getting free plasma and selling it), it kind of feels like an obligation to do so. It's still possible to grind within missions whose progress depends on your pace, which aren't timed and keep generating more enemies until you win. Namely: the missile boat mission, the miner mission, and the third boss. (There might be others.) However, grinding in these situations is quite dangerous and likely to take away the much larger shield bonus at the end, and plus if you mess up when trying to do this you're set back quite a bit, so I think these are sufficiently worthless activities that no one will do them. (I never did.) --- src/aliens.cpp | 7 +++++-- src/collectable.cpp | 20 +++++++++++--------- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/aliens.cpp b/src/aliens.cpp index 588d5f4..6f6c48f 100644 --- a/src/aliens.cpp +++ b/src/aliens.cpp @@ -233,8 +233,11 @@ bool addAlien() randEnemy = CD_SLAVETRANSPORT; } - if ((rand() % 6) == 0) - randEnemy = CD_TRANSPORTSHIP; + if (currentGame.area != MAX_MISSIONS - 1) + { + if ((rand() % 6) == 0) + randEnemy = CD_TRANSPORTSHIP; + } } delete[] alienArray; diff --git a/src/collectable.cpp b/src/collectable.cpp index 3c2ab2d..22e7cb9 100644 --- a/src/collectable.cpp +++ b/src/collectable.cpp @@ -61,18 +61,20 @@ void addCollectable(float x, float y, int type, int value, int life) if (type == P_SUPER) value = 1; - /* - Cash is rare on interceptions. Stops people from point leeching(!) - */ - if ((currentGame.area == MAX_MISSIONS - 1) && (type == P_CASH)) - { - if (rand() % 10 > 0) - return; - } - if (value == 0) return; // don't bother! + /* + No cash, powerups, or ammo on interceptions. Stops point leeching(!) + */ + if ((currentGame.area == MAX_MISSIONS - 1) && + ((type == P_CASH) || (type == P_PLASMA_AMMO) || (type == P_ROCKET) || + (type == P_PLASMA_DAMAGE) || (type == P_PLASMA_SHOT) || + (type == P_PLASMA_RATE) || (type == P_SUPER))) + { + return; + } + // If the player has a charge cannon or a laser cannon, don't give them // rockets. Causes problems otherwise :) if (type == P_ROCKET)