Compare commits
No commits in common. "65e088085154018e9f0742979a152ab4d9e09743" and "d8fd3d71115b3676be2078a91b1ae12283c73285" have entirely different histories.
65e0880851
...
d8fd3d7111
|
@ -0,0 +1,29 @@
|
|||
kind = "blaze"
|
||||
aliases = ["blazing"]
|
||||
|
||||
[[shard]]
|
||||
from = "Red Nocturne"
|
||||
chance = 6
|
||||
|
||||
[[shard]]
|
||||
from = "White Mushroom"
|
||||
chance = 100
|
||||
info = "When Fire is the last spell used"
|
||||
|
||||
[[gem]]
|
||||
from = "Bandit"
|
||||
chance = 4
|
||||
|
||||
[[gem]]
|
||||
from = "Fat Bandit"
|
||||
chance = 8
|
||||
|
||||
[[gem]]
|
||||
from = "White Mushroom"
|
||||
chance = 10
|
||||
info = "When Fire is used three times"
|
||||
|
||||
[[stone]]
|
||||
from = "Chimera"
|
||||
chance = 35
|
||||
info = "Additional drops based on how many heads are reflected without getting hit"
|
|
@ -0,0 +1,23 @@
|
|||
kind = "bright"
|
||||
|
||||
[[shard]]
|
||||
from = "Green Requiem"
|
||||
chance = 10
|
||||
|
||||
[[shard]]
|
||||
from = "White Mushroom"
|
||||
chance = 100
|
||||
info = "When Cure is the last spell used"
|
||||
|
||||
[[gem]]
|
||||
from = "Search Ghost"
|
||||
chance = 4
|
||||
|
||||
[[gem]]
|
||||
from = "White Mushroom"
|
||||
chance = 10
|
||||
info = "When Cure is used three times"
|
||||
|
||||
[[crystal]]
|
||||
from = "Defender"
|
||||
chance = 2
|
|
@ -0,0 +1,5 @@
|
|||
kind = "energy"
|
||||
|
||||
[[stone]]
|
||||
from = "Stealth Soldier"
|
||||
chance = 35
|
|
@ -0,0 +1,28 @@
|
|||
kind = "frost"
|
||||
|
||||
[[shard]]
|
||||
from = "Blue Rhapsody"
|
||||
chance = 12
|
||||
|
||||
[[shard]]
|
||||
from = "White Mushroom"
|
||||
chance = 100
|
||||
info = "When Blizzard is the last spell used"
|
||||
|
||||
[[gem]]
|
||||
from = "Sea Neon"
|
||||
chance = 2
|
||||
|
||||
[[gem]]
|
||||
from = "Sheltering Zone"
|
||||
chance = 8
|
||||
|
||||
[[gem]]
|
||||
from = "White Mushroom"
|
||||
chance = 10
|
||||
info = "When Blizzard is used three times"
|
||||
|
||||
[[stone]]
|
||||
from = "Grand Ghost"
|
||||
chance = 100
|
||||
info = "Additional drops based on what items are used to defeat it with Megalixirs having an additional 100% drop"
|
|
@ -0,0 +1,32 @@
|
|||
kind = "lucid"
|
||||
|
||||
[[shard]]
|
||||
from = "Shadow"
|
||||
chance = 3
|
||||
|
||||
[[shard]]
|
||||
from = "White Mushroom"
|
||||
chance = 100
|
||||
info = "When Gravity is the last spell used"
|
||||
|
||||
[[shard]]
|
||||
from = "Gigas Shadow"
|
||||
chance = "?"
|
||||
info = "% is based on how many Gigas Shadows are defeated"
|
||||
|
||||
[[gem]]
|
||||
from = "Gargoyle"
|
||||
chance = 2
|
||||
|
||||
[[gem]]
|
||||
from = "Wight Knight"
|
||||
chance = 2
|
||||
|
||||
[[gem]]
|
||||
from = "White Mushroom"
|
||||
chance = 10
|
||||
info = "When Gravity is used three times"
|
||||
|
||||
[[crystal]]
|
||||
from = "Darkball"
|
||||
chance = 1
|
|
@ -0,0 +1,23 @@
|
|||
kind = "mythril"
|
||||
|
||||
[[shard]]
|
||||
from = "Pot Spider"
|
||||
chance = 1
|
||||
|
||||
[[shard]]
|
||||
from = "Barrel Spider"
|
||||
chance = 1
|
||||
|
||||
[[shard]]
|
||||
from = "Pot Scorpion"
|
||||
chance = 20
|
||||
info = "Only if all 11 pots are broken before engaging"
|
||||
|
||||
[[shard]]
|
||||
from = "Arch Behemoth"
|
||||
chance = 20
|
||||
|
||||
[[stone]]
|
||||
from = "Pot Scorpion"
|
||||
chance = "10-35"
|
||||
info = "20% when less than 11 pots got destroyed\n35% when all 11 pots were destroyed\nadditional 10% chance when breaking the 11th pot"
|
|
@ -0,0 +1,40 @@
|
|||
kind = "power"
|
||||
|
||||
[[shard]]
|
||||
from = "Powerwild"
|
||||
chance = 4
|
||||
|
||||
[[shard]]
|
||||
from = "Bouncywild"
|
||||
chance = 8
|
||||
|
||||
[[shard]]
|
||||
from = "White Mushroom"
|
||||
chance = 100
|
||||
info = "When Stop is the last spell used"
|
||||
|
||||
[[gem]]
|
||||
from = "Pirate"
|
||||
chance = 4
|
||||
|
||||
[[gem]]
|
||||
from = "Air Pirate"
|
||||
chance = 4
|
||||
|
||||
[[gem]]
|
||||
from = "Battleeship"
|
||||
chance = 4
|
||||
|
||||
[[gem]]
|
||||
from = "White Mushroom"
|
||||
chance = 10
|
||||
info = "When Stop is used three times"
|
||||
|
||||
[[stone]]
|
||||
from = "Sniperwild"
|
||||
chance = "?"
|
||||
info = "% based on how many sets of 6 are defeated"
|
||||
|
||||
[[crystal]]
|
||||
from = "Wyvern"
|
||||
chance = 2
|
|
@ -0,0 +1,21 @@
|
|||
kind = "serenity"
|
||||
aliases = ["hungry", "mystery"]
|
||||
|
||||
[[crystal]]
|
||||
from = "White Mushroom"
|
||||
chance = "10-20"
|
||||
info = "10% when defeated and 20% when the same spell is used three times"
|
||||
|
||||
[[crystal]]
|
||||
from = "Black Fungus"
|
||||
chance = 6
|
||||
|
||||
[[crystal]]
|
||||
from = "Rare Truffle"
|
||||
chance = "20-100"
|
||||
info = "% depends on how many times it got juggles ranging from 10 to 100"
|
||||
|
||||
[[stone]]
|
||||
from = "Pink Agaricus"
|
||||
chance = "10-100"
|
||||
info = "% depends on how many times it got hit ranging from 40 to 100"
|
|
@ -0,0 +1,11 @@
|
|||
kind = "shiny"
|
||||
aliases = ["shimmering"]
|
||||
|
||||
[[crystal]]
|
||||
from = "Wizard"
|
||||
chance = 2
|
||||
|
||||
[[stone]]
|
||||
from = "Jet Balloon"
|
||||
chance = 100
|
||||
info = "Additional 20% drop chance"
|
|
@ -0,0 +1,28 @@
|
|||
kind = "spirit"
|
||||
|
||||
[[shard]]
|
||||
from = "Large Body"
|
||||
chance = 10
|
||||
|
||||
[[shard]]
|
||||
from = "Soldier"
|
||||
chance = 6
|
||||
|
||||
[[shard]]
|
||||
from = "White Mushroom"
|
||||
chance = 100
|
||||
info = "When Aero is the last spell used"
|
||||
|
||||
[[gem]]
|
||||
from = "Air Soldier"
|
||||
chance = 4
|
||||
|
||||
[[gem]]
|
||||
from = "White Mushroom"
|
||||
chance = 10
|
||||
info = "When Aero is used three times"
|
||||
|
||||
[[stone]]
|
||||
from = "Gigas Shadow"
|
||||
chance = "?"
|
||||
info = "% is based on how many Gigas Shadows are defeated"
|
|
@ -0,0 +1,14 @@
|
|||
kind = "stormy"
|
||||
aliases = ["gale"]
|
||||
|
||||
[[crystal]]
|
||||
from = "Angel Star"
|
||||
chance = 4
|
||||
|
||||
[[crystal]]
|
||||
from = "Invisible"
|
||||
chance = 4
|
||||
|
||||
[[stone]]
|
||||
from = "Neoshadow"
|
||||
chance = 35
|
|
@ -0,0 +1,29 @@
|
|||
kind = "thunder"
|
||||
aliases = ["lightning"]
|
||||
|
||||
[[shard]]
|
||||
from = "Yellow Opera"
|
||||
chance = 8
|
||||
|
||||
[[shard]]
|
||||
from = "White Mushroom"
|
||||
chance = 100
|
||||
info = "When Thunder is the last spell used"
|
||||
|
||||
[[gem]]
|
||||
from = "Aquatank"
|
||||
chance = 8
|
||||
|
||||
[[gem]]
|
||||
from = "Screwdiver"
|
||||
chance = 4
|
||||
|
||||
[[gem]]
|
||||
from = "White Mushroom"
|
||||
chance = 10
|
||||
info = "When Thunder is used three times"
|
||||
|
||||
[[stone]]
|
||||
from = "Black Ballade"
|
||||
chance = 100
|
||||
info = "With additional 10% drops each time the correct target is hit"
|
|
@ -1,24 +0,0 @@
|
|||
name = "Black Ballade"
|
||||
|
||||
[[world]]
|
||||
name = "Deep Jungle"
|
||||
|
||||
[[drops]]
|
||||
name = "Lightning Stone"
|
||||
kind = "material"
|
||||
chance = 100
|
||||
info = "After correctly hitting the enemy 4 times"
|
||||
|
||||
[drops.material]
|
||||
category = "lightning"
|
||||
kind = "stone"
|
||||
|
||||
[[drops]]
|
||||
name = "Lightning Stone"
|
||||
kind = "material"
|
||||
chance = 10
|
||||
info = "Additional chance when hitting the enemy"
|
||||
|
||||
[drops.material]
|
||||
category = "lightning"
|
||||
kind = "stone"
|
|
@ -1,23 +0,0 @@
|
|||
name = "Chimera"
|
||||
|
||||
[[world]]
|
||||
name = "Halloween Town"
|
||||
|
||||
[[drops]]
|
||||
name = "Blazing Stone"
|
||||
kind = "material"
|
||||
chance = 35
|
||||
|
||||
[drops.material]
|
||||
category = "blaze"
|
||||
kind = "stone"
|
||||
|
||||
[[drops]]
|
||||
name = "Blazing Stone"
|
||||
kind = "material"
|
||||
chance = "?"
|
||||
info = "Additional chance based on how many times the heads get reflected"
|
||||
|
||||
[drops.material]
|
||||
category = "blaze"
|
||||
kind = "stone"
|
|
@ -1,24 +0,0 @@
|
|||
name = "Gigas Shadow"
|
||||
|
||||
[[world]]
|
||||
name = "Wonderland"
|
||||
|
||||
[[drops]]
|
||||
name = "Lucid Shard"
|
||||
kind = "material"
|
||||
chance = "10-100"
|
||||
info = "Chance based on how many Gigas Shadows get defeated"
|
||||
|
||||
[drops.material]
|
||||
category = "lucid"
|
||||
kind = "shard"
|
||||
|
||||
[[drops]]
|
||||
name = "Fury Stone"
|
||||
kind = "material"
|
||||
chance = "10-100"
|
||||
info = "Chance based on how many Gigas Shadows get defeated\nif 2 or less get defeated then no fury stone will drop"
|
||||
|
||||
[drops.material]
|
||||
category = "spirit"
|
||||
kind = "stone"
|
|
@ -1,23 +0,0 @@
|
|||
name = "Grand Ghost"
|
||||
|
||||
[[world]]
|
||||
name = "Monstro"
|
||||
|
||||
[[drops]]
|
||||
name = "Frost Stone"
|
||||
kind = "material"
|
||||
chance = 100
|
||||
|
||||
[drops.material]
|
||||
category = "frost"
|
||||
kind = "stone"
|
||||
|
||||
[[drops]]
|
||||
name = "Frost Stone"
|
||||
kind = "material"
|
||||
chance = "?"
|
||||
info = "Additional chances based on what item was used to defeat it\nMega-Potion 5%\nMega-Ether 10%\nElixirs 35%\nMegalixir 100% and 20%"
|
||||
|
||||
[drops.material]
|
||||
category = "frost"
|
||||
kind = "stone"
|
|
@ -1,22 +0,0 @@
|
|||
name = "Jet Balloon"
|
||||
|
||||
[[world]]
|
||||
name = "Neverland"
|
||||
|
||||
[[drops]]
|
||||
name = "Dazzling Stone"
|
||||
kind = "material"
|
||||
chance = 100
|
||||
|
||||
[drops.material]
|
||||
category = "shiny"
|
||||
kind = "stone"
|
||||
|
||||
[[drops]]
|
||||
name = "Dazzling Stone"
|
||||
kind = "material"
|
||||
chance = 20
|
||||
|
||||
[drops.material]
|
||||
category = "shiny"
|
||||
kind = "stone"
|
|
@ -1,14 +0,0 @@
|
|||
name = "Neoshadow"
|
||||
|
||||
[[world]]
|
||||
name = "End of the World"
|
||||
|
||||
[[drops]]
|
||||
name = "Stormy Stone"
|
||||
kind = "material"
|
||||
chance = 35
|
||||
info = "Only when all 7 Neoshadows get defeated"
|
||||
|
||||
[drops.material]
|
||||
category = "stormy"
|
||||
kind = "stone"
|
|
@ -1,17 +0,0 @@
|
|||
name = "Pink Agaricus"
|
||||
|
||||
[[world]]
|
||||
name = "Deep Jungle"
|
||||
|
||||
[[world]]
|
||||
name = "Atlantica"
|
||||
|
||||
[[drops]]
|
||||
name = "Serenity Power"
|
||||
kind = "material"
|
||||
chance = "?"
|
||||
info = "% based on the number of hits dealt from 40 hits being 10% and 100 hits being 100%"
|
||||
|
||||
[drops.material]
|
||||
category = "mystery"
|
||||
kind = "stone"
|
|
@ -1,13 +0,0 @@
|
|||
name = "Pot Scorpion"
|
||||
|
||||
[[world]]
|
||||
name = "Agrabah"
|
||||
|
||||
[[drops]]
|
||||
name = "Mythril Stone"
|
||||
kind = "material"
|
||||
chance = 20
|
||||
|
||||
[drops.material]
|
||||
category = "mythril"
|
||||
kind = "stone"
|
|
@ -1,26 +0,0 @@
|
|||
name = "Pot Spider"
|
||||
|
||||
[[world]]
|
||||
name = "Agrabah"
|
||||
|
||||
[[world]]
|
||||
name = "Monstro"
|
||||
|
||||
[[drops]]
|
||||
name = "Tent"
|
||||
kind = "item"
|
||||
chance = 1
|
||||
|
||||
[[drops]]
|
||||
name = "Camping Set"
|
||||
kind = "item"
|
||||
chance = 0.5
|
||||
|
||||
[[drops]]
|
||||
name = "Mythril Shard"
|
||||
kind = "material"
|
||||
chance = 1
|
||||
|
||||
[drops.material]
|
||||
category = "mythril"
|
||||
kind = "shard"
|
|
@ -1,46 +0,0 @@
|
|||
name = "Powerwild"
|
||||
|
||||
[[world]]
|
||||
name = "Deep Jungle"
|
||||
|
||||
[[world]]
|
||||
name = "Monstro"
|
||||
|
||||
[[world]]
|
||||
name = "End of the World"
|
||||
|
||||
[[drops]]
|
||||
name = "Potion"
|
||||
kind = "item"
|
||||
chance = 2
|
||||
|
||||
[[drops]]
|
||||
name = "Power Shard"
|
||||
kind = "material"
|
||||
chance = 4
|
||||
|
||||
[drops.material]
|
||||
category = "power"
|
||||
kind = "shard"
|
||||
|
||||
[[drops]]
|
||||
name = "Ether"
|
||||
kind = "item"
|
||||
chance = 20
|
||||
info = "When it slips on the banana peel"
|
||||
|
||||
[[drops]]
|
||||
name = "Mega-Ether"
|
||||
kind = "item"
|
||||
chance = 4
|
||||
info = "When it slips on the banana peel"
|
||||
|
||||
[[drops]]
|
||||
name = "Power Shard"
|
||||
kind = "material"
|
||||
chance = 4
|
||||
info = "When it slips on the banana peel"
|
||||
|
||||
[drops.material]
|
||||
category = "power"
|
||||
kind = "shard"
|
|
@ -1,33 +0,0 @@
|
|||
name = "Red Nocturne"
|
||||
|
||||
[[world]]
|
||||
name = "Traverse Town"
|
||||
|
||||
[[world]]
|
||||
name = "Wonderland"
|
||||
|
||||
[[world]]
|
||||
name = "Agrabah"
|
||||
|
||||
[[world]]
|
||||
name = "Hollow Bastion"
|
||||
|
||||
[[world]]
|
||||
name = "Monstro"
|
||||
|
||||
[[world]]
|
||||
name = "End of the World"
|
||||
|
||||
[[drops]]
|
||||
name = "Ether"
|
||||
kind = "item"
|
||||
chance = 1
|
||||
|
||||
[[drops]]
|
||||
name = "Blaze Shard"
|
||||
kind = "material"
|
||||
chance = 6
|
||||
|
||||
[drops.material]
|
||||
category = "blaze"
|
||||
kind = "shard"
|
|
@ -1,21 +0,0 @@
|
|||
name = "Screwdiver"
|
||||
|
||||
[[world]]
|
||||
name = "Atlantica"
|
||||
|
||||
[[world]]
|
||||
name = "End of the World"
|
||||
|
||||
[[drops]]
|
||||
name = "Hi-Potion"
|
||||
kind = "item"
|
||||
chance = 2
|
||||
|
||||
[[drops]]
|
||||
name = "Thunder Gem"
|
||||
kind = "material"
|
||||
chance = 4
|
||||
|
||||
[drops.material]
|
||||
category = "thunder"
|
||||
kind = "gem"
|
|
@ -1,21 +0,0 @@
|
|||
name = "Sea Neon"
|
||||
|
||||
[[world]]
|
||||
name = "Atlantica"
|
||||
|
||||
[[world]]
|
||||
name = "End of the World"
|
||||
|
||||
[[drops]]
|
||||
name = "Ether"
|
||||
kind = "item"
|
||||
chance = 0.5
|
||||
|
||||
[[drops]]
|
||||
name = "Frost Gem"
|
||||
kind = "material"
|
||||
chance = 2
|
||||
|
||||
[drops.material]
|
||||
category = "frost"
|
||||
kind = "gem"
|
|
@ -1,35 +0,0 @@
|
|||
name = "Search Ghost"
|
||||
|
||||
[[world]]
|
||||
name = "Halloween Town"
|
||||
|
||||
[[world]]
|
||||
name = "Monstro"
|
||||
|
||||
[[world]]
|
||||
name = "Traverse Town"
|
||||
|
||||
[[world]]
|
||||
name = "Atlantica"
|
||||
|
||||
[[world]]
|
||||
name = "End of the World"
|
||||
|
||||
[[drops]]
|
||||
name = "Hi-Potion"
|
||||
kind = "item"
|
||||
chance = 2
|
||||
|
||||
[[drops]]
|
||||
name = "Mega-Potion"
|
||||
kind = "item"
|
||||
chance = 1
|
||||
|
||||
[[drops]]
|
||||
name = "Bright Gem"
|
||||
kind = "material"
|
||||
chance = 4
|
||||
|
||||
[drops.material]
|
||||
category = "bright"
|
||||
kind = "gem"
|
|
@ -1,21 +0,0 @@
|
|||
name = "Sheltering Zone"
|
||||
|
||||
[[world]]
|
||||
name = "Atlantica"
|
||||
|
||||
[[world]]
|
||||
name = "End of the World"
|
||||
|
||||
[[drops]]
|
||||
name = "Ether"
|
||||
kind = "item"
|
||||
chance = 4
|
||||
|
||||
[[drops]]
|
||||
name = "Frost Gem"
|
||||
kind = "material"
|
||||
chance = 8
|
||||
|
||||
[drops.material]
|
||||
category = "frost"
|
||||
kind = "gem"
|
|
@ -1,14 +0,0 @@
|
|||
name = "Sniperwild"
|
||||
|
||||
[[world]]
|
||||
name = "Traverse Town"
|
||||
|
||||
[[drops]]
|
||||
name = "Power Stone"
|
||||
kind = "material"
|
||||
chance = "?"
|
||||
info = "% based on how many sets of 6 enemies are defeated"
|
||||
|
||||
[drops.material]
|
||||
category = "power"
|
||||
kind = "stone"
|
|
@ -1,13 +0,0 @@
|
|||
name = "Stealth Soldier"
|
||||
|
||||
[[world]]
|
||||
name = "Hollow Bastion"
|
||||
|
||||
[[drops]]
|
||||
name = "Energy Stone"
|
||||
kind = "material"
|
||||
chance = 35
|
||||
|
||||
[drops.material]
|
||||
category = "energy"
|
||||
kind = "stone"
|
|
@ -1,26 +0,0 @@
|
|||
name = "Wight Knight"
|
||||
|
||||
[[world]]
|
||||
name = "Holloween Town"
|
||||
|
||||
[[world]]
|
||||
name = "End of the World"
|
||||
|
||||
[[drops]]
|
||||
name = "Hi-Potion"
|
||||
kind = "item"
|
||||
chance = 1
|
||||
|
||||
[[drops]]
|
||||
name = "Mega-Potion"
|
||||
kind = "item"
|
||||
chance = 0.5
|
||||
|
||||
[[drops]]
|
||||
name = "Lucid Gem"
|
||||
kind = "material"
|
||||
chance = 2
|
||||
|
||||
[drops.material]
|
||||
category = "lucid"
|
||||
kind = "gem"
|
|
@ -1,38 +0,0 @@
|
|||
name = "Wizard"
|
||||
|
||||
[[world]]
|
||||
name = "Holloween Town"
|
||||
|
||||
[[world]]
|
||||
name = "Traverse Town"
|
||||
|
||||
[[world]]
|
||||
name = "Wonderland"
|
||||
|
||||
[[world]]
|
||||
name = "Deep Jungle"
|
||||
|
||||
[[world]]
|
||||
name = "Agrabah"
|
||||
|
||||
[[world]]
|
||||
name = "End of the World"
|
||||
|
||||
[[drops]]
|
||||
name = "Ether"
|
||||
kind = "item"
|
||||
chance = 2
|
||||
|
||||
[[drops]]
|
||||
name = "Shiny Crystal"
|
||||
kind = "material"
|
||||
chance = 2
|
||||
|
||||
[drops.material]
|
||||
category = "shiny"
|
||||
kind = "crystal"
|
||||
|
||||
[[drops]]
|
||||
name = "Wizard Relic"
|
||||
kind = "equipment"
|
||||
chance = 0.2
|
|
@ -1,35 +0,0 @@
|
|||
name = "Wyvern"
|
||||
|
||||
[[world]]
|
||||
name = "Hollow Bastion"
|
||||
|
||||
[[world]]
|
||||
name = "Traverse Town"
|
||||
|
||||
[[world]]
|
||||
name = "Deep Jungle"
|
||||
|
||||
[[world]]
|
||||
name = "Agrabah"
|
||||
|
||||
[[world]]
|
||||
name = "End of the World"
|
||||
|
||||
[[drops]]
|
||||
name = "Hi-Potion"
|
||||
kind = "item"
|
||||
chance = 2
|
||||
|
||||
[[drops]]
|
||||
name = "Elixir"
|
||||
kind = "item"
|
||||
chance = 0.5
|
||||
|
||||
[[drops]]
|
||||
name = "Power Crystal"
|
||||
kind = "material"
|
||||
chance = 2
|
||||
|
||||
[drops.material]
|
||||
category = "power"
|
||||
kind = "crystal"
|
|
@ -1,33 +0,0 @@
|
|||
name = "Yellow Opera"
|
||||
|
||||
[[world]]
|
||||
name = "Traverse Town"
|
||||
|
||||
[[world]]
|
||||
name = "Neverland"
|
||||
|
||||
[[world]]
|
||||
name = "Agrabah"
|
||||
|
||||
[[world]]
|
||||
name = "Hollow Bastion"
|
||||
|
||||
[[world]]
|
||||
name = "Monstro"
|
||||
|
||||
[[world]]
|
||||
name = "End of the World"
|
||||
|
||||
[[drops]]
|
||||
name = "Ether"
|
||||
kind = "item"
|
||||
chance = 1
|
||||
|
||||
[[drops]]
|
||||
name = "Thunder Shard"
|
||||
kind = "material"
|
||||
chance = 6
|
||||
|
||||
[drops.material]
|
||||
category = "thunder"
|
||||
kind = "shard"
|
Binary file not shown.
Before Width: | Height: | Size: 3.0 KiB |
Binary file not shown.
Before Width: | Height: | Size: 6.0 KiB |
Binary file not shown.
Before Width: | Height: | Size: 6.6 KiB |
Binary file not shown.
Before Width: | Height: | Size: 6.7 KiB |
Binary file not shown.
Before Width: | Height: | Size: 6.1 KiB |
|
@ -1,14 +1,3 @@
|
|||
use serde::Deserialize;
|
||||
|
||||
pub mod direction;
|
||||
pub mod enemy;
|
||||
pub mod materials;
|
||||
|
||||
#[derive(Debug, Clone, Deserialize, PartialEq, Eq, PartialOrd, Ord, Hash)]
|
||||
pub enum Game {
|
||||
Kh1,
|
||||
Kh2,
|
||||
Kh3,
|
||||
Bbs,
|
||||
Ddd,
|
||||
}
|
||||
|
|
|
@ -1,130 +1,16 @@
|
|||
use std::{collections::HashMap, fmt::Display, fs, path};
|
||||
use std::{collections::HashMap, fmt::Display};
|
||||
|
||||
use serde::Deserialize;
|
||||
|
||||
use crate::ASSETS_FOLDER_PATH;
|
||||
|
||||
use super::{
|
||||
Game,
|
||||
enemy::{Enemy, EnemyDrop},
|
||||
};
|
||||
|
||||
pub const GENERIC_MATERIAL_ICON: &str = "generic";
|
||||
use super::enemy::{Enemy, EnemyDrop};
|
||||
|
||||
#[derive(Debug, Clone, Deserialize, PartialEq, Eq, PartialOrd, Ord)]
|
||||
pub struct MaterialDetails {
|
||||
pub category: MaterialCategory,
|
||||
pub category: String,
|
||||
pub kind: MaterialKind,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Deserialize, PartialEq, Eq, PartialOrd, Ord, Hash)]
|
||||
#[serde(rename_all = "lowercase")]
|
||||
pub enum MaterialCategory {
|
||||
// Common
|
||||
#[serde(alias = "blaze")]
|
||||
Blazing,
|
||||
#[serde(alias = "soothing")]
|
||||
Bright,
|
||||
#[serde(alias = "betwixt")]
|
||||
Dense,
|
||||
#[serde(alias = "writhing")]
|
||||
Dark,
|
||||
#[serde(alias = "wellspring")]
|
||||
Energy,
|
||||
Frost,
|
||||
#[serde(alias = "thunder")]
|
||||
Lightning,
|
||||
Lucid,
|
||||
Mythril,
|
||||
Power,
|
||||
#[serde(alias = "shiny")]
|
||||
Shimmering,
|
||||
#[serde(alias = "mystery", alias = "hungry")]
|
||||
Serenity,
|
||||
Twilight,
|
||||
|
||||
// KH1 Only
|
||||
Spirit,
|
||||
Stormy,
|
||||
|
||||
// KH2 Only
|
||||
Remembrance,
|
||||
}
|
||||
|
||||
impl MaterialCategory {
|
||||
pub fn get_texture_group(&self) -> String {
|
||||
match self {
|
||||
MaterialCategory::Blazing => "blazing".to_string(),
|
||||
MaterialCategory::Bright => "bright".to_string(),
|
||||
MaterialCategory::Dense => "dense".to_string(),
|
||||
MaterialCategory::Dark => "dark".to_string(),
|
||||
MaterialCategory::Energy => "energy".to_string(),
|
||||
MaterialCategory::Frost => "frost".to_string(),
|
||||
MaterialCategory::Lightning => "lightning".to_string(),
|
||||
MaterialCategory::Lucid => "lucid".to_string(),
|
||||
MaterialCategory::Mythril => "mythril".to_string(),
|
||||
MaterialCategory::Power => "power".to_string(),
|
||||
MaterialCategory::Shimmering => "shimmering".to_string(),
|
||||
MaterialCategory::Serenity => "serenity".to_string(),
|
||||
MaterialCategory::Twilight => "twilight".to_string(),
|
||||
|
||||
MaterialCategory::Spirit => "spirit".to_string(),
|
||||
MaterialCategory::Stormy => "stormy".to_string(),
|
||||
|
||||
MaterialCategory::Remembrance => "remembrance".to_string(),
|
||||
}
|
||||
}
|
||||
|
||||
pub fn get_category(&self, game: &Game) -> String {
|
||||
match self {
|
||||
MaterialCategory::Blazing => match game {
|
||||
Game::Kh1 => "blaze".to_string(),
|
||||
_ => "blazing".to_string(),
|
||||
},
|
||||
MaterialCategory::Bright => match game {
|
||||
Game::Kh1 | Game::Kh2 => "bright".to_string(),
|
||||
_ => "soothing".to_string(),
|
||||
},
|
||||
MaterialCategory::Dense => match game {
|
||||
Game::Kh2 => "dense".to_string(),
|
||||
_ => "betwixt".to_string(),
|
||||
},
|
||||
MaterialCategory::Dark => match game {
|
||||
Game::Kh2 => "dark".to_string(),
|
||||
_ => "writhing".to_string(),
|
||||
},
|
||||
MaterialCategory::Energy => match game {
|
||||
Game::Kh1 | Game::Kh2 => "energy".to_string(),
|
||||
_ => "wellspring".to_string(),
|
||||
},
|
||||
MaterialCategory::Frost => "frost".to_string(),
|
||||
MaterialCategory::Lightning => match game {
|
||||
Game::Kh1 => "thunder".to_string(),
|
||||
_ => "lightning".to_string(),
|
||||
},
|
||||
MaterialCategory::Lucid => "lucid".to_string(),
|
||||
MaterialCategory::Mythril => "mythril".to_string(),
|
||||
MaterialCategory::Power => "power".to_string(),
|
||||
MaterialCategory::Shimmering => match game {
|
||||
Game::Kh1 => "shiny".to_string(),
|
||||
_ => "shimmering".to_string(),
|
||||
},
|
||||
MaterialCategory::Serenity => match game {
|
||||
Game::Kh1 => "mystery".to_string(),
|
||||
Game::Bbs => "hungry".to_string(),
|
||||
_ => "serenity".to_string(),
|
||||
},
|
||||
MaterialCategory::Twilight => "twilight".to_string(),
|
||||
|
||||
MaterialCategory::Spirit => "spirit".to_string(),
|
||||
MaterialCategory::Stormy => "stormy".to_string(),
|
||||
|
||||
MaterialCategory::Remembrance => "remembrance".to_string(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Deserialize, PartialEq, Eq, PartialOrd, Ord, Hash)]
|
||||
#[derive(Debug, Clone, Deserialize, PartialEq, Eq, Hash, PartialOrd, Ord)]
|
||||
#[serde(rename_all = "lowercase")]
|
||||
pub enum MaterialKind {
|
||||
Shard,
|
||||
|
@ -148,7 +34,7 @@ impl Display for MaterialKind {
|
|||
pub struct MaterialDrops {
|
||||
pub name: String,
|
||||
pub icon: String,
|
||||
pub category: MaterialCategory,
|
||||
pub category: String,
|
||||
pub kind: MaterialKind,
|
||||
pub drops: Vec<EnemyDrop>,
|
||||
}
|
||||
|
@ -165,7 +51,7 @@ impl PartialOrd for MaterialDrops {
|
|||
|
||||
impl MaterialDrops {
|
||||
pub fn new(enemies: Vec<Enemy>) -> Vec<MaterialDrops> {
|
||||
let mut mat_map = HashMap::<(MaterialCategory, MaterialKind), MaterialDrops>::new();
|
||||
let mut mat_map = HashMap::<(String, MaterialKind), MaterialDrops>::new();
|
||||
|
||||
for enemy in enemies {
|
||||
for drop in &enemy.drops {
|
||||
|
@ -211,23 +97,4 @@ impl MaterialDrops {
|
|||
.filter(|d| d.material.as_ref().map(|m| m.kind == kind).unwrap_or(false))
|
||||
.collect::<Vec<&EnemyDrop>>()
|
||||
}
|
||||
|
||||
pub fn texture(&self, game: &Game) -> String {
|
||||
if *game == Game::Kh1 {
|
||||
return GENERIC_MATERIAL_ICON.to_string();
|
||||
}
|
||||
|
||||
let category = self.category.get_category(game);
|
||||
let kind = self.kind.to_string();
|
||||
let path = format!(
|
||||
"{}/materials/{}/{}.webp",
|
||||
ASSETS_FOLDER_PATH, category, kind
|
||||
);
|
||||
let path = path::Path::new(&path);
|
||||
if path.exists() {
|
||||
format!("{}/{}", self.category.get_category(game), self.kind)
|
||||
} else {
|
||||
GENERIC_MATERIAL_ICON.to_string()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
22
src/kh1.rs
22
src/kh1.rs
|
@ -2,23 +2,25 @@ use std::sync::OnceLock;
|
|||
|
||||
use askama::Template;
|
||||
use blake3::Hash;
|
||||
use itertools::Itertools;
|
||||
|
||||
use crate::{
|
||||
RuntimeModule,
|
||||
common::{Game, enemy::Enemy, materials::MaterialDrops},
|
||||
common::{enemy::Enemy, materials::MaterialDrops},
|
||||
create_file, create_hashes,
|
||||
};
|
||||
|
||||
const MATERIAL_KINDS: &[&str] = &[
|
||||
"lucid", "spirit", "power", "blaze", "frost", "thunder", "shiny", "bright", "mystery", "gale",
|
||||
"mythril",
|
||||
];
|
||||
const DROPS_PATH: &str = "./input/kh1/drops";
|
||||
const ENEMIES_PATH: &str = "./input/kh1/enemies";
|
||||
static JS_HASH: OnceLock<Hash> = OnceLock::new();
|
||||
|
||||
#[derive(Template)]
|
||||
#[template(path = "pages/kh1/drops.html")]
|
||||
struct DropsTemplate {
|
||||
pub game: Game,
|
||||
pub drops: Vec<MaterialDrops>,
|
||||
pub material_kinds: Vec<String>,
|
||||
}
|
||||
|
||||
pub struct Module;
|
||||
|
@ -28,19 +30,11 @@ impl RuntimeModule for Module {
|
|||
tracing::info!("Loading enemy data from {}", ENEMIES_PATH);
|
||||
let enemies = Enemy::import(ENEMIES_PATH);
|
||||
|
||||
tracing::info!("Loading enemy drops data from {}", DROPS_PATH);
|
||||
let drops = MaterialDrops::new(enemies);
|
||||
let material_kinds = drops
|
||||
.iter()
|
||||
.map(|d| d.category.get_category(&Game::Kh1))
|
||||
.dedup()
|
||||
.collect();
|
||||
|
||||
tracing::info!("Generating the KH1 drops template");
|
||||
let drops_template = DropsTemplate {
|
||||
game: Game::Kh1,
|
||||
drops,
|
||||
material_kinds,
|
||||
};
|
||||
let drops_template = DropsTemplate { drops };
|
||||
|
||||
create_file("./out/kh1", "drops", drops_template.render().unwrap()).unwrap();
|
||||
}
|
||||
|
|
|
@ -3,11 +3,7 @@ use std::sync::OnceLock;
|
|||
use askama::Template;
|
||||
use blake3::Hash;
|
||||
|
||||
use crate::{
|
||||
RuntimeModule,
|
||||
common::{Game, materials::MaterialDrops},
|
||||
create_file, create_hashes,
|
||||
};
|
||||
use crate::{RuntimeModule, common::materials::MaterialDrops, create_file, create_hashes};
|
||||
|
||||
const MATERIAL_KINDS: &[&str] = &[
|
||||
"blazing",
|
||||
|
@ -29,9 +25,7 @@ static JS_HASH: OnceLock<Hash> = OnceLock::new();
|
|||
#[derive(Template)]
|
||||
#[template(path = "pages/kh2/drops.html")]
|
||||
struct DropsTemplate {
|
||||
pub game: Game,
|
||||
pub drops: Vec<MaterialDrops>,
|
||||
pub material_kinds: Vec<String>,
|
||||
}
|
||||
|
||||
pub struct Module;
|
||||
|
|
|
@ -24,7 +24,6 @@ mod kh2;
|
|||
mod kh3;
|
||||
|
||||
pub const VERSION: &str = env!("CARGO_PKG_VERSION");
|
||||
pub const ASSETS_FOLDER_PATH: &str = "./public/assets";
|
||||
|
||||
pub trait RuntimeModule {
|
||||
fn start_module();
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{% for kind in material_kinds %}
|
||||
{% for kind in MATERIAL_KINDS %}
|
||||
<input
|
||||
type="checkbox"
|
||||
id="{{ kind }}Filter"
|
||||
|
|
|
@ -3,15 +3,18 @@
|
|||
{% if drops.len() > 0 %}
|
||||
<div
|
||||
class="category-wrapper"
|
||||
data-mat-kind="{{ drop.category.get_category(game) }}"
|
||||
data-mat-kind="{{ drop.category }}"
|
||||
data-mat-type="{{ label }}"
|
||||
>
|
||||
<div class="category">
|
||||
<img
|
||||
src="../public/assets/materials/{{ drop.texture(game) }}.webp"
|
||||
src="../public/assets/materials/{{ drop.category }}/{{ label }}.webp"
|
||||
width="64"
|
||||
height="64"
|
||||
/>
|
||||
<!-- <h1> -->
|
||||
<!-- {{ drop.category|capitalize +}} {{+ label|capitalize }} -->
|
||||
<!-- </h1> -->
|
||||
<h1>{{ drop.name }}</h1>
|
||||
<button onclick="track(this)">Start tracking</button>
|
||||
</div>
|
||||
|
|
Loading…
Reference in New Issue