From 722e8b283edd99cfd13360c0807dd1857d0331b3 Mon Sep 17 00:00:00 2001 From: silverwizard Date: Sat, 15 Jun 2024 13:01:13 -0400 Subject: [PATCH] Initial Helicopter Death State --- .gitignore | 1 + CardGen.pl | 16 ++-- helideath.yml | 48 ++++++++++ shopping.yml | 258 -------------------------------------------------- 4 files changed, 57 insertions(+), 266 deletions(-) create mode 100644 .gitignore create mode 100644 helideath.yml delete mode 100644 shopping.yml diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e33609d --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +*.png diff --git a/CardGen.pl b/CardGen.pl index 1d81e08..64fdf02 100755 --- a/CardGen.pl +++ b/CardGen.pl @@ -1,11 +1,13 @@ #!/usr/bin/env perl use YAML::XS qw(LoadFile); use Image::Magick; -use Text::Wrap; +use Text::Wrapper; my $cards; +$wrapper = Text::Wrapper->new(columns=>15,body_start => ''); + if($ARGV[0]){ $cards = LoadFile($ARGV[0]); }else{ @@ -20,7 +22,7 @@ if($cards->{Deck}->{Background}){ if($cards->{Deck}->{Font}){ $mainfont = $cards->{Deck}->{Font}; }else{ - $mainfont = 'Courier'; + $mainfont = '/usr/X11R6/lib/X11/fonts/TTF/DejaVuSansMono.ttf'; } if($cards->{Deck}->{TextColour}){ $txtcolour = $cards->{Deck}->{TextColour}; @@ -32,6 +34,8 @@ if($cards->{Deck}->{BorderColour}){ }else{ $bordercolour = 'red'; } +my $timage = Image::Magick->new(size=>'600x825'); + foreach my $card (keys %{$cards->{Deck}->{Cards}}){ my $image = Image::Magick->new(size=>'600x825'); @@ -43,12 +47,10 @@ foreach my $card (keys %{$cards->{Deck}->{Cards}}){ $image->Composite(compose => 'over', image => $surface, x => 0, y => 0); my $text; $image->Set(font => $mainfont, pointsize => 25); - $Text::Wrap::columns = 30; foreach my $line (@{$cards->{Deck}->{Cards}->{$card}}){ - $text = $text . wrap('', '', $line) . "\n"; + $text = $text . $wrapper->wrap($line) . "\n"; } - $Text::Wrap::columns = 15; - $image->Annotate(text => wrap('', '', $card), x => 50, y => 100, font => $mainfont, fill => $txtcolour, pointsize => 60); + $image->Annotate(text => $wrapper->wrap($card), x => 50, y => 100, font => $mainfont, fill => $txtcolour, pointsize => 60); my $newlines = () = $text =~ /(\n)/g; $image->Annotate(text => $text, x => 50, y => (750-(25*$newlines)), font => $mainfont, fill => $txtcolour, pointsize => 25); my $backgroundfilename = "Backgrounds/" . $card . ".png"; @@ -59,5 +61,3 @@ foreach my $card (keys %{$cards->{Deck}->{Cards}}){ } $image->Write($card . '.png'); } - - diff --git a/helideath.yml b/helideath.yml new file mode 100644 index 0000000..f8cd750 --- /dev/null +++ b/helideath.yml @@ -0,0 +1,48 @@ +Deck: + Background: darkgrey + TextColour: black + BorderColour: red + Cards: + #Characters: + Mohawk McHiggins: + - 10 bafflement + - If you gain 3+ bafflement on your turn, give all other heros a clue + #Prank Cards: + Certainly Not: + - Gain 3 Prestige + - Discard 1 Prank + Jump In Front Of Train: + - Gain 1 Prestige + #Friends: + Hawk: + - Gain 3 Clues + - Gain 1 Bafflement + #Gadgets: + #Dangerous Doings: + Unmotivated Catapult: + - Active Player Discards A Sheep + - Or Gains 2 Bafflement + Fallings Rocks: + - Everyone gains 1 bafflement per Friend in their hand + Disembodied Gun: + - Gain 1 Bafflement + - Draw Another Dangerous Doing + Pineapple Tongue: + - Gain 1 Defeat Token + Sad Cheese: + - Discard a Friend or gain a Defeat Token + Falling Tree: + Derailed Train: + Parachuted Bomb: + Swarm Of Pi Rats: + Pie to the Face: + Water Balloon Assault: + Unexpected Trapdoor: + + #Vllians: + Pineapple Stabster: + Ice&Scream: + Mousey Twirlstache: + Dr Lamb Hader: + Mrs U Hader: + diff --git a/shopping.yml b/shopping.yml deleted file mode 100644 index 5ddfe1c..0000000 --- a/shopping.yml +++ /dev/null @@ -1,258 +0,0 @@ -Deck: - Background: white - Font: Courier - TextColour: black - BorderColour: green - Cards: - Leg Boost: - - Grants +1d6 when jumping - - Cyber - Finger Blade: - - Adds +1d4 damage - - Cyber - Subcutaenous Mic: - - Allows speaking while sneaking - - Cyber - Cyberarm: - - Adds +1d8 damage - - Lifting tests are 1d10 - - Cyber - Cheap Pistol: - - 1d8 to hit - - Gun - Brass Knuckles: - - +1d4 damage - - Melee Weapon - Light Pistol: - - 1d10 to hit - - 1d8 damage - - Gun - Heavy Pistol: - - 1d8 to hit - - 1d10 damage - - Gun - Rifle: - - Opponents get +1d4 in Melee - - 1d10 to hit - - 1d10 damage - - Gun - Sniper Rifle: - - Opponents get +1d10 to hit in Melee - - 1d12 to hit - - 1d12 damage - - Double damage when you have surprise - - Gun - Heavy Jacket: - - Subtract 1d6 from incoming damage - - Armour - Riot Armour: - - Subtracts 1d8 from incoming damage - - Adds 1d4 to opponent's melee attacks - - Armour - Adrenal Boost: - - Subtracts 1d4 from incoming melee attacks - - Cyber, Armour - Subcutaneous Plating: - - Subtacts 1d4 from incoming damage - - Cyber, Armour - Cyberdeck: - - 1d8 to all hacking rolls - - Computer - Curare: - - 1 use - - Each dose gives a -1 to all actions - - Die if you have a -6 - - Injection - - Drug - Candy Wrapper: - - 1d10 to stealth while hacking - - Program - Commlink: - - Computer - Common Handgun: - - Gun - Hammer: - - 1d10 damage while hacking - - Program - Silence: - - Difficulty 6 to shutdown an alarm - - Program - Ammo: - - Ammo - Nice Suit: - - +1d4 to social rolls with people who care about dress - - Destroyed if you take 3 or more damage - - Armour - Nice Meal: - - Can be eaten in place of one paste - - Can be spent for its value in paste - - +1d4 to any social roll when you spend this (even if you are getting its value) - - Food - Targeting Eyes: - - Allows rolling +1d6 to ranged combat rolls - - Cyber - Cybereyes: - - Removes difficulty pentalties for distance - - Allows you to be sent visual digital data - - Allows video recording to a computer - - Cyber - Auditory Booster: - - 1d8 to auditory notice - - Allows sound recording to a computer - - Cyber - Dataport: - - Allows VR access to equipment - - Cyber - Internal Memory: - - Internal storage to replace a computer - - Accessible only with a dataport - - Cyber - First Aid Kit: - - Allows bandaging rolls - Stim Pack: - - Heals 1d4 HP, which are removed after two hours - - Losing these HP can drop you below 0 - Medical Bench: - - Requires an hour of work - - Recovers 1d4 HP (specialities can apply to this roll) - Drug Injector: - - Allows drug injection without an action - - Cyber - Targetting Coprocessor: - - Steps up the die to hit for guns - - Cyber - Soy Processor: - - Flavours and shapes food to mimic real meals - Food Additives: - - Flavours soy - - 5 uses - Marijuana: - - Smoked or used in soy processor - - One use - - Use to ignore pain for a scene, or get +1d8 to social rolls with anyone you share this with - - Subtract 1d4 from anything that requires attention - - Drug - PCP: - - One use - - Smoked - - Gain +1d4 on attacks - - Incoming attacks subtract 1d4 - - Drug - Tobacco: - - One Use - - Smoked - - Use to add +1 to any test which requires concentration - - Drug - Heroin: - - One Use - - Injected - - Ignore pain, -4 from anything that requires concentration - - Drug - Cocaine: - - One use - - Snorted - - Get an extra initiative card - - Drug - Injection Rounds: - - Loads a drug, and applies its effect as well as damage - - Ammo - Dark Clothing: - - 1d8 to Stealth checks - - Armour - Stealth Suit: - - 1d10 to Stealth checks - - Reactive camoflague - - Armour - Optical Camoflague: - - 1d12 to Stealth checks - - Armour - Goggles: - - 1d8 to visual notice rolls - Binoculours: - - 1d10 to distance notice rolls - Parabolic Mic: - - 1d10 to distance notice rolls - Keycard Copier: - - Allows copying a keycard (swipe or tap) with a sleight of hand roll - - Can store unlimited cards - Gas Mask: - - Ignore gas in an area - Rebreather: - - Ignore gas in an area - - Go without air for up to an hour - Sword: - - 1d8 damage - - Melee - Reflex Boost: - - Get an extra initiative token - - Cyber - Heat Sync: - - Allows overclocking - - Get an additional initiave token while hacking - - Computer Upgrade - Set of Screwdrivers: - - Gives +1d6 to craft rolls involving a computer - Mechanics Tools: - - 1d8 to vehicle repair rolls - Hydraulic Jack: - - +1d4 to vehicle repair rolls - Flashy Car: - - 1d8 to social rolls with those impressed by status - - 1d10 in chases - - 9 HP, 3 to hit - - Vehicle - Armoured Transport: - - Carries up to 15 people - - 20 HP, 2 to hit - - Vehicle - Quadcopter: - - Can mount any gun - - 5 HP, 5 to hit - - -1d4 to stealth - - Drone - Robobug: - - 1d12 to notice - - +1d6 to stealth - - 1 HP, 1 to hit in melee, 5 to hit ranged - - Drone - Roadster Cycle: - - 6 HP, 5 to hit - - Vehicle - Simple Cruiser: - - 1d8 Handling - - 6 HP, 4 to hit - - Vehicle - Road Hog: - - 1d8 Handling - - One gun mount - - Vehicle - - Common Cards: - Heavy Chain: - - 1d8 damage - - Melee - Leathers: - - Subtracts one from melee damage - Cobbled Together First Aid Kit: - - Subtracts 1 from medical tests when using it - - Allows bandaging rolls - Tattoo: - - Adds 1d4 to social rolls with affiliated gangs - - Subtracts 1d4 from social rolls with unaffilated gangs - - Roll 1d8 intimidation against barrens rats affiliated with smaller gangs or no gang - - Cyber - Knife: - - 1d4 damage - - 1d10 to hit - - Melee - Moltov: - - One use - - 1d8 damage - - 2 damage until the person hit by it stops drops and rolls - - Thrown Weapon - Electrical Parts: - - Crafting for Computers - Mechanics Equipment: - - Crafting for drones and vehicles - Weapon Parts: - - Crafting for weapon parts