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