Like an idiot I decided to check the code, after a few hours of fighting the urge to hit the desk with my head (No offense to Ant, checking code without knowing its "roots" is a pain) I have found some conspicuous things:
1. That certainly looks like error:
Code: Select all
function int getCost()
{
//Initial cost
if (SelectedMonsterIndex < 0)
return ManaCosts[0] * (1 + (0.02 * SummonMastery)) * (1 + (0.25 * ReapingEnergy));
return (ManaCosts[SelectedMonsterIndex] * (1 + (0.02 * SummonMastery))) * (1 + (0.1 * ReapingEnergy)); //This part should run after we selected a monster, and it'll deduct the appropriate adren cost
}
// // (...)
//Now check for mana cost
while(ManaCosts[i] * (1 + (0.02 * SummonMastery)) * (1 + (0.25 * ReapingEnergy)) > Instigator.Controller.Adrenaline)
{
i--;
if (i <= 0)
break;
}
2.
Code: Select all
//Allow the monster to inherit the soul's strength
SoulClass = InvSoul.SoulClasses[SelectedMonsterIndex];
3. From the other side, I have no idea what's going on here:
Code: Select all
for (i = 0; i < Inv.SummonedMonsters.length; i++)
if (Inv.SummonedMonsters[i] == None || Inv.SummonedMonsters[i].Health <= 0)
Inv.SummonedMonsters.Remove(i--, 1);
Code: Select all
for (i = 0; i < RequiredScoringValues.length && i+1 < AbilityLevel; i++)
{
if (InvSoul.SoulClasses[MonsterIndex].default.ScoringValue < RequiredScoringValues[i])
{
i--;
break;
}
}
[/color]