In addition, an edge cases around rules was changed:
units can now go below zero attack. With the different mechanics (attack buff per turn cycle, attack buff until end of turn, etc.) it was too hard to keep track of all the different numbers. We simplified the logic here and made it so that units can possess negative attack
Also, resolveEffect is by far and away one of the largest files, so I took the effort to break the 'effect requirement checking' logic out into a separate file.
Lastly, this PR adds typescript checks to the lint checking, as I realized we never added it in explicitly.
This PR establishes a number of helpers / refactorings (e.g. having an exhaustive enum check) to add in the 25+ new effects established by https://github.com/lijim/monks-and-mages/pull/453
Each effect resolution comes with unit tests.
In addition, an edge cases around rules was changed:
Also, resolveEffect is by far and away one of the largest files, so I took the effort to break the 'effect requirement checking' logic out into a separate file.
Lastly, this PR adds typescript checks to the lint checking, as I realized we never added it in explicitly.