Hmmm that's some nice merge: Merge branch 'master' of ssh.marcbarbier.fr:Marc/gamejam-polytech

This commit is contained in:
Marc
2023-01-21 18:27:14 +01:00
8 changed files with 74 additions and 2 deletions
+41
View File
@@ -0,0 +1,41 @@
#include "game.h"
#include <SDL2/SDL_image.h>
#include "scaller.h"
static RenderId_t menuObjects[10];
static unsigned menuObjectsSize = 0;
Scene_t gameScene;
int game_staticRender(void){
MonitorSize_t size = renderer_getMonitorSize();
float aspectRatio = (float)size.width / size.height;
SDL_Surface* ppSurface = IMG_Load("./assets/img/pp.png");
if(ppSurface == NULL){
printf("cannot load background");
return -1;
}
RenderObject_t pp;
strcpy(pp.name, "pp");
pp.z = 10;
pp.surface = ppSurface;
pp.width = 1;
pp.height = 1;
scaller(pp.surface, 1, &pp.width, &pp.height);
menuObjects[menuObjectsSize] = scene_addRenderObject(&gameScene, pp, CAMERA_WIDTH * 0.35f, 0);
renderer_setScene(&gameScene);
++menuObjectsSize;
return 0;
}
int game_render([[maybe_unused]] float delta){
return 0;
}
void game_remove(void){
scene_free(&gameScene);
menuObjectsSize = 0;
}
+13
View File
@@ -0,0 +1,13 @@
#ifndef __GAME_H__
#define __GAME_H__
#include "renderer.h"
extern Scene_t gameScene;
int game_staticRender(void);
int game_render(float delta);
void game_remove(void);
#endif
+13 -2
View File
@@ -1,3 +1,4 @@
#include "game.h"
#include "input.h"
#include "renderer.h"
#include "text.h"
@@ -15,6 +16,7 @@ clock_t timecode;
long iter;
Mix_Music *prout;
static void space(void) {
printf("space!\n");
if(Mix_PlayMusic(prout, 0) != 0){
@@ -23,6 +25,11 @@ static void space(void) {
Mix_FreeMusic(prout);
running = false;
}
if(renderer_getScene() == &menuScene){
menu_remove();
renderer_setScene(&gameScene);
game_staticRender();
}
}
Scene_t demo;
@@ -43,8 +50,12 @@ static void game_loop(void) {
float delta = ((float)(clock() - timecode)) / CLOCKS_PER_SEC;
//update time
menu_render(delta);
if(renderer_getScene() == &menuScene){
menu_render(delta);
}
else{
game_render(delta);
}
timecode = clock();
}
+1
View File
@@ -3,6 +3,7 @@
#include "renderer.h"
extern Scene_t menuScene;
int menu_staticRender(void);
int menu_render(float delta);
+4
View File
@@ -89,3 +89,7 @@ void renderer_setScene(const Scene_t * newScene) {
MonitorSize_t renderer_getMonitorSize() {
return monitorSize;
}
const Scene_t * renderer_getScene(void){
return scene;
}
+1
View File
@@ -19,5 +19,6 @@ typedef struct MonitorSize {
void renderer_main(void(*game_setup)(void), void(*game_loop)(void));
MonitorSize_t renderer_getMonitorSize(void);
void renderer_setScene(const Scene_t * newScene);
const Scene_t * renderer_getScene(void);
#endif