diff --git a/input/kh3/enemies/anchor-raider.toml b/input/kh3/enemies/anchor-raider.toml index 1100c20..8cfabff 100644 --- a/input/kh3/enemies/anchor-raider.toml +++ b/input/kh3/enemies/anchor-raider.toml @@ -2,6 +2,7 @@ name = "Anchor Raider" [[world]] name = "The Caribbean" +rooms = ["Huddled Isles: Battlegate 10", "Luck Island"] [[drops]] name = "Wellspring Gem" diff --git a/input/kh3/enemies/chief-puff.toml b/input/kh3/enemies/chief-puff.toml index ab7eb87..0cd8801 100644 --- a/input/kh3/enemies/chief-puff.toml +++ b/input/kh3/enemies/chief-puff.toml @@ -2,6 +2,7 @@ name = "Chief Puff" [[world]] name = "Kingdom of Corona" +rooms = ["The Forest | Hills"] [[drops]] name = "Lucid Stone" diff --git a/input/kh3/enemies/earth-core.toml b/input/kh3/enemies/earth-core.toml index 4de58b3..574f99f 100644 --- a/input/kh3/enemies/earth-core.toml +++ b/input/kh3/enemies/earth-core.toml @@ -8,6 +8,7 @@ name = "Kingdom of Corona" [[world]] name = "The Caribbean" +rooms = ["Huddled Isles: Battlegate 10"] [[drops]] name = "Pulsing Shard" diff --git a/input/kh3/enemies/flame-core.toml b/input/kh3/enemies/flame-core.toml index 518c0b2..e54ce05 100644 --- a/input/kh3/enemies/flame-core.toml +++ b/input/kh3/enemies/flame-core.toml @@ -2,6 +2,7 @@ name = "Flame Core" [[world]] name = "Olympus" +rooms = ["Realm of Gods: Battlegate 1"] [[world]] name = "Monstropolis" diff --git a/input/kh3/enemies/high-soldier.toml b/input/kh3/enemies/high-soldier.toml index 5ef2687..2bc089a 100644 --- a/input/kh3/enemies/high-soldier.toml +++ b/input/kh3/enemies/high-soldier.toml @@ -2,7 +2,7 @@ name = "High Soldier" [[world]] name = "San Fransokyo" -rooms = ["Battlegate 12", "North District (Night)"] +rooms = ["Battlegate 12", "North District"] [[drops]] name = "Wellspring Gem" diff --git a/input/kh3/enemies/malachite-bolero.toml b/input/kh3/enemies/malachite-bolero.toml index 12aff02..121ca4c 100644 --- a/input/kh3/enemies/malachite-bolero.toml +++ b/input/kh3/enemies/malachite-bolero.toml @@ -2,6 +2,7 @@ name = "Malachite Bolero" [[world]] name = "Kingdom of Corona" +rooms = ["The Forest | Tower", "The Forest | Hills"] [[world]] name = "The Caribbean" diff --git a/input/kh3/enemies/marine-rumba.toml b/input/kh3/enemies/marine-rumba.toml index 945441e..55e512f 100644 --- a/input/kh3/enemies/marine-rumba.toml +++ b/input/kh3/enemies/marine-rumba.toml @@ -5,6 +5,7 @@ name = "Kingdom of Corona" [[world]] name = "The Caribbean" +rooms = ["Huddled Isles: Battlegate 10"] [[drops]] name = "Soothing Stone" diff --git a/input/kh3/enemies/pogo-shovel.toml b/input/kh3/enemies/pogo-shovel.toml index 270fff9..e262b64 100644 --- a/input/kh3/enemies/pogo-shovel.toml +++ b/input/kh3/enemies/pogo-shovel.toml @@ -2,6 +2,8 @@ name = "Pogo Shovel" [[world]] name = "San Fransokyo" +rooms = ["North District"] +note = "Straight from spawn until the end of the road and to the left on the grass" [[world]] name = "Monstropolis" diff --git a/input/kh3/enemies/powerwild.toml b/input/kh3/enemies/powerwild.toml index 351f7b5..6d56a8d 100644 --- a/input/kh3/enemies/powerwild.toml +++ b/input/kh3/enemies/powerwild.toml @@ -2,6 +2,7 @@ name = "Powerwild" [[world]] name = "The Caribbean" +rooms = ["Isla Verdemontana"] [[drops]] name = "Pulsing Shard" diff --git a/input/kh3/enemies/puffball.toml b/input/kh3/enemies/puffball.toml index 5a54734..cb038ca 100644 --- a/input/kh3/enemies/puffball.toml +++ b/input/kh3/enemies/puffball.toml @@ -2,6 +2,7 @@ name = "Puffball" [[world]] name = "Kingdom of Corona" +rooms = ["The Forest | Tower", "The Forest | Hills"] [[drops]] name = "Lucid Shard" diff --git a/input/kh3/enemies/satyr.toml b/input/kh3/enemies/satyr.toml index 4e16fd3..ae54dbe 100644 --- a/input/kh3/enemies/satyr.toml +++ b/input/kh3/enemies/satyr.toml @@ -2,6 +2,7 @@ name = "Satyr" [[world]] name = "Olympus" +rooms = ["Realm of Gods: Battlegate 1"] [[world]] name = "Arendelle" diff --git a/input/kh3/enemies/spear-lizard.toml b/input/kh3/enemies/spear-lizard.toml index 15868df..8780399 100644 --- a/input/kh3/enemies/spear-lizard.toml +++ b/input/kh3/enemies/spear-lizard.toml @@ -2,7 +2,7 @@ name = "Spear Lizard" [[world]] name = "The Caribbean" -rooms = ["Battlegate 10", "Isla de los Mastiles"] +rooms = ["Huddled Isles: Battlegate 10", "Isla de los Mastiles"] [[drops]] name = "Soothing Stone" diff --git a/input/kh3/enemies/tireblade.toml b/input/kh3/enemies/tireblade.toml index fa71b40..bd34811 100644 --- a/input/kh3/enemies/tireblade.toml +++ b/input/kh3/enemies/tireblade.toml @@ -2,6 +2,7 @@ name = "Tireblade" [[world]] name = "San Fransokyo" +rooms = ["Battlegate 12"] [[drops]] name = "Lightning Stone" diff --git a/input/kh3/enemies/toy-trooper.toml b/input/kh3/enemies/toy-trooper.toml new file mode 100644 index 0000000..bdbad34 --- /dev/null +++ b/input/kh3/enemies/toy-trooper.toml @@ -0,0 +1,31 @@ +name = "Toy Trooper" + +[[world]] +name = "Toy Box" + +[[drops]] +name = "Wellspring Gem" +kind = "material" +chance = 20 + + [drops.material] + category = "wellspring" + kind = "gem" + +[[drops]] +name = "Soothing Shard" +kind = "material" +chance = 12 + + [drops.material] + category = "soothing" + kind = "shard" + +[[drops]] +name = "Wellspring Shard" +kind = "material" +chance = 8 + + [drops.material] + category = "wellspring" + kind = "shard" diff --git a/input/kh3/enemies/vaporfly.toml b/input/kh3/enemies/vaporfly.toml index 071da32..985ba44 100644 --- a/input/kh3/enemies/vaporfly.toml +++ b/input/kh3/enemies/vaporfly.toml @@ -2,6 +2,7 @@ name = "Vaporfly" [[world]] name = "The Caribbean" +rooms = ["Huddled Isles: Battlegate 10"] [[drops]] name = "Lucid Stone" diff --git a/input/kh3/enemies/water-core.toml b/input/kh3/enemies/water-core.toml index 84c331e..da323d2 100644 --- a/input/kh3/enemies/water-core.toml +++ b/input/kh3/enemies/water-core.toml @@ -2,12 +2,15 @@ name = "Water Core" [[world]] name = "Olympus" +rooms = ["Realm of Gods: Battlegate 1"] [[world]] name = "Kingdom of Corona" +rooms = ["The Forest | Hills"] [[world]] name = "The Caribbean" +rooms = ["Huddled Isles: Battlegate 10"] [[drops]] name = "Soothing Shard" diff --git a/public/assets/enemies/anchor_raider.webp b/public/assets/enemies/anchor_raider.webp new file mode 100644 index 0000000..7917be2 Binary files /dev/null and b/public/assets/enemies/anchor_raider.webp differ diff --git a/public/assets/enemies/bizarre_archer.webp b/public/assets/enemies/bizarre_archer.webp new file mode 100644 index 0000000..af8d9af Binary files /dev/null and b/public/assets/enemies/bizarre_archer.webp differ diff --git a/public/assets/enemies/chief_puff.webp b/public/assets/enemies/chief_puff.webp new file mode 100644 index 0000000..9c8fa15 Binary files /dev/null and b/public/assets/enemies/chief_puff.webp differ diff --git a/public/assets/enemies/earth_core.webp b/public/assets/enemies/earth_core.webp new file mode 100644 index 0000000..64daf16 Binary files /dev/null and b/public/assets/enemies/earth_core.webp differ diff --git a/public/assets/enemies/flame_core.webp b/public/assets/enemies/flame_core.webp new file mode 100644 index 0000000..c8aec14 Binary files /dev/null and b/public/assets/enemies/flame_core.webp differ diff --git a/public/assets/enemies/flood.webp b/public/assets/enemies/flood.webp new file mode 100644 index 0000000..9b84c82 Binary files /dev/null and b/public/assets/enemies/flood.webp differ diff --git a/public/assets/enemies/flowersnake.webp b/public/assets/enemies/flowersnake.webp new file mode 100644 index 0000000..d744576 Binary files /dev/null and b/public/assets/enemies/flowersnake.webp differ diff --git a/public/assets/enemies/fluttering.webp b/public/assets/enemies/fluttering.webp new file mode 100644 index 0000000..f832e5a Binary files /dev/null and b/public/assets/enemies/fluttering.webp differ diff --git a/public/assets/enemies/frost_serpent.webp b/public/assets/enemies/frost_serpent.webp new file mode 100644 index 0000000..b4a9865 Binary files /dev/null and b/public/assets/enemies/frost_serpent.webp differ diff --git a/public/assets/enemies/gold_beat.webp b/public/assets/enemies/gold_beat.webp new file mode 100644 index 0000000..922e66a Binary files /dev/null and b/public/assets/enemies/gold_beat.webp differ diff --git a/public/assets/enemies/helmed_body.webp b/public/assets/enemies/helmed_body.webp new file mode 100644 index 0000000..a749d1e Binary files /dev/null and b/public/assets/enemies/helmed_body.webp differ diff --git a/public/assets/enemies/high_soldier.webp b/public/assets/enemies/high_soldier.webp new file mode 100644 index 0000000..80eb0d0 Binary files /dev/null and b/public/assets/enemies/high_soldier.webp differ diff --git a/public/assets/enemies/kh3/air_soldier.webp b/public/assets/enemies/kh3/air_soldier.webp new file mode 100644 index 0000000..bf9bb84 Binary files /dev/null and b/public/assets/enemies/kh3/air_soldier.webp differ diff --git a/public/assets/enemies/kh3/large_body.webp b/public/assets/enemies/kh3/large_body.webp new file mode 100644 index 0000000..d89699d Binary files /dev/null and b/public/assets/enemies/kh3/large_body.webp differ diff --git a/public/assets/enemies/kh3/neoshadow.webp b/public/assets/enemies/kh3/neoshadow.webp new file mode 100644 index 0000000..b02b19a Binary files /dev/null and b/public/assets/enemies/kh3/neoshadow.webp differ diff --git a/public/assets/enemies/kh3/shadow.webp b/public/assets/enemies/kh3/shadow.webp new file mode 100644 index 0000000..a1e5904 Binary files /dev/null and b/public/assets/enemies/kh3/shadow.webp differ diff --git a/public/assets/enemies/kh3/soldier.webp b/public/assets/enemies/kh3/soldier.webp new file mode 100644 index 0000000..49a859c Binary files /dev/null and b/public/assets/enemies/kh3/soldier.webp differ diff --git a/public/assets/enemies/malachite_bolero.webp b/public/assets/enemies/malachite_bolero.webp new file mode 100644 index 0000000..d93ef47 Binary files /dev/null and b/public/assets/enemies/malachite_bolero.webp differ diff --git a/public/assets/enemies/marine_rumba.webp b/public/assets/enemies/marine_rumba.webp new file mode 100644 index 0000000..a5213e7 Binary files /dev/null and b/public/assets/enemies/marine_rumba.webp differ diff --git a/public/assets/enemies/marionette.webp b/public/assets/enemies/marionette.webp new file mode 100644 index 0000000..b07317b Binary files /dev/null and b/public/assets/enemies/marionette.webp differ diff --git a/public/assets/enemies/mechanitaur.webp b/public/assets/enemies/mechanitaur.webp new file mode 100644 index 0000000..d32cc12 Binary files /dev/null and b/public/assets/enemies/mechanitaur.webp differ diff --git a/public/assets/enemies/parasol_beauty.webp b/public/assets/enemies/parasol_beauty.webp new file mode 100644 index 0000000..db6afdb Binary files /dev/null and b/public/assets/enemies/parasol_beauty.webp differ diff --git a/public/assets/enemies/pogo_shovel.webp b/public/assets/enemies/pogo_shovel.webp new file mode 100644 index 0000000..ed33053 Binary files /dev/null and b/public/assets/enemies/pogo_shovel.webp differ diff --git a/public/assets/enemies/puffball.webp b/public/assets/enemies/puffball.webp new file mode 100644 index 0000000..98b14d9 Binary files /dev/null and b/public/assets/enemies/puffball.webp differ diff --git a/public/assets/enemies/satyr.webp b/public/assets/enemies/satyr.webp new file mode 100644 index 0000000..55e01aa Binary files /dev/null and b/public/assets/enemies/satyr.webp differ diff --git a/public/assets/enemies/spear_lizard.webp b/public/assets/enemies/spear_lizard.webp new file mode 100644 index 0000000..e248a33 Binary files /dev/null and b/public/assets/enemies/spear_lizard.webp differ diff --git a/public/assets/enemies/spiked_turtletoad.webp b/public/assets/enemies/spiked_turtletoad.webp new file mode 100644 index 0000000..6108835 Binary files /dev/null and b/public/assets/enemies/spiked_turtletoad.webp differ diff --git a/public/assets/enemies/tireblade.webp b/public/assets/enemies/tireblade.webp new file mode 100644 index 0000000..1db14ee Binary files /dev/null and b/public/assets/enemies/tireblade.webp differ diff --git a/public/assets/enemies/toy_trooper.webp b/public/assets/enemies/toy_trooper.webp new file mode 100644 index 0000000..3fe8506 Binary files /dev/null and b/public/assets/enemies/toy_trooper.webp differ diff --git a/public/assets/enemies/turtletoad.webp b/public/assets/enemies/turtletoad.webp new file mode 100644 index 0000000..5527fb7 Binary files /dev/null and b/public/assets/enemies/turtletoad.webp differ diff --git a/public/assets/enemies/vaporfly.webp b/public/assets/enemies/vaporfly.webp new file mode 100644 index 0000000..1031e7a Binary files /dev/null and b/public/assets/enemies/vaporfly.webp differ diff --git a/public/assets/enemies/vermilion_samba.webp b/public/assets/enemies/vermilion_samba.webp new file mode 100644 index 0000000..ac69e40 Binary files /dev/null and b/public/assets/enemies/vermilion_samba.webp differ diff --git a/public/assets/enemies/water_core.webp b/public/assets/enemies/water_core.webp new file mode 100644 index 0000000..f8fc2d8 Binary files /dev/null and b/public/assets/enemies/water_core.webp differ diff --git a/public/assets/enemies/winterhorn.webp b/public/assets/enemies/winterhorn.webp new file mode 100644 index 0000000..382fc51 Binary files /dev/null and b/public/assets/enemies/winterhorn.webp differ diff --git a/public/styles/ddd/boards.css b/public/styles/ddd/boards.css index 0c20668..f672bcf 100644 --- a/public/styles/ddd/boards.css +++ b/public/styles/ddd/boards.css @@ -128,8 +128,7 @@ table.board { border-radius: 6px; padding: 8px; position: absolute; - z-index: 1; - bottom: 125%; + z-index: 12; left: -50%; opacity: 0; transition: opacity 0.3s; diff --git a/src/common/enemy.rs b/src/common/enemy.rs index 9260d91..f7e6a0f 100644 --- a/src/common/enemy.rs +++ b/src/common/enemy.rs @@ -1,7 +1,12 @@ -use std::{fmt::Display, path::PathBuf}; +use std::{ + fmt::Display, + path::{self, PathBuf}, +}; use serde::Deserialize; +use crate::ASSETS_FOLDER_PATH; + use super::{Game, materials::MaterialDetails}; #[derive(Default, Debug, Deserialize, PartialEq, Eq, PartialOrd, Ord, Clone)] @@ -57,8 +62,16 @@ pub struct EnemyDrop { } impl EnemyDrop { - pub fn texture(&self) -> String { - self.from.replace(" ", "_").to_lowercase() + pub fn texture(&self, game: &Game) -> String { + let filename = self.from.replace(" ", "_").to_lowercase(); + let path = format!("{}/enemies/{}/{}.webp", ASSETS_FOLDER_PATH, game, filename); + let path = path::Path::new(&path); + + if path.exists() { + return format!("{game}/{filename}"); + } else { + return filename; + } } } diff --git a/templates/macros/common/drops.html b/templates/macros/common/drops.html index 1927f29..48de217 100644 --- a/templates/macros/common/drops.html +++ b/templates/macros/common/drops.html @@ -20,7 +20,7 @@