diff --git a/src/nostalgia/player/main.cpp b/src/nostalgia/player/main.cpp index 3126289e..227b1d26 100644 --- a/src/nostalgia/player/main.cpp +++ b/src/nostalgia/player/main.cpp @@ -17,7 +17,7 @@ using namespace nostalgia; static unsigned spriteX = 72; static unsigned spriteY = 64; -static int mainLoop(core::Context *ctx) { +static int eventHandler(core::Context *ctx) { if (core::buttonDown(core::GamePad_Right)) { spriteX += 2; } else if (core::buttonDown(core::GamePad_Left)) { @@ -28,15 +28,11 @@ static int mainLoop(core::Context *ctx) { } else if (core::buttonDown(core::GamePad_Up)) { spriteY -= 2; } - core::setSprite(ctx, 0, spriteX + 8, spriteY, 'n' - ('a' - 1)); - core::setSprite(ctx, 1, spriteX + 16, spriteY, 'o' - ('a' - 1)); - core::setSprite(ctx, 2, spriteX + 24, spriteY, 's' - ('a' - 1)); - core::setSprite(ctx, 3, spriteX + 32, spriteY, 't' - ('a' - 1)); - core::setSprite(ctx, 4, spriteX + 40, spriteY, 'a' - ('a' - 1)); - core::setSprite(ctx, 5, spriteX + 48, spriteY, 'l' - ('a' - 1)); - core::setSprite(ctx, 6, spriteX + 56, spriteY, 'g' - ('a' - 1)); - core::setSprite(ctx, 7, spriteX + 64, spriteY, 'i' - ('a' - 1)); - core::setSprite(ctx, 8, spriteX + 72, spriteY, 'a' - ('a' - 1)); + constexpr auto s = "nostalgia"; + for (unsigned i = 0; s[i]; ++i) { + const auto c = static_cast(s[i] - ('a' - 1)); + core::setSprite(ctx, i, spriteX + 8 * (i + 1), spriteY, c); + } return 16; } @@ -52,7 +48,7 @@ ox::Error run(ox::FileSystem *fs) { oxReturnError(core::loadSpriteTileSheet(&ctx, 0, TileSheetAddr, PaletteAddr)); oxReturnError(core::initConsole(&ctx)); core::puts(&ctx, 10, 9, "DOPENESS!!!"); - core::setEventHandler(mainLoop); + core::setEventHandler(eventHandler); oxReturnError(core::run(&ctx)); oxReturnError(core::shutdownGfx(&ctx)); return OxError(0);