2023-07-20 02:41:17 +10:00
|
|
|
use agb::{
|
|
|
|
display::{object::Graphics, Font},
|
|
|
|
include_aseprite, include_font,
|
|
|
|
};
|
|
|
|
|
2023-12-11 03:35:15 +11:00
|
|
|
static SPRITES: &Graphics = include_aseprite!(
|
2023-07-20 02:41:17 +10:00
|
|
|
"gfx/sprites16x16.aseprite",
|
|
|
|
"gfx/sprites8x8.aseprite",
|
|
|
|
"gfx/countdown.aseprite"
|
|
|
|
);
|
|
|
|
|
|
|
|
macro_rules! named_tag {
|
|
|
|
(
|
|
|
|
$sprites:ident, [
|
|
|
|
$($name:tt),+ $(,)?
|
|
|
|
] $(,)?
|
|
|
|
) => {
|
|
|
|
$(
|
2023-12-11 03:35:15 +11:00
|
|
|
pub static $name: &agb::display::object::Tag = $sprites.tags().get(stringify!($name));
|
2023-07-20 02:41:17 +10:00
|
|
|
)+
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
named_tag!(
|
|
|
|
SPRITES,
|
|
|
|
[
|
|
|
|
SWORD,
|
|
|
|
SWORD_SHADOW,
|
|
|
|
SLIME,
|
|
|
|
SLIME_SHADOW,
|
|
|
|
STAIRS,
|
|
|
|
HERO,
|
|
|
|
HERO_CARRY,
|
|
|
|
ARROW_LEFT,
|
|
|
|
ARROW_RIGHT,
|
|
|
|
ARROW_UP,
|
|
|
|
ARROW_DOWN,
|
|
|
|
CURSOR,
|
|
|
|
KEY,
|
|
|
|
KEY_SHADOW,
|
|
|
|
DOOR,
|
|
|
|
SWITCHED_DOOR_CLOSED,
|
|
|
|
SWITCHED_DOOR_OPEN,
|
|
|
|
SPIKES_ON,
|
|
|
|
SPIKES_OFF,
|
|
|
|
BUTTON_ON,
|
|
|
|
BUTTON_OFF,
|
|
|
|
SQUID_UP,
|
|
|
|
SQUID_DOWN,
|
|
|
|
SQUID_UP_SHADOW,
|
|
|
|
SQUID_DOWN_SHADOW,
|
2023-08-28 01:47:00 +10:00
|
|
|
ICE,
|
2023-08-28 18:32:48 +10:00
|
|
|
ROCK,
|
|
|
|
ROCK_SHADOW,
|
|
|
|
POW_GLOVE,
|
|
|
|
POW_GLOVE_SHADOW,
|
2023-08-30 06:24:30 +10:00
|
|
|
TELEPORTER,
|
2023-08-30 06:52:58 +10:00
|
|
|
TELEPORTER_SHADOW,
|
2023-09-01 09:42:43 +10:00
|
|
|
HOLE,
|
|
|
|
ROTATOR_RIGHT,
|
|
|
|
ROTATOR_UP,
|
|
|
|
ROTATOR_LEFT,
|
|
|
|
ROTATOR_DOWN,
|
2023-09-02 02:56:50 +10:00
|
|
|
ROTATOR_RIGHT_SHADOW,
|
|
|
|
ROTATOR_UP_SHADOW,
|
|
|
|
ROTATOR_LEFT_SHADOW,
|
|
|
|
ROTATOR_DOWN_SHADOW,
|
2023-07-20 02:41:17 +10:00
|
|
|
]
|
|
|
|
);
|
|
|
|
|
2023-12-11 03:35:15 +11:00
|
|
|
pub static FONT: Font = include_font!("fnt/yoster.ttf", 12);
|