more cards
510
CardList.json
|
|
@ -69,17 +69,17 @@
|
|||
"id": "003",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "CompositeGesture",
|
||||
"name": "ResidualDividend",
|
||||
"type": "Unit",
|
||||
"cost": 1,
|
||||
"image": "https://docs.brut.systems/judah/entropy/003.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "CompositeGesture",
|
||||
"name": "ResidualDividend",
|
||||
"type": "Unit",
|
||||
"cost": 1,
|
||||
"isToken": false,
|
||||
"isToken": true,
|
||||
"Lane": "🟥 Red",
|
||||
"Entropy": 1,
|
||||
"Force": 1,
|
||||
|
|
@ -91,14 +91,58 @@
|
|||
"id": "004",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "BareLapse",
|
||||
"name": "ConcaveCartilage",
|
||||
"type": "Unit",
|
||||
"cost": 2,
|
||||
"cost": 1,
|
||||
"image": "https://docs.brut.systems/judah/entropy/004.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "BareLapse",
|
||||
"name": "ConcaveCartilage",
|
||||
"type": "Unit",
|
||||
"cost": 1,
|
||||
"isToken": true,
|
||||
"Lane": "🟦 Blue",
|
||||
"Entropy": 1,
|
||||
"Force": 1,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"005": {
|
||||
"id": "005",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "BareAperture",
|
||||
"type": "Unit",
|
||||
"cost": 1,
|
||||
"image": "https://docs.brut.systems/judah/entropy/005.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "BareAperture",
|
||||
"type": "Unit",
|
||||
"cost": 1,
|
||||
"isToken": false,
|
||||
"Lane": "🟥 Red",
|
||||
"Entropy": 1,
|
||||
"Force": 1,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"006": {
|
||||
"id": "006",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "ConvergentGradient",
|
||||
"type": "Unit",
|
||||
"cost": 2,
|
||||
"image": "https://docs.brut.systems/judah/entropy/006.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "ConvergentGradient",
|
||||
"type": "Unit",
|
||||
"cost": 2,
|
||||
"isToken": false,
|
||||
|
|
@ -109,18 +153,18 @@
|
|||
"playtest": true
|
||||
}
|
||||
},
|
||||
"005": {
|
||||
"id": "005",
|
||||
"007": {
|
||||
"id": "007",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "ExcessCompact",
|
||||
"name": "CivicTendon",
|
||||
"type": "Unit",
|
||||
"cost": 3,
|
||||
"image": "https://docs.brut.systems/judah/entropy/005.png",
|
||||
"image": "https://docs.brut.systems/judah/entropy/007.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "ExcessCompact",
|
||||
"name": "CivicTendon",
|
||||
"type": "Unit",
|
||||
"cost": 3,
|
||||
"isToken": false,
|
||||
|
|
@ -131,18 +175,18 @@
|
|||
"playtest": true
|
||||
}
|
||||
},
|
||||
"006": {
|
||||
"id": "006",
|
||||
"008": {
|
||||
"id": "008",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "ErrantTendon",
|
||||
"name": "WarmOffset",
|
||||
"type": "Unit",
|
||||
"cost": 4,
|
||||
"image": "https://docs.brut.systems/judah/entropy/006.png",
|
||||
"image": "https://docs.brut.systems/judah/entropy/008.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "ErrantTendon",
|
||||
"name": "WarmOffset",
|
||||
"type": "Unit",
|
||||
"cost": 4,
|
||||
"isToken": false,
|
||||
|
|
@ -153,24 +197,442 @@
|
|||
"playtest": true
|
||||
}
|
||||
},
|
||||
"007": {
|
||||
"id": "007",
|
||||
"009": {
|
||||
"id": "009",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "BluntSurplus",
|
||||
"name": "PartialCartilage",
|
||||
"type": "Unit",
|
||||
"cost": 10,
|
||||
"image": "https://docs.brut.systems/judah/entropy/007.png",
|
||||
"cost": 5,
|
||||
"image": "https://docs.brut.systems/judah/entropy/009.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "BluntSurplus",
|
||||
"name": "PartialCartilage",
|
||||
"type": "Unit",
|
||||
"cost": 5,
|
||||
"isToken": false,
|
||||
"Lane": "🟥 Red",
|
||||
"Entropy": 5,
|
||||
"Force": 5,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"010": {
|
||||
"id": "010",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "DullSubstrate",
|
||||
"type": "Unit",
|
||||
"cost": 5,
|
||||
"image": "https://docs.brut.systems/judah/entropy/010.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "DullSubstrate",
|
||||
"type": "Unit",
|
||||
"cost": 5,
|
||||
"isToken": false,
|
||||
"Lane": "🟥 Red",
|
||||
"Entropy": 5,
|
||||
"Force": 3,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"011": {
|
||||
"id": "011",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "WarmGesture",
|
||||
"type": "Unit",
|
||||
"cost": 5,
|
||||
"image": "https://docs.brut.systems/judah/entropy/011.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "WarmGesture",
|
||||
"type": "Unit",
|
||||
"cost": 5,
|
||||
"isToken": false,
|
||||
"Lane": "🟥 Red",
|
||||
"Entropy": 5,
|
||||
"Force": 3,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"012": {
|
||||
"id": "012",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "BareConviction",
|
||||
"type": "Unit",
|
||||
"cost": 3,
|
||||
"image": "https://docs.brut.systems/judah/entropy/012.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "BareConviction",
|
||||
"type": "Unit",
|
||||
"cost": 3,
|
||||
"isToken": false,
|
||||
"Lane": "🟥 Red",
|
||||
"Entropy": 3,
|
||||
"Force": 2,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"013": {
|
||||
"id": "013",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "PolarVolume",
|
||||
"type": "Unit",
|
||||
"cost": 3,
|
||||
"image": "https://docs.brut.systems/judah/entropy/013.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "PolarVolume",
|
||||
"type": "Unit",
|
||||
"cost": 3,
|
||||
"isToken": false,
|
||||
"Lane": "🟥 Red",
|
||||
"Entropy": 3,
|
||||
"Force": 1,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"014": {
|
||||
"id": "014",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "DullSurplus",
|
||||
"type": "Unit",
|
||||
"cost": 5,
|
||||
"image": "https://docs.brut.systems/judah/entropy/014.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "DullSurplus",
|
||||
"type": "Unit",
|
||||
"cost": 5,
|
||||
"isToken": false,
|
||||
"Lane": "🟥 Red",
|
||||
"Entropy": 5,
|
||||
"Force": 0,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"015": {
|
||||
"id": "015",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "PolarAxis",
|
||||
"type": "Unit",
|
||||
"cost": 4,
|
||||
"image": "https://docs.brut.systems/judah/entropy/015.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "PolarAxis",
|
||||
"type": "Unit",
|
||||
"cost": 4,
|
||||
"isToken": false,
|
||||
"Lane": "🟦 Blue",
|
||||
"Entropy": 4,
|
||||
"Force": 0,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"016": {
|
||||
"id": "016",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "WarmRapport",
|
||||
"type": "Unit",
|
||||
"cost": 2,
|
||||
"image": "https://docs.brut.systems/judah/entropy/016.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "WarmRapport",
|
||||
"type": "Unit",
|
||||
"cost": 2,
|
||||
"isToken": false,
|
||||
"Lane": "🟦 Blue",
|
||||
"Entropy": 2,
|
||||
"Force": 2,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"017": {
|
||||
"id": "017",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "RagingAxis",
|
||||
"type": "Unit",
|
||||
"cost": 2,
|
||||
"image": "https://docs.brut.systems/judah/entropy/017.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "RagingAxis",
|
||||
"type": "Unit",
|
||||
"cost": 2,
|
||||
"isToken": false,
|
||||
"Lane": "🟦 Blue",
|
||||
"Entropy": 2,
|
||||
"Force": 2,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"018": {
|
||||
"id": "018",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "VampiricMembrane",
|
||||
"type": "Unit",
|
||||
"cost": 3,
|
||||
"image": "https://docs.brut.systems/judah/entropy/018.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "VampiricMembrane",
|
||||
"type": "Unit",
|
||||
"cost": 3,
|
||||
"isToken": false,
|
||||
"Lane": "🟦 Blue",
|
||||
"Entropy": 3,
|
||||
"Force": 3,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"019": {
|
||||
"id": "019",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "WarmFilament",
|
||||
"type": "Unit",
|
||||
"cost": 2,
|
||||
"image": "https://docs.brut.systems/judah/entropy/019.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "WarmFilament",
|
||||
"type": "Unit",
|
||||
"cost": 2,
|
||||
"isToken": false,
|
||||
"Lane": "🟦 Blue",
|
||||
"Entropy": 2,
|
||||
"Force": 0,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"020": {
|
||||
"id": "020",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "FormerShrine",
|
||||
"type": "Unit",
|
||||
"cost": 8,
|
||||
"image": "https://docs.brut.systems/judah/entropy/020.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "FormerShrine",
|
||||
"type": "Unit",
|
||||
"cost": 8,
|
||||
"isToken": false,
|
||||
"Lane": "🟦 Blue",
|
||||
"Entropy": 8,
|
||||
"Force": 3,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"021": {
|
||||
"id": "021",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "SoftFilament",
|
||||
"type": "Unit",
|
||||
"cost": 10,
|
||||
"image": "https://docs.brut.systems/judah/entropy/021.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "SoftFilament",
|
||||
"type": "Unit",
|
||||
"cost": 10,
|
||||
"isToken": false,
|
||||
"Lane": "🟥 Red",
|
||||
"Lane": "🟦 Blue",
|
||||
"Entropy": 10,
|
||||
"Force": 10,
|
||||
"Force": 5,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"022": {
|
||||
"id": "022",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "NominalSurplus",
|
||||
"type": "Spell",
|
||||
"cost": 3,
|
||||
"image": "https://docs.brut.systems/judah/entropy/022.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "NominalSurplus",
|
||||
"type": "Spell",
|
||||
"cost": 3,
|
||||
"isToken": false,
|
||||
"Lane": "🟩 Green",
|
||||
"Entropy": 3,
|
||||
"Force": 0,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"023": {
|
||||
"id": "023",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "MootSubstrate",
|
||||
"type": "Spell",
|
||||
"cost": 3,
|
||||
"image": "https://docs.brut.systems/judah/entropy/023.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "MootSubstrate",
|
||||
"type": "Spell",
|
||||
"cost": 3,
|
||||
"isToken": false,
|
||||
"Lane": "🟩 Green",
|
||||
"Entropy": 3,
|
||||
"Force": 0,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"024": {
|
||||
"id": "024",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "SoftMutation",
|
||||
"type": "Spell",
|
||||
"cost": 1,
|
||||
"image": "https://docs.brut.systems/judah/entropy/024.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "SoftMutation",
|
||||
"type": "Spell",
|
||||
"cost": 1,
|
||||
"isToken": false,
|
||||
"Lane": "🟩 Green",
|
||||
"Entropy": 1,
|
||||
"Force": 0,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"025": {
|
||||
"id": "025",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "BareFilament",
|
||||
"type": "Spell",
|
||||
"cost": 2,
|
||||
"image": "https://docs.brut.systems/judah/entropy/025.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "BareFilament",
|
||||
"type": "Spell",
|
||||
"cost": 2,
|
||||
"isToken": false,
|
||||
"Lane": "🟩 Green",
|
||||
"Entropy": 2,
|
||||
"Force": 0,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"026": {
|
||||
"id": "026",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "DullMembrane",
|
||||
"type": "Spell",
|
||||
"cost": 4,
|
||||
"image": "https://docs.brut.systems/judah/entropy/026.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "DullMembrane",
|
||||
"type": "Spell",
|
||||
"cost": 4,
|
||||
"isToken": false,
|
||||
"Lane": "🟩 Green",
|
||||
"Entropy": 4,
|
||||
"Force": 0,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"027": {
|
||||
"id": "027",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "SoftVolume",
|
||||
"type": "Spell",
|
||||
"cost": 8,
|
||||
"image": "https://docs.brut.systems/judah/entropy/027.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "SoftVolume",
|
||||
"type": "Spell",
|
||||
"cost": 8,
|
||||
"isToken": false,
|
||||
"Lane": "🟩 Green",
|
||||
"Entropy": 8,
|
||||
"Force": 0,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
},
|
||||
"028": {
|
||||
"id": "028",
|
||||
"face": {
|
||||
"front": {
|
||||
"name": "GrossProspect",
|
||||
"type": "Spell",
|
||||
"cost": 14,
|
||||
"image": "https://docs.brut.systems/judah/entropy/028.png",
|
||||
"isHorizontal": true
|
||||
}
|
||||
},
|
||||
"name": "GrossProspect",
|
||||
"type": "Spell",
|
||||
"cost": 14,
|
||||
"isToken": false,
|
||||
"Lane": "🟩 Green",
|
||||
"Entropy": 14,
|
||||
"Force": 0,
|
||||
"_legal": {
|
||||
"playtest": true
|
||||
}
|
||||
|
|
|
|||
54
cards.go
|
|
@ -3,6 +3,7 @@ package main
|
|||
var CARDS = []struct {
|
||||
lane Lane
|
||||
typ Type
|
||||
token bool
|
||||
entropy int
|
||||
recovery int
|
||||
force int
|
||||
|
|
@ -10,11 +11,16 @@ var CARDS = []struct {
|
|||
desc string
|
||||
}{
|
||||
{typ: Passive, recovery: 3,
|
||||
name: `Rapid Response`, desc: `Your {{spell}}s cost {{1 hp}} less.`},
|
||||
name: `Rapid Response`, desc: `Your {{spell}}s cost {{1 entropy}} less.`},
|
||||
{typ: Passive, recovery: 2,
|
||||
name: `Breaker`, desc: `The first {{unit}} you play per turn costs {{1 entropy}} less.`},
|
||||
{typ: Passive, recovery: 0,
|
||||
name: `Inverse Entropy`, desc: `Add {{1 hp}} to all {{lifesteal}} bonuses.`},
|
||||
name: `Inverse Entropy`, desc: `All {{lifesteal}} bonuses are +1.`},
|
||||
|
||||
{typ: Unit, lane: Red, entropy: 1, force: 1, token: true,
|
||||
desc: `Token`},
|
||||
{typ: Unit, lane: Blue, entropy: 1, force: 1, token: true,
|
||||
desc: `Token`},
|
||||
|
||||
{typ: Unit, lane: Red, entropy: 1, force: 1,
|
||||
desc: ``},
|
||||
|
|
@ -24,6 +30,48 @@ var CARDS = []struct {
|
|||
desc: ``},
|
||||
{typ: Unit, lane: Red, entropy: 4, force: 4,
|
||||
desc: ``},
|
||||
{typ: Unit, lane: Red, entropy: 10, force: 10,
|
||||
{typ: Unit, lane: Red, entropy: 5, force: 5,
|
||||
desc: ``},
|
||||
{typ: Unit, lane: Red, entropy: 5, force: 3,
|
||||
desc: `{{pierce}} - Hit the next card on the stack or an opponent (if empty).
|
||||
{{double tap}} - Do this twice.`},
|
||||
{typ: Unit, lane: Red, entropy: 5, force: 3,
|
||||
desc: `{{next turn}} - If alive, {{push}} a {{1 entropy}} / {{1 force}} unit.`},
|
||||
{typ: Unit, lane: Red, entropy: 3, force: 2,
|
||||
desc: `{{lifesteal}} - {{recover}} this unit's {{force}} when it attacks.`},
|
||||
{typ: Unit, lane: Red, entropy: 3, force: 1,
|
||||
desc: `{{lifesteal}} - {{recover}} this unit's {{force}} when it attacks.
|
||||
{{vampiric}} - This unit {{recover}}s {{1 force}} when it attacks.`},
|
||||
{typ: Unit, lane: Red, entropy: 5, force: 0,
|
||||
desc: `{{initiative}} - Before this unit attacks, {{swap}} it with the unit below. Give that unit +{{2 force}} this turn.`},
|
||||
|
||||
{typ: Unit, lane: Blue, entropy: 4, force: 0,
|
||||
desc: `{{collateral damage}} - Deal half of the attacking unit's {{force}} to the unit below it.`},
|
||||
{typ: Unit, lane: Blue, entropy: 2, force: 2,
|
||||
desc: `{{last stand}} - {{move}} this unit's attacker to the bottom of its {{lane}}.`},
|
||||
{typ: Unit, lane: Blue, entropy: 2, force: 2,
|
||||
desc: ``},
|
||||
{typ: Unit, lane: Blue, entropy: 3, force: 3,
|
||||
desc: ``},
|
||||
{typ: Unit, lane: Blue, entropy: 2, force: 0,
|
||||
desc: `{{initiative}} - Before this unit is attacked, {{discard}} it and it's attacker.`},
|
||||
{typ: Unit, lane: Blue, entropy: 8, force: 3,
|
||||
desc: `This unit costs {{1 entropy}} less for each unit in its lane.`},
|
||||
{typ: Unit, lane: Blue, entropy: 10, force: 5,
|
||||
desc: `This unit costs {{1 entropy}} less for each unit in your opponent's {{red lane}}.`},
|
||||
|
||||
{typ: Spell, lane: Green, entropy: 3, force: 0,
|
||||
desc: `{{react}} - {{move}} a unit to the bottom of its lane.`},
|
||||
{typ: Spell, lane: Green, entropy: 3, force: 0,
|
||||
desc: `{{react}} - {{recover}} {{5 hp}}.`},
|
||||
{typ: Spell, lane: Green, entropy: 1, force: 0,
|
||||
desc: `Give a friendly {{unit}} +{{1 force}}.`},
|
||||
{typ: Spell, lane: Green, entropy: 2, force: 0,
|
||||
desc: `Give a friendly {{unit}} +{{2 force}}.`},
|
||||
{typ: Spell, lane: Green, entropy: 4, force: 0,
|
||||
desc: `Give a friendly {{unit}} +{{3 force}}.`},
|
||||
{typ: Spell, lane: Green, entropy: 8, force: 0,
|
||||
desc: `Choose an opponent: they cannot cast spells this turn.`},
|
||||
{typ: Spell, lane: Green, entropy: 14, force: 0,
|
||||
desc: `Choose an opponent: they skip their turn.`},
|
||||
}
|
||||
|
|
|
|||
BIN
docs/000.png
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 33 KiB |
BIN
docs/001.png
|
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 35 KiB |
BIN
docs/002.png
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 31 KiB |
BIN
docs/003.png
|
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 26 KiB |
BIN
docs/004.png
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 26 KiB |
BIN
docs/005.png
|
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 23 KiB |
BIN
docs/006.png
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 26 KiB |
BIN
docs/007.png
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 23 KiB |
BIN
docs/008.png
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
docs/009.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
docs/010.png
Normal file
|
After Width: | Height: | Size: 46 KiB |
BIN
docs/011.png
Normal file
|
After Width: | Height: | Size: 35 KiB |
BIN
docs/012.png
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
docs/013.png
Normal file
|
After Width: | Height: | Size: 49 KiB |
BIN
docs/014.png
Normal file
|
After Width: | Height: | Size: 46 KiB |
BIN
docs/015.png
Normal file
|
After Width: | Height: | Size: 43 KiB |
BIN
docs/016.png
Normal file
|
After Width: | Height: | Size: 40 KiB |
BIN
docs/017.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
docs/018.png
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
docs/019.png
Normal file
|
After Width: | Height: | Size: 41 KiB |
BIN
docs/020.png
Normal file
|
After Width: | Height: | Size: 37 KiB |
BIN
docs/021.png
Normal file
|
After Width: | Height: | Size: 42 KiB |
BIN
docs/022.png
Normal file
|
After Width: | Height: | Size: 36 KiB |
BIN
docs/023.png
Normal file
|
After Width: | Height: | Size: 32 KiB |
BIN
docs/024.png
Normal file
|
After Width: | Height: | Size: 32 KiB |
BIN
docs/025.png
Normal file
|
After Width: | Height: | Size: 32 KiB |
BIN
docs/026.png
Normal file
|
After Width: | Height: | Size: 32 KiB |
BIN
docs/027.png
Normal file
|
After Width: | Height: | Size: 40 KiB |
BIN
docs/028.png
Normal file
|
After Width: | Height: | Size: 37 KiB |
27
main.go
|
|
@ -26,7 +26,6 @@ const (
|
|||
Unit Type = iota
|
||||
Spell
|
||||
Passive
|
||||
Token
|
||||
)
|
||||
|
||||
func (l Lane) String() string {
|
||||
|
|
@ -50,8 +49,8 @@ func (t Type) String() string {
|
|||
return "Unit"
|
||||
case Passive:
|
||||
return "Passive"
|
||||
case Token:
|
||||
return "Token"
|
||||
case Spell:
|
||||
return "Spell"
|
||||
default:
|
||||
panic("unknown")
|
||||
}
|
||||
|
|
@ -102,10 +101,10 @@ func main() {
|
|||
color = [3]float64{248.0 / 255.0, 120.0 / 255.0, 143.0 / 255.0}
|
||||
case Green:
|
||||
baseimg = "base-green.png"
|
||||
color = [3]float64{120.0 / 255.0, 190.0 / 255.0, 248.0 / 255.0}
|
||||
color = [3]float64{120.0 / 255.0, 248.0 / 255.0, 178.0 / 255.0}
|
||||
case Blue:
|
||||
baseimg = "base-blue.png"
|
||||
color = [3]float64{120.0 / 255.0, 248.0 / 255.0, 178.0 / 255.0}
|
||||
color = [3]float64{120.0 / 255.0, 190.0 / 255.0, 248.0 / 255.0}
|
||||
default:
|
||||
color = [3]float64{184.0 / 255.0, 184.0 / 255.0, 184.0 / 255.0}
|
||||
baseimg = "base-passive.png"
|
||||
|
|
@ -133,13 +132,13 @@ func main() {
|
|||
ctx.Pop()
|
||||
}
|
||||
|
||||
// Draw entropy
|
||||
// Draw entropy or recovery
|
||||
ctx.SetRGB(color[0], color[1], color[2])
|
||||
ctx.Push()
|
||||
{
|
||||
ctx.Translate(273, 115)
|
||||
ctx.Rotate(270 * math.Pi / 180)
|
||||
ctx.DrawStringAnchored(fmt.Sprintf("%d", card.entropy), 0, 0, 0.5, 0.5)
|
||||
ctx.DrawStringAnchored(fmt.Sprintf("%d", max(card.entropy, card.recovery)), 0, 0, 0.5, 0.5)
|
||||
}
|
||||
ctx.Pop()
|
||||
|
||||
|
|
@ -154,7 +153,7 @@ func main() {
|
|||
{
|
||||
ctx.Translate(435, 985)
|
||||
ctx.Rotate(270 * math.Pi / 180)
|
||||
ctx.DrawStringWrapped(fmt.Sprintf("#%03d %s - %s\n%s", i, card.name, card.typ.String(), cleandesc), 0, 0, 0.0, 0.0, 900, 1.70, gg.AlignLeft)
|
||||
ctx.DrawStringWrapped(fmt.Sprintf("#%03d %s - %s\n%s", i, card.name, card.typ.String(), cleandesc), 0, 0, 0.0, 0.0, 900, 1.80, gg.AlignLeft)
|
||||
}
|
||||
ctx.Pop()
|
||||
|
||||
|
|
@ -176,7 +175,7 @@ func main() {
|
|||
Horizontal: true,
|
||||
},
|
||||
},
|
||||
Token: card.typ == Token,
|
||||
Token: card.token,
|
||||
Name: card.name,
|
||||
Type: card.typ.String(),
|
||||
Cost: card.entropy,
|
||||
|
|
@ -221,11 +220,12 @@ func generateTemporaryName() string {
|
|||
"Live",
|
||||
"Lucid",
|
||||
"Moot",
|
||||
"Vampiric",
|
||||
"Nominal",
|
||||
"Oblique",
|
||||
"Convergent",
|
||||
"Partial",
|
||||
"Passive",
|
||||
"Petit",
|
||||
"Raging",
|
||||
"Polar",
|
||||
"Residual",
|
||||
"Rote",
|
||||
|
|
@ -246,12 +246,12 @@ func generateTemporaryName() string {
|
|||
"Deficit",
|
||||
"Dividend",
|
||||
"Dosage",
|
||||
"Envelope",
|
||||
"Shrine",
|
||||
"Filament",
|
||||
"Gesture",
|
||||
"Gradient",
|
||||
"Inlet",
|
||||
"Lapse",
|
||||
"Judgement",
|
||||
"Mandate",
|
||||
"Membrane",
|
||||
"Morale",
|
||||
|
|
@ -261,6 +261,7 @@ func generateTemporaryName() string {
|
|||
"Prospect",
|
||||
"Rapport",
|
||||
"Reflex",
|
||||
"Mutation",
|
||||
"Substrate",
|
||||
"Surplus",
|
||||
"Tendon",
|
||||
|
|
|
|||