From 1367be0c0e86ee7986038acac8de1618c093dd1a Mon Sep 17 00:00:00 2001 From: hodasemi Date: Fri, 11 Apr 2025 11:29:09 +0200 Subject: [PATCH] Start applying changes --- .../src/abilities/ability_right_side.rs | 27 ++-- character_window/src/abilities/content.rs | 5 +- character_window/src/abilities/mod.rs | 48 ++++--- character_window/src/character/mod.rs | 3 +- character_window/src/content.rs | 45 ++++-- character_window/src/inventory/mod.rs | 13 +- character_window/src/lib.rs | 132 ++++++++++++------ character_window/src/page_content.rs | 7 +- character_window/src/traits.rs | 14 +- rpg_components/src/items/ability_addon.rs | 15 +- rpg_components/src/items/ability_book.rs | 11 +- rpg_components/src/items/item.rs | 21 +-- rpg_components/src/items/jewel.rs | 12 +- rpg_components/src/items/tooltip.rs | 4 +- 14 files changed, 229 insertions(+), 128 deletions(-) diff --git a/character_window/src/abilities/ability_right_side.rs b/character_window/src/abilities/ability_right_side.rs index 871bd46..c9ebdeb 100644 --- a/character_window/src/abilities/ability_right_side.rs +++ b/character_window/src/abilities/ability_right_side.rs @@ -28,23 +28,22 @@ impl AbilityPageRightSide { "fourth_ability", ]; - pub fn new(world: &mut World, hero: Entity, reference: &Weak) -> Result { + pub fn new( + commands: &mut Commands, + gui_handler: &mut GuiHandler, + item_settings: &mut ItemSettings, + engine_settings: &mut EngineSettings, + context: &mut Context, + hero: Entity, + reference: &Weak, + ) -> Result { let snippet = GuiSnippet::from_str( - world, + commands, + gui_handler, include_str!("../../resources/abilities/right_side.xml"), )?; - let color_settings = world - .resources - .get::() - .rarity_color_settings - .clone(); - - let (gui_handler, engine_settings, context): ( - &mut GuiHandler, - &mut EngineSettings, - &mut Context, - ) = world.resources.get_mut()?; + let color_settings = item_settings.rarity_color_settings.clone(); Self::rarity_icon_background(gui_handler, &snippet, "common", color_settings.common)?; Self::rarity_icon_background(gui_handler, &snippet, "uncommon", color_settings.uncommon)?; @@ -64,7 +63,7 @@ impl AbilityPageRightSide { button.set_callback({ let reference = reference.clone(); - move |world: &mut World| { + move |commands, gui_handler| { if let Some(menu) = reference.upgrade() { let mut tabs = menu.tabs_mut(); let abilities = tabs.abilities::(); diff --git a/character_window/src/abilities/content.rs b/character_window/src/abilities/content.rs index 8d79097..49a386a 100644 --- a/character_window/src/abilities/content.rs +++ b/character_window/src/abilities/content.rs @@ -17,7 +17,8 @@ use super::AbilityPage; impl Content { fn show_addon_tooltip( - world: &mut World, + commands: &mut Commands, + gui_handler: &mut GuiHandler, hero: Entity, addon_index: usize, reference: &Weak, @@ -30,7 +31,7 @@ impl Content { let target_y = y; let addon = inventory.addon_at(addon_index); - let gui = addon.create_tooltip(world, (target_x, target_y))?; + let gui = addon.create_tooltip(commands, gui_handler, (target_x, target_y))?; gui.enable(world)?; gui.perform_single_check(world.resources.get_mut()?, x, y)?; diff --git a/character_window/src/abilities/mod.rs b/character_window/src/abilities/mod.rs index a455330..26a2446 100644 --- a/character_window/src/abilities/mod.rs +++ b/character_window/src/abilities/mod.rs @@ -35,20 +35,21 @@ pub struct AbilityPage { impl AbilityPage { pub fn new( - world: &mut World, + commands: &mut Commands, + gui_handler: &mut GuiHandler, hero: Entity, reference: Weak, close: &Arc