Make damage() use roundavg()
authorMarkus Armbruster <armbru@pond.sub.org>
Tue, 14 Aug 2012 19:51:22 +0000 (21:51 +0200)
committerMarkus Armbruster <armbru@pond.sub.org>
Wed, 8 May 2013 04:55:20 +0000 (06:55 +0200)
commitc53158eee058613accf86135586935bb8eed1820
treee8f498bba49df916e9846c15ad528081054617bd
parent5bf310e6b0d72d24a7fce118cd8aec3197753f2a
Make damage() use roundavg()

Turns damage() into a one-liner.

damage() now uses random() % 32768 in chance() instead of random() %
100 inline, therefore can round differently for the same pseudo-random
number.  Update expected smoke test results accordingly.

Aside: "random() % n" distributes evenly only when n is a power of
two.  100 isn't.  However, because random() yields at least 31 bits,
and 100 is so much smaller than 2^31, the error is vanishingly small.
src/lib/subs/damage.c
tests/smoke/smoke.out