Compare commits
	
		
			2 Commits
		
	
	
		
			4debce853b
			...
			68cc57cc27
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 68cc57cc27 | |||
| 624109beda | 
							
								
								
									
										19
									
								
								2022/11-setlist/data.csv
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								2022/11-setlist/data.csv
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
name,volume,traits,audience,effect,blurb
 | 
			
		||||
Opener,mp,,2,+3 {a} if the first song in your set,
 | 
			
		||||
Intermission,ppp,,0,,
 | 
			
		||||
Love Ballad,f,l,4,,
 | 
			
		||||
Rage Against The Man,fff,a,4,,
 | 
			
		||||
Everything Is Awesome,mf,j,4,,
 | 
			
		||||
Tears in the Rain,p,s,4,,
 | 
			
		||||
Breakup Song,ff,la,3,+3 {a} if another band played a {l} song,
 | 
			
		||||
New Relationship,mf,lj,+4 {a} if the first {l} song in any band's setlist,
 | 
			
		||||
Brokenhearted,p,ls,0,,
 | 
			
		||||
Mixed Messages,f,aj,0,,
 | 
			
		||||
Betrayed,f,as,2,+3 {a} if immediately following a {j} song in your setlist,
 | 
			
		||||
Happy To Be Sad,f,js,0,+2 {a} for each {s} song already in your setlist,
 | 
			
		||||
Indignant Love,f,laj,0,,
 | 
			
		||||
Unrequited Love,f,las,0,,
 | 
			
		||||
Butterflies In The Stomach,f,ljs,0,,
 | 
			
		||||
Rampage,f,ajs,0,,
 | 
			
		||||
Everything At Once,f,lajs,0,,
 | 
			
		||||
Wildcard,f,lajs,0,,
 | 
			
		||||
		
		
			
  | 
@@ -1,56 +1,74 @@
 | 
			
		||||
- name: Opener
 | 
			
		||||
  volume: p
 | 
			
		||||
  effect: +5 {a} if the first song in your set.
 | 
			
		||||
  traits:
 | 
			
		||||
- name: "Entr'acte"
 | 
			
		||||
  volume: p
 | 
			
		||||
  effect: +3 {a} if not the first or last song in your set.
 | 
			
		||||
  traits:
 | 
			
		||||
- name: Reprise
 | 
			
		||||
  volume: f
 | 
			
		||||
  effect: +3 {a} if in the second half in your set.
 | 
			
		||||
  traits:
 | 
			
		||||
- name: Breakup Song
 | 
			
		||||
  volume: ff
 | 
			
		||||
  effect: +3 {a}. +2 additional {a} if any band has played a <b>Love Song</b>
 | 
			
		||||
  blurb: You may hate yourself for loving it, but you oughta know that these songs pack a punch.
 | 
			
		||||
  traits:
 | 
			
		||||
- name: Love Song
 | 
			
		||||
  volume: mp
 | 
			
		||||
  effect: +2 {a}. +3 additional {a} if Love Song is the loudest song in your set.
 | 
			
		||||
  blurb: I forgot how this goes, but it's all coming back to me now.
 | 
			
		||||
  traits:
 | 
			
		||||
- name: Power Ballad
 | 
			
		||||
  volume: ff
 | 
			
		||||
  effect: +3 {a}
 | 
			
		||||
  traits:
 | 
			
		||||
- name: Call and Response
 | 
			
		||||
  volume: f
 | 
			
		||||
  effect: +2 {a} for each song before this one.
 | 
			
		||||
  traits:
 | 
			
		||||
- name: Heavy Hitter
 | 
			
		||||
  volume: fff
 | 
			
		||||
  effect: +4 {a}.
 | 
			
		||||
  traits:
 | 
			
		||||
- name: Protest Song
 | 
			
		||||
  volume: ff
 | 
			
		||||
  effect: +1 {a}. +3 {a} if the loudest song this round.
 | 
			
		||||
  traits:
 | 
			
		||||
- name: Signature Song
 | 
			
		||||
  volume: f
 | 
			
		||||
  effect: +5 {a}.
 | 
			
		||||
  traits:
 | 
			
		||||
