aboutsummaryrefslogtreecommitdiff
path: root/src/1-1-walker.c
blob: 5b3d0e114db0c643c24e8e61f39b7b5d4a4f5b63 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <stdlib.h>
#include <stdbool.h>

#include <SDL2/SDL.h>
#include <SDL2/SDL_video.h>

#define PROJECT_NAME "vectors-walker"
#define obj_n 1

typedef struct OBJECT_INER {
    float x;
    float y;
} OBJECT_INER;

typedef struct OBJECT {
    OBJECT_INER *objs[obj_n];
} OBJECT;

#include <init.h>

void constructor(int w, int h, OBJECT_INER *obj){
    obj->x = (float)w/2;
    obj->y = (float)h/2;
}

void init_stuffs(int w, int h, OBJECT_INER *objs, STUFFS *stuff){
    constructor(w,h,&objs[0]);
}

void update(OBJECT_INER *obj){
    obj->x = obj->x + (rand() % 2 - 0.5);
    obj->y = obj->y + (rand() % 2 - 0.5);
}

void show(SDL_Renderer* renderer,OBJECT_INER *obj){
    SDL_SetRenderDrawColor(renderer,150,50,255,255);
    SDL_RenderDrawPoint(renderer,obj->x,obj->y);
}

void draw(SDL_Renderer* renderer,SDL_Window* window, STUFFS *stuff){
    //SDL_SetRenderDrawColor(renderer,0,0,0,255);
    //SDL_RenderClear(renderer);

    update(stuff->obj.objs[0]);
    show(renderer,stuff->obj.objs[0]);

	SDL_RenderPresent(renderer);
	//SDL_UpdateWindowSurface(window);
}

#include <init.c>