diff --git a/Cargo.toml b/Cargo.toml index cb16349..b13462f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -8,17 +8,17 @@ edition = "2021" [features] debug = [] -default = ["rltk/opengl", "rltk/serde", "rltk/threaded"] -curses = ["rltk/curses", "rltk/serde"] +default = ["bracket-lib/opengl", "bracket-lib/serde", "bracket-lib/threaded"] +curses = ["bracket-lib/curses", "bracket-lib/serde"] # WebAssembly Build -wasm = ["getrandom/js", "rltk/opengl", "rltk/serde"] +wasm = ["getrandom/js", "bracket-lib/opengl", "bracket-lib/serde"] [dependencies] getrandom = { version = "0.2.4", optional = true } lazy_static = "1.4.0" regex = "1.5.4" -rltk = { version = "0.8.1", default-features = false } +bracket-lib = { version = "0.8.1", default-features = false } specs = { version = "0.16.1", features = ["serde"] } specs-derive = "0.4.1" serde = { version = "1.0.93", features = ["derive"] } diff --git a/src/colors.rs b/src/colors.rs index 85d6168..a8e810c 100644 --- a/src/colors.rs +++ b/src/colors.rs @@ -1,6 +1,6 @@ //! Color constants to replace more verbose methods of defining colors in the game. -//! These constants replace the `::rltk::RGB` constructor functions -use ::rltk::prelude::*; +//! These constants replace the `::bracket_lib::RGB` constructor functions +use ::bracket_lib::prelude::*; const fn new(r: f32, g: f32, b: f32) -> RGB { RGB { r, g, b } diff --git a/src/components.rs b/src/components.rs index c1805e5..bdbd986 100644 --- a/src/components.rs +++ b/src/components.rs @@ -5,7 +5,7 @@ mod tags; use std::collections::HashMap; -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::serde::{Deserialize, Serialize}; use ::specs::error::NoError; use ::specs::prelude::*; @@ -45,7 +45,7 @@ impl From for Point { #[derive(Component, ConvertSaveload, Clone)] pub struct Renderable { - pub glyph: rltk::FontCharType, + pub glyph: FontCharType, pub fg: RGB, pub bg: RGB, pub render_order: i32, diff --git a/src/damage_system.rs b/src/damage_system.rs index e59c3f3..21d06af 100644 --- a/src/damage_system.rs +++ b/src/damage_system.rs @@ -1,3 +1,4 @@ +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{ @@ -118,7 +119,7 @@ pub fn delete_the_dead(ecs: &mut World) { ecs.read_storage::().get(spell_entity) { Targets::Tiles { - tiles: aoe_tiles(&map, rltk::Point::new(pos.x, pos.y), aoe.radius), + tiles: aoe_tiles(&map, Point::new(pos.x, pos.y), aoe.radius), } } else { Targets::Tile { diff --git a/src/effects.rs b/src/effects.rs index 7a682f0..b3a7e99 100644 --- a/src/effects.rs +++ b/src/effects.rs @@ -9,7 +9,7 @@ mod triggers; use std::collections::{HashSet, VecDeque}; use std::sync::Mutex; -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; pub use targeting::*; diff --git a/src/effects/damage.rs b/src/effects/damage.rs index c518327..75d3438 100644 --- a/src/effects/damage.rs +++ b/src/effects/damage.rs @@ -1,4 +1,4 @@ -use ::rltk::Point; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use ::specs::saveload::{MarkedBuilder, SimpleMarker}; @@ -26,7 +26,7 @@ pub fn inflict_damage(ecs: &mut World, damage: &EffectSpawner, target: Entity) { add_effect( None, EffectType::Particle { - glyph: rltk::to_cp437('‼'), + glyph: to_cp437('‼'), fg: colors::ORANGE, bg: colors::BLACK, lifespan: 200.0, @@ -139,7 +139,7 @@ pub fn death(ecs: &mut World, effect: &EffectSpawner, target: Entity) { add_effect( None, EffectType::Particle { - glyph: ::rltk::to_cp437('░'), + glyph: to_cp437('░'), fg: colors::GOLD, bg: colors::BLACK, lifespan: 400.0, @@ -165,7 +165,7 @@ pub fn heal_damage(ecs: &mut World, heal: &EffectSpawner, target: Entity) { add_effect( None, EffectType::Particle { - glyph: ::rltk::to_cp437('‼'), + glyph: to_cp437('‼'), fg: colors::GREEN, bg: colors::BLACK, lifespan: 200.0, @@ -184,7 +184,7 @@ pub fn restore_mana(ecs: &mut World, mana: &EffectSpawner, target: Entity) { add_effect( None, EffectType::Particle { - glyph: ::rltk::to_cp437('‼'), + glyph: to_cp437('‼'), fg: colors::BLUE, bg: colors::BLACK, lifespan: 200.0, diff --git a/src/effects/targeting.rs b/src/effects/targeting.rs index 78a7d52..b3faad8 100644 --- a/src/effects/targeting.rs +++ b/src/effects/targeting.rs @@ -1,3 +1,4 @@ +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{Equipped, InBackpack, Position}; @@ -13,8 +14,8 @@ pub fn entity_position(ecs: &World, target: Entity) -> Option { None } -pub fn aoe_tiles(map: &Map, target: ::rltk::Point, radius: i32) -> Vec { - let mut blast_tiles = ::rltk::field_of_view(target, radius, &*map); +pub fn aoe_tiles(map: &Map, target: Point, radius: i32) -> Vec { + let mut blast_tiles = field_of_view(target, radius, &*map); blast_tiles.retain(|p| p.x > 0 && p.x < map.width - 1 && p.y > 0 && p.y < map.height - 1); let mut result = Vec::new(); for t in blast_tiles.iter() { diff --git a/src/effects/triggers.rs b/src/effects/triggers.rs index 750eee5..13cb4b2 100644 --- a/src/effects/triggers.rs +++ b/src/effects/triggers.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use super::{add_effect, EffectType, Targets}; @@ -352,7 +352,7 @@ fn spawn_line_particles(ecs: &World, start: i32, end: i32, part: &SpawnParticleL let map = ecs.fetch::(); let start_pt = Point::new(start % map.width, end / map.width); let end_pt = Point::new(end % map.width, end / map.width); - let line = ::rltk::line2d(LineAlg::Bresenham, start_pt, end_pt); + let line = line2d(LineAlg::Bresenham, start_pt, end_pt); for pt in line.iter() { add_effect( None, diff --git a/src/gamelog.rs b/src/gamelog.rs index 8e77350..ce0586a 100644 --- a/src/gamelog.rs +++ b/src/gamelog.rs @@ -5,7 +5,7 @@ mod builder; mod events; mod logstore; -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::serde::{Deserialize, Serialize}; pub use builder::*; pub use events::*; diff --git a/src/gamelog/builder.rs b/src/gamelog/builder.rs index bf32f36..b50abd7 100644 --- a/src/gamelog/builder.rs +++ b/src/gamelog/builder.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use super::{append_entry, LogFragment}; use crate::colors; diff --git a/src/gamelog/logstore.rs b/src/gamelog/logstore.rs index 9a632ba..4309cf4 100644 --- a/src/gamelog/logstore.rs +++ b/src/gamelog/logstore.rs @@ -1,6 +1,6 @@ use std::sync::Mutex; -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use super::LogFragment; use crate::colors; diff --git a/src/gui/cheat_menu.rs b/src/gui/cheat_menu.rs index 0685e84..7d3779a 100644 --- a/src/gui/cheat_menu.rs +++ b/src/gui/cheat_menu.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use super::{menu_box, menu_option}; use crate::{colors, State}; @@ -13,7 +13,7 @@ pub enum CheatMenuResult { GodMode, } -pub fn show_cheat_mode(_gs: &mut State, ctx: &mut Rltk) -> CheatMenuResult { +pub fn show_cheat_mode(_gs: &mut State, ctx: &mut BTerm) -> CheatMenuResult { let mut draw_batch = DrawBatch::new(); let count = 4; let mut y = (25 - (count / 2)) as i32; diff --git a/src/gui/drop_item_menu.rs b/src/gui/drop_item_menu.rs index 04f0f9e..3d046d4 100644 --- a/src/gui/drop_item_menu.rs +++ b/src/gui/drop_item_menu.rs @@ -1,11 +1,11 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use super::{get_item_display_name, item_result_menu, ItemMenuResult}; use crate::components::InBackpack; use crate::State; -pub fn drop_item_menu(gs: &mut State, ctx: &mut Rltk) -> (ItemMenuResult, Option) { +pub fn drop_item_menu(gs: &mut State, ctx: &mut BTerm) -> (ItemMenuResult, Option) { let mut draw_batch = DrawBatch::new(); let player_entity = gs.ecs.fetch::(); diff --git a/src/gui/game_over_menu.rs b/src/gui/game_over_menu.rs index e5922a0..4b403f0 100644 --- a/src/gui/game_over_menu.rs +++ b/src/gui/game_over_menu.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use crate::{colors, gamelog}; @@ -8,7 +8,7 @@ pub enum GameOverResult { QuitToMenu, } -pub fn game_over(ctx: &mut Rltk) -> GameOverResult { +pub fn game_over(ctx: &mut BTerm) -> GameOverResult { let mut draw_batch = DrawBatch::new(); draw_batch.print_color_centered( 15, diff --git a/src/gui/hud.rs b/src/gui/hud.rs index dcdb044..8ce2863 100644 --- a/src/gui/hud.rs +++ b/src/gui/hud.rs @@ -1,6 +1,6 @@ use std::cmp::Ordering; -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use super::{draw_tooltips, get_item_color, get_item_display_name}; @@ -38,7 +38,7 @@ fn draw_attribute(name: &str, attribute: &Attribute, y: i32, draw_batch: &mut Dr draw_batch.set( Point::new(72, y), ColorPair::new(color, colors::BLACK), - rltk::to_cp437('+'), + to_cp437('+'), ); } } @@ -358,7 +358,7 @@ fn status(ecs: &World, draw_batch: &mut DrawBatch, player_entity: &Entity) { } } -pub fn draw_ui(ecs: &World, ctx: &mut Rltk) { +pub fn draw_ui(ecs: &World, ctx: &mut BTerm) { let mut draw_batch = DrawBatch::new(); let player_entity = ecs.fetch::(); @@ -375,7 +375,7 @@ pub fn draw_ui(ecs: &World, ctx: &mut Rltk) { status(ecs, &mut draw_batch, &player_entity); gamelog::print_log( - &mut ::rltk::BACKEND_INTERNAL.lock().consoles[1].console, + &mut BACKEND_INTERNAL.lock().consoles[1].console, Point::new(1, 23), ); draw_tooltips(ecs, ctx); diff --git a/src/gui/identify_menu.rs b/src/gui/identify_menu.rs index 2e07126..b4ee3c8 100644 --- a/src/gui/identify_menu.rs +++ b/src/gui/identify_menu.rs @@ -1,11 +1,11 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use super::{get_item_display_name, item_result_menu, ItemMenuResult}; use crate::components::{Equipped, InBackpack, Item, Name, ObfuscatedName}; use crate::{MasterDungeonMap, State}; -pub fn identify_menu(gs: &mut State, ctx: &mut Rltk) -> (ItemMenuResult, Option) { +pub fn identify_menu(gs: &mut State, ctx: &mut BTerm) -> (ItemMenuResult, Option) { let mut draw_batch = DrawBatch::new(); let player_entity = gs.ecs.fetch::(); diff --git a/src/gui/inventory_menu.rs b/src/gui/inventory_menu.rs index 3fed6b6..85d5401 100644 --- a/src/gui/inventory_menu.rs +++ b/src/gui/inventory_menu.rs @@ -1,11 +1,11 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use super::{get_item_display_name, item_result_menu, ItemMenuResult}; use crate::components::InBackpack; use crate::State; -pub fn show_inventory(gs: &mut State, ctx: &mut Rltk) -> (ItemMenuResult, Option) { +pub fn show_inventory(gs: &mut State, ctx: &mut BTerm) -> (ItemMenuResult, Option) { let mut draw_batch = DrawBatch::new(); let player_entity = gs.ecs.fetch::(); diff --git a/src/gui/item_render.rs b/src/gui/item_render.rs index 0098cc4..16ed4b3 100644 --- a/src/gui/item_render.rs +++ b/src/gui/item_render.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{Consumable, CursedItem, MagicItem, MagicItemClass, Name, ObfuscatedName}; diff --git a/src/gui/main_menu.rs b/src/gui/main_menu.rs index 7fb5c1d..3ad156e 100644 --- a/src/gui/main_menu.rs +++ b/src/gui/main_menu.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use crate::rex_assets::RexAssets; use crate::{colors, RunState, State}; @@ -16,7 +16,7 @@ pub enum MainMenuResult { Selected { selected: MainMenuSelection }, } -pub fn main_menu(gs: &mut State, ctx: &mut Rltk) -> MainMenuResult { +pub fn main_menu(gs: &mut State, ctx: &mut BTerm) -> MainMenuResult { let mut draw_batch = DrawBatch::new(); let save_exists = crate::saveload_system::does_save_exist(); let runstate = gs.ecs.fetch::(); diff --git a/src/gui/menus.rs b/src/gui/menus.rs index 1b6c0d0..77c3373 100644 --- a/src/gui/menus.rs +++ b/src/gui/menus.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::colors; @@ -26,7 +26,7 @@ pub fn menu_option( draw_batch: &mut DrawBatch, x: i32, y: i32, - hotkey: ::rltk::FontCharType, + hotkey: FontCharType, text: T, ) { draw_batch.set( @@ -86,7 +86,7 @@ pub fn item_result_menu( Some(key) => match key { VirtualKeyCode::Escape => (ItemMenuResult::Cancel, None), _ => { - let selection = ::rltk::letter_to_option(key); + let selection = letter_to_option(key); if selection > -1 && selection < count as i32 { return ( ItemMenuResult::Selected, diff --git a/src/gui/ranged_target.rs b/src/gui/ranged_target.rs index 3f68415..97d454b 100644 --- a/src/gui/ranged_target.rs +++ b/src/gui/ranged_target.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use super::ItemMenuResult; @@ -7,7 +7,7 @@ use crate::{camera, colors, State}; pub fn ranged_target( gs: &mut State, - ctx: &mut Rltk, + ctx: &mut BTerm, range: i32, ) -> (ItemMenuResult, Option) { let (min_x, max_x, min_y, max_y) = camera::get_screen_bounds(&gs.ecs, ctx); diff --git a/src/gui/remove_curse_menu.rs b/src/gui/remove_curse_menu.rs index 36a069c..22a87fe 100644 --- a/src/gui/remove_curse_menu.rs +++ b/src/gui/remove_curse_menu.rs @@ -1,11 +1,11 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use super::{get_item_display_name, item_result_menu, ItemMenuResult}; use crate::components::{CursedItem, Equipped, InBackpack, Item, Name}; use crate::{MasterDungeonMap, State}; -pub fn remove_curse_menu(gs: &mut State, ctx: &mut Rltk) -> (ItemMenuResult, Option) { +pub fn remove_curse_menu(gs: &mut State, ctx: &mut BTerm) -> (ItemMenuResult, Option) { let player_entity = gs.ecs.fetch::(); let equipped = gs.ecs.read_storage::(); let backpack = gs.ecs.read_storage::(); diff --git a/src/gui/remove_item_menu.rs b/src/gui/remove_item_menu.rs index 110ab6c..b937845 100644 --- a/src/gui/remove_item_menu.rs +++ b/src/gui/remove_item_menu.rs @@ -1,11 +1,11 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use super::{get_item_display_name, item_result_menu, ItemMenuResult}; use crate::components::InBackpack; use crate::State; -pub fn remove_item_menu(gs: &mut State, ctx: &mut Rltk) -> (ItemMenuResult, Option) { +pub fn remove_item_menu(gs: &mut State, ctx: &mut BTerm) -> (ItemMenuResult, Option) { let mut draw_batch = DrawBatch::new(); let player_entity = gs.ecs.fetch::(); diff --git a/src/gui/tooltips.rs b/src/gui/tooltips.rs index 715dafe..f48deb7 100644 --- a/src/gui/tooltips.rs +++ b/src/gui/tooltips.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use super::get_item_display_name; @@ -54,7 +54,7 @@ impl Tooltip { } } -pub fn draw_tooltips(ecs: &World, ctx: &mut Rltk) { +pub fn draw_tooltips(ecs: &World, ctx: &mut BTerm) { let mut draw_batch = DrawBatch::new(); let (min_x, _max_x, min_y, _max_y) = camera::get_screen_bounds(ecs, ctx); diff --git a/src/gui/vendor_menu.rs b/src/gui/vendor_menu.rs index a680041..614bb76 100644 --- a/src/gui/vendor_menu.rs +++ b/src/gui/vendor_menu.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use super::{get_item_color, get_item_display_name, menu_box}; @@ -17,7 +17,7 @@ pub enum VendorResult { fn vendor_sell_menu( gs: &mut State, - ctx: &mut Rltk, + ctx: &mut BTerm, _vendor: Entity, _mode: VendorMode, ) -> (VendorResult, Option, Option, Option) { @@ -93,7 +93,7 @@ fn vendor_sell_menu( VirtualKeyCode::Space => (VendorResult::BuyMode, None, None, None), VirtualKeyCode::Escape => (VendorResult::Cancel, None, None, None), _ => { - let selection = rltk::letter_to_option(key); + let selection = letter_to_option(key); if selection > -1 && selection < count as i32 { return ( VendorResult::Sell, @@ -110,7 +110,7 @@ fn vendor_sell_menu( fn vendor_buy_menu( gs: &mut State, - ctx: &mut Rltk, + ctx: &mut BTerm, vendor: Entity, _mode: VendorMode, ) -> (VendorResult, Option, Option, Option) { @@ -171,7 +171,7 @@ fn vendor_buy_menu( VirtualKeyCode::Space => (VendorResult::SellMode, None, None, None), VirtualKeyCode::Escape => (VendorResult::Cancel, None, None, None), _ => { - let selection = ::rltk::letter_to_option(key); + let selection = letter_to_option(key); if selection > -1 && selection < count as i32 { return ( VendorResult::Buy, @@ -189,7 +189,7 @@ fn vendor_buy_menu( pub fn show_vendor_menu( gs: &mut State, - ctx: &mut Rltk, + ctx: &mut BTerm, vendor: Entity, mode: VendorMode, ) -> (VendorResult, Option, Option, Option) { diff --git a/src/main.rs b/src/main.rs index 24e67a2..d5f1baf 100644 --- a/src/main.rs +++ b/src/main.rs @@ -25,7 +25,7 @@ mod spawner; mod state; mod systems; -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use ::specs::saveload::{SimpleMarker, SimpleMarkerAllocator}; use components::*; @@ -184,8 +184,8 @@ fn init_state() -> State { } /// The entry point -fn main() -> ::rltk::BError { - let context = RltkBuilder::simple(80, 60) +fn main() -> BError { + let context = BTermBuilder::simple(80, 60) .unwrap() .with_title("Roguelike Tutorial") .with_font("vga8x16.png", 8, 16) diff --git a/src/map.rs b/src/map.rs index 62a300d..cd48d3f 100644 --- a/src/map.rs +++ b/src/map.rs @@ -6,7 +6,7 @@ mod tiletype; use std::collections::HashSet; -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::serde::{Deserialize, Serialize}; pub use dungeon::*; pub use themes::*; @@ -153,7 +153,7 @@ impl BaseMap for Map { let p1 = Point::new(idx1 % w, idx1 / w); let p2 = Point::new(idx2 % w, idx2 / w); - ::rltk::DistanceAlg::Pythagoras.distance2d(p1, p2) + DistanceAlg::Pythagoras.distance2d(p1, p2) } } diff --git a/src/map/camera.rs b/src/map/camera.rs index d00cc70..a7af5c9 100644 --- a/src/map/camera.rs +++ b/src/map/camera.rs @@ -1,5 +1,5 @@ //! Handle rendering of the viewport -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{Hidden, Position, Renderable, Target, TileSize}; @@ -15,7 +15,7 @@ const SHOW_BOUNDARIES: bool = true; const SHOW_BOUNDARIES: bool = false; /// Get the rectangle representing the current viewport -pub fn get_screen_bounds(ecs: &World, _ctx: &mut Rltk) -> (i32, i32, i32, i32) { +pub fn get_screen_bounds(ecs: &World, _ctx: &mut BTerm) -> (i32, i32, i32, i32) { let player_pos = ecs.fetch::(); // let (x_chars, y_chars) = ctx.get_char_size(); let (x_chars, y_chars) = (48, 44); @@ -32,7 +32,7 @@ pub fn get_screen_bounds(ecs: &World, _ctx: &mut Rltk) -> (i32, i32, i32, i32) { } /// Render the current viewport -pub fn render_camera(ecs: &World, ctx: &mut Rltk) { +pub fn render_camera(ecs: &World, ctx: &mut BTerm) { let mut draw_batch = DrawBatch::new(); let map = ecs.fetch::(); let (min_x, max_x, min_y, max_y) = get_screen_bounds(ecs, ctx); @@ -53,7 +53,7 @@ pub fn render_camera(ecs: &World, ctx: &mut Rltk) { draw_batch.set( Point::new(x, y), ColorPair::new(colors::GRAY, colors::BLACK), - rltk::to_cp437('·'), + to_cp437('·'), ); } } @@ -121,12 +121,12 @@ pub fn render_camera(ecs: &World, ctx: &mut Rltk) { draw_batch.set( Point::new(entity_screen_x - 1, entity_screen_y), ColorPair::new(colors::RED, colors::YELLOW), - ::rltk::to_cp437('['), + to_cp437('['), ); draw_batch.set( Point::new(entity_screen_x + 1, entity_screen_y), ColorPair::new(colors::RED, colors::YELLOW), - ::rltk::to_cp437(']'), + to_cp437(']'), ); } } @@ -136,7 +136,7 @@ pub fn render_camera(ecs: &World, ctx: &mut Rltk) { .expect("Failed to batch draw the camera"); } -pub fn render_debug_map(map: &Map, ctx: &mut Rltk) { +pub fn render_debug_map(map: &Map, ctx: &mut BTerm) { let player_pos = Point::new(map.width / 2, map.height / 2); let (x_chars, y_chars) = ctx.get_char_size(); @@ -160,7 +160,7 @@ pub fn render_debug_map(map: &Map, ctx: &mut Rltk) { ctx.set(x, y, fg, bg, glyph); } } else if SHOW_BOUNDARIES { - ctx.set(x, y, colors::GRAY, colors::BLACK, rltk::to_cp437('·')); + ctx.set(x, y, colors::GRAY, colors::BLACK, to_cp437('·')); } } } diff --git a/src/map/dungeon.rs b/src/map/dungeon.rs index 8a0c6eb..49fb10f 100644 --- a/src/map/dungeon.rs +++ b/src/map/dungeon.rs @@ -1,7 +1,7 @@ //! Functionality that is common to all the currently generated maps. use std::collections::{HashMap, HashSet}; -use ::rltk::Point; +use ::bracket_lib::prelude::*; use ::serde::{Deserialize, Serialize}; use ::specs::prelude::*; diff --git a/src/map/themes.rs b/src/map/themes.rs index f5bd8ef..60e4574 100644 --- a/src/map/themes.rs +++ b/src/map/themes.rs @@ -1,5 +1,5 @@ //! Different looks for the same set of [`TileType`]s -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use super::{Map, TileType}; use crate::colors; diff --git a/src/map_builders.rs b/src/map_builders.rs index 1cf8c84..30ed5ee 100644 --- a/src/map_builders.rs +++ b/src/map_builders.rs @@ -345,7 +345,7 @@ pub fn random_builder(new_depth: i32, width: i32, height: i32) -> BuilderChain { pub fn level_builder(new_depth: i32, width: i32, height: i32) -> BuilderChain { #[cfg(feature = "debug")] - ::rltk::console::log(format!("Depth: {}", new_depth)); + ::bracket_lib::prelude::console::log(format!("Depth: {}", new_depth)); match new_depth { 1 => town_builder(new_depth, width, height), diff --git a/src/map_builders/area_ending_point.rs b/src/map_builders/area_ending_point.rs index 347b807..e0b586f 100644 --- a/src/map_builders/area_ending_point.rs +++ b/src/map_builders/area_ending_point.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use super::{BuilderMap, MetaMapBuilder}; use crate::{map, TileType}; diff --git a/src/map_builders/area_starting_points.rs b/src/map_builders/area_starting_points.rs index 0c9b6d0..6eb3ae1 100644 --- a/src/map_builders/area_starting_points.rs +++ b/src/map_builders/area_starting_points.rs @@ -1,3 +1,5 @@ +use ::bracket_lib::prelude::*; + use crate::map_builders::{BuilderMap, MetaMapBuilder}; use crate::{map, Position}; @@ -50,12 +52,12 @@ impl AreaStartingPosition { if map::tile_walkable(*tiletype) { available_floors.push(( idx, - rltk::DistanceAlg::PythagorasSquared.distance2d( - rltk::Point::new( + DistanceAlg::PythagorasSquared.distance2d( + Point::new( idx as i32 % build_data.map.width, idx as i32 / build_data.map.width, ), - rltk::Point::new(seed_x, seed_y), + Point::new(seed_x, seed_y), ), )); } diff --git a/src/map_builders/cull_unreachable.rs b/src/map_builders/cull_unreachable.rs index dae2ec1..f077d77 100644 --- a/src/map_builders/cull_unreachable.rs +++ b/src/map_builders/cull_unreachable.rs @@ -1,3 +1,5 @@ +use ::bracket_lib::prelude::*; + use crate::map_builders::{BuilderMap, MetaMapBuilder}; use crate::TileType; @@ -22,7 +24,7 @@ impl CullUnreachable { build_data.map.populate_blocked(); let map_starts: Vec = vec![start_idx]; - let dijkstra_map = rltk::DijkstraMap::new( + let dijkstra_map = DijkstraMap::new( build_data.map.width as usize, build_data.map.height as usize, &map_starts, diff --git a/src/map_builders/dark_elves.rs b/src/map_builders/dark_elves.rs index 22f944d..5e94592 100644 --- a/src/map_builders/dark_elves.rs +++ b/src/map_builders/dark_elves.rs @@ -1,7 +1,11 @@ +use ::bracket_lib::prelude::*; + use super::{ - AreaEndingPosition, AreaStartingPosition, BspInteriorBuilder, BuilderChain, CullUnreachable, - VoronoiSpawning, XEnd, XStart, YEnd, YStart, + AreaEndingPosition, AreaStartingPosition, BspInteriorBuilder, BuilderChain, BuilderMap, + CullUnreachable, InitialMapBuilder, VoronoiSpawning, XEnd, XStart, YEnd, YStart, }; +use crate::rng::roll_dice; +use crate::TileType; pub fn dark_elf_city(new_depth: i32, width: i32, height: i32) -> BuilderChain { let mut chain = BuilderChain::new(new_depth, width, height, "Dark Elven City"); diff --git a/src/map_builders/distant_exit.rs b/src/map_builders/distant_exit.rs index 7bea5b1..fba2b1c 100644 --- a/src/map_builders/distant_exit.rs +++ b/src/map_builders/distant_exit.rs @@ -1,3 +1,5 @@ +use ::bracket_lib::prelude::*; + use crate::map_builders::{BuilderMap, MetaMapBuilder}; use crate::TileType; @@ -22,7 +24,7 @@ impl DistantExit { build_data.map.populate_blocked(); let map_starts: Vec = vec![start_idx]; - let dijkstra_map = rltk::DijkstraMap::new( + let dijkstra_map = DijkstraMap::new( build_data.map.width as usize, build_data.map.height as usize, &map_starts, diff --git a/src/map_builders/dla.rs b/src/map_builders/dla.rs index b7c04d7..6f7c8f6 100644 --- a/src/map_builders/dla.rs +++ b/src/map_builders/dla.rs @@ -1,3 +1,5 @@ +use ::bracket_lib::prelude::*; + use super::common::{paint, Symmetry}; use crate::components::Position; use crate::map_builders::{BuilderMap, InitialMapBuilder, MetaMapBuilder}; @@ -207,10 +209,10 @@ impl DLABuilder { let mut prev_y = digger_y; let mut digger_idx = build_data.map.xy_idx(digger_x, digger_y); - let mut path = rltk::line2d( - rltk::LineAlg::Bresenham, - rltk::Point::new(digger_x, digger_y), - rltk::Point::new(starting_position.x, starting_position.y), + let mut path = line2d( + LineAlg::Bresenham, + Point::new(digger_x, digger_y), + Point::new(starting_position.x, starting_position.y), ); while build_data.map.tiles[digger_idx] == TileType::Wall && !path.is_empty() { diff --git a/src/map_builders/dwarf_fort.rs b/src/map_builders/dwarf_fort.rs index 65cfd21..6e2f747 100644 --- a/src/map_builders/dwarf_fort.rs +++ b/src/map_builders/dwarf_fort.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use super::{ AreaEndingPosition, AreaStartingPosition, BspCorridors, BspDungeonBuilder, BuilderChain, diff --git a/src/map_builders/forest.rs b/src/map_builders/forest.rs index e919539..98b6d5f 100644 --- a/src/map_builders/forest.rs +++ b/src/map_builders/forest.rs @@ -1,3 +1,5 @@ +use ::bracket_lib::prelude::*; + use super::{ AreaStartingPosition, BuilderChain, CellularAutomataBuilder, CullUnreachable, MetaMapBuilder, VoronoiSpawning, XStart, YStart, @@ -40,12 +42,12 @@ impl YellowBrickRoad { if map::tile_walkable(*tiletype) { available_floors.push(( idx, - rltk::DistanceAlg::PythagorasSquared.distance2d( - rltk::Point::new( + DistanceAlg::PythagorasSquared.distance2d( + Point::new( idx as i32 % build_data.map.width, idx as i32 / build_data.map.width, ), - rltk::Point::new(seed_x, seed_y), + Point::new(seed_x, seed_y), ), )); } @@ -86,7 +88,7 @@ impl YellowBrickRoad { let end_idx = build_data.map.xy_idx(end_x, end_y); build_data.map.populate_blocked(); - let path = rltk::a_star_search(start_idx, end_idx, &build_data.map); + let path = a_star_search(start_idx, end_idx, &build_data.map); for idx in path.steps.iter() { let x = *idx as i32 % build_data.map.width; @@ -119,7 +121,7 @@ impl YellowBrickRoad { let (stream_x, stream_y) = self.find_exit(build_data, stream_startx, stream_starty); let stream_idx = build_data.map.xy_idx(stream_x, stream_y) as usize; - let stream = rltk::a_star_search(stairs_idx, stream_idx, &build_data.map); + let stream = a_star_search(stairs_idx, stream_idx, &build_data.map); for tile in stream.steps.iter() { if build_data.map.tiles[*tile as usize] == TileType::Floor { build_data.map.tiles[*tile as usize] = TileType::ShallowWater; diff --git a/src/map_builders/prefab_builder.rs b/src/map_builders/prefab_builder.rs index 426d29e..3e22721 100644 --- a/src/map_builders/prefab_builder.rs +++ b/src/map_builders/prefab_builder.rs @@ -4,6 +4,8 @@ pub mod prefab_sections; use std::collections::HashSet; +use ::bracket_lib::prelude::*; + use crate::map_builders::{BuilderMap, InitialMapBuilder, MetaMapBuilder}; use crate::rng::roll_dice; use crate::{Position, TileType}; @@ -137,14 +139,17 @@ impl PrefabBuilder { } _ => { #[cfg(feature = "debug")] - ::rltk::console::log(format!("Unknown glyph loading map: {}", (ch as u8) as char)); + ::bracket_lib::prelude::console::log(format!( + "Unknown glyph loading map: {}", + (ch as u8) as char + )); } } } #[allow(dead_code)] fn load_rex_map(&mut self, path: &str, build_data: &mut BuilderMap) { - let xp_file = rltk::rex::XpFile::from_resource(path).unwrap(); + let xp_file = XpFile::from_resource(path).unwrap(); for layer in &xp_file.layers { for y in 0..layer.height { diff --git a/src/map_builders/room_draw.rs b/src/map_builders/room_draw.rs index 1c4d003..023cb1a 100644 --- a/src/map_builders/room_draw.rs +++ b/src/map_builders/room_draw.rs @@ -1,3 +1,5 @@ +use ::bracket_lib::prelude::*; + use super::{BuilderMap, MetaMapBuilder}; use crate::rng::roll_dice; use crate::{Rect, TileType}; @@ -30,13 +32,12 @@ impl RoomDrawer { fn circle(&mut self, build_data: &mut BuilderMap, room: &Rect) { let radius = i32::min(room.x2 - room.x1, room.y2 - room.y1) as f32 / 2.0; let center = room.center(); - let center_pt = rltk::Point::new(center.0, center.1); + let center_pt = Point::new(center.0, center.1); for y in room.y1..=room.y2 { for x in room.x1..=room.x2 { let idx = build_data.map.xy_idx(x, y); - let distance = - rltk::DistanceAlg::Pythagoras.distance2d(center_pt, rltk::Point::new(x, y)); + let distance = DistanceAlg::Pythagoras.distance2d(center_pt, Point::new(x, y)); if idx > 0 && idx < ((build_data.map.width * build_data.map.height) - 1) as usize diff --git a/src/map_builders/room_sorter.rs b/src/map_builders/room_sorter.rs index 9ac85b8..7f59e9a 100644 --- a/src/map_builders/room_sorter.rs +++ b/src/map_builders/room_sorter.rs @@ -1,3 +1,5 @@ +use ::bracket_lib::prelude::*; + use super::{BuilderMap, MetaMapBuilder}; use crate::Rect; @@ -35,17 +37,14 @@ impl RoomSorter { RoomSort::TopMost => rooms.sort_by(|a, b| a.y1.cmp(&b.y1)), RoomSort::BottomMost => rooms.sort_by(|a, b| b.y2.cmp(&a.y2)), RoomSort::Central => { - let map_center = - rltk::Point::new(build_data.map.width / 2, build_data.map.height / 2); + let map_center = Point::new(build_data.map.width / 2, build_data.map.height / 2); let center_sort = |a: &Rect, b: &Rect| { let a_center = a.center(); - let a_center_pt = rltk::Point::new(a_center.0, a_center.1); + let a_center_pt = Point::new(a_center.0, a_center.1); let b_center = b.center(); - let b_center_pt = rltk::Point::new(b_center.0, b_center.1); - let distance_a = - rltk::DistanceAlg::Pythagoras.distance2d(a_center_pt, map_center); - let distance_b = - rltk::DistanceAlg::Pythagoras.distance2d(b_center_pt, map_center); + let b_center_pt = Point::new(b_center.0, b_center.1); + let distance_a = DistanceAlg::Pythagoras.distance2d(a_center_pt, map_center); + let distance_b = DistanceAlg::Pythagoras.distance2d(b_center_pt, map_center); distance_a.partial_cmp(&distance_b).unwrap() }; diff --git a/src/map_builders/rooms_corridors_lines.rs b/src/map_builders/rooms_corridors_lines.rs index 9871d15..0c89fe2 100644 --- a/src/map_builders/rooms_corridors_lines.rs +++ b/src/map_builders/rooms_corridors_lines.rs @@ -1,5 +1,7 @@ use std::collections::HashSet; +use ::bracket_lib::prelude::*; + use super::{BuilderMap, MetaMapBuilder}; use crate::{Rect, TileType}; @@ -31,14 +33,14 @@ impl StraightLineCorridors { for (i, room) in rooms.iter().enumerate() { let mut room_distance: Vec<(usize, f32)> = Vec::new(); let room_center = room.center(); - let room_center_pt = rltk::Point::new(room_center.0, room_center.1); + let room_center_pt = Point::new(room_center.0, room_center.1); for (j, other_room) in rooms.iter().enumerate() { if i != j && !connected.contains(&j) { let other_center = other_room.center(); - let other_center_pt = rltk::Point::new(other_center.0, other_center.1); + let other_center_pt = Point::new(other_center.0, other_center.1); let distance = - rltk::DistanceAlg::Pythagoras.distance2d(room_center_pt, other_center_pt); + DistanceAlg::Pythagoras.distance2d(room_center_pt, other_center_pt); room_distance.push((j, distance)); } @@ -47,10 +49,10 @@ impl StraightLineCorridors { if !room_distance.is_empty() { room_distance.sort_by(|a, b| a.1.partial_cmp(&b.1).unwrap()); let dest_center = rooms[room_distance[0].0].center(); - let line = rltk::line2d( - rltk::LineAlg::Bresenham, + let line = line2d( + LineAlg::Bresenham, room_center_pt, - rltk::Point::new(dest_center.0, dest_center.1), + Point::new(dest_center.0, dest_center.1), ); let mut corridor = Vec::new(); diff --git a/src/map_builders/rooms_corridors_nearest.rs b/src/map_builders/rooms_corridors_nearest.rs index 32c57c5..65ad6e7 100644 --- a/src/map_builders/rooms_corridors_nearest.rs +++ b/src/map_builders/rooms_corridors_nearest.rs @@ -1,5 +1,7 @@ use std::collections::HashSet; +use ::bracket_lib::prelude::*; + use super::common::draw_corridor; use super::{BuilderMap, MetaMapBuilder}; use crate::Rect; @@ -32,14 +34,14 @@ impl NearestCorridors { for (i, room) in rooms.iter().enumerate() { let mut room_distance: Vec<(usize, f32)> = Vec::new(); let room_center = room.center(); - let room_center_pt = rltk::Point::new(room_center.0, room_center.1); + let room_center_pt = Point::new(room_center.0, room_center.1); for (j, other_room) in rooms.iter().enumerate() { if i != j && !connected.contains(&j) { let other_center = other_room.center(); - let other_center_pt = rltk::Point::new(other_center.0, other_center.1); + let other_center_pt = Point::new(other_center.0, other_center.1); let distance = - rltk::DistanceAlg::Pythagoras.distance2d(room_center_pt, other_center_pt); + DistanceAlg::Pythagoras.distance2d(room_center_pt, other_center_pt); room_distance.push((j, distance)); } diff --git a/src/map_builders/town.rs b/src/map_builders/town.rs index cf0a7b5..ed5889a 100644 --- a/src/map_builders/town.rs +++ b/src/map_builders/town.rs @@ -1,6 +1,6 @@ use std::collections::HashSet; -use ::rltk::Point; +use ::bracket_lib::prelude::*; use super::{BuilderChain, BuilderMap, InitialMapBuilder}; use crate::rng::roll_dice; @@ -272,7 +272,7 @@ impl TownBuilder { for r in roads.iter() { nearest_roads.push(( *r, - ::rltk::DistanceAlg::PythagorasSquared.distance2d( + DistanceAlg::PythagorasSquared.distance2d( door_pt, Point::new( *r as i32 % build_data.map.width, @@ -284,7 +284,7 @@ impl TownBuilder { nearest_roads.sort_by(|a, b| a.1.partial_cmp(&b.1).unwrap()); let destination = nearest_roads[0].0; - let path = ::rltk::a_star_search(*door_idx, destination, &build_data.map); + let path = a_star_search(*door_idx, destination, &build_data.map); if path.success { for step in path.steps.iter() { let idx = *step as usize; diff --git a/src/map_builders/voronoi.rs b/src/map_builders/voronoi.rs index 3accdc0..e3f5be1 100644 --- a/src/map_builders/voronoi.rs +++ b/src/map_builders/voronoi.rs @@ -1,3 +1,5 @@ +use ::bracket_lib::prelude::*; + use crate::map_builders::{BuilderMap, InitialMapBuilder}; use crate::rng::roll_dice; use crate::TileType; @@ -45,13 +47,13 @@ impl VoronoiCellBuilder { #[allow(clippy::map_entry)] fn build(&mut self, build_data: &mut BuilderMap) { // Make a Voronoi diagram. We'll do this the hard way to learn about the technique! - let mut voronoi_seeds: Vec<(usize, rltk::Point)> = Vec::new(); + let mut voronoi_seeds: Vec<(usize, Point)> = Vec::new(); while voronoi_seeds.len() < self.n_seeds { let vx = roll_dice(1, build_data.map.width - 1); let vy = roll_dice(1, build_data.map.height - 1); let vidx = build_data.map.xy_idx(vx, vy); - let candidate = (vidx, rltk::Point::new(vx, vy)); + let candidate = (vidx, Point::new(vx, vy)); if !voronoi_seeds.contains(&candidate) { voronoi_seeds.push(candidate); } @@ -67,15 +69,16 @@ impl VoronoiCellBuilder { for (seed, pos) in voronoi_seeds.iter().enumerate() { let distance = match self.distance_algorithm { - DistanceAlgorithm::Pythagoras => rltk::DistanceAlg::PythagorasSquared - .distance2d(rltk::Point::new(x, y), pos.1), + DistanceAlgorithm::Pythagoras => { + DistanceAlg::PythagorasSquared.distance2d(Point::new(x, y), pos.1) + } DistanceAlgorithm::Manhattan => { - rltk::DistanceAlg::Manhattan.distance2d(rltk::Point::new(x, y), pos.1) + DistanceAlg::Manhattan.distance2d(Point::new(x, y), pos.1) } DistanceAlgorithm::Chebyshev => { - rltk::DistanceAlg::Chebyshev.distance2d(rltk::Point::new(x, y), pos.1) + DistanceAlg::Chebyshev.distance2d(Point::new(x, y), pos.1) } }; voronoi_distance[seed] = (seed, distance); diff --git a/src/map_builders/voronoi_spawning.rs b/src/map_builders/voronoi_spawning.rs index 332eeb7..4b7dba9 100644 --- a/src/map_builders/voronoi_spawning.rs +++ b/src/map_builders/voronoi_spawning.rs @@ -1,6 +1,6 @@ use std::collections::HashMap; -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use crate::map_builders::{BuilderMap, MetaMapBuilder}; use crate::rng::roll_dice; diff --git a/src/map_builders/waveform_collapse/constraints.rs b/src/map_builders/waveform_collapse/constraints.rs index 73c15d1..add71a0 100644 --- a/src/map_builders/waveform_collapse/constraints.rs +++ b/src/map_builders/waveform_collapse/constraints.rs @@ -67,7 +67,7 @@ pub fn build_patterns( // Dedupe if dedupe { #[cfg(feature = "debug")] - ::rltk::console::log(format!( + ::bracket_lib::prelude::console::log(format!( "Pre de-duplication, there are {} patterns", patterns.len() )); @@ -77,7 +77,7 @@ pub fn build_patterns( patterns.extend(set.into_iter()); #[cfg(feature = "debug")] - ::rltk::console::log(format!("There are {} patterns", patterns.len())); + ::bracket_lib::prelude::console::log(format!("There are {} patterns", patterns.len())); } patterns diff --git a/src/map_builders/waveform_collapse/solver.rs b/src/map_builders/waveform_collapse/solver.rs index 4119706..24f3237 100644 --- a/src/map_builders/waveform_collapse/solver.rs +++ b/src/map_builders/waveform_collapse/solver.rs @@ -195,7 +195,7 @@ impl Solver { if possible_options.is_empty() { #[cfg(feature = "debug")] - ::rltk::console::log("Oh no! It's not possible!"); + ::bracket_lib::prelude::console::log("Oh no! It's not possible!"); self.possible = false; diff --git a/src/player.rs b/src/player.rs index f581b99..8a0e553 100644 --- a/src/player.rs +++ b/src/player.rs @@ -1,7 +1,7 @@ //! Player-related functionality use std::cmp::{max, min}; -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{ @@ -217,7 +217,7 @@ pub fn try_move_player(delta_x: i32, delta_y: i32, ecs: &mut World) -> RunState blocks_visibility.remove(potential_target); blocks_movement.remove(potential_target); let glyph = renderables.get_mut(potential_target).unwrap(); - glyph.glyph = rltk::to_cp437('/'); + glyph.glyph = to_cp437('/'); viewshed.dirty = true; return Some(RunState::Ticking); @@ -454,7 +454,7 @@ fn use_spell_hotkey(gs: &mut State, key: i32) -> RunState { RunState::Ticking } -pub fn player_input(gs: &mut State, ctx: &mut Rltk) -> RunState { +pub fn player_input(gs: &mut State, ctx: &mut BTerm) -> RunState { // Hotkeys if (ctx.shift || ctx.control) && ctx.key.is_some() { let key: Option = match ctx.key.unwrap() { diff --git a/src/raws.rs b/src/raws.rs index dd9916f..b55610a 100644 --- a/src/raws.rs +++ b/src/raws.rs @@ -11,7 +11,7 @@ mod weapon_traits; use std::sync::Mutex; -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::serde::Deserialize; pub use faction_structs::*; use item_structs::*; @@ -44,7 +44,7 @@ lazy_static! { pub fn load_raws() { link_resource!(RAW_FILE, "../raws/spawns.json"); - let raw_data = ::rltk::embedding::EMBED + let raw_data = EMBED .lock() .get_resource("../raws/spawns.json".to_string()) .unwrap(); diff --git a/src/raws/rawmaster.rs b/src/raws/rawmaster.rs index d363286..ce64e1b 100644 --- a/src/raws/rawmaster.rs +++ b/src/raws/rawmaster.rs @@ -1,7 +1,7 @@ use std::collections::{HashMap, HashSet}; +use ::bracket_lib::prelude::*; use ::regex::Regex; -use ::rltk::prelude::*; use ::specs::prelude::*; use ::specs::saveload::{MarkedBuilder, SimpleMarker}; @@ -379,7 +379,7 @@ fn get_renderable_component( renderable: &super::item_structs::Renderable, ) -> crate::components::Renderable { crate::components::Renderable { - glyph: rltk::to_cp437(renderable.glyph.chars().next().unwrap()), + glyph: to_cp437(renderable.glyph.chars().next().unwrap()), fg: RGB::from_hex(&renderable.fg).expect("Invalid color"), bg: RGB::from_hex(&renderable.bg).expect("Invalid color"), render_order: renderable.order, @@ -407,7 +407,7 @@ pub fn string_to_slot(slot: &str) -> EquipmentSlot { fn parse_particle_line(n: &str) -> SpawnParticleLine { let tokens: Vec<_> = n.split(';').collect(); SpawnParticleLine { - glyph: rltk::to_cp437(tokens[0].chars().next().unwrap()), + glyph: to_cp437(tokens[0].chars().next().unwrap()), color: RGB::from_hex(tokens[1]).expect("Invalid hex rgb color"), lifetime_ms: tokens[2].parse::().unwrap(), } @@ -416,7 +416,7 @@ fn parse_particle_line(n: &str) -> SpawnParticleLine { fn parse_particle(n: &str) -> SpawnParticleBurst { let tokens: Vec<_> = n.split(';').collect(); SpawnParticleBurst { - glyph: rltk::to_cp437(tokens[0].chars().next().unwrap()), + glyph: to_cp437(tokens[0].chars().next().unwrap()), color: RGB::from_hex(tokens[1]).expect("Invalid hex rgb color"), lifetime_ms: tokens[2].parse::().unwrap(), } diff --git a/src/rex_assets.rs b/src/rex_assets.rs index d1d1702..f45e468 100644 --- a/src/rex_assets.rs +++ b/src/rex_assets.rs @@ -1,5 +1,4 @@ -use ::rltk::prelude::*; -use ::rltk::rex::XpFile; +use ::bracket_lib::prelude::*; embedded_resource!(SMALL_DUNGEON, "../resources/SmallDungeon_80x50.xp"); embedded_resource!(WFC_DEMO_IMAGE1, "../resources/wfc-demo1.xp"); diff --git a/src/rng.rs b/src/rng.rs index b3710ee..feb31a4 100644 --- a/src/rng.rs +++ b/src/rng.rs @@ -1,6 +1,6 @@ use std::sync::Mutex; -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; lazy_static! { static ref RNG: Mutex = Mutex::new(RandomNumberGenerator::new()); diff --git a/src/saveload_system.rs b/src/saveload_system.rs index bf04431..d72eb9e 100644 --- a/src/saveload_system.rs +++ b/src/saveload_system.rs @@ -2,7 +2,7 @@ use std::fs::{self, File}; use std::path::Path; -use ::rltk::Point; +use ::bracket_lib::prelude::*; use ::specs::error::NoError; use ::specs::prelude::*; use ::specs::saveload::{ diff --git a/src/spawner.rs b/src/spawner.rs index c38faba..a272219 100644 --- a/src/spawner.rs +++ b/src/spawner.rs @@ -1,7 +1,7 @@ //! Spawns things use std::collections::HashMap; -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use ::specs::saveload::{MarkedBuilder, SimpleMarker}; diff --git a/src/state.rs b/src/state.rs index f7cc980..ced8f2c 100644 --- a/src/state.rs +++ b/src/state.rs @@ -1,5 +1,5 @@ //! Game state -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::*; @@ -147,7 +147,7 @@ impl State { impl GameState for State { /// The big, nasty, state machine handler - fn tick(&mut self, ctx: &mut Rltk) { + fn tick(&mut self, ctx: &mut BTerm) { let mut newrunstate; { let runstate = self.ecs.fetch::(); @@ -556,7 +556,7 @@ impl GameState for State { } damage_system::delete_the_dead(&mut self.ecs); - ::rltk::render_draw_buffer(ctx).expect("Failed to render the Rltk buffer"); + render_draw_buffer(ctx).expect("Failed to render the draw buffer"); if SHOW_FPS { ctx.print(1, 59, &format!("FPS: {}", ctx.fps)); } diff --git a/src/systems/ai/approach_ai_system.rs b/src/systems/ai/approach_ai_system.rs index b57f2d4..d1858f7 100644 --- a/src/systems/ai/approach_ai_system.rs +++ b/src/systems/ai/approach_ai_system.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{ApplyMove, MyTurn, Position, WantsToApproach}; diff --git a/src/systems/ai/chase_ai_system.rs b/src/systems/ai/chase_ai_system.rs index 752a157..9537836 100644 --- a/src/systems/ai/chase_ai_system.rs +++ b/src/systems/ai/chase_ai_system.rs @@ -1,6 +1,6 @@ use std::collections::HashMap; -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{ApplyMove, Chasing, MyTurn, Position, TileSize}; diff --git a/src/systems/ai/default_move_system.rs b/src/systems/ai/default_move_system.rs index 717de79..bbf6c76 100644 --- a/src/systems/ai/default_move_system.rs +++ b/src/systems/ai/default_move_system.rs @@ -1,3 +1,4 @@ +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{ApplyMove, MoveMode, Movement, MyTurn, Position}; @@ -70,7 +71,7 @@ impl<'a> System<'a> for DefaultMoveAI { let target_y = roll_dice(1, map.height - 2); let idx = map.xy_idx(target_x, target_y); if tile_walkable(map.tiles[idx]) { - let path = ::rltk::a_star_search( + let path = a_star_search( map.xy_idx(pos.x, pos.y) as i32, map.xy_idx(target_x, target_y) as i32, &*map, diff --git a/src/systems/ai/flee_ai_system.rs b/src/systems/ai/flee_ai_system.rs index f655509..57e1c31 100644 --- a/src/systems/ai/flee_ai_system.rs +++ b/src/systems/ai/flee_ai_system.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{ApplyMove, MyTurn, Position, WantsToFlee}; diff --git a/src/systems/ai/initiative_system.rs b/src/systems/ai/initiative_system.rs index 6c9b99d..f1aa42d 100644 --- a/src/systems/ai/initiative_system.rs +++ b/src/systems/ai/initiative_system.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{ diff --git a/src/systems/ai/quipping.rs b/src/systems/ai/quipping.rs index 32b664d..c41b847 100644 --- a/src/systems/ai/quipping.rs +++ b/src/systems/ai/quipping.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{MyTurn, Name, Quips, Viewshed}; diff --git a/src/systems/ai/turn_status.rs b/src/systems/ai/turn_status.rs index 1838998..77e067b 100644 --- a/src/systems/ai/turn_status.rs +++ b/src/systems/ai/turn_status.rs @@ -1,5 +1,6 @@ use std::collections::HashSet; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{Confusion, MyTurn, StatusEffect}; @@ -40,7 +41,7 @@ impl<'a> System<'a> for TurnStatusSystem { add_effect( None, EffectType::Particle { - glyph: ::rltk::to_cp437('?'), + glyph: to_cp437('?'), fg: colors::CYAN, bg: colors::BLACK, lifespan: 200.0, diff --git a/src/systems/ai/visible_ai_system.rs b/src/systems/ai/visible_ai_system.rs index a45a9c6..c5ddfae 100644 --- a/src/systems/ai/visible_ai_system.rs +++ b/src/systems/ai/visible_ai_system.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{ diff --git a/src/systems/lighting_system.rs b/src/systems/lighting_system.rs index 8f3daf6..4e21573 100644 --- a/src/systems/lighting_system.rs +++ b/src/systems/lighting_system.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{LightSource, Position, Viewshed}; diff --git a/src/systems/melee_combat_system.rs b/src/systems/melee_combat_system.rs index 34536ca..8edf4a3 100644 --- a/src/systems/melee_combat_system.rs +++ b/src/systems/melee_combat_system.rs @@ -1,3 +1,4 @@ +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{ @@ -198,7 +199,7 @@ impl<'a> System<'a> for MeleeCombatSystem { add_effect( None, EffectType::Particle { - glyph: rltk::to_cp437('‼'), + glyph: to_cp437('‼'), fg: colors::BLUE, bg: colors::BLACK, lifespan: 200.0, @@ -217,7 +218,7 @@ impl<'a> System<'a> for MeleeCombatSystem { add_effect( None, EffectType::Particle { - glyph: rltk::to_cp437('‼'), + glyph: to_cp437('‼'), fg: colors::CYAN, bg: colors::BLACK, lifespan: 200.0, diff --git a/src/systems/particle_system.rs b/src/systems/particle_system.rs index 6c07fab..e3e1b88 100644 --- a/src/systems/particle_system.rs +++ b/src/systems/particle_system.rs @@ -1,9 +1,9 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{ParticleLifetime, Position, Renderable}; -pub fn update_particles(ecs: &mut World, ctx: &Rltk) { +pub fn update_particles(ecs: &mut World, ctx: &BTerm) { let mut dead_particles: Vec = Vec::new(); { // Age out particles @@ -42,7 +42,7 @@ struct ParticleRequest { y: i32, fg: RGB, bg: RGB, - glyph: rltk::FontCharType, + glyph: FontCharType, lifetime: f32, } @@ -62,7 +62,7 @@ impl ParticleBuilder { y: i32, fg: RGB, bg: RGB, - glyph: rltk::FontCharType, + glyph: FontCharType, lifetime: f32, ) { self.requests.push(ParticleRequest { diff --git a/src/systems/ranged_combat_system.rs b/src/systems/ranged_combat_system.rs index 7446f34..9b3bb77 100644 --- a/src/systems/ranged_combat_system.rs +++ b/src/systems/ranged_combat_system.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{ @@ -75,11 +75,7 @@ impl<'a> System<'a> for RangedCombatSystem { bg: colors::BLACK, lifespan: 300.0, speed: 50.0, - path: ::rltk::line2d( - LineAlg::Bresenham, - Point::from(*apos), - Point::from(*dpos), - ), + path: line2d(LineAlg::Bresenham, Point::from(*apos), Point::from(*dpos)), }, Targets::Tile { tile_idx: map.xy_idx(apos.x, apos.y) as i32, @@ -221,7 +217,7 @@ impl<'a> System<'a> for RangedCombatSystem { add_effect( None, EffectType::Particle { - glyph: rltk::to_cp437('‼'), + glyph: to_cp437('‼'), fg: colors::BLUE, bg: colors::BLACK, lifespan: 200.0, @@ -240,7 +236,7 @@ impl<'a> System<'a> for RangedCombatSystem { add_effect( None, EffectType::Particle { - glyph: rltk::to_cp437('‼'), + glyph: to_cp437('‼'), fg: colors::CYAN, bg: colors::BLACK, lifespan: 200.0, diff --git a/src/systems/trigger_system.rs b/src/systems/trigger_system.rs index 5312134..7d854fa 100644 --- a/src/systems/trigger_system.rs +++ b/src/systems/trigger_system.rs @@ -1,3 +1,4 @@ +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{AreaOfEffect, EntityMoved, EntryTrigger, Name, Position}; @@ -45,11 +46,7 @@ impl<'a> System<'a> for TriggerSystem { EffectType::TriggerFire { trigger: entity_id }, if let Some(aoe) = area_of_effect.get(entity_id) { Targets::Tiles { - tiles: aoe_tiles( - &*map, - ::rltk::Point::from(*pos), - aoe.radius, - ), + tiles: aoe_tiles(&*map, Point::from(*pos), aoe.radius), } } else { Targets::Tile { diff --git a/src/systems/visibility_system.rs b/src/systems/visibility_system.rs index 823e223..b62fb08 100644 --- a/src/systems/visibility_system.rs +++ b/src/systems/visibility_system.rs @@ -1,4 +1,4 @@ -use ::rltk::prelude::*; +use ::bracket_lib::prelude::*; use ::specs::prelude::*; use crate::components::{BlocksVisibility, Hidden, Name};