Mercurial > molko
comparison libmlk-rpg/rpg/item.h @ 290:9948e288925b
rpg: add support for items in battle
author | David Demelier <markand@malikania.fr> |
---|---|
date | Fri, 08 Jan 2021 12:56:10 +0100 |
parents | 3991779aaba9 |
children | 08ab73b32832 |
comparison
equal
deleted
inserted
replaced
289:63d9fb56c609 | 290:9948e288925b |
---|---|
17 */ | 17 */ |
18 | 18 |
19 #ifndef MOLKO_RPG_ITEM_H | 19 #ifndef MOLKO_RPG_ITEM_H |
20 #define MOLKO_RPG_ITEM_H | 20 #define MOLKO_RPG_ITEM_H |
21 | 21 |
22 #include <stdbool.h> | 22 struct battle; |
23 | |
24 struct character; | 23 struct character; |
25 struct texture; | 24 struct texture; |
26 | 25 |
27 struct item { | 26 struct item { |
28 const char *name; | 27 const char *name; |
29 const char *description; | 28 const char *description; |
30 struct texture *icon; | 29 struct texture *icon; |
31 void (*exec)(const struct item *item, struct character *ch); | 30 |
32 bool (*allowed)(const struct item *item, const struct character *ch); | 31 void (*exec_menu)(const struct item *item, struct character *ch); |
32 | |
33 void (*exec_battle)(const struct item *item, | |
34 struct battle *bt, | |
35 struct character *src, | |
36 struct character *tgt); | |
33 }; | 37 }; |
34 | 38 |
35 void | 39 void |
36 item_exec(const struct item *item, struct character *ch); | 40 item_exec_menu(const struct item *item, struct character *ch); |
37 | 41 |
38 bool | 42 void |
39 item_allowed(const struct item *item, struct character *ch); | 43 item_exec_battle(const struct item *item, |
44 struct battle *bt, | |
45 struct character *src, | |
46 struct character *tgt); | |
40 | 47 |
41 #endif /* !MOLKO_RPG_ITEM_H */ | 48 #endif /* !MOLKO_RPG_ITEM_H */ |