Browse Source

move damage formula for guardian firebolt to GuardianTryFireAt so each firebolt damage is randomized

pull/5146/merge
DakkJaniels 3 years ago committed by Anders Jenbo
parent
commit
fa56ae31ea
  1. 9
      Source/missiles.cpp

9
Source/missiles.cpp

@ -658,8 +658,12 @@ bool GuardianTryFireAt(Missile &missile, Point target)
if (monster.hitPoints >> 6 <= 0)
return false;
Player &player = Players[missile._misource];
int dmg = GenerateRnd(10) + (player._pLevel / 2) + 1;
dmg = ScaleSpellEffect(dmg, missile._mispllvl);
Direction dir = GetDirection(position, target);
AddMissile(position, target, dir, MissileID::Firebolt, TARGET_MONSTERS, missile._misource, missile._midam, missile.sourcePlayer()->GetSpellLevel(SPL_GUARDIAN), &missile);
AddMissile(position, target, dir, MissileID::Firebolt, TARGET_MONSTERS, missile._misource, dmg, missile.sourcePlayer()->GetSpellLevel(SPL_GUARDIAN), &missile);
SetMissDir(missile, 2);
missile.var2 = 3;
@ -2074,9 +2078,6 @@ void AddGuardian(Missile &missile, AddMissileParameter &parameter)
{
Player &player = Players[missile._misource];
int dmg = GenerateRnd(10) + (player._pLevel / 2) + 1;
missile._midam = ScaleSpellEffect(dmg, missile._mispllvl);
std::optional<Point> spawnPosition = FindClosestValidPosition(
[start = missile.position.start](Point target) {
if (!InDungeonBounds(target)) {

Loading…
Cancel
Save