Class: PfrpgClasses::Sorcerer

Inherits:
Heroclass show all
Defined in:
lib/pfrpg_classes/heroclass/sorcerer.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/sorcerer.rb', line 27

def alignment
  PfrpgUtility::Alignment.any
end

#bonuses_for_level(level) ⇒ Object



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

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

#create_feature(f) ⇒ Object



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

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

#descriptionObject



43
44
45
# File 'lib/pfrpg_classes/heroclass/sorcerer.rb', line 43

def description
  "Sorcerers excel at casting a selection of favored spells frequently, making them powerful battle mages. As they become familiar with a specific and ever-widening set of spells, sorcerers often discover new and versatile ways of making use of magics other spellcasters might overlook. Their bloodlines also grant them additional abilities, assuring that no two sorcerers are ever quite alike."
end

#feature_typeObject



60
61
62
# File 'lib/pfrpg_classes/heroclass/sorcerer.rb', line 60

def feature_type
  "SorcererFeature"
end

#get_spells_table(level) ⇒ Object



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

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

#hit_dieObject



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

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

#nameObject



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

def name
  "Sorcerer"
end

#skillsObject



47
48
49
50
51
52
53
54
55
56
57
58
# File 'lib/pfrpg_classes/heroclass/sorcerer.rb', line 47

def skills
  [PfrpgSkills::Skill::Appraise.new,
   PfrpgSkills::Skill::Bluff.new,
   PfrpgSkills::Skill::Craft.new,
   PfrpgSkills::Skill::Fly.new,
   PfrpgSkills::Skill::Intimidate.new,
   PfrpgSkills::Skill::Knowledge.new('Arcana'),
   PfrpgSkills::Skill::Profession.new,
   PfrpgSkills::Skill::Spellcraft.new,
   PfrpgSkills::Skill::UseMagicDevice.new
  ]
end

#skills_per_levelObject



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

def skills_per_level
  2
end

#spells_bonus_attrObject



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

def spells_bonus_attr
  "cha"
end

#spells_known(level) ⇒ Object



64
65
66
# File 'lib/pfrpg_classes/heroclass/sorcerer.rb', line 64

def spells_known(level)
  return PfrpgTables::Tables::Spells.sorcerer_spells_known[level]
end

#starting_featsObject



68
69
70
71
72
# File 'lib/pfrpg_classes/heroclass/sorcerer.rb', line 68

def starting_feats
  [
    "Simple Weapon Proficiency"
  ]
end

#starting_wealthObject



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

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

#starting_wealth_avgObject



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

def starting_wealth_avg
  70
end

#suggested_itemsObject



74
75
76
77
78
79
# File 'lib/pfrpg_classes/heroclass/sorcerer.rb', line 74

def suggested_items
  [
    ['Quarterstaff'],
    ['Dagger']
  ]
end