mirror of
https://github.com/vcmi/vcmi.git
synced 2025-06-29 00:41:38 +02:00
* fixed crash on clicking on the map frame
* battle settings will be stored * fixed calculating battle casualties * fixed crash when clicking on enemy stack without moving mouse when we receive action * fixed issue when splitting stack to the hero with only one creatures
This commit is contained in:
@ -2493,18 +2493,14 @@ ui32 BattleInfo::calculateDmg(const CStack* attacker, const CStack* defender, co
|
||||
return range.first;
|
||||
}
|
||||
|
||||
void BattleInfo::calculateCasualties( std::set<std::pair<ui32,si32> > *casualties ) const
|
||||
void BattleInfo::calculateCasualties( std::map<ui32,si32> *casualties ) const
|
||||
{
|
||||
for(unsigned int i=0; i<stacks.size();i++)//setting casualties
|
||||
{
|
||||
if(!stacks[i]->alive())
|
||||
{
|
||||
casualties[!stacks[i]->attackerOwned].insert(std::pair<ui32,si32>(stacks[i]->creature->idNumber,stacks[i]->baseAmount));
|
||||
}
|
||||
else if(stacks[i]->amount != stacks[i]->baseAmount)
|
||||
{
|
||||
casualties[!stacks[i]->attackerOwned].insert(std::pair<ui32,si32>(stacks[i]->creature->idNumber,stacks[i]->baseAmount - stacks[i]->amount));
|
||||
}
|
||||
const CStack * const st = stacks[i];
|
||||
si32 killed = (st->alive() ? st->baseAmount - st->amount : st->baseAmount);
|
||||
amax(killed, 0);
|
||||
casualties[!st->attackerOwned][st->creature->idNumber] += killed;
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user