More info for drops in KH3, enemy images and game specific overwrites

master
Wynd 2025-10-27 01:27:58 +02:00
parent f48a56c70b
commit e6cf0e3067
53 changed files with 67 additions and 8 deletions

View File

@ -2,6 +2,7 @@ name = "Anchor Raider"
[[world]]
name = "The Caribbean"
rooms = ["Huddled Isles: Battlegate 10", "Luck Island"]
[[drops]]
name = "Wellspring Gem"

View File

@ -2,6 +2,7 @@ name = "Chief Puff"
[[world]]
name = "Kingdom of Corona"
rooms = ["The Forest | Hills"]
[[drops]]
name = "Lucid Stone"

View File

@ -8,6 +8,7 @@ name = "Kingdom of Corona"
[[world]]
name = "The Caribbean"
rooms = ["Huddled Isles: Battlegate 10"]
[[drops]]
name = "Pulsing Shard"

View File

@ -2,6 +2,7 @@ name = "Flame Core"
[[world]]
name = "Olympus"
rooms = ["Realm of Gods: Battlegate 1"]
[[world]]
name = "Monstropolis"

View File

@ -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"

View File

@ -2,6 +2,7 @@ name = "Malachite Bolero"
[[world]]
name = "Kingdom of Corona"
rooms = ["The Forest | Tower", "The Forest | Hills"]
[[world]]
name = "The Caribbean"

View File

@ -5,6 +5,7 @@ name = "Kingdom of Corona"
[[world]]
name = "The Caribbean"
rooms = ["Huddled Isles: Battlegate 10"]
[[drops]]
name = "Soothing Stone"

View File

@ -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"

View File

@ -2,6 +2,7 @@ name = "Powerwild"
[[world]]
name = "The Caribbean"
rooms = ["Isla Verdemontana"]
[[drops]]
name = "Pulsing Shard"

View File

@ -2,6 +2,7 @@ name = "Puffball"
[[world]]
name = "Kingdom of Corona"
rooms = ["The Forest | Tower", "The Forest | Hills"]
[[drops]]
name = "Lucid Shard"

View File

@ -2,6 +2,7 @@ name = "Satyr"
[[world]]
name = "Olympus"
rooms = ["Realm of Gods: Battlegate 1"]
[[world]]
name = "Arendelle"

View File

@ -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"

View File

@ -2,6 +2,7 @@ name = "Tireblade"
[[world]]
name = "San Fransokyo"
rooms = ["Battlegate 12"]
[[drops]]
name = "Lightning Stone"

View File

@ -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"

View File

@ -2,6 +2,7 @@ name = "Vaporfly"
[[world]]
name = "The Caribbean"
rooms = ["Huddled Isles: Battlegate 10"]
[[drops]]
name = "Lucid Stone"

View File

@ -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"

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

View File

@ -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;

View File

@ -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;
}
}
}

View File

@ -20,7 +20,7 @@
<div class="enemy">
<div class="drop">
<div
style="background-image: url('../public/assets/enemies/{{ drop.texture() }}.webp');"
style="background-image: url('../public/assets/enemies/{{ drop.texture(data.game) }}.webp');"
></div>
<span>{{ drop.from +}}</span>
<span>{{+ drop.chance }}</span>