/+junk/c_sdl_joypad

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/%2Bjunk/c_sdl_joypad
4 by Gustav Hartvigsson
What I have done:
1
#include "GameObject.h"
2
3
void game_object_free (GameObject * self) {
4
  GameObjectFreeFunc free_func = self->klass->free_func;
5
  free_func (self);
6
}
7
8
GameObjectClass * game_object_get_class (GameObject * self) {
9
  return self->klass;
10
}
11
12
void game_object_set_class (GameObject * self, GameObjectClass * klass) {
13
  self->klass = klass;
14
}
15
16
void game_object_draw (GameObject * self, SDL_Renderer * renderer) {
17
  GameObjectDrawFunc draw_func = self->klass->draw_func;
18
  draw_func (self, renderer);
19
}
20
21
void game_object_set_movment_delta (GameObject * self, int delta_x,
22
                                    int delta_y, uint32_t delta_time) {
23
  GameObjectSetMovementDeltaFunc set_movement_delta_func
24
                                         = self->klass->set_movement_delta_func;
25
  set_movement_delta_func (self, delta_x, delta_y, delta_time);
26
}
27
28
bool game_object_get_is_alive (GameObject * self) {
29
  GameObjectGetIsAliveFunc is_alive = self->klass->get_is_alive_func;
30
  bool ret = is_alive (self);
31
  return ret;
32
}
33
34
void game_object_set_callback (GameObject * self, char * name,
35
                               void * data) {
36
  GameObjectSetCallbackFunc set_callback_func = self->klass->set_callback_func;
37
  set_callback_func (self, name, data);
38
}
39
40
void game_object_do_callback (GameObject * self, char * name) {
41
  GameObjectDoCallbackFunc do_callback_func = self->klass->callback_handler_func;
42
  do_callback_func (self, name);
43
}
44
45
bool game_object_get_is_collide (GameObject * self, GameObject * other) {
46
  GameObjectGetIsCollideFunc s_is_collide = self->klass->get_is_collide_func;
47
  bool ret = s_is_collide (self, other);
48
  return ret;
49
}
50
51
52
/******************************************************************************/
53
54
void game_object_set_free_func (GameObject * self,
55
                                GameObjectFreeFunc free_func) {
56
  self->klass->free_func = free_func;
57
}
58
59
60
void game_object_set_draw_func (GameObject * self,
61
                                GameObjectDrawFunc draw_func) {
62
  self->klass->draw_func = draw_func;
63
}
64
65
void game_object_set_callback_handler_func (GameObject * self,
66
                           GameObjectCallbackHandlerFunc callback_handler_func);
67
68
void game_object_set_set_callback_func (GameObject * self,
69
                                  GameObjectSetCallbackFunc set_callback_func) {
70
  self->klass->set_callback_func = set_callback_func;
71
}
72
73
void game_object_set_move_func (GameObject * self,
74
                                GameObjectMoveFunc move_func) {
75
  self->klass->move_func = move_func;
76
}
77
78
void game_object_set_set_move_delta_func (GameObject * self,
79
                         GameObjectSetMovementDeltaFunc set_movement_delta_func) {
80
  self->klass->set_movement_delta_func = set_movement_delta_func;
81
}
82
83
void game_object_set_get_bounding_box_func (GameObject * self,
84
                           GameObjectGetBoundingBoxFunc get_bounding_box_func) {
85
  self->klass->get_bounding_box_func = get_bounding_box_func;
86
}
87
88
void game_object_set_get_is_alive_func (GameObject * self,
89
                                   GameObjectGetIsAliveFunc get_is_alive_func) {
90
  self->klass->get_is_alive_func = get_is_alive_func;
91
}
92
93
void game_object_set_is_collide_func (GameObject * self,
94
                               GameObjectGetIsCollideFunc get_is_collide_func) {
95
  self->klass->get_is_collide_func = get_is_collide_func;
96
}
97
98
/**  MOOOOO!  **/