From bf1a4e1c0e427683a994ad55aa7353f4935c333a Mon Sep 17 00:00:00 2001 From: Wynd Date: Mon, 30 Jun 2025 17:52:33 +0300 Subject: [PATCH] Some room spawns setups for KH1 enemies --- input/kh1/enemies/air-pirate.toml | 1 - input/kh1/enemies/air-soldier.toml | 3 +-- input/kh1/enemies/bandit.toml | 1 + input/kh1/enemies/bouncywild.toml | 4 ++++ input/kh1/enemies/darkball.toml | 9 +++++++++ input/kh1/enemies/defender.toml | 1 + input/kh1/enemies/green-requiem.toml | 1 + input/kh1/enemies/pirate.toml | 1 + input/kh1/enemies/powerwild.toml | 1 + input/kh1/enemies/red-nocturne.toml | 13 +------------ input/kh1/enemies/shadow.toml | 7 +++++-- input/kh1/enemies/soldier.toml | 4 ++-- src/common/enemy.rs | 3 ++- 13 files changed, 29 insertions(+), 20 deletions(-) diff --git a/input/kh1/enemies/air-pirate.toml b/input/kh1/enemies/air-pirate.toml index 6f025db..8369e0a 100644 --- a/input/kh1/enemies/air-pirate.toml +++ b/input/kh1/enemies/air-pirate.toml @@ -2,7 +2,6 @@ name = "Air Pirate" [[world]] name = "Neverland" -room = "" [[drops]] name = "Hi-Potion" diff --git a/input/kh1/enemies/air-soldier.toml b/input/kh1/enemies/air-soldier.toml index 89ee0b8..6fb7c7a 100644 --- a/input/kh1/enemies/air-soldier.toml +++ b/input/kh1/enemies/air-soldier.toml @@ -1,8 +1,7 @@ name = "Air Soldier" [[world]] -name = "" -room = "" +name = "Wonderland" [[drops]] name = "Potion" diff --git a/input/kh1/enemies/bandit.toml b/input/kh1/enemies/bandit.toml index 039d1a1..8656cd8 100644 --- a/input/kh1/enemies/bandit.toml +++ b/input/kh1/enemies/bandit.toml @@ -2,6 +2,7 @@ name = "Bandit" [[world]] name = "Agrabah" +room = ["Desert: Cave", "Treasure Room", "Lamp Chamber"] [[world]] name = "Monstro" diff --git a/input/kh1/enemies/bouncywild.toml b/input/kh1/enemies/bouncywild.toml index 704ae04..160ea02 100644 --- a/input/kh1/enemies/bouncywild.toml +++ b/input/kh1/enemies/bouncywild.toml @@ -3,6 +3,10 @@ name = "Bouncywild" [[world]] name = "Deep Jungle" +[[world]] +name = "Monstro" +room = ["Bowels", "Stomach"] + [[world]] name = "End of the World" diff --git a/input/kh1/enemies/darkball.toml b/input/kh1/enemies/darkball.toml index 3d52c15..34aef05 100644 --- a/input/kh1/enemies/darkball.toml +++ b/input/kh1/enemies/darkball.toml @@ -2,6 +2,11 @@ name = "Darkball" [[world]] name = "Traverse Town" +room = ["3rd District", "Gizmo Shop"] + +[[world]] +name = "Agrabah" +room = ["Bazaar", "Palace Gates"] [[world]] name = "Hollow Bastion" @@ -9,6 +14,10 @@ name = "Hollow Bastion" [[world]] name = "End of the World" +[[world]] +name = "Neverland" +room = ["Ship: Freezer", "Captain's Cabin"] + [[drops]] name = "Hi-Potion" kind = "item" diff --git a/input/kh1/enemies/defender.toml b/input/kh1/enemies/defender.toml index d7ea895..01b1109 100644 --- a/input/kh1/enemies/defender.toml +++ b/input/kh1/enemies/defender.toml @@ -2,6 +2,7 @@ name = "Defender" [[world]] name = "Traverse Town" +room = ["3rd District", "Hotel Hallway", "Gizmo Shop"] [[world]] name = "Hollow Bastion" diff --git a/input/kh1/enemies/green-requiem.toml b/input/kh1/enemies/green-requiem.toml index 3cdeb34..61448c9 100644 --- a/input/kh1/enemies/green-requiem.toml +++ b/input/kh1/enemies/green-requiem.toml @@ -11,6 +11,7 @@ name = "Monstro" [[world]] name = "Deep Jungle" +room = ["Jungle: Cliff"] [[world]] name = "Hollow Bastion" diff --git a/input/kh1/enemies/pirate.toml b/input/kh1/enemies/pirate.toml index 1c82b9a..e20424f 100644 --- a/input/kh1/enemies/pirate.toml +++ b/input/kh1/enemies/pirate.toml @@ -2,6 +2,7 @@ name = "Pirate" [[world]] name = "Neverland" +room = ["Captain's Cabin"] [[world]] name = "Monstro" diff --git a/input/kh1/enemies/powerwild.toml b/input/kh1/enemies/powerwild.toml index 866e5d0..684843c 100644 --- a/input/kh1/enemies/powerwild.toml +++ b/input/kh1/enemies/powerwild.toml @@ -5,6 +5,7 @@ name = "Deep Jungle" [[world]] name = "Monstro" +room = ["Chamber 5", "Chamber 6"] [[world]] name = "End of the World" diff --git a/input/kh1/enemies/red-nocturne.toml b/input/kh1/enemies/red-nocturne.toml index 113ddd7..55d6de9 100644 --- a/input/kh1/enemies/red-nocturne.toml +++ b/input/kh1/enemies/red-nocturne.toml @@ -1,19 +1,8 @@ name = "Red Nocturne" -[[world]] -name = "Traverse Town" - -[[world]] -name = "Wonderland" - -[[world]] -name = "Agrabah" - -[[world]] -name = "Hollow Bastion" - [[world]] name = "Monstro" +room = ["Chamber 6"] [[world]] name = "End of the World" diff --git a/input/kh1/enemies/shadow.toml b/input/kh1/enemies/shadow.toml index 431434a..94346dc 100644 --- a/input/kh1/enemies/shadow.toml +++ b/input/kh1/enemies/shadow.toml @@ -1,8 +1,11 @@ name = "Shadow" [[world]] -name = "Traverse Town" -room = "" +name = "Wonderland" + +[[world]] +name = "Neverland" +room = ["Ship: Freezer"] [[drops]] name = "Potion" diff --git a/input/kh1/enemies/soldier.toml b/input/kh1/enemies/soldier.toml index 84c9b2d..20245dc 100644 --- a/input/kh1/enemies/soldier.toml +++ b/input/kh1/enemies/soldier.toml @@ -1,8 +1,8 @@ name = "Soldier" [[world]] -name = "Traverse Town" -room = "" +name = "Agrabah" +room = ["Main Street"] [[drops]] name = "Spirit Shard" diff --git a/src/common/enemy.rs b/src/common/enemy.rs index 5bde159..427dc62 100644 --- a/src/common/enemy.rs +++ b/src/common/enemy.rs @@ -87,5 +87,6 @@ impl Display for EnemyDropChance { #[derive(Debug, Deserialize, PartialEq, Eq)] pub struct SpawnLocation { pub name: String, - pub room: Option, + #[serde(default)] + pub rooms: Vec, }