Class: PfrpgReaders::Filters::WeaponTrainingMod
- Inherits:
-
Object
- Object
- PfrpgReaders::Filters::WeaponTrainingMod
- Defined in:
- lib/pfrpg_readers/filters/weapon_training_mod.rb
Instance Attribute Summary collapse
-
#character ⇒ Object
readonly
Returns the value of attribute character.
-
#feature ⇒ Object
readonly
Returns the value of attribute feature.
Instance Method Summary collapse
- #filter(attack) ⇒ Object
-
#initialize(character, feature) ⇒ WeaponTrainingMod
constructor
A new instance of WeaponTrainingMod.
- #modify(attack, val) ⇒ Object
Constructor Details
#initialize(character, feature) ⇒ WeaponTrainingMod
Returns a new instance of WeaponTrainingMod.
5 6 7 8 |
# File 'lib/pfrpg_readers/filters/weapon_training_mod.rb', line 5 def initialize(character, feature) @character = character @feature = feature end |
Instance Attribute Details
#character ⇒ Object (readonly)
Returns the value of attribute character.
4 5 6 |
# File 'lib/pfrpg_readers/filters/weapon_training_mod.rb', line 4 def character @character end |
#feature ⇒ Object (readonly)
Returns the value of attribute feature.
4 5 6 |
# File 'lib/pfrpg_readers/filters/weapon_training_mod.rb', line 4 def feature @feature end |
Instance Method Details
#filter(attack) ⇒ Object
10 11 12 13 14 |
# File 'lib/pfrpg_readers/filters/weapon_training_mod.rb', line 10 def filter(attack) trainer = Cheesewhiz.new(character) trained = trainer.trained_value(attack.weapon, feature) modify(attack, trained) end |
#modify(attack, val) ⇒ Object
16 17 18 19 |
# File 'lib/pfrpg_readers/filters/weapon_training_mod.rb', line 16 def modify(attack, val) attack.other_bonus += val attack.damage.add_static(val) end |