Files
Momentum-Firmware/applications/plugins/blackjack/util.h
RogueMaster b2c9f0cc66 BJ updated
2022-10-16 14:50:41 -04:00

34 lines
1.1 KiB
C

#pragma once
#include "defines.h"
#define CONFIG_FILE_HEADER "Blackjack config file"
#define CONFIG_FILE_VERSION 1
typedef struct{
void (*callback)(GameState *game_state);
void (*processing)(const GameState *game_state, Canvas *const canvas,uint32_t duration,uint32_t margin);
void (*start)(GameState *game_state);
void *next;
uint32_t duration;
uint32_t margin;
} QueueItem;
struct Vector{
float x;
float y;
};
float lerp(float v0, float v1, float t);
void queue(GameState *game_state,
void (*callback)(GameState *game_state),
void (*start)(GameState *game_state),
void (*processing)(const GameState *gameState, Canvas *const canvas, uint32_t duration,uint32_t margin),
uint32_t duration,uint32_t margin
);
bool run_queue(GameState *gameState);
void animateQueue(const GameState *gameState, Canvas *const canvas);
void queue_clear();
Vector lerp_2d(Vector start, Vector end, float t);
Vector quadratic_2d(Vector start, Vector control, Vector end, float t);
void save_settings(Settings settings);
Settings load_settings();