Class: PfrpgClasses::Monk

Inherits:
Heroclass show all
Defined in:
lib/pfrpg_classes/heroclass/monk.rb

Instance Attribute Summary

Attributes inherited from Heroclass

#level_for_json

Instance Method Summary collapse

Methods inherited from Heroclass

#as_json, #bab, #bonus_choices_for_level, #bonus_features_for_level, by_name, class_list, class_list_json, #features, fetch, #initialize, #meets_prerequisites?, #prestige, prestige_class_list, prestige_list_json, #pretty_choice_string, #pretty_feature_string, #saves, #spells, #spells_per_day, #starting_wealth_str

Constructor Details

This class inherits a constructor from PfrpgClasses::Heroclass

Instance Method Details

#alignmentObject



27
28
29
# File 'lib/pfrpg_classes/heroclass/monk.rb', line 27

def alignment
  PfrpgUtility::Alignment.any_lawful
end

#bonuses_for_level(level) ⇒ Object



19
20
21
# File 'lib/pfrpg_classes/heroclass/monk.rb', line 19

def bonuses_for_level(level)
  PfrpgTables::Tables::Heroclasses::Monk.level_bonus(level)
end

#create_feature(f) ⇒ Object



23
24
25
# File 'lib/pfrpg_classes/heroclass/monk.rb', line 23

def create_feature(f)
  MonkFeature.new(:ability_name => f)
end

#descriptionObject



39
40
41
# File 'lib/pfrpg_classes/heroclass/monk.rb', line 39

def description
  "Monks excel at overcoming even the most daunting perils, striking where it's least expected, and taking advantage of enemy vulnerabilities. Fleet of foot and skilled in combat, monks can navigate any battlefield with ease, aiding allies wherever they are needed most."
end

#feature_typeObject



61
62
63
# File 'lib/pfrpg_classes/heroclass/monk.rb', line 61

def feature_type
  "MonkFeature"
end

#get_spells_table(level) ⇒ Object



35
36
37
# File 'lib/pfrpg_classes/heroclass/monk.rb', line 35

def get_spells_table(level)
  return PfrpgTables::Tables::Spells::SpellsPerDay.empty
end

#get_unarmed_weapon(monk_level) ⇒ Object



77
78
79
80
81
82
83
84
85
86
87
88
# File 'lib/pfrpg_classes/heroclass/monk.rb', line 77

def get_unarmed_weapon(monk_level)
  r = Weapon.new
  r.name = 'Unarmed Strike'
  r.description = 'Unarmed Strike'
  r.dmg_s = unarmed_dmg('small', monk_level)
  r.dmg_m = unarmed_dmg('medium', monk_level)
  r.critical_range = '20'
  r.critical_dmg = '2x'
  r.weight_class = 'light'
  r.weapon_type = 'natural'
  r
end

#hit_dieObject



7
8
9
# File 'lib/pfrpg_classes/heroclass/monk.rb', line 7

def hit_die
  PfrpgUtility::Dice.new(1,8)
end

#monk_bonus_feats(level) ⇒ Object



73
74
75
# File 'lib/pfrpg_classes/heroclass/monk.rb', line 73

def monk_bonus_feats(level)
  PfrpgTables::Tables::Heroclasses::Monk.monk_bonus_feats(level)
end

#nameObject



3
4
5
# File 'lib/pfrpg_classes/heroclass/monk.rb', line 3

def name
  "Monk"
end

#skillsObject



43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# File 'lib/pfrpg_classes/heroclass/monk.rb', line 43

def skills
  [PfrpgSkills::Skill::Acrobatics.new,
   PfrpgSkills::Skill::Climb.new,
   PfrpgSkills::Skill::Craft.new,
   PfrpgSkills::Skill::EscapeArtist.new,
   PfrpgSkills::Skill::Intimidate.new,
   PfrpgSkills::Skill::Knowledge.new("History"),
   PfrpgSkills::Skill::Knowledge.new("Religion"),
   PfrpgSkills::Skill::Perception.new,
   PfrpgSkills::Skill::Perform.new,
   PfrpgSkills::Skill::Profession.new,
   PfrpgSkills::Skill::Ride.new,
   PfrpgSkills::Skill::SenseMotive.new,
   PfrpgSkills::Skill::Stealth.new,
   PfrpgSkills::Skill::Swim.new,
  ]
end

#skills_per_levelObject



31
32
33
# File 'lib/pfrpg_classes/heroclass/monk.rb', line 31

def skills_per_level
  4
end

#starting_featsObject



65
66
67
# File 'lib/pfrpg_classes/heroclass/monk.rb', line 65

def starting_feats
  ["Light Armor Proficiency", "Simple Weapon Proficiency", "Monk Weapon Proficiency"]
end

#starting_wealthObject



11
12
13
# File 'lib/pfrpg_classes/heroclass/monk.rb', line 11

def starting_wealth
  PfrpgUtility::Dice.new(1,6, multiplier = 10)
end

#starting_wealth_avgObject



15
16
17
# File 'lib/pfrpg_classes/heroclass/monk.rb', line 15

def starting_wealth_avg
  35
end

#suggested_itemsObject



90
91
92
93
94
# File 'lib/pfrpg_classes/heroclass/monk.rb', line 90

def suggested_items
  [
    ['Shuriken (5)']
  ]
end

#unarmed_dmg(size, level) ⇒ Object



69
70
71
# File 'lib/pfrpg_classes/heroclass/monk.rb', line 69

def unarmed_dmg(size, level)
  PfrpgTables::Tables::Heroclasses::Monk.unarmed_strike_damage(size, level)
end