bms_rs/bms/model/
sprite.rs

1//! This module introduces struct [`Sprites`], which manages external paths to image assets.
2
3use std::path::PathBuf;
4
5use crate::bms::prelude::*;
6
7#[derive(Debug, Default, Clone, PartialEq, Eq, Hash)]
8#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9/// This aggregate manages external paths to image assets.
10pub struct Sprites {
11    /// The path of background image, which is shown while playing the score.
12    /// This image is displayed behind the gameplay area.
13    pub back_bmp: Option<PathBuf>,
14    /// The path of splash screen image, which is shown before playing the score.
15    /// This image is displayed during the loading screen.
16    pub stage_file: Option<PathBuf>,
17    /// The path of banner image.
18    /// This image is used in music selection screens.
19    pub banner: Option<PathBuf>,
20    /// Extended-character events. `#ExtChr`
21    pub extchr_events: Vec<ExtChrEvent>,
22    /// Character file path. `#CHARFILE`
23    pub char_file: Option<PathBuf>,
24}