Damage Calculator

The same calculator with some little fixes. Also implemented the suggestions.
There are a lot of `getDefender().getAbility()` here. How about just get them at the beginning