object.c 663 B

123456789101112131415161718192021222324252627282930
  1. #include "object.h"
  2. #include <debug.h>
  3. void Object_log(char* msg){
  4. dbg_sprintf(dbgout, "[Object] %s\n", msg);
  5. }
  6. void Object_update(Object* self){}
  7. void Object_draw(Object* self){
  8. gfx_ScaledSprite_NoClip(
  9. self->sprite->data, self->x, self->y,
  10. self->scale.x, self->scale.y);
  11. }
  12. void free_Object(Object* self){
  13. Object_log("Freeing object");
  14. free_Sprite(self->sprite);
  15. free(self);
  16. }
  17. Object* new_Object(int x, int y){
  18. Object* self = (Object*)malloc(sizeof(Object));
  19. self->x = x;
  20. self->y = y;
  21. self->scale.x = self->scale.y = 1;
  22. self->update = &Object_update;
  23. self->draw = &Object_draw;
  24. return self;
  25. }