forked from github/server
fix damage calculation, again
scale_number was messing with the hp
This commit is contained in:
parent
19db01af67
commit
35f562a53f
2 changed files with 4 additions and 1 deletions
|
@ -119,8 +119,9 @@ int volcano_damage(unit* u, const char* dice)
|
|||
}
|
||||
}
|
||||
}
|
||||
total = u->hp - total;
|
||||
scale_number(u, u->number - dead);
|
||||
u->hp -= total;
|
||||
u->hp = total;
|
||||
return dead;
|
||||
}
|
||||
|
||||
|
|
|
@ -47,6 +47,8 @@ static void test_volcano_damage(CuTest* tc) {
|
|||
u = test_create_unit(test_create_faction(), test_create_plain(0, 0));
|
||||
scale_number(u, 100);
|
||||
u->hp = u->number * 20;
|
||||
CuAssertIntEquals(tc, 0, volcano_damage(u, "0"));
|
||||
CuAssertIntEquals(tc, u->number * 20, u->hp);
|
||||
CuAssertIntEquals(tc, 0, volcano_damage(u, "10"));
|
||||
CuAssertIntEquals(tc, u->number * 10, u->hp);
|
||||
CuAssertIntEquals(tc, 0, volcano_damage(u, "d9"));
|
||||
|
|
Loading…
Reference in a new issue