/* SPDX-License-Identifier: GPL-3.0-or-later */ /* Copyright (C) 2021 KikooDX */ #pragma once #include "conf.h" #include "input.h" #include #define PACKBOX_PADDING_Y 16 #define PACKBOX_WIDTH (DWIDTH / 2 - PACKBOX_PADDING_Y) #define PACKBOX_PADDING_X (PACKBOX_WIDTH / 3) #define PACKBOX_SPACING \ (PACKBOX_WIDTH - PACKBOX_PADDING_X + (DWIDTH - PACKBOX_WIDTH) / 2) #define PACKBOX_BORDER_UNS 2 #define PACKBOX_BORDER_SEL 4 #define PACKBOX_TRANSITION_SPEED (1.0 / 40.0) struct LevelSelection { int pack_cursor; int visual_cursor; float transition; float transition_speed; }; struct LevelSelection levelselection_init(void); /* Return 1 if game state should change. */ int levelselection_update(struct LevelSelection *levelselection, struct Input input); void levelselection_draw(struct LevelSelection levelselection);