mtglist

view src/mtg.h @ 1:7211fa8db425

added filters
author John Tsiombikas <nuclear@member.fsf.org>
date Mon, 03 Nov 2014 01:20:40 +0200
parents 0a45dfe93e66
children
line source
1 #ifndef MTG_H_
2 #define MTG_H_
4 #define MTG_COL_NONE 0
5 #define MTG_COL_RED 1
6 #define MTG_COL_GREEN 2
7 #define MTG_COL_BLUE 4
8 #define MTG_COL_BLACK 8
9 #define MTG_COL_WHITE 16
10 #define MTG_COL_ARTIFACT 32
11 #define MTG_COL_MULTI 0xff
13 enum mtg_card_type {
14 MTG_TYPE_UNKNOWN,
16 MTG_TYPE_LAND,
17 MTG_TYPE_CREATURE,
18 MTG_TYPE_SORCERY,
19 MTG_TYPE_INSTANT,
20 MTG_TYPE_ENCHANTMENT,
21 MTG_TYPE_ARTIFACT,
22 MTG_TYPE_PLANESWALKER
23 };
26 struct mtg_card {
27 char *name;
28 unsigned int color;
29 enum mtg_card_type type;
30 const char *edition;
31 int count;
32 };
34 int mtg_init(void);
35 void mtg_destroy(void);
37 int mtg_load_cards(const char *fname);
39 void mtg_iter_begin(void);
40 const struct mtg_card *mtg_iter_next(void);
42 const char *mtg_color_str(unsigned int color);
44 const char *mtg_type_str(enum mtg_card_type type);
45 enum mtg_card_type mtg_str_type(const char *s);
47 const char *mtg_edition(const char *edcode);
49 int mtg_is_multicolor(unsigned int color);
50 unsigned int mtg_parse_multicolor(const char *str);
53 #endif /* MTG_H_ */