A game engine for top-down 2D RPG games.
rpg
game-engine
raylib
c99
1#include <keraforge.h>
2#include <raylib.h>
3
4
5struct kf_spritesheet kf_loadspritesheet(char *filename, int spritewidth, int spriteheight)
6{
7 Texture2D tex = LoadTexture(filename);
8 return (struct kf_spritesheet){
9 .texture = tex,
10 .spritewidth = spritewidth,
11 .spriteheight = spriteheight,
12 .nsprites = (tex.width / spritewidth) * (tex.height / spriteheight),
13 };
14}
15
16inline
17void kf_drawsprite(struct kf_spritesheet *sheet, f32 x, f32 y, int spritex, int spritey)
18{
19 DrawTexturePro(
20 sheet->texture,
21 (Rectangle){
22 spritex * sheet->spritewidth,
23 spritey * sheet->spriteheight,
24 sheet->spritewidth,
25 sheet->spriteheight },
26 (Rectangle){
27 x,
28 y,
29 sheet->spritewidth,
30 sheet->spriteheight },
31 (Vector2){0, 0},
32 0,
33 WHITE
34 );
35}