- name: Buildup
 | 
			
		||||
  volume: pp
 | 
			
		||||
  effect: Add +2 {a} to the next song in your set.
 | 
			
		||||
  traits:
 | 
			
		||||
- name: Breakdown
 | 
			
		||||
  volume: mf
 | 
			
		||||
  effect: +2 {a} for each quieter song played this round.
 | 
			
		||||
  traits:
 | 
			
		||||
- name: Sleazy
 | 
			
		||||
  volume: mf
 | 
			
		||||
  effect: +4 {a} if not the loudest song this round.
 | 
			
		||||
  traits:
 | 
			
		||||
- name: Showstopper
 | 
			
		||||
  volume: fff
 | 
			
		||||
  effect: +5 {a} if the last song in your set.
 | 
			
		||||
  traits:
 | 
			
		||||
- name: Remix
 | 
			
		||||
  volume: f
 | 
			
		||||
  effect: Repeat the effect of the song immediately before this in your set.
 | 
			
		||||
  traits:
 | 
			
		||||
- name: Acoustic Cover
 | 
			
		||||
  volume: mp
 | 
			
		||||
  effect: Copy the effect of a song in another band's setlist.
 | 
			
		||||
  traits:
 | 
			
		||||
- name: Heavy Cover
 | 
			
		||||
  volume: f
 | 
			
		||||
  effect: Copy the effect of a song in another band's setlist.
 | 
			
		||||
  traits:
 | 
			
		||||
- name: Encore
 | 
			
		||||
  volume: mf
 | 
			
		||||
  effect: +5 {a} if the last song in your set.
 | 
			
		||||
  traits:
 | 
			
		||||
@@ -29,9 +29,9 @@ VOLUMES = {
 | 
			
		||||
  "fff" => 8,
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
data = Squib.yaml file: 'data.yml'
 | 
			
		||||
data = Squib.csv file: 'data.csv'
 | 
			
		||||
 | 
			
		||||
Squib::Deck.new(cards: 18) do
 | 
			
		||||
Squib::Deck.new(cards: data.nrows) do
 | 
			
		||||
  use_layout file: 'economy.yml'
 | 
			
		||||
  use_layout file: 'layout.yml'
 | 
			
		||||
  background color: 'white'
 | 
			
		||||
@@ -40,13 +40,23 @@ Squib::Deck.new(cards: 18) do
 | 
			
		||||
 | 
			
		||||
  text layout: :title, str: data.name
 | 
			
		||||
 | 
			
		||||
  svg layout: :art, data: MUSIC
 | 
			
		||||
  # svg layout: :art, data: Icons::MUSIC
 | 
			
		||||
  text layout: :art, align: :center, valign: :middle, str: data.traits do |embed|
 | 
			
		||||
    embed.svg key: 'l', width: 128, height: 128, data: Icons::LOVE
 | 
			
		||||
    embed.svg key: 'a', width: 128, height: 128, data: Icons::ANGER
 | 
			
		||||
    embed.svg key: 'j', width: 128, height: 128, data: Icons::JOY
 | 
			
		||||
    embed.svg key: 's', width: 128, height: 128, data: Icons::SAD
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  rect layout: :description
 | 
			
		||||
  text layout: :description, str: data.effect.zip(data.blurb).map { |e, b|
 | 
			
		||||
    "#{e}#{b ? "\n<i>#{b}</i>" : nil}"
 | 
			
		||||
  } do |embed|
 | 
			
		||||
    embed.svg key: '{a}', width: 32, height: 32, data: AUDIENCE
 | 
			
		||||
    embed.svg key: '{a}', width: 32, height: 32, data: Icons::AUDIENCE
 | 
			
		||||
    embed.svg key: '{l}', width: 32, height: 32, data: Icons::LOVE
 | 
			
		||||
    embed.svg key: '{a}', width: 32, height: 32, data: Icons::ANGER
 | 
			
		||||
    embed.svg key: '{j}', width: 32, height: 32, data: Icons::JOY
 | 
			
		||||
    embed.svg key: '{s}', width: 32, height: 32, data: Icons::SAD
 | 
			
		||||
  end
 | 
			
		||||
  text layout: :type, markup: true, str: data.volume.map { |v| "<b><i>#{v} (#{VOLUMES[v]})</i></b>" }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user