fase 1: jail i game a c++ idiomàtic (raii, info::ctx, cheats arreglats)

This commit is contained in:
2026-04-15 18:03:46 +02:00
parent 2c833d086e
commit 7f85b50c63
18 changed files with 834 additions and 804 deletions

View File

@@ -1,26 +1,9 @@
#include "game/sprite.hpp"
#include <stdlib.h>
Sprite::Sprite(JD8_Surface gfx) {
this->gfx = gfx;
this->entitat = NULL;
}
Sprite::~Sprite(void) {
if (this->entitat != NULL) {
if (this->entitat->num_frames > 0) free(this->entitat->frames);
if (this->entitat->num_animacions > 0) {
for (int i = 0; i < this->entitat->num_animacions; i++) {
if (this->entitat->animacions[i].num_frames > 0) free(this->entitat->animacions[i].frames);
}
}
free(this->entitat);
}
}
void Sprite::draw() {
JD8_BlitCK(this->x, this->y, this->gfx, this->entitat->frames[this->entitat->animacions[this->o].frames[this->cur_frame]].x, this->entitat->frames[this->entitat->animacions[this->o].frames[this->cur_frame]].y, this->entitat->frames[this->entitat->animacions[this->o].frames[this->cur_frame]].w, this->entitat->frames[this->entitat->animacions[this->o].frames[this->cur_frame]].h, 255);
}
#include "game/sprite.hpp"
Sprite::Sprite(JD8_Surface gfx)
: gfx(gfx) {}
void Sprite::draw() {
const Frame& f = entitat.frames[entitat.animacions[o].frames[cur_frame]];
JD8_BlitCK(x, y, gfx, f.x, f.y, f.w, f.h, 255);
}