Initial commit

This commit is contained in:
drjones
2026-06-23 06:03:19 -07:00
commit fb4753c1f7
31 changed files with 2908 additions and 0 deletions

38
main/tarot_logic.h Normal file
View File

@@ -0,0 +1,38 @@
#pragma once
#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
#include "tarot_deck.h"
#ifdef __cplusplus
extern "C" {
#endif
#define TAROT_MAX_SPREAD_CARDS 8
typedef enum {
TAROT_SPREAD_3_CARD = 3,
TAROT_SPREAD_8_CARD = 8,
} tarot_spread_t;
typedef struct {
const tarot_card_t *card;
bool reversed;
const char *position_meaning;
} tarot_drawn_card_t;
typedef struct {
tarot_spread_t spread;
size_t count;
tarot_drawn_card_t cards[TAROT_MAX_SPREAD_CARDS];
} tarot_reading_t;
const char *tarot_spread_name(tarot_spread_t spread);
const char *tarot_spread_position_meaning(tarot_spread_t spread, size_t index);
void tarot_logic_draw_reading(tarot_reading_t *reading, tarot_spread_t spread, bool reversed_enabled);
#ifdef __cplusplus
}
#endif