Myslim si, že
return max(1, damage - ((armor / 100) * per_armor))
je víc fér, než check damage > armor. Tímhle nastavíš to, že vždy dá hráč alespoň 1 dmg, tvým způsobem by hráč mohl dát i damage v intervalu <0, 1).
Proč by to bylo nefér. Hráč A má armor 1000, per armor má 100 %.
- Hráč B ho attackuje s damage 1000. Hráč A dostane 0 damage.
- Hráč B ho attackuje s damage 1000.5. Hráč A dostane 0.5 damage.
- Hráč B ho attackuje s damage 999. Hráč A dostane 1 damage.
Takže by slabší hráč mohl dávat víc damage než silnější. V mém případě by ve všech případech dostal hráč A 1 damage. Není to taky úplně fér, ale slabší hráč nedává pak víc damage než silnější.
// Asi je to to stejné, co postl mxco, moje akorát nezaokrouhluje