Draw a card

This commit is contained in:
Bill Rossi 2025-02-01 05:36:42 -05:00
parent 3b6d384506
commit 65f36ae820
3 changed files with 46 additions and 12 deletions

5
card.c Normal file
View File

@ -0,0 +1,5 @@
#include "card.h"
void draw_card(Card *c) {
DrawRectangleV(c->position, card_size, RED);
}

35
card.h Normal file
View File

@ -0,0 +1,35 @@
#ifndef _HF_CARD_
#define _HF_CARD_
#include <stdbool.h>
#include <raylib.h>
typedef struct Card Card;
#define CARD_WIDTH 63
#define CARD_HEIGHT 105
static Vector2 card_size = (Vector2) { CARD_WIDTH, CARD_HEIGHT };
typedef enum CardType {
CHAFF,
RIBBON,
ANIMAL,
BRIGHT,
} CardType;
typedef enum RibbonType {
RIBBON_NONE,
RIBBON_PLAIN,
RIBBON_BLUE,
RIBBON_POETRY,
} RibbonType;
struct Card {
int index;
CardType type;
RibbonType ribbon_type;
Vector2 position;
};
void draw_card(Card *c);
#endif

18
main.c
View File

@ -5,27 +5,21 @@
#include <raylib.h> #include <raylib.h>
#include "card.h"
char *text = "こんにちわ、 世界!"; char *text = "こんにちわ、 世界!";
int main(int argc, char** argv) { int main(int argc, char** argv) {
InitWindow(800, 450, "Hanafuda Hachi-Hachi"); InitWindow(800, 450, "Hanafuda Hachi-Hachi");
SetTargetFPS(60); SetTargetFPS(60);
int codepoints_count; Card *c = malloc(sizeof(Card));
int *codepoints = LoadCodepoints(text, &codepoints_count); c->position = (Vector2) { 200, 200 };
Font font = LoadFontEx("font/DotGothic16/DotGothic16-Regular.ttf", 48, codepoints, codepoints_count);
while (!WindowShouldClose()) { while (!WindowShouldClose()) {
BeginDrawing(); BeginDrawing();
ClearBackground(BLACK); ClearBackground(RAYWHITE);
DrawTextEx( draw_card(c);
font,
text,
(Vector2) { 200, 200 },
48,
5.,
RAYWHITE
);
EndDrawing(); EndDrawing();
} }