[Change] Tweaked faction gain.

This commit is contained in:
Allanis 2014-03-07 20:38:48 +00:00
parent 747dd070b7
commit 88f339845c
2 changed files with 15 additions and 4 deletions

View File

@ -156,6 +156,7 @@ static void faction_sanitizePlayer(Faction* faction) {
void faction_modPlayer(int f, double mod) { void faction_modPlayer(int f, double mod) {
int i; int i;
Faction* faction, *ally, *enemy; Faction* faction, *ally, *enemy;
double m;
if(!faction_isFaction(f)) { if(!faction_isFaction(f)) {
WARN("%d is an invalid faction.", f); WARN("%d is an invalid faction.", f);
@ -172,7 +173,12 @@ void faction_modPlayer(int f, double mod) {
for(i = 0; i < faction->nallies; i++) { for(i = 0; i < faction->nallies; i++) {
ally = &faction_stack[faction->allies[i]]; ally = &faction_stack[faction->allies[i]];
ally->player += RNGF() * (mod*3/4); /* Enemies are made faster. */
m = RNGF();
if(mod > 0.)
m *= 3./4.;
ally->player += m;
faction_sanitizePlayer(ally); faction_sanitizePlayer(ally);
} }
@ -180,7 +186,12 @@ void faction_modPlayer(int f, double mod) {
for(i = 0; i < faction->nenemies; i++) { for(i = 0; i < faction->nenemies; i++) {
enemy = &faction_stack[faction->enemies[i]]; enemy = &faction_stack[faction->enemies[i]];
enemy->player -= RNGF() * mod; /* Enemies are made faster. */ /* Enemies are made faster. */
m = RNGF();
if(mod < 0.)
m *= 3./4.;
enemy->player -= m;
faction_sanitizePlayer(enemy); faction_sanitizePlayer(enemy);
} }
} }

View File

@ -458,8 +458,8 @@ void pilot_hit(Pilot* p, const Solid* w, const unsigned int shooter,
/* Adjust the combat rating based on pilot mass and ditto faction. */ /* Adjust the combat rating based on pilot mass and ditto faction. */
pshooter = pilot_get(shooter); pshooter = pilot_get(shooter);
if(pshooter->faction == FACTION_PLAYER) { if(pshooter->faction == FACTION_PLAYER) {
mod = pow(p->ship->mass, 1./3.); mod = sqrt(p->ship->mass) / 5;
player_crating += 2*mod; player_crating += 2*mod; /* Crating chanes faster. */
faction_modPlayer(p->faction, -mod); faction_modPlayer(p->faction, -mod);
} }
} }