diff options
author | David Gay <david@davidgay.org> | 2021-07-08 10:17:32 -0400 |
---|---|---|
committer | David Gay <david@davidgay.org> | 2021-07-08 10:18:11 -0400 |
commit | 4ccb179056c990df5f60e574781d5ed57191c263 (patch) | |
tree | b3bdf70ae96b08c656634e8102b2a09a2d41a79f /app/models | |
parent | 5f76daf2e8ad440bc40483d2b4309a0a78c944b4 (diff) |
Change how beastslay stances work
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/character.rb | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/app/models/character.rb b/app/models/character.rb index 4237d50..f6ddb92 100644 --- a/app/models/character.rb +++ b/app/models/character.rb @@ -396,7 +396,7 @@ class Character < ApplicationRecord end def beastslay_stance_modifier - (beastslay_level / 4).ceil + (beastslay_level / 8).ceil end def resistance(damage_type) @@ -412,8 +412,8 @@ class Character < ApplicationRecord res += resistance("energy") end - res -= beastslay_stance_modifier if elusive? && !%w[physical energy].include?(damage_type) - res += beastslay_stance_modifier if protective? && !%w[physical energy].include?(damage_type) + res += beastslay_stance_modifier if centered? && !%w[physical energy].include?(damage_type) + res += beastslay_stance_modifier * 2 if protective? && !%w[physical energy].include?(damage_type) res end @@ -432,19 +432,19 @@ class Character < ApplicationRecord def accuracy(with_combat_style: false) base = beastslay_stat_modifier + total_stat_change("accuracy") if with_combat_style && self.precise? + base += beastslay_stance_modifier * 2 + elsif with_combat_style && self.balanced? base += beastslay_stance_modifier - elsif with_combat_style && self.brutal? - base -= beastslay_stance_modifier end base end def power(with_combat_style: false) base = beastslay_stat_modifier + total_stat_change("power") - if with_combat_style && self.precise? - base -= beastslay_stance_modifier - elsif with_combat_style && self.brutal? + if with_combat_style && self.balanced? base += beastslay_stance_modifier + elsif with_combat_style && self.brutal? + base += beastslay_stance_modifier * 2 end base end @@ -452,9 +452,9 @@ class Character < ApplicationRecord def evasion(with_combat_style: false) base = beastslay_stat_modifier + total_stat_change("evasion") if with_combat_style && self.elusive? + base += beastslay_stance_modifier * 2 + elsif with_combat_style && self.centered? base += beastslay_stance_modifier - elsif with_combat_style && self.protective? - base -= beastslay_stance_modifier end base end |