[−]Struct rltk::SpriteConsole
A sparse console. Rather than storing every cell on the screen, it stores just cells that have data.
Fields
width: u32
height: u32
sprite_sheet: usize
sprites: Vec<RenderSprite>
is_dirty: bool
Methods
impl SpriteConsole
pub fn init(width: u32, height: u32, sprite_sheet: usize) -> Box<SpriteConsole>
Initializes the console.
pub fn render_sprite(&mut self, sprite: RenderSprite)
Trait Implementations
impl Console for SpriteConsole
fn get_char_size(&self) -> (u32, u32)
fn resize_pixels(&mut self, _width: u32, _height: u32)
fn at(&self, x: i32, y: i32) -> usize
Translates x/y to an index entry. Not really useful.
fn cls(&mut self)
Clear the screen.
fn cls_bg(&mut self, _background: RGBA)
Clear the screen. Since we don't HAVE a background, it doesn't use it.
fn print(&mut self, _x: i32, _y: i32, _output: &str)
Prints a string to an x/y position.
fn print_color(&mut self, _x: i32, _y: i32, _fg: RGBA, _bg: RGBA, _output: &str)
Prints a string to an x/y position, with foreground and background colors.
fn set(&mut self, _x: i32, _y: i32, _fg: RGBA, _bg: RGBA, _glyph: u16)
Sets a single cell in the console
fn set_bg(&mut self, _x: i32, _y: i32, _bg: RGBA)
Sets a single cell in the console's background
fn draw_box(
&mut self,
_sx: i32,
_sy: i32,
_width: i32,
_height: i32,
_fg: RGBA,
_bg: RGBA
)
&mut self,
_sx: i32,
_sy: i32,
_width: i32,
_height: i32,
_fg: RGBA,
_bg: RGBA
)
Draws a box, starting at x/y with the extents width/height using CP437 line characters
fn draw_box_double(
&mut self,
_sx: i32,
_sy: i32,
_width: i32,
_height: i32,
_fg: RGBA,
_bg: RGBA
)
&mut self,
_sx: i32,
_sy: i32,
_width: i32,
_height: i32,
_fg: RGBA,
_bg: RGBA
)
Draws a box, starting at x/y with the extents width/height using CP437 double line characters
fn draw_hollow_box(
&mut self,
_sx: i32,
_sy: i32,
_width: i32,
_height: i32,
_fg: RGBA,
_bg: RGBA
)
&mut self,
_sx: i32,
_sy: i32,
_width: i32,
_height: i32,
_fg: RGBA,
_bg: RGBA
)
Draws a box, starting at x/y with the extents width/height using CP437 line characters
fn draw_hollow_box_double(
&mut self,
_sx: i32,
_sy: i32,
_width: i32,
_height: i32,
_fg: RGBA,
_bg: RGBA
)
&mut self,
_sx: i32,
_sy: i32,
_width: i32,
_height: i32,
_fg: RGBA,
_bg: RGBA
)
Draws a box, starting at x/y with the extents width/height using CP437 double line characters
fn fill_region(&mut self, _target: Rect, _glyph: u16, _fg: RGBA, _bg: RGBA)
Fills a rectangle with the specified rendering information
fn draw_bar_horizontal(
&mut self,
_sx: i32,
_sy: i32,
_width: i32,
_n: i32,
_max: i32,
_fg: RGBA,
_bg: RGBA
)
&mut self,
_sx: i32,
_sy: i32,
_width: i32,
_n: i32,
_max: i32,
_fg: RGBA,
_bg: RGBA
)
Draws a horizontal progress bar
fn draw_bar_vertical(
&mut self,
_sx: i32,
_sy: i32,
_height: i32,
_n: i32,
_max: i32,
_fg: RGBA,
_bg: RGBA
)
&mut self,
_sx: i32,
_sy: i32,
_height: i32,
_n: i32,
_max: i32,
_fg: RGBA,
_bg: RGBA
)
Draws a vertical progress bar
fn print_centered(&mut self, _y: i32, _text: &str)
Prints text, centered to the whole console width, at vertical location y.
fn print_color_centered(&mut self, _y: i32, _fg: RGBA, _bg: RGBA, _text: &str)
Prints text in color, centered to the whole console width, at vertical location y.
fn print_centered_at(&mut self, _x: i32, _y: i32, _text: &str)
Prints text, centered to the whole console width, at vertical location y.
fn print_color_centered_at(
&mut self,
_x: i32,
_y: i32,
_fg: RGBA,
_bg: RGBA,
_text: &str
)
&mut self,
_x: i32,
_y: i32,
_fg: RGBA,
_bg: RGBA,
_text: &str
)
Prints text in color, centered to the whole console width, at vertical location y.
fn print_right(&mut self, _x: i32, _y: i32, _text: &str)
Prints text right-aligned
fn print_color_right(
&mut self,
_x: i32,
_y: i32,
_fg: RGBA,
_bg: RGBA,
_text: &str
)
&mut self,
_x: i32,
_y: i32,
_fg: RGBA,
_bg: RGBA,
_text: &str
)
Prints colored text right-aligned
fn printer(
&mut self,
_x: i32,
_y: i32,
_output: &str,
_align: TextAlign,
_background: Option<RGBA>
)
&mut self,
_x: i32,
_y: i32,
_output: &str,
_align: TextAlign,
_background: Option<RGBA>
)
Print a colorized string with the color encoding defined inline. For example: printer(1, 1, "#[blue]This blue text contains a #[pink]pink#[] word") You can get the same effect with a TextBlock, but this can be easier. Thanks to doryen_rs for the idea.
fn to_xp_layer(&self) -> XpLayer
Saves the layer to an XpFile structure
fn set_offset(&mut self, _x: f32, _y: f32)
Sets an offset to total console rendering, useful for layers that draw between tiles. Offsets are specified as a percentage of total character size; so -0.5 will offset half a character to the left/top.
fn set_scale(&mut self, _scale: f32, _center_x: i32, _center_y: i32)
fn get_scale(&self) -> (f32, i32, i32)
fn as_any(&self) -> &(dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn set_clipping(&mut self, _clipping: Option<Rect>)
Permits the creation of an arbitrary clipping rectangle. It's a really good idea to make sure that this rectangle is entirely valid.
fn get_clipping(&self) -> Option<Rect>
Returns the current arbitrary clipping rectangle, None if there isn't one.
fn set_all_fg_alpha(&mut self, alpha: f32)
Sets ALL tiles foreground alpha (only tiles that exist, in sparse consoles).
fn set_all_bg_alpha(&mut self, _alpha: f32)
Sets ALL tiles background alpha (only tiles that exist, in sparse consoles).
fn set_all_alpha(&mut self, fg: f32, _bg: f32)
Sets ALL tiles foreground alpha (only tiles that exist, in sparse consoles).
fn set_translation_mode(&mut self, _mode: CharacterTranslationMode)
Sets the character translation mode
fn set_char_size(&mut self, width: u32, height: u32)
Sets the character size of the terminal
fn in_bounds(&self, x: i32, y: i32) -> bool
fn try_at(&self, x: i32, y: i32) -> Option<usize>
Auto Trait Implementations
impl RefUnwindSafe for SpriteConsole
impl Send for SpriteConsole
impl Sync for SpriteConsole
impl Unpin for SpriteConsole
impl UnwindSafe for SpriteConsole
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,