momento/include/levelselection.h

29 lines
921 B
C
Raw Normal View History

/* SPDX-License-Identifier: GPL-3.0-or-later */
/* Copyright (C) 2021 KikooDX */
#pragma once
2021-04-30 02:16:11 +02:00
#include "conf.h"
#include "input.h"
2021-04-30 02:16:11 +02:00
#include <gint/display.h>
#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 1
2021-04-30 02:16:11 +02:00
#define PACKBOX_BORDER_SEL 4
#define PACKBOX_TRANSITION_SPEED 0.0625
struct LevelSelection {
int pack_cursor;
float visual_cursor;
float visual_target;
};
struct LevelSelection levelselection_init(void);
/* Return 1 if game state should change. */
2021-05-06 03:30:43 +02:00
int levelselection_update(struct LevelSelection *restrict levelselection,
struct Input input);
void levelselection_draw(struct LevelSelection levelselection);