Blame projects/jigsaw/main.c
|
Ivan Mahonin |
fdbd7d |
|
|
Ivan Mahonin |
fdbd7d |
// todo:
|
|
Ivan Mahonin |
fdbd7d |
// recursive merging (corner merge)
|
|
Ivan Mahonin |
fdbd7d |
// improve ordering
|
|
Ivan Mahonin |
fdbd7d |
|
|
Ivan Mahonin |
fdbd7d |
|
|
Ivan Mahonin |
fdbd7d |
#include "menu.h"
|
|
Ivan Mahonin |
fdbd7d |
|
|
Ivan Mahonin |
fdbd7d |
|
|
Ivan Mahonin |
fdbd7d |
// app
|
|
Ivan Mahonin |
fdbd7d |
|
|
Ivan Mahonin |
fdbd7d |
Menu menu;
|
|
Ivan Mahonin |
fdbd7d |
|
|
Ivan Mahonin |
fdbd7d |
|
|
Ivan Mahonin |
fdbd7d |
void init() {
|
|
Ivan Mahonin |
fdbd7d |
background(colorByRGBA(0.1, 0.1, 0.1, 1));
|
|
Ivan Mahonin |
fdbd7d |
menuInit(&menu);
|
|
Ivan Mahonin |
fdbd7d |
menuLoad(&menu);
|
|
Ivan Mahonin |
fdbd7d |
if (!gameStarted(&menu.gm)) menuUpdateItems(&menu);
|
|
Ivan Mahonin |
fdbd7d |
}
|
|
Ivan Mahonin |
fdbd7d |
|
|
Ivan Mahonin |
fdbd7d |
|
|
Ivan Mahonin |
fdbd7d |
void deinit() {
|
|
Ivan Mahonin |
fdbd7d |
if (gameStarted(&menu.gm) && !gameWon(&menu.gm)) gameSave(&menu.gm);
|
|
Ivan Mahonin |
fdbd7d |
menuSave(&menu);
|
|
Ivan Mahonin |
fdbd7d |
menuFree(&menu);
|
|
Ivan Mahonin |
fdbd7d |
}
|
|
Ivan Mahonin |
fdbd7d |
|
|
Ivan Mahonin |
fdbd7d |
|
|
Ivan Mahonin |
fdbd7d |
void draw() {
|
|
Ivan Mahonin |
fdbd7d |
menuDraw(&menu);
|
|
Ivan Mahonin |
fdbd7d |
}
|
|
Ivan Mahonin |
fdbd7d |
|
|
Ivan Mahonin |
fdbd7d |
|
|
Ivan Mahonin |
fdbd7d |
int main() {
|
|
Ivan Mahonin |
fdbd7d |
windowSetVariableFrameRate();
|
|
Ivan Mahonin |
fdbd7d |
windowSetResizable(TRUE);
|
|
Ivan Mahonin |
fdbd7d |
windowSetInit(&init);
|
|
Ivan Mahonin |
fdbd7d |
windowSetDeinit(&deinit);
|
|
Ivan Mahonin |
fdbd7d |
windowSetDraw(&draw);
|
|
Ivan Mahonin |
fdbd7d |
windowRun();
|
|
Ivan Mahonin |
fdbd7d |
return 0;
|
|
Ivan Mahonin |
fdbd7d |
}
|
|
Ivan Mahonin |
fdbd7d |
|