summaryrefslogtreecommitdiffhomepage
path: root/cards/class_abilities.rb
blob: 117005bc70c0543d918cb1be0fb3057ff843ea9d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
load 'card.rb'

class_abilities = {}

class_colors = {
  rogue: 'Maroon',
  ranger: 'ForestGreen', 
  astrologist: 'DodgerBlue',
  monk: 'OrangeRed'
}

class_abilities[:quick_attack] = Card.new(
  title: "Quick Attack",
  actions: [
    Card::Action.new(
      symbol: :spades,
      content: '(odd) **Refresh** a **light** weapon.',
    ),
  ],
  color: class_colors[:rogue],
  flavour: '"Stabby stabby stab"',
  type: 'Rogue Ability',
)
class_abilities[:duck_and_weave] = Card.new(
  title: "Duck and Weave",
  actions: [
    Card::Action.new(
      symbol: [:tap, :diamonds],
      content: ' Ignore up to the card played worth of damage from a **reposte**.',
    ),
  ],
  color: class_colors[:rogue],
  flavour: '"Missed me"',
  type: 'Rogue Ability',
)

class_abilities[:surgical_strike] = Card.new(
  title: "Surgical Strike",
  actions: [
    Card::Action.new(
      symbol: [:tap, :spades],
      content: '(less then 5) Replace a weapon\'s damage with the value of the card played. Only affects the current attack.',
    ),
  ],
  color: class_colors[:rogue],
  #flavour: '"Missed me"',
  type: 'Rogue Ability',
)

class_abilities[:down_they_alleys] = Card.new(
  title: "Down the Alleys",
  actions: [
    Card::Action.new(
      symbol: [:diamonds],
      content: '(odd) When travelling inside a settlement, after an encounter has been revealed: you may choose to either discard the encounter and draw another one or skip the encounter.',
    ),
  ],
  color: class_colors[:rogue],
  #flavour: '"Missed me"',
  type: 'Rogue Ability',
)

class_abilities[:spot] = Card.new(
  title: "Spot",
  actions: [
    Card::Action.new(
      symbol: [:hearts],
      content: '(face) Mark a target. Choose up to one dice to reroll on each attack agaisnt this target. You can only have one target marked at a time. Lasts until 3 rerolls or the end of combat.',
    ),
  ],
  color: class_colors[:ranger], 
  #flavour: '"Missed me"',
  type: 'Ranger Ability',
)
class_abilities[:flexible_shooter] = Card.new(
  title: "Flexible Shooter",
  actions: [
    Card::Action.new(
      #symbol: [:hearts],
      content: 'You can deal reposte damage with any ranged weapon.',
    ),
  ],
  color: class_colors[:ranger], 
  #flavour: '"Missed me"',
  type: 'Ranger Ability',
)

class_abilities[:scouting_ahead] = Card.new(
  title: "Scouting Ahead",
  actions: [
    Card::Action.new(
      symbol: [:diamonds],
      content: '(even) When travelling outside of a settlement, before the next encounter: reveal 2 encounters and pick 1. Discard the other.',
    ),
  ],
  color: class_colors[:ranger], 
  #flavour: '"Missed me"',
  type: 'Ranger Ability',
)

class_abilities[:healing_salve_recipe] = Card.new(
  title: "Healing Salve Recipe",
  actions: [
    Card::Action.new(
      symbol: [:diamonds, :hearts],
      content: '(each suit) Healberry Herb, Cloth.',
    ),
  ],
  color: class_colors[:ranger], 
  flavour: '"*Don\'t* eat the berries"',
  type: 'Ranger Recipe',
)

class_abilities[:recast] = Card.new(
  title: "Recast",
  actions: [
    Card::Action.new(
      symbol: [:tap, :hearts],
      content: '(less then or equal to your max blood roll) Replace the blood roll with the value of the card played and reroll any other associated dice with a spell you cast.',
    ),
  ],
  color: class_colors[:astrologist],
  #flavour: '"Missed me"',
  type: 'Astrologist Ability',
)
class_abilities[:focused_cast] = Card.new(
  title: "Focused Cast",
  actions: [
    Card::Action.new(
      symbol: [:tap],
      content: 'Upgrade the blood dice for one spell you cast.',
    ),
  ],
  color: class_colors[:astrologist],
  #flavour: '"Missed me"',
  type: 'Astrologist Ability',
)

class_abilities[:focused_cast] = Card.new(
  title: "Focused Cast",
  actions: [
    Card::Action.new(
      symbol: [:tap],
      content: 'Upgrade the blood dice for one spell you cast.',
    ),
  ],
  color: class_colors[:astrologist],
  #flavour: '"Missed me"',
  type: 'Astrologist Ability',
)

class_abilities[:change_of_fate] = Card.new(
  title: "Change of Fate",
  blood: 1,
  actions: [
    Card::Action.new(
      symbol: [:blood],
      content: 'Swap 1 card with a willing player.',
    ),
  ],
  color: class_colors[:astrologist],
  #flavour: '"Missed me"',
  type: 'Astrologist Ability',
)

class_abilities[:palm_reading] = Card.new(
  title: "Palm Reading",
  blood: 1,
  actions: [
    Card::Action.new(
      symbol: [:blood],
      content: 'Discard a willing players hand and replace it with new cards drawn.',
    ),
  ],
  color: class_colors[:astrologist],
  #flavour: '"Missed me"',
  type: 'Astrologist Ability',
)

File.write('class_abilities.html', Card.build(class_abilities.values))