From c5601e12f639e6e2f7e298419422b81f9fc54eea Mon Sep 17 00:00:00 2001 From: realtradam Date: Sun, 5 Feb 2023 14:39:30 -0500 Subject: add class abilities --- cards/cards/monk_abilities.rb | 66 +++++++ cards/cards/paladin_abilities.rb | 160 +++------------ cards/cards/ranger_abilities.rb | 66 +++++++ cards/cards/rogue_abilities.rb | 66 +++++++ cards/output/monk_abilities.html | 381 ++++++++++++++++++++++++++++++++++++ cards/output/paladin_abilities.html | 287 ++------------------------- cards/output/ranger_abilities.html | 363 ++++++++++++++++++++++++++++++++++ cards/output/rogue_abilities.html | 378 +++++++++++++++++++++++++++++++++++ 8 files changed, 1358 insertions(+), 409 deletions(-) create mode 100644 cards/cards/monk_abilities.rb create mode 100644 cards/cards/ranger_abilities.rb create mode 100644 cards/cards/rogue_abilities.rb create mode 100644 cards/output/monk_abilities.html create mode 100644 cards/output/ranger_abilities.html create mode 100644 cards/output/rogue_abilities.html diff --git a/cards/cards/monk_abilities.rb b/cards/cards/monk_abilities.rb new file mode 100644 index 0000000..e6ecad4 --- /dev/null +++ b/cards/cards/monk_abilities.rb @@ -0,0 +1,66 @@ +require_relative 'card.rb' + +monk_abilities = {} + +class_colors = { + rogue: 'Maroon', + ranger: 'ForestGreen', + astrologist: 'DodgerBlue', + monk: 'OrangeRed', + paladin: 'GoldenRod' +} + +monk_abilities[:pressure_point] = Card.new( + title: "Pressure Point", + actions: [ + Card::Action.new( + symbol: [:diamonds, :reactive], + content: 'After a successful attack: deactivate one of the target\'s abilities of your choosing.', + ), + ], + color: class_colors[:monk], + #flavour: '"A famous commander\'s signature thing."', + type: 'Monk Ability', +) + +monk_abilities[:flurry_of_strikes] = Card.new( + title: "Flurry of Strikes", + actions: [ + Card::Action.new( + symbol: [:even, :tap], + content: 'Make an attack with your weapon. If that attack is successful: recharge this.', + ), + ], + color: class_colors[:monk], + #flavour: '"A famous commander\'s signature thing."', + type: 'Monk Ability', +) + +monk_abilities[:quick_footwork] = Card.new( + title: "Quick Footwork", + actions: [ + Card::Action.new( + symbol: [:joker, :reactive], + content: 'Ignore the incoming damage of a parry.', + ), + ], + color: class_colors[:monk], + #flavour: '"A famous commander\'s signature thing."', + type: 'Monk Ability', +) + +monk_abilities[:inner_peace] = Card.new( + title: "Inner Peace", + actions: [ + Card::Action.new( + symbol: [:tap, :reactive], + content: 'If you havent recieved damage during your turn yet, reroll a dice of your choice.', + ), + ], + color: class_colors[:monk], + #flavour: '"A famous commander\'s signature thing."', + type: 'Monk Ability', +) + +Card.output('monk_abilities', monk_abilities); + diff --git a/cards/cards/paladin_abilities.rb b/cards/cards/paladin_abilities.rb index 6dcdbfd..16755cc 100644 --- a/cards/cards/paladin_abilities.rb +++ b/cards/cards/paladin_abilities.rb @@ -9,7 +9,7 @@ class_colors = { monk: 'OrangeRed', paladin: 'GoldenRod' } - +=begin paladin_abilities[:duel] = Card.new( title: "Duel", actions: [ @@ -22,7 +22,7 @@ paladin_abilities[:duel] = Card.new( flavour: '"A famous commander\'s signature thing."', type: 'Paladin Ability', ) - +=end paladin_abilities[:leading_charge] = Card.new( title: "Leading Charge", actions: [ @@ -36,161 +36,45 @@ paladin_abilities[:leading_charge] = Card.new( type: 'Paladin Ability', ) -paladin_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', -) - -paladin_abilities[:surgical_strike] = Card.new( - title: "Surgical Strike", +paladin_abilities[:taunt] = Card.new( + title: "Taunt", 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.', + symbol: [:tap, :reactive], + content: 'When an attack is declared: redirect the attack toward yourself.', ), ], - color: class_colors[:rogue], - #flavour: '"Missed me"', - type: 'Rogue Ability', -) - -paladin_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', -) - -paladin_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', -) -paladin_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', + color: class_colors[:paladin], + #flavour: '"A famous commander\'s signature thing."', + type: 'Paladin Ability', ) -paladin_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', -) -paladin_abilities[:healing_salve_recipe] = Card.new( - title: "Healing Salve Recipe", +paladin_abilities[:strategic_planning] = Card.new( + title: "Strategic Planning", actions: [ Card::Action.new( - symbol: [:diamonds, :hearts], - content: '(each suit) Healberry Herb, Cloth.', + symbol: [:tap, :joker], + content: 'Swap 2 fate cards in your ally\'s hands of their choice.', ), ], - color: class_colors[:ranger], - flavour: '"*Don\'t* eat the berries"', - type: 'Ranger Recipe', + color: class_colors[:paladin], + #flavour: '"A famous commander\'s signature thing."', + type: 'Paladin Ability', ) - -paladin_abilities[:recast] = Card.new( - title: "Recast", +paladin_abilities[:inspiring_speech] = Card.new( + title: "Inspiring Speech", 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', -) -paladin_abilities[:focused_cast] = Card.new( - title: "Focused Cast", - actions: [ - Card::Action.new( - symbol: [:tap], - content: 'Upgrade the blood dice for one spell you cast.', + content: 'Recharge two ally\'s abilities.', ), ], - color: class_colors[:astrologist], - #flavour: '"Missed me"', - type: 'Astrologist Ability', -) - -paladin_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', -) - -paladin_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', + color: class_colors[:paladin], + #flavour: '"A famous commander\'s signature thing."', + type: 'Paladin Ability', ) -paladin_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', -) Card.output('paladin_abilities', paladin_abilities); diff --git a/cards/cards/ranger_abilities.rb b/cards/cards/ranger_abilities.rb new file mode 100644 index 0000000..f721bdf --- /dev/null +++ b/cards/cards/ranger_abilities.rb @@ -0,0 +1,66 @@ +require_relative 'card.rb' + +ranger_abilities = {} + +class_colors = { + rogue: 'Maroon', + ranger: 'ForestGreen', + astrologist: 'DodgerBlue', + monk: 'OrangeRed', + paladin: 'GoldenRod' +} + +ranger_abilities[:hunters_mark] = Card.new( + title: "Hunter's Mark", + actions: [ + Card::Action.new( + symbol: [:lesser], + content: 'Mark a target you can see. Weapon attacks agaisnt a marked target get an advantage for each mark. Marked targets remain revealed for the duration of the mark. Marks last 30 minutes.', + ), + ], + color: class_colors[:ranger], + #flavour: '"A famous commander\'s signature thing."', + type: 'Ranger Ability', +) + +ranger_abilities[:quick_shot] = Card.new( + title: "Quick Shot", + actions: [ + Card::Action.new( + symbol: [:spades], + content: 'Recharge a ranged weapon you have equipped.', + ), + ], + color: class_colors[:ranger], + #flavour: '"A famous commander\'s signature thing."', + type: 'Ranger Ability', +) + +ranger_abilities[:flexible_shooter] = Card.new( + title: "Flexible Shooter", + actions: [ + Card::Action.new( + symbol: [:joker, :reactive], + content: 'When you have a ranged weapon equipped that is unable to parry and given the opportunity to parry: deal damage with that weapon.', + ), + ], + color: class_colors[:ranger], + #flavour: '"Missed me"', + type: 'Ranger Ability', +) + +ranger_abilities[:pack_rat] = Card.new( + title: "Pack Rat", + actions: [ + Card::Action.new( + #symbol: [:joker, :reactive], + content: 'Bags you have equipped can hold 2 additional slots. You can choose and divide these slots among the pockets of the bag as you see fit.', + ), + ], + color: class_colors[:ranger], + #flavour: '"Missed me"', + type: 'Ranger Ability', +) + +Card.output('ranger_abilities', ranger_abilities); + diff --git a/cards/cards/rogue_abilities.rb b/cards/cards/rogue_abilities.rb new file mode 100644 index 0000000..1b32211 --- /dev/null +++ b/cards/cards/rogue_abilities.rb @@ -0,0 +1,66 @@ +require_relative 'card.rb' + +rogue_abilities = {} + +class_colors = { + rogue: 'Maroon', + ranger: 'ForestGreen', + astrologist: 'DodgerBlue', + monk: 'OrangeRed', + paladin: 'GoldenRod' +} + +rogue_abilities[:weak_point] = Card.new( + title: "Weak Point", + actions: [ + Card::Action.new( + symbol: [:joker, :reactive], + content: 'After rolling a successful attack: deal extra damage equal to your weapon damage if at least one die rolled is the max possible number that can be rolled.', + ), + ], + color: class_colors[:rogue], + #flavour: '"A famous commander\'s signature thing."', + type: 'Rogue Ability', +) + +rogue_abilities[:interruption] = Card.new( + title: "Interruption", + actions: [ + Card::Action.new( + symbol: [:clubs, :reactive], + content: 'Cancel the effect an ability that is being attempted to be activated.', + ), + ], + color: class_colors[:rogue], + #flavour: '"A famous commander\'s signature thing."', + type: 'Rogue Ability', +) + +rogue_abilities[:lucky_sense] = Card.new( + title: "Lucky Sense", + actions: [ + Card::Action.new( + symbol: [:tap], + content: 'Peek the top card of your fate deck.', + ), + ], + color: class_colors[:rogue], + #flavour: '"A famous commander\'s signature thing."', + type: 'Rogue Ability', +) + +rogue_abilities[:quick_attack] = Card.new( + title: "Quick Attack", + actions: [ + Card::Action.new( + symbol: [:greater, :tap], + content: 'Recharge all equipped light weapons.', + ), + ], + color: class_colors[:rogue], + #flavour: '"A famous commander\'s signature thing."', + type: 'Rogue Ability', +) + +Card.output('rogue_abilities', rogue_abilities); + diff --git a/cards/output/monk_abilities.html b/cards/output/monk_abilities.html new file mode 100644 index 0000000..ccfbe39 --- /dev/null +++ b/cards/output/monk_abilities.html @@ -0,0 +1,381 @@ + + + + + + +
+
+
+
+

+ Pressure Point +

+
+
+
+
+
+ + 📣 + + + ♦️ + +
+
+

After a successful attack: deactivate one of the target’s abilities of your choosing.

+
+
+
+
+
+ Monk Ability +
+
+
+
+
+
+

+ Flurry of Strikes +

+
+
+
+
+
+ + ↪️ + + + ⬜ + +
+
+

Make an attack with your weapon. If that attack is successful: recharge this.

+
+
+
+
+
+ Monk Ability +
+
+
+
+
+
+

+ Quick Footwork +

+
+
+
+
+
+ + 📣 + + + 🃏 + +
+
+

Ignore the incoming damage of a parry.

+
+
+
+
+
+ Monk Ability +
+
+
+
+
+
+

+ Inner Peace +

+
+
+
+
+
+ + ↪️ + + + 📣 + +
+
+

If you havent recieved damage during your turn yet, reroll a dice of your choice.

+
+
+
+
+
+ Monk Ability +
+
+
+
+ + + diff --git a/cards/output/paladin_abilities.html b/cards/output/paladin_abilities.html index 2506e5c..d0bf33d 100644 --- a/cards/output/paladin_abilities.html +++ b/cards/output/paladin_abilities.html @@ -251,41 +251,6 @@ Download
-
-
-
-

- Duel -

-
-
-
-
-
- - ↪️ - - - ⬜ - -
-
-

Pick a target. You and that target enter a duel where you and the target may not attack anyone other then each other. You cannot use this while in a duel.

-
-
-
-
-
-
-

“A famous commander’s signature thing.”

-
-
-
-
- Paladin Ability -
-
-
@@ -318,11 +283,11 @@
-
+

- Duck and Weave + Taunt

@@ -332,32 +297,26 @@ ↪️ - - ♦️ + + 📣
-

Ignore up to the card played worth of damage from a reposte.

+

When an attack is declared: redirect the attack toward yourself.

-
-
-
-

“Missed me”

-
-
- Rogue Ability + Paladin Ability
-
+

- Surgical Strike + Strategic Planning

@@ -367,156 +326,26 @@ ↪️ - - ♠️ + + 🃏
-

(less then 5) Replace a weapon’s damage with the value of the card played. Only affects the current attack.

+

Swap 2 fate cards in your ally’s hands of their choice.

- Rogue Ability -
- - -
-
-
-

- Down the Alleys -

-
-
-
-
-
- - ♦️ - -
-
-

(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.

-
-
-
-
-
- Rogue Ability -
-
-
-
-
-
-

- Spot -

-
-
-
-
-
- - ♥️ - -
-
-

(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.

-
-
-
-
-
- Ranger Ability -
-
-
-
-
-
-

- Flexible Shooter -

-
-
-
-

You can deal reposte damage with any ranged weapon.

-
-
-
- Ranger Ability -
-
-
-
-
-
-

- Scouting Ahead -

-
-
-
-
-
- - ♦️ - -
-
-

(even) When travelling outside of a settlement, before the next encounter: reveal 2 encounters and pick 1. Discard the other.

-
-
-
-
-
- Ranger Ability -
-
-
-
-
-
-

- Healing Salve Recipe -

-
-
-
-
-
- - ♦️ - - - ♥️ - -
-
-

(each suit) Healberry Herb, Cloth.

-
-
-
-
-
-
-

Don’t eat the berries”

-
-
-
-
- Ranger Recipe + Paladin Ability
-
+

- Recast + Inspiring Speech

@@ -531,97 +360,13 @@
-

(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.

-
-
-
-
-
- Astrologist Ability -
- - -
-
-
-

- Focused Cast -

-
-
-
-
-
- - ↪️ - -
-
-

Upgrade the blood dice for one spell you cast.

-
-
-
-
-
- Astrologist Ability -
-
-
-
-
-
-
- 1 🩸 -
-

- Change of Fate -

-
-
-
-
-
- - 🩸 - -
-
-

Swap 1 card with a willing player.

+

Recharge two ally’s abilities.

- Astrologist Ability -
-
-
-
-
-
-
- 1 🩸 -
-

- Palm Reading -

-
-
-
-
-
- - 🩸 - -
-
-

Discard a willing players hand and replace it with new cards drawn.

-
-
-
-
-
- Astrologist Ability + Paladin Ability
diff --git a/cards/output/ranger_abilities.html b/cards/output/ranger_abilities.html new file mode 100644 index 0000000..a7482d9 --- /dev/null +++ b/cards/output/ranger_abilities.html @@ -0,0 +1,363 @@ + + + + + + +
+
+
+
+

+ Hunter's Mark +

+
+
+
+
+
+ + ➖ + +
+
+

Mark a target you can see. Weapon attacks agaisnt a marked target get an advantage for each mark. Marked targets remain revealed for the duration of the mark. Marks last 30 minutes.

+
+
+
+
+
+ Ranger Ability +
+
+
+
+
+
+

+ Quick Shot +

+
+
+
+
+
+ + ♠️ + +
+
+

Recharge a ranged weapon you have equipped.

+
+
+
+
+
+ Ranger Ability +
+
+
+
+
+
+

+ Flexible Shooter +

+
+
+
+
+
+ + 📣 + + + 🃏 + +
+
+

When you have a ranged weapon equipped that is unable to parry and given the opportunity to parry: deal damage with that weapon.

+
+
+
+
+
+ Ranger Ability +
+
+
+
+
+
+

+ Pack Rat +

+
+
+
+

Bags you have equipped can hold 2 additional slots. You can choose and divide these slots among the pockets of the bag as you see fit.

+
+
+
+ Ranger Ability +
+
+
+
+ + + diff --git a/cards/output/rogue_abilities.html b/cards/output/rogue_abilities.html new file mode 100644 index 0000000..f1631c1 --- /dev/null +++ b/cards/output/rogue_abilities.html @@ -0,0 +1,378 @@ + + + + + + +
+
+
+
+

+ Weak Point +

+
+
+
+
+
+ + 📣 + + + 🃏 + +
+
+

After rolling a successful attack: deal extra damage equal to your weapon damage if at least one die rolled is the max possible number that can be rolled.

+
+
+
+
+
+ Rogue Ability +
+
+
+
+
+
+

+ Interruption +

+
+
+
+
+
+ + 📣 + + + ♣️ + +
+
+

Cancel the effect an ability that is being attempted to be activated.

+
+
+
+
+
+ Rogue Ability +
+
+
+
+
+
+

+ Lucky Sense +

+
+
+
+
+
+ + ↪️ + +
+
+

Peek the top card of your fate deck.

+
+
+
+
+
+ Rogue Ability +
+
+
+
+
+
+

+ Quick Attack +

+
+
+
+
+
+ + ↪️ + + + ➕ + +
+
+

Recharge all equipped light weapons.

+
+
+
+
+
+ Rogue Ability +
+
+
+
+ + + -- cgit v1.2.3