helapordo 1.4.23
Loading...
Searching...
No Matches
game_core.h
Go to the documentation of this file.
1// jgabaut @ github.com/jgabaut
2// SPDX-License-Identifier: GPL-3.0-only
3/*
4 Copyright (C) 2022-2026 jgabaut
5
6 This program is free software: you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation, version 3 of the License.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program. If not, see <https://www.gnu.org/licenses/>.
17*/
18
19#ifndef GAME_CORE_H
20#define GAME_CORE_H
21
22#ifndef HELAPORDO_OS
23#define HELAPORDO_OS "unknown"
24#endif
25
26#ifndef HELAPORDO_MACHINE
27#define HELAPORDO_MACHINE "unknown"
28#endif
29
30#include <sys/stat.h>
31
32#ifdef HELAPORDO_CURSES_BUILD
33#ifdef _WIN32
34#include <ncursesw/panel.h>
35#define S4C_WIN_BG 0
36#define S4C_WIN_RED 1
37#define S4C_WIN_GREEN 2
38#define S4C_WIN_BLUE 3
39#define S4C_WIN_CYAN 4
40#define S4C_WIN_WHITE 5
41#define S4C_WIN_YELLOW 6
42#define S4C_WIN_BLACK_ON_WHITE 7
43#define S4C_WIN_PURPLE 8
44#define S4C_WIN_WHITE_ON_RED 9
45#define S4C_WIN_WHITE_ON_PURPLE 10
46#else
47#include <panel.h>
48#endif // _WIN32
49
53typedef struct GameScreen {
54 WINDOW* win;
55 int colors;
56 int color_pairs;
57 int cols;
58 int rows;
59 int escape_delay;
60 int tabsize;
61} GameScreen;
62
63#else
64#ifndef HELAPORDO_RAYLIB_BUILD
65#error "HELAPORDO_CURSES_BUILD and HELAPORDO_RAYLIB_BUILD are both undefined."
66#else
70typedef enum GameScreen { LOGO = 0, TITLE, SAVES_VIEW, NAMEPICK_VIEW, CLASSPICK_VIEW, FLOOR_VIEW, ROOM_VIEW, UNLOCK_SPECIAL_VIEW, PICK_SPECIAL_VIEW, EQUIPS_VIEW, OPEN_BAG_VIEW, CHECK_LOADOUT_VIEW, CONSUMABLES_VIEW, STATS_VIEW, ARTIFACTS_VIEW, ENDING, DOOR_ANIM, CHEST_ANIM,
71#ifdef HELAPORDO_DEBUG_ACCESS
72 DEBUG_VIEW
73#endif // HELAPORDO_DEBUG_ACCESS
74 } GameScreen;
75// Add more includes for rl-build here
76#ifdef _WIN32
84#define WIN32_LEAN_AND_MEAN // We don't want no playsound
85#define NOGDI // We don't want Rectangle from Windows
86#define NOUSER // We don't want no user routines
87#endif // _WIN32
88#endif // HELAPORDO_RAYLIB_BUILD
89#endif // HELAPORDO_CURSES_BUILD
90
91#ifdef HELAPORDO_DEBUG_ACCESS
92#include "../../koliseo/src/kls_region.h"
93#else
94#include "../../koliseo/src/koliseo.h"
95#endif // HELAPORDO_DEBUG_ACCESS
96
100#ifdef near
101#undef near
102#endif
103#ifdef far
104#undef far
105#endif
106
107#include "../palette.h"
108
109extern const char* helapordo_title_string;
110
111extern const char* helapordo_build_string;
112
129
133#define HLPD_KEYCLASS_MAX 8
134
140
145typedef struct HLPD_Key {
146 int val;
149
155
166
170#define HLPD_DIRECTIONALKEYS_SCHEMAS_MAX 2
171
177
188
195
199typedef struct GameOptions {
200 bool use_default_background; //<** Turn on usage of default terminal background */
201 bool do_autosave; //<* Turns on autosave */
202 bool use_3x3_fov; //<* Turns on 3x3 fov */
203 HLPD_DirectionalKeys_Schema directional_keys_schema; //* Defines the current schema for cardinal directions movement */
205
207
208#ifndef KOLISEO_HAS_REGION
209#define KLS_REGIONTYPE_MAX 2
210#endif // KLS_HAS_REGION
211
249
253#define HLP_MAX_INDEX (HR_loadInfo-100+KLS_REGIONTYPE_MAX)
254
259extern char *hlp_regiontype_strings[HLP_MAX_INDEX + 1];
260
264extern Koliseo *default_kls;
268extern Koliseo *temporary_kls;
272extern Koliseo *support_kls;
273
278extern int G_PRELOAD_ANIMATIONS_ON;
282extern int G_DEBUG_ON;
286extern int G_LOG_ON;
290extern int G_EXPERIMENTAL_ON;
294extern int G_FASTQUIT_ON;
298extern int G_GODMODE_ON;
302extern int G_DEBUG_ROOMTYPE;
306extern int G_DEBUG_ROOMTYPE_ON;
310extern char *G_DEBUG_ROOMTYPE_ARG;
314extern int G_DEBUG_ENEMYTYPE;
318extern int G_DEBUG_ENEMYTYPE_ON;
322extern char *G_DEBUG_ENEMYTYPE_ARG;
326extern int GS_AUTOSAVE_ON;
330extern int G_DOTUTORIAL_ON;
331
335extern int G_USE_CURRENTDIR;
336
340extern int G_USE_DEFAULT_BACKGROUND;
341
346
351
352
356extern int64_t G_RNG_ADVANCEMENTS;
357
361extern int G_SEEDED_RUN_ON;
365extern char *G_SEEDED_RUN_ARG;
366
370#define HELAPORDO_MAJOR_VERSION 1
371
375#define HELAPORDO_MINOR_VERSION 4
376
380#define HELAPORDO_PATCH_VERSION 23
381
385#define VERSION "1.4.23"
386
387#define HELAPORDO_BINSAVEFILE_VERSION "0.0.8"
388
392static const int HELAPORDO_API_VERSION_INT =
395
396#define EXPECTED_NCURSES_VERSION_MAJOR 6
397#define EXPECTED_NCURSES_VERSION_MINOR 4
398#define EXPECTED_NCURSES_VERSION_PATCH 20230520
399#define EXPECTED_RAYLIB_VERSION_MAJOR 4
400#define EXPECTED_RAYLIB_VERSION_MINOR 5
401#define EXPECTED_RAYLIB_VERSION_PATCH 0
402
409typedef struct {
410 char name[50];
411 char save_path[255];
412 int index;
413} Saveslot;
414
419#define MAX_SAVESLOTS 3
420
427
432#define MAXPLAYERLUCK 30
433
438#define MAXLENGTH 100
439
444#define MAXLUCK 50
445
451typedef enum {
452 Rogue = 0,
453} Gamemode;
454
458#define GAMEMODE_MAX 0
459
464extern char *gamemodenamestrings[GAMEMODE_MAX + 1];
465
470#define LORES_MAX 2
471
475extern Gamemode GAMEMODE;
476
483typedef enum {
485 Rock = 1,
486 Bread = 2,
491
495#define CONSUMABLESMAX 5
496
501typedef struct {
503 char name[25];
504 char desc[50];
505 int qty;
506 char sprite[8][20];
507} Consumable;
508
514extern char *consumablestrings[CONSUMABLESMAX + 1];
515
523
540
544#define ARTIFACTSMAX 6
545
550typedef struct Artifact {
552 char name[25];
553 char desc[50];
554 int qty;
555 int active;
557 char sprite[8][20];
559
564extern char *artifactstrings[ARTIFACTSMAX + 1];
565
571
572#define ENEMY_ARTIFACTDROP_CHANCE 1001
573
585
589#define STATUSMAX 5
590
597typedef enum {
600 Mage = 2,
603
607#define CLASSESMAX 3
608
613extern char *classesstrings[CLASSESMAX + 1];
614
618typedef enum {
623} Stat;
624
628#define STATMAX 3
629
650
659extern BaseStats basestats[CLASSESMAX + 1];
660
667typedef enum {
668 Mummy = 0,
669 Ghost = 1,
672 Imp = 4,
673 Troll = 5,
674 Boar = 6,
676} enemyClass;
677
681#define ENEMYCLASSESMAX 7
682
688extern char *classenemystrings[ENEMYCLASSESMAX + 1];
689
709
719
733
737#define BOSSCLASSESMAX 4
738
744extern char *classbossstrings[BOSSCLASSESMAX + 1];
745
765
775
797
823
827#define SPECIALSMAX 3 //num of specials per class (0 inclusive)
828
833extern char *specialsnamestrings[CLASSESMAX + 1][SPECIALSMAX + 1];
834
839extern char *specialsdescstrings[CLASSESMAX + 1][SPECIALSMAX + 1];
840
845extern int specialscosts[CLASSESMAX + 1][SPECIALSMAX + 1];
846
852typedef struct {
855 char name[80];
856 char desc[80];
857 int cost;
859
866
867#define SKILLSTOTAL SKILL_TYPE_MAX
868
869#define FIGHTER_SKILL_SLOTS SKILLSTOTAL
870#define ENEMY_SKILL_SLOTS SKILLSTOTAL
871#define BOSS_SKILL_SLOTS SKILLSTOTAL
872
877extern char *skillsnamestrings[SKILLSTOTAL + 1];
878
883extern char *skillsdescstrings[SKILLSTOTAL + 1];
884
889extern int skillscosts[SKILLSTOTAL + 1];
890
898typedef struct {
900 skillType class;
901 char name[80];
902 char desc[80];
903 int cost;
904} Skillslot;
905
906//Forward declarations for counter fields in entities
907struct Turncounter;
908
928//Number of counters per entity
929
933#define COUNTERSMAX 9
934
935//Forward declarations for equipslot fields in entities
936struct Equipslot;
937struct Equip;
938
945typedef enum {
946 HEAD = 0,
947 TORSO = 1,
949} Equipzone;
950
954#define EQUIPZONES 2
955
960extern char *equipzonestrings[EQUIPZONES + 1];
961
962/* Ceiling for Fighter equipsBag indexes.
963 * @see Fighter
964 */
965#define EQUIPSBAGSIZE 20
966
984
988#define PERKSMAX 8
989
994#define EQUIPPERKSMAX 2
995
1000extern char *perksnamestrings[PERKSMAX + 1];
1001
1006extern char *perksdescstrings[PERKSMAX + 1];
1007
1012typedef struct {
1014 char name[25];
1015 char desc[50];
1017} Perk;
1018
1019//Macros for special moves callback
1020struct Fighter;
1021struct Enemy;
1022struct Boss;
1023struct Path;
1024struct FoeParty;
1025
1026//Macros for counters callback
1027
1028//#define REGISTER_COUNTER_CALLBACK(c,x,f) register_counter_callback(c, (callback_void_t)x,f)
1029//#define GET_COUNTER_CALLBACK(c,C) ((C)callback_counter_ptrs[c])
1030
1031//Macro to get size of an array
1032#define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
1033
1039typedef void (*callback_turncounter_fighter_t)(struct Fighter *);
1040
1046typedef void (*callback_turncounter_enemy_t)(struct Enemy *);
1047
1055#ifdef HELAPORDO_CURSES_BUILD
1056typedef void (*callback_special_t)(WINDOW *, struct Fighter *, struct Enemy *,
1057 struct Boss *, struct Path *, int, int, int);
1058#else
1059#ifndef HELAPORDO_RAYLIB_BUILD
1060#error "HELAPORDO_CURSES_BUILD and HELAPORDO_RAYLIB_BUILD are both undefined."
1061#else
1062typedef void (*callback_special_t)(Rectangle* r, struct Fighter *, struct Enemy *,
1063 struct Boss *, struct Path *, int, int, int);
1064#endif // HELAPORDO_RAYLIB_BUILD
1065#endif // HELAPORDO_CURSES_BUILD
1066
1074typedef void (*callback_artifact_t)(struct Fighter *, struct Enemy *,
1075 struct Boss *, int isBoss);
1076
1080typedef void (*callback_void_t)(void);
1081
1082#define FIGHTER_NAME_BUFSIZE 50
1083
1094typedef struct Fighter {
1097 int hp;
1098 int atk;
1099 int def;
1100 int vel;
1101 int level;
1102 int luck;
1108
1115
1121
1124
1129
1131 int earliestBagSlot; //TODO To always use the array efficiently (???) I sense linked lists may be better
1132
1137
1142
1144
1147 char sprite[8][20];
1148
1151
1152 //TODO eval this callback bit if we need to have some without nesting in another turncounter
1153 //callback_void_t callback_counter_ptrs[COUNTERSMAX]; /**< Array of callbacks for turnCounter functions.*/
1155
1196
1235
1241typedef void (*effect_fun)(Fighter *);
1247typedef void (*effect_e_fun)(Enemy *);
1253typedef void (*effect_b_fun)(Boss *);
1259typedef void (*effect_fp_fun)(struct FoeParty *);
1260
1266typedef void (*boost_fun)(Fighter *, int boost);
1272typedef void (*boost_e_fun)(Enemy *, int boost);
1278typedef void (*boost_b_fun)(Boss *, int boost);
1284typedef void (*boost_fp_fun)(struct FoeParty *, int boost);
1285
1297
1304typedef struct Turncounter {
1305 int count;
1306 char *desc;
1309 void (*effect_fun)(Fighter *);
1310 void (*effect_e_fun)(Enemy *);
1311 void (*effect_b_fun)(Boss *);
1312 void (*effect_fp_fun)(struct FoeParty *);
1313 void (*boost_fun)(Fighter *, int);
1314 void (*boost_e_fun)(Enemy *, int);
1315 void (*boost_b_fun)(Boss *, int);
1316 void (*boost_fp_fun)(struct FoeParty *, int);
1318
1330
1334#define WINCON_CLASS_MAX 2
1335
1344
1349extern char *winconstrings[WINCON_CLASS_MAX + 1];
1350
1351#define PATH_SEED_BUFSIZE 20
1352
1367
1374typedef enum {
1375 Vest = 0,
1378 Cape = 3,
1381} equipClass;
1382
1386#define EQUIPSMAX 5
1387
1394typedef enum {
1395 Bad = 0,
1397 Good = 2,
1398} quality;
1399
1403#define QUALITIESMAX 2
1404
1409extern char *qualitytrings[QUALITIESMAX + 1];
1410
1417typedef struct Equip {
1420 char name[25];
1421 char desc[50];
1422 int qty;
1423
1425
1426 int level;
1427 //Modifiers
1428 // modifier
1429 int atk;
1430 int def;
1431 int vel;
1432 int enr;
1433
1434 int bonus;
1436
1437 int cost;
1438
1440 void (*equip_fun)(Fighter *, Enemy *, Path *);
1442 char sprite[8][20];
1444
1449extern char *equipstrings[EQUIPSMAX + 1];
1450
1457extern Equip equips[EQUIPSMAX + 1];
1458
1465typedef void (*equip_fun)(Fighter *, Enemy *);
1466
1472typedef struct Equipslot {
1474 char *desc;
1476 char sprite[8][20];
1478 //void (*equip_fun)( Fighter*,Enemy*); /**< Pointer to temp boost function applying to Enemy, takes a int
1480
1484#define ITEM_SHOP_MAX 20
1485
1489#define EQUIP_SHOP_MAX 2
1490
1494#define CONSUMABLE_SHOP_MAX 3
1495
1499#define SINGLE_CONSUMABLE_SHOP_MAX 3
1500
1519
1526typedef enum {
1529} chestClass;
1530
1534#define CHEST_CLASS_MAX 1
1535
1539#define CHEST_CONSUMABLES_MAX 5
1543#define CHEST_EQUIPS_MAX 5
1544
1549extern char *chestdescstrings[CHEST_CLASS_MAX + 1];
1550
1572
1584
1588#define TREASURE_CLASS_MAX 3
1589
1594extern char *treasuredescstrings[TREASURE_CLASS_MAX + 1];
1595
1615
1629
1633#define ROADFORK_OPTIONS_MAX 4
1634
1640
1648typedef struct Roadfork {
1649
1650 char *desc;
1651
1653
1655
1662typedef enum {
1664 SHOP = 1,
1665 BOSS = 2,
1668 HOME = 5,
1669 WALL = 6,
1671} roomClass;
1672
1676#define ROOM_CLASS_MAX 7
1677
1682extern char *roomnamestrings[ROOM_CLASS_MAX + 1];
1683
1687#define ROOM_ENEMIES_MAX 4
1688
1694#define FOES_BOSSES_MAX 2
1695
1703typedef enum {
1707
1711#define FOEPARTY_CLASS_MAX 1
1712
1718extern char *foepartystrings[FOEPARTY_CLASS_MAX + 1];
1719
1726typedef struct FoeParty {
1728 int level;
1735 //TODO: this is not ideal. Could we ever need to have a different max for enemy_foes? Only if the group is not in a Room??
1737 int size;
1743
1754
1764
1786
1793typedef enum {
1796} floorClass;
1797
1801#define FLOOR_CLASS_MAX 1
1802
1807extern char *floornamestrings[FLOOR_CLASS_MAX + 1];
1808
1813#define FLOOR_MAX_COLS 24
1814
1819#define FLOOR_MAX_ROWS 24
1820
1843
1848#define MAX_ROGUE_FLOORS 17
1849
1859
1864#define SAVETYPE_MAX 2
1865
1871extern char *savetypestrings[SAVETYPE_MAX + 1];
1872
1892
1901typedef struct {
1902
1903 clock_t start_time;
1904
1906
1910
1913
1915
1917
1919
1922#ifdef HELAPORDO_CURSES_BUILD
1923 GameScreen *screen;
1924#else
1925#ifndef HELAPORDO_RAYLIB_BUILD
1926#error "HELAPORDO_CURSES_BUILD and HELAPORDO_RAYLIB_BUILD are both undefined.\n"
1927#else
1928#endif // HELAPORDO_RAYLIB_BUILD
1929#endif // HELAPORDO_CURSES_BUILD
1930
1932
1934} Gamestate;
1935
1936#ifndef KOLISEO_HAS_REGION
1941extern Gamestate* G_GAMESTATE;
1942#endif
1943
1944#define NOTIFICATION_BUFFER_SIZE 200
1945
1954
1955#define NOTIFICATIONS_RINGBUFFER_SIZE 7
1956
1957#define RINGBUF_T Notification
1958#define RINGBUF_NAME RingaBuf
1959#define RINGBUF_PREFIX rb_
1960#include "../../koliseo/templates/ringbuf.h"
1961
1989
2014
2021
2028#define TURNOP_MAX 17
2034extern char *turnopstrings[TURNOP_MAX + 1];
2035
2045
2056
2063
2070#define FOETURNOP_MAX 3
2076extern char *foeturnopstrings[FOETURNOP_MAX + 1];
2077
2083#define OPS_LOGFILE "OPS_log.txt"
2084
2102
2108#define OP_RES_MAX 10
2109
2116extern char *opresstrings[OP_RES_MAX + 1];
2117
2124typedef struct {
2132#ifdef HELAPORDO_CURSES_BUILD
2133 WINDOW *notify_win;
2134#else
2135#ifndef HELAPORDO_RAYLIB_BUILD
2136#error "HELAPORDO_CURSES_BUILD and HELAPORDO_RAYLIB_BUILD are both undefined."
2137#else
2138 Rectangle *notify_win;
2139#endif // HELAPORDO_RAYLIB_BUILD
2140#endif // HELAPORDO_CURSES_BUILD
2142 Koliseo_Temp *t_kls;
2146} turnOP_args;
2147
2152#define SHOPROOM 4
2157#define BOSSROOM 5
2162#define HOMEROOM 6
2167#define BEASTROOM 3
2172#define BSTFACTOR 1.5
2173
2178#define ENEMYLVLRATIO 2
2183#define SPECIALLVLRATIO 2
2188#define EQUIPLVLBOOSTRATIO 3
2189
2202
2207#define FIGHT_RES_TOT 7
2208
2214extern char *fightresultstrings[FIGHT_RES_TOT + 1];
2215
2222
2223#define CHEST_FRAMES 25
2224#define CHEST_ROWS 18
2225#define CHEST_COLS 18
2226#define CHEST_FRAMETIME 67
2227
2228#define CURSES_BINSAVE_NAME "save-nc.bin"
2229#define RL_BINSAVE_NAME "save-rl.bin"
2230
2231#define CURSES_GMSTSAVE_NAME "run-nc.bin"
2232#define RL_GMSTSAVE_NAME "run-rl.bin"
2233
2234#define CURSES_SETTINGS_SAVE_NAME "settings-nc.bin"
2235#define RL_SETTINGS_SAVE_NAME "settings-rl.bin"
2236
2237extern const wchar_t HEAD_CHAR_ICON;
2238extern const wchar_t TORSO_CHAR_ICON;
2239extern const wchar_t LEGS_CHAR_ICON;
2240
2241void resolve_staticPath(char static_path[500]);
2242#endif // GAME_CORE_H
const wchar_t TORSO_CHAR_ICON
Definition game_core.c:625
char * foeturnopstrings[FOETURNOP_MAX+1]
Array with the name strings for foeTurnOption.
Definition game_core.c:346
char * perksdescstrings[PERKSMAX+1]
Array with the desc strings for perkClass.
Definition game_core.c:526
HLPD_Key hlpd_default_keybinds[HLPD_KEYCLASS_MAX+1]
Array with the keybinds for the game.
Definition game_core.c:58
Consumable consumablesBase[CONSUMABLESMAX+1]
Array containing all Consumable instances.
Definition game_core.c:372
char * specialsdescstrings[CLASSESMAX+1][SPECIALSMAX+1]
Array with the desc strings for special moves.
Definition game_core.c:472
void resolve_staticPath(char static_path[500])
Sets the passed char array to the expected path for /static/ folder.
Definition game_core.c:645
char * hlp_regiontype_strings[HLP_MAX_INDEX+1]
Array with the name strings for HLP_Region_Type values.
Definition game_core.c:110
Saveslot default_saveslots[MAX_SAVESLOTS+1]
Array with the default saveslots for a game.
Definition game_core.c:148
int G_DEBUG_ROOMTYPE
Global variable for debug roomtype flag.
Definition game_core.c:24
char * classbossstrings[BOSSCLASSESMAX+1]
Array with the name strings for bossClass.
Definition game_core.c:448
char * hlpd_keyclass_strings[HLPD_KEYCLASS_MAX+1]
Array with the name strings for Gamemode.
Definition game_core.c:46
char * roomnamestrings[ROOM_CLASS_MAX+1]
Array with the name strings for roomClass.
Definition game_core.c:591
char * winconstrings[WINCON_CLASS_MAX+1]
Array with the desc strings for winconClass.
Definition game_core.c:538
turnOption_OP turnOP_from_turnOption(turnOption t)
Returns a turnOption_OP from a turnOption.
Definition game_core.c:154
int G_DEBUG_ENEMYTYPE_ON
Global variable for debug enemy flag.
Definition game_core.c:28
char * skillsnamestrings[SKILLSTOTAL+1]
Array with the name strings for skills.
Definition game_core.c:487
Artifact artifactsBase[ARTIFACTSMAX+1]
Array with all the Artifact found.
Definition game_core.c:392
char * qualitytrings[QUALITIESMAX+1]
Array with the name strings for quality.
Definition game_core.c:544
char * consumablestrings[CONSUMABLESMAX+1]
Array with the name strings for Consumable.
Definition game_core.c:363
FoePartyBaseStats basefoepartystats[FOEPARTY_CLASS_MAX+1]
Array containing all FoePartyBaseStats instances.
Definition game_core.c:612
char * treasuredescstrings[TREASURE_CLASS_MAX+1]
Array with the name strings for treasureClass.
Definition game_core.c:577
Koliseo * default_kls
Global variable for default Koliseo.
Definition game_core.c:30
char * equipstrings[EQUIPSMAX+1]
Array with the name strings for equipClass.
Definition game_core.c:550
char * gamemodenamestrings[GAMEMODE_MAX+1]
Array with the name strings for Gamemode.
Definition game_core.c:106
int G_DEBUG_ON
Global variable for debug flag.
Definition game_core.c:23
char * classesstrings[CLASSESMAX+1]
Array with the name strings for fighterClass.
Definition game_core.c:409
char * foepartystrings[FOEPARTY_CLASS_MAX+1]
Array with the name strings for foePartyClass.
Definition game_core.c:607
char * roadforkoptionstrings[ROADFORK_OPTIONS_MAX+1]
Array with the name strings for roadforkClass.
Definition game_core.c:583
char * opresstrings[OP_RES_MAX+1]
Array with the name strings for OP_res.
Definition game_core.c:311
Equip equips[EQUIPSMAX+1]
Array containing all Equip instances.
Definition game_core.c:559
BaseStats basestats[CLASSESMAX+1]
Array containing all BaseStats instances.
Definition game_core.c:416
OP_res OP_res_from_fightResult(fightResult fr)
Returns a OP_res from a fightResult fr.
Definition game_core.c:263
int G_DEBUG_ENEMYTYPE
Global variable for debug enemy in ENEMIES roomtype flag.
Definition game_core.c:27
char * fightresultstrings[FIGHT_RES_TOT+1]
Array with the name strings for fightResult.
Definition game_core.c:353
char * G_DEBUG_ROOMTYPE_ARG
Global variable for debug room flag, set to the passed string argument.
Definition game_core.c:26
BossBaseStats basebossstats[BOSSCLASSESMAX+1]
Array containing all BossBaseStats instances.
Definition game_core.c:456
EnemyBaseStats baseenemystats[ENEMYCLASSESMAX+1]
Array containing all EnemyBaseStats instances.
Definition game_core.c:436
char * specialsnamestrings[CLASSESMAX+1][SPECIALSMAX+1]
Array with the name strings for special moves.
Definition game_core.c:465
int G_USE_CURRENTDIR
Global variable for using current directory to store game run files.
Definition game_core.c:21
char * perksnamestrings[PERKSMAX+1]
Array with the name strings for perkClass.
Definition game_core.c:514
Koliseo * temporary_kls
Global variable for temporary Koliseo.
Definition game_core.c:31
char * floornamestrings[FLOOR_CLASS_MAX+1]
Array with the name strings for floorClass.
Definition game_core.c:602
Gamemode GAMEMODE
Global variable for gamemode flag.
Definition game_core.c:22
char * turnopstrings[TURNOP_MAX+1]
Array with the name strings for turnOption.
Definition game_core.c:325
const wchar_t HEAD_CHAR_ICON
Definition game_core.c:624
char * skillsdescstrings[SKILLSTOTAL+1]
Array with the desc strings for skills.
Definition game_core.c:494
char * chestdescstrings[CHEST_CLASS_MAX+1]
Array with the desc strings for chestClass.
Definition game_core.c:572
char * G_DEBUG_ENEMYTYPE_ARG
Global variable for debug enemy flag, set to the passed string argument.
Definition game_core.c:29
char * hlpd_directionalkeyschemas_strings[HLPD_DIRECTIONALKEYS_SCHEMAS_MAX+1]
Array with the name strings for HLPD_DirectionalKeys_Schema.
Definition game_core.c:79
HLPD_DirectionalKeys hlpd_default_directional_keys[HLPD_DIRECTIONALKEYS_SCHEMAS_MAX+1]
Array with the default directional keys for all schemas defined as HLPD_DirectionalKeys_Schema.
Definition game_core.c:85
char * artifactstrings[ARTIFACTSMAX+1]
Array with the name strings for artifactClass.
Definition game_core.c:382
const GameOptions default_GameOptions
Definition game_core.c:634
int G_DEBUG_ROOMTYPE_ON
Global variable for debug room flag.
Definition game_core.c:25
int specialscosts[CLASSESMAX+1][SPECIALSMAX+1]
Array with the cost integer values for special moves.
Definition game_core.c:479
char * savetypestrings[SAVETYPE_MAX+1]
Array with the name strings for saveType.
Definition game_core.c:305
char * classenemystrings[ENEMYCLASSESMAX+1]
Array with the name strings for enemyClass.
Definition game_core.c:425
char * equipzonestrings[EQUIPZONES+1]
Array with the name strings for equip zones.
Definition game_core.c:508
foeTurnOption_OP foeTurnOP_from_foeTurnOption(foeTurnOption ft)
Returns a foeTurnOption_OP from a foeTurnOption.
Definition game_core.c:233
int skillscosts[SKILLSTOTAL+1]
Array with the cost integer values for skills.
Definition game_core.c:501
const char * helapordo_build_string
Definition game_core.c:43
const wchar_t LEGS_CHAR_ICON
Definition game_core.c:626
const char * helapordo_title_string
We need to undef these macros if they exist, since windows.h may declare them (and here we inherit th...
Definition game_core.c:33
#define CHEST_CLASS_MAX
Maximum index of chestClass, so that the size has to add 1 for the 0th index.
Definition game_core.h:1534
void(*) effect_fp_fun(struct FoeParty *)
Defines a function pointer returning void and taking a FoeParty pointer.
Definition game_core.h:1259
#define NOTIFICATION_BUFFER_SIZE
Defines message buffer size for Notification.
Definition game_core.h:1944
void(*) effect_fun(Fighter *)
Defines a function pointer returning void and taking a Fighter pointer.
Definition game_core.h:1241
enemyClass
The different kinds of Enemy.
Definition game_core.h:667
@ Werewolf
Definition game_core.h:675
@ Zombie
Definition game_core.h:670
@ Goblin
Definition game_core.h:671
@ Imp
Definition game_core.h:672
@ Troll
Definition game_core.h:673
@ Ghost
Definition game_core.h:669
@ Boar
Definition game_core.h:674
@ Mummy
Definition game_core.h:668
turnOption
The different kinds of turnOption.
Definition game_core.h:1969
@ DEBUG
Definition game_core.h:1983
@ EQUIPS
Definition game_core.h:1978
@ STATS
Definition game_core.h:1980
@ QUIT
Definition game_core.h:1975
@ SAVE
Definition game_core.h:1981
@ ARTIFACTS
Definition game_core.h:1977
@ SKILL
Definition game_core.h:1986
@ EXPLORE
Definition game_core.h:1982
@ FIGHT
Definition game_core.h:1973
@ CLOSE_MENU
Definition game_core.h:1985
@ SPECIAL
Definition game_core.h:1974
@ TUTORIAL
Definition game_core.h:1984
@ GAME_OPTIONS
Definition game_core.h:1987
@ CONSUMABLE
Definition game_core.h:1976
@ NEW_GAME
Definition game_core.h:1970
@ PERKS
Definition game_core.h:1979
@ LOAD_GAME
Definition game_core.h:1971
@ INVALID
Definition game_core.h:1972
#define KLS_REGIONTYPE_MAX
Definition game_core.h:209
artifactClass
The different kinds of artifactClass.
Definition game_core.h:531
@ POWERSYPHON
Definition game_core.h:537
@ CHAOSORB
Definition game_core.h:536
@ TWINKIE
Definition game_core.h:533
@ BOARTAIL
Definition game_core.h:535
@ GIANTFOSSILE
Definition game_core.h:538
@ THKSKULL
Definition game_core.h:532
@ WRISTBAND
Definition game_core.h:534
Gamemode
The different kinds of Gamemode.
Definition game_core.h:451
@ Rogue
Definition game_core.h:452
#define HELAPORDO_MINOR_VERSION
Current minor release.
Definition game_core.h:375
#define CLASSESMAX
Maximum index of fighterClass, so that the size has to add 1 for the 0th index.
Definition game_core.h:607
#define MAX_SAVESLOTS
Total number of Saveslot for the game.
Definition game_core.h:419
#define FLOOR_CLASS_MAX
Maximum index of floorClass, so that the size has to add 1 for the 0th index.
Definition game_core.h:1801
#define SAVETYPE_MAX
Maximum value of saveType values.
Definition game_core.h:1864
#define FIGHTER_NAME_BUFSIZE
Definition game_core.h:1082
Countertype
The different kinds of Countertype.
Definition game_core.h:1290
@ CNT_VELBOOST
Counter for a temp boost on vel.
Definition game_core.h:1294
@ CNT_ATKBOOST
Counter for a temp boost on atk.
Definition game_core.h:1292
@ CNT_STATUS
Counter for a fighterStatus.
Definition game_core.h:1291
@ CNT_DEFBOOST
Counter for a temp boost on def.
Definition game_core.h:1293
@ CNT_ENRBOOST
Counter for a temp boost on enr.
Definition game_core.h:1295
#define CONSUMABLESMAX
Maximum index of consumableClass, so that the size has to add 1 for the 0th index.
Definition game_core.h:495
#define FIGHTER_SKILL_SLOTS
Definition game_core.h:869
treasureClass
The different kinds of Treasure.
Definition game_core.h:1579
@ TREASURE_CONSUMABLE
Definition game_core.h:1581
@ TREASURE_CHEST
Definition game_core.h:1580
@ TREASURE_ARTIFACT
Definition game_core.h:1582
#define CONSUMABLE_SHOP_MAX
Maximum number of total consumables sold in a shop.
Definition game_core.h:1494
counterIndexes
The different indexes for Fighter->counters.
Definition game_core.h:916
@ TURNBOOST_VEL
Definition game_core.h:925
@ STRONG
Definition game_core.h:922
@ NORMAL
Definition game_core.h:917
@ TURNBOOST_DEF
Definition game_core.h:924
@ POISON
Definition game_core.h:918
@ BURNED
Definition game_core.h:919
@ TURNBOOST_ATK
Definition game_core.h:923
@ FROZEN
Definition game_core.h:920
@ TURNBOOST_ENR
Definition game_core.h:926
@ WEAK
Definition game_core.h:921
saveType
The different kinds of saveType.
Definition game_core.h:1854
@ HOME_SAVE
Definition game_core.h:1855
@ ENEMIES_SAVE
Definition game_core.h:1856
@ FLOORMENU_SAVE
Definition game_core.h:1857
foeTurnOption
The different kinds of foeTurnOption.
Definition game_core.h:2039
@ FOE_IDLE
Definition game_core.h:2041
@ FOE_INVALID
Definition game_core.h:2040
@ FOE_FIGHT
Definition game_core.h:2042
@ FOE_SPECIAL
Definition game_core.h:2043
#define EQUIP_SHOP_MAX
Maximum number of equips sold in a shop.
Definition game_core.h:1489
quality
The different grades of Equip.
Definition game_core.h:1394
@ Good
Definition game_core.h:1397
@ Average
Definition game_core.h:1396
@ Bad
Definition game_core.h:1395
#define OP_RES_MAX
Maximum value of OP_res values.
Definition game_core.h:2108
#define CHEST_EQUIPS_MAX
Maximum number of Equip held in a chest.
Definition game_core.h:1543
#define FOETURNOP_MAX
Maximum value for foeTurnOption_OP.
Definition game_core.h:2070
floorClass
The different kinds of Floor.
Definition game_core.h:1793
@ DBG_FLOOR
Definition game_core.h:1795
@ STD_FLOOR
Definition game_core.h:1794
perkClass
The different kinds of perks.
Definition game_core.h:973
@ HARVESTER
Definition game_core.h:978
@ BIOHAZARD
Definition game_core.h:980
@ PENICILLIN
Definition game_core.h:982
@ CRITBOOST_CHANCE
Definition game_core.h:975
@ HOT_BODY
Definition game_core.h:979
@ CRITBOOST_DMG
Definition game_core.h:974
@ ORACLE_GIFT
Definition game_core.h:981
@ RUNIC_MAGNET
Definition game_core.h:977
@ VAMPIRISM
Definition game_core.h:976
#define PATH_SEED_BUFSIZE
Definition game_core.h:1351
#define FLOOR_MAX_COLS
Maximum value of cells in a Floor matrix column.
Definition game_core.h:1813
#define ARTIFACTSMAX
Maximum index of artifactClass, so that the size has to add 1 for the 0th index.
Definition game_core.h:544
#define HELAPORDO_PATCH_VERSION
Current patch release.
Definition game_core.h:380
void(*) effect_e_fun(Enemy *)
Defines a function pointer returning void and taking a Enemy pointer.
Definition game_core.h:1247
void(*) boost_e_fun(Enemy *, int boost)
Defines a function pointer returning void and taking a Enemy pointer and an integer.
Definition game_core.h:1272
#define HLP_MAX_INDEX
Defines max index for an HLP_Region_Type value.
Definition game_core.h:253
#define SKILLSTOTAL
Definition game_core.h:867
#define ROADFORK_OPTIONS_MAX
Maximum index of roadforkOption, so that the size has to add 1 for the 0th index.
Definition game_core.h:1633
#define ENEMY_SKILL_SLOTS
Definition game_core.h:870
Stat
The different kinds of Stat.
Definition game_core.h:618
@ ENR
Definition game_core.h:622
@ DEF
Definition game_core.h:620
@ VEL
Definition game_core.h:621
@ ATK
Definition game_core.h:619
void(*) equip_fun(Fighter *, Enemy *)
Defines a function pointer returning void and taking a Fighter and a Enemy pointers.
Definition game_core.h:1465
#define COUNTERSMAX
Maximum index of counterIndexes, so that the size has to add 1 for the 0th index.
Definition game_core.h:933
fighterClass
The different kinds of Fighter.
Definition game_core.h:597
@ Archer
Definition game_core.h:599
@ Assassin
Definition game_core.h:601
@ Knight
Definition game_core.h:598
@ Mage
Definition game_core.h:600
#define TREASURE_CLASS_MAX
Maximum index of treasureClass, so that the size has to add 1 for the 0th index.
Definition game_core.h:1588
#define BOSSCLASSESMAX
Maximum index of bossClass, so that the size has to add 1 for the 0th index.
Definition game_core.h:737
#define BOSS_SKILL_SLOTS
Definition game_core.h:871
HLPD_KeyClass
The different kinds of HLPD_Key.
Definition game_core.h:118
@ HLPD_KEY_DOWN
Definition game_core.h:121
@ HLPD_KEY_UP
Definition game_core.h:119
@ HLPD_KEY_DWNPAGE
Definition game_core.h:123
@ HLPD_KEY_MENU
Definition game_core.h:127
@ HLPD_KEY_LEFT
Definition game_core.h:122
@ HLPD_KEY_UPPAGE
Definition game_core.h:124
@ HLPD_KEY_CONFIRM
Definition game_core.h:125
@ HLPD_KEY_QUIT
Definition game_core.h:126
@ HLPD_KEY_RIGHT
Definition game_core.h:120
int G_GODMODE_ON
Global variable for godmode flag.
Definition game_fight.c:20
#define EQUIPSBAGSIZE
Definition game_core.h:965
void(*) boost_fun(Fighter *, int boost)
Defines a function pointer returning void and taking a Fighter pointer and an integer.
Definition game_core.h:1266
#define QUALITIESMAX
Maximum index of quality, so that the size has to add 1 for the 0th index.
Definition game_core.h:1403
void(*) callback_artifact_t(struct Fighter *, struct Enemy *, struct Boss *, int isBoss)
Defines a function pointer returning void and taking a WINDOW, a Fighter, a Enemy,...
Definition game_core.h:1074
#define TURNOP_MAX
Maximum value for turnOption_OP.
Definition game_core.h:2028
void(*) boost_b_fun(Boss *, int boost)
Defines a function pointer returning void and taking a Boss pointer and an integer.
Definition game_core.h:1278
Equipzone
The different kinds of equip zones.
Definition game_core.h:945
@ HEAD
Definition game_core.h:946
@ LEGS
Definition game_core.h:948
@ TORSO
Definition game_core.h:947
#define HLPD_DIRECTIONALKEYS_SCHEMAS_MAX
Maximum index of HLPD_DirectionalKeys_Schema, so that the size has to add 1 for the 0th index.
Definition game_core.h:170
equipClass
The different kinds of Equip.
Definition game_core.h:1374
@ Helmet
Definition game_core.h:1376
@ Boots
Definition game_core.h:1377
@ Vest
Definition game_core.h:1375
@ Loafers
Definition game_core.h:1380
@ Cape
Definition game_core.h:1378
@ Tophat
Definition game_core.h:1379
HLPD_DirectionalKeys_Schema
The different kinds of schemas available for directional keys.
Definition game_core.h:161
@ HLPD_ARROW_KEYS
Definition game_core.h:162
@ HLPD_WASD_KEYS
Definition game_core.h:164
@ HLPD_VIM_KEYS
Definition game_core.h:163
#define SPECIALSMAX
Maximum index of specialMove per class, so that the size for each Fighter has to add 1 for the 0th in...
Definition game_core.h:827
void(*) boost_fp_fun(struct FoeParty *, int boost)
Defines a function pointer returning void and taking a FoeParty pointer and an integer.
Definition game_core.h:1284
specialMove
The different kinds of special moves.
Definition game_core.h:805
@ XGrimdagger
Definition game_core.h:818
@ MFlamering
Definition game_core.h:817
@ APoisonshot
Definition game_core.h:812
@ KBerserk
Definition game_core.h:809
@ AQuivercheck
Definition game_core.h:811
@ XVenomblade
Definition game_core.h:821
@ KCover
Definition game_core.h:807
@ XDisguise
Definition game_core.h:820
@ XLeechknife
Definition game_core.h:819
@ KArmordrop
Definition game_core.h:808
@ AFireshot
Definition game_core.h:813
@ MSpellstrike
Definition game_core.h:816
@ AHeadshot
Definition game_core.h:810
@ KSlash
Definition game_core.h:806
@ MPowerup
Definition game_core.h:815
@ MFatewarp
Definition game_core.h:814
#define ROOM_CLASS_MAX
Maximum index of roomClass, so that the size has to add 1 for the 0th index.
Definition game_core.h:1676
fighterStatus
The different kinds of fighterStatus.
Definition game_core.h:577
@ Poison
Definition game_core.h:579
@ Frozen
Definition game_core.h:580
@ Burned
Definition game_core.h:581
@ Normal
Definition game_core.h:578
@ Strong
Definition game_core.h:583
@ Weak
Definition game_core.h:582
roadforkOption
The different kinds of Roadfork.
Definition game_core.h:1622
@ ROADFORK_ROADFORK
Definition game_core.h:1627
@ ROADFORK_SHOP
Definition game_core.h:1624
@ ROADFORK_TREASURE
Definition game_core.h:1625
@ ROADFORK_BOSS
Definition game_core.h:1623
@ ROADFORK_ENEMIES
Definition game_core.h:1626
foeTurnOption_OP
The different kinds of foeTurnOption_OP.
Definition game_core.h:2050
@ FOE_OP_IDLE
Definition game_core.h:2052
@ FOE_OP_INVALID
Definition game_core.h:2051
@ FOE_OP_FIGHT
Definition game_core.h:2053
@ FOE_OP_SPECIAL
Definition game_core.h:2054
void(*) callback_void_t(void)
Defines a function pointer returning void and taking NO parameters (different than saying just (),...
Definition game_core.h:1080
#define WINCON_CLASS_MAX
Maximum index of winconClass, so that the size has to add 1 for the 0th index.
Definition game_core.h:1334
#define FOES_BOSSES_MAX
Maximum number of bosses when in a FoeParty.
Definition game_core.h:1694
turnOption_OP
The different kinds of turnOption_OP.
Definition game_core.h:1994
@ OP_DEBUG
Definition game_core.h:2008
@ OP_ARTIFACTS
Definition game_core.h:2002
@ OP_FIGHT
Definition game_core.h:1998
@ OP_INVALID
Definition game_core.h:1997
@ OP_LOAD_HOMEROOM
Definition game_core.h:2010
@ OP_SKILL
Definition game_core.h:2011
@ OP_CHANGE_OPTIONS
Definition game_core.h:2012
@ OP_STATS
Definition game_core.h:2005
@ OP_SAVE
Definition game_core.h:2006
@ OP_LOAD_GAME
Definition game_core.h:1996
@ OP_LOAD_ENEMYROOM
Definition game_core.h:2009
@ OP_NEW_GAME
Definition game_core.h:1995
@ OP_SPECIAL
Definition game_core.h:1999
@ OP_PERKS
Definition game_core.h:2004
@ OP_EXPLORE
Definition game_core.h:2007
@ OP_CONSUMABLE
Definition game_core.h:2001
@ OP_QUIT
Definition game_core.h:2000
@ OP_EQUIPS
Definition game_core.h:2003
consumableClass
The different kinds of Consumable.
Definition game_core.h:483
@ Magicbean
Definition game_core.h:489
@ Rock
Definition game_core.h:485
@ Coffee
Definition game_core.h:487
@ Powergem
Definition game_core.h:488
@ Potion
Definition game_core.h:484
@ Bread
Definition game_core.h:486
#define FLOOR_MAX_ROWS
Maximum value of cells in a Floor matrix row.
Definition game_core.h:1819
foePartyClass
The different kinds of FoeParty.
Definition game_core.h:1703
@ Bosses
Definition game_core.h:1705
@ Enemies
Definition game_core.h:1704
#define CHEST_CONSUMABLES_MAX
Maximum number of Consumable held in a chest.
Definition game_core.h:1539
#define EQUIPZONES
Maximum index of Equipzone, so that the size has to add 1 for the 0th index.
Definition game_core.h:954
int64_t G_RNG_ADVANCEMENTS
Global variable used to count advancements of the rng.
Definition game_rng.c:20
bossClass
The different kinds of Boss.
Definition game_core.h:726
@ Blue_Troll
Definition game_core.h:727
@ Crawling_Dude
Definition game_core.h:729
@ Doppelganger
Definition game_core.h:731
@ Sr_Warthog
Definition game_core.h:730
@ Headless_Ninja
Definition game_core.h:728
roomClass
The different kinds of Room.
Definition game_core.h:1662
@ BASIC
Definition game_core.h:1670
@ ENEMIES
Definition game_core.h:1663
@ ROADFORK
Definition game_core.h:1667
@ SHOP
Definition game_core.h:1664
@ HOME
Definition game_core.h:1668
@ BOSS
Definition game_core.h:1665
@ TREASURE
Definition game_core.h:1666
@ WALL
Definition game_core.h:1669
#define FOEPARTY_CLASS_MAX
Maximum index of foePartyClass, so that the size has to add 1 for the 0th index.
Definition game_core.h:1711
void(*) callback_turncounter_fighter_t(struct Fighter *)
Defines a function pointer returning void and taking a Fighter pointer.
Definition game_core.h:1039
skillType
Definition game_core.h:860
@ SKILL_TYPE_ATKBOOST
Definition game_core.h:861
@ SKILL_TYPE_MAX
Definition game_core.h:864
@ SKILL_TYPE_LAST_UNLOCKABLE
Definition game_core.h:862
@ SKILL_TYPE_IDLE
Definition game_core.h:863
HLP_Region_Type
Defines indexes for all types that are allocated with Koliseo.
Definition game_core.h:215
@ HR_Boss
Definition game_core.h:223
@ HR_countStats
Definition game_core.h:239
@ HR_Room_desc
Definition game_core.h:238
@ HR_Perk
Definition game_core.h:230
@ HR_Treasure
Definition game_core.h:234
@ HR_Turncounter_desc
Definition game_core.h:237
@ HR_Equip
Definition game_core.h:225
@ HR_Skillslot
Definition game_core.h:228
@ HR_Shop
Definition game_core.h:235
@ HR_Path
Definition game_core.h:216
@ HR_Saveslot
Definition game_core.h:240
@ HR_Equipslot
Definition game_core.h:226
@ HR_Specialslot
Definition game_core.h:227
@ HR_Consumable
Definition game_core.h:231
@ HR_BSP_Room
Definition game_core.h:244
@ HR_GameOptions
Definition game_core.h:243
@ HR_Wincon
Definition game_core.h:217
@ HR_Floor
Definition game_core.h:219
@ HR_FoeParty
Definition game_core.h:224
@ HR_loadInfo
Definition game_core.h:247
@ HR_Notification
Definition game_core.h:245
@ HR_Enemy
Definition game_core.h:222
@ HR_Gamestate
Definition game_core.h:241
@ HR_turnOP_args
Definition game_core.h:220
@ HR_RingaBuf
Definition game_core.h:246
@ HR_Artifact
Definition game_core.h:232
@ HR_Turncounter
Definition game_core.h:229
@ HR_Fighter
Definition game_core.h:221
@ HR_Gamescreen
Definition game_core.h:242
@ HR_Roadfork
Definition game_core.h:236
@ HR_Chest
Definition game_core.h:233
@ HR_Room
Definition game_core.h:218
#define EQUIPSMAX
Maximum index of equipClass, so that the size has to add 1 for the 0th index.
Definition game_core.h:1386
winconClass
The different kinds of Wincon.
Definition game_core.h:1325
@ ALL_ARTIFACTS
Collect all the artifacts.
Definition game_core.h:1326
@ FULL_PATH
Finish all the room in your path.
Definition game_core.h:1327
@ ALL_BOSSES
Kill all the bosses once.
Definition game_core.h:1328
#define HLPD_KEYCLASS_MAX
Maximum index of HLPD_KeyClass, so that the size has to add 1 for the 0th index.
Definition game_core.h:133
void(*) callback_turncounter_enemy_t(struct Enemy *)
Defines a function pointer returning void and taking a Enemy pointer.
Definition game_core.h:1046
#define ROOM_ENEMIES_MAX
Maximum number of enemies in a room.
Definition game_core.h:1687
fightResult
The different kinds of fightResult.
Definition game_core.h:2193
@ FIGHTRES_DEATH
Value of fight status indicating the fighter died.
Definition game_core.h:2198
@ FIGHTRES_INVALID
Value of fight status indicating errors in the fight call.
Definition game_core.h:2194
@ FIGHTRES_DMG_DEALT
Value of fight status indicating the enemy was damaded.
Definition game_core.h:2196
@ FIGHTRES_DMG_TAKEN
Value of fight status indicating the fighter was damaded.
Definition game_core.h:2197
@ FIGHTRES_CLASH
Value of fight status indicating damage on both sides occurred.
Definition game_core.h:2200
@ FIGHTRES_NO_DMG
Value of fight status indicating no damage occurred.
Definition game_core.h:2199
@ FIGHTRES_KILL_DONE
Value of fight status indicating the enemy died.
Definition game_core.h:2195
#define EQUIPPERKSMAX
Maximum number of Perk per Equip.
Definition game_core.h:994
void(*) effect_b_fun(Boss *)
Defines a function pointer returning void and taking a Boss pointer.
Definition game_core.h:1253
chestClass
The different kinds of Chest.
Definition game_core.h:1526
@ CHEST_BEAST
Definition game_core.h:1528
@ CHEST_BASE
Definition game_core.h:1527
#define PERKSMAX
Maximum index of perkClass, so that the size has to add 1 for the 0th index.
Definition game_core.h:988
#define GAMEMODE_MAX
Maximum index of Gamemode, so that the size has to add 1 for the 0th index.
Definition game_core.h:458
#define ENEMYCLASSESMAX
Maximum index of enemyClass, so that the size has to add 1 for the 0th index.
Definition game_core.h:681
#define FIGHT_RES_TOT
Total number of defined fightResult values.
Definition game_core.h:2207
#define HELAPORDO_MAJOR_VERSION
Current major release.
Definition game_core.h:370
OP_res
The different kinds of OP_res.
Definition game_core.h:2089
@ OP_RES_NO_DMG
Value of fight status indicating no damage occurred.
Definition game_core.h:2098
@ OP_RES_KILL_DONE
Value of fight status indicating the enemy died.
Definition game_core.h:2094
@ OP_RES_LOADED_ENEMYROOM
Value of OP_res indicating success in loading a enemyroom.
Definition game_core.h:2100
@ OP_CANNOT_OPEN_SAVEFILE
Definition game_core.h:2093
@ OP_RES_DEATH
Value of fight status indicating the fighter died.
Definition game_core.h:2097
@ OP_RES_DMG_DEALT
Value of fight status indicating the enemy was damaged.
Definition game_core.h:2095
@ INVALID_OP
Definition game_core.h:2091
@ OP_RES_CLASH
Value of fight status indicating damage on both sides occurred.
Definition game_core.h:2099
@ OP_RES_DMG_TAKEN
Value of fight status indicating the fighter was damaged.
Definition game_core.h:2096
@ OP_OK
Definition game_core.h:2090
@ NO_OP
Definition game_core.h:2092
int GS_AUTOSAVE_ON
Global variable for autosave setting.
Definition main.c:43
int G_FASTQUIT_ON
Global variable for fast quit flag.
Definition main.c:39
char * G_SEEDED_RUN_ARG
Global variable for seeded run flag, set to the passed string argument.
Definition main.c:50
int G_USE_DEFAULT_BACKGROUND
Global variable for using terminal default color.
Definition main.c:45
Koliseo * support_kls
Global variable for support Koliseo.
Definition main.c:52
int G_SEEDED_RUN_ON
Global variable for seeded run flag.
Definition main.c:49
int G_USE_VIM_DIRECTIONAL_KEYS
Global variable for using vim-like directional keys.
Definition main.c:46
int G_PRELOAD_ANIMATIONS_ON
TODO Remove mentions of this.
Definition main.c:36
int G_USE_WASD_DIRECTIONAL_KEYS
Global variable for using WASD directional keys.
Definition main.c:47
int G_DOTUTORIAL_ON
Global variable for a tutorial launch.
Definition main.c:41
int G_LOG_ON
Global variable for debug logging flag.
Definition main.c:37
Gamestate * G_GAMESTATE
Global variable used to store Gamestate address when KLS_Region is not available.
Definition main.c:33
int G_EXPERIMENTAL_ON
Global variable for experimental features flag.
Definition main.c:38
Represents the entity initialised from a artifactClass.
Definition game_core.h:550
char desc[50]
Description string.
Definition game_core.h:553
char name[25]
Name string.
Definition game_core.h:552
int innerValue
Indicates interal state of the item when needed.
Definition game_core.h:556
int qty
Indicates how many copies of the artifact the instance of this class holds.
Definition game_core.h:554
int active
Flag used to mark instance whose function pointer has been called already.
Definition game_core.h:555
char sprite[8][20]
Char matrix to hold the encoded sprite.
Definition game_core.h:557
Holds the base stats for a fighterClass.
Definition game_core.h:636
int level
Level value.
Definition game_core.h:642
int totallevelxp
Xp value needed to level up from current level.
Definition game_core.h:644
int hp
Hp value.
Definition game_core.h:638
int def
Def value.
Definition game_core.h:640
int totalhp
Total hp value.
Definition game_core.h:646
int atk
Atk value.
Definition game_core.h:639
int totalenergy
Total energy value.
Definition game_core.h:647
int currentlevelxp
Total xp value for current level.
Definition game_core.h:645
int totalxp
Lifetime xp value.
Definition game_core.h:643
int totalstamina
Total stamina value.
Definition game_core.h:648
int vel
Vel value.
Definition game_core.h:641
Holds the base stats for a bossClass.
Definition game_core.h:752
int totalstamina
Total stamina value.
Definition game_core.h:763
int totalenergy
Total energy value.
Definition game_core.h:762
int totalhp
Total hp value.
Definition game_core.h:760
int hp
Hp value.
Definition game_core.h:754
int atk
Atk value.
Definition game_core.h:755
int xp
Xp value given on death.
Definition game_core.h:759
int def
Def value.
Definition game_core.h:756
int vel
Vel value.
Definition game_core.h:757
int beast
Flag used for "beast" enemies.
Definition game_core.h:761
int level
Level value.
Definition game_core.h:758
Represents the entity initialised from a bossClass.
Definition game_core.h:1205
int totalstamina
Full stamina value.
Definition game_core.h:1220
int hp
Current hp value.
Definition game_core.h:1207
int atk
Current atk value.
Definition game_core.h:1208
struct Turncounter * counters[COUNTERSMAX+1]
Array with all the Turncounter pointers.
Definition game_core.h:1226
int level
Level value.
Definition game_core.h:1211
int turnboost_vel
Current temp boost value for vel.
Definition game_core.h:1229
int stamina
Current stamina value.
Definition game_core.h:1219
int totalenergy
Full energy value.
Definition game_core.h:1217
int beast
Flag defining the instance as "beast" if set.
Definition game_core.h:1223
int vel
Current vel value.
Definition game_core.h:1210
char sprite[8][20]
Char matrix to hold the encoded sprite.
Definition game_core.h:1233
int energy
Current energy value.
Definition game_core.h:1216
Skillslot * skills[BOSS_SKILL_SLOTS+1]
Array with all the Skillslot.
Definition game_core.h:1225
int turnboost_atk
Current temp boost value for atk.
Definition game_core.h:1227
int turnboost_enr
Current temp boost value for enr.
Definition game_core.h:1230
fighterStatus status
Defines active fighterStatus.
Definition game_core.h:1222
int turnboost_def
Current temp boost value for def.
Definition game_core.h:1228
int totalhp
Full hp value.
Definition game_core.h:1214
int xp
Xp value given on death.
Definition game_core.h:1213
int prize
Amount of currency dropped on defeat.
Definition game_core.h:1232
int def
Current def value.
Definition game_core.h:1209
int luck
Luck value.
Definition game_core.h:1212
Represents the entity initialised from a chestClass.
Definition game_core.h:1558
char desc[80]
Description string.
Definition game_core.h:1560
char sprite[8][20]
Char matrix to hold the encoded sprite.
Definition game_core.h:1570
Equip * equips[CHEST_EQUIPS_MAX]
The contained equips.
Definition game_core.h:1568
int equipsCount
Defines how many equips the chest contains.
Definition game_core.h:1566
Consumable * consumables[CHEST_CONSUMABLES_MAX]
The contained consumables.
Definition game_core.h:1565
int consumablesCount
Defines how many consumables the chest contains.
Definition game_core.h:1563
Holds a certain qty of a consumableClass.
Definition game_core.h:501
int qty
Indicates how many copies of the consumable the instance of this class holds.
Definition game_core.h:505
char sprite[8][20]
Char matrix to hold the encoded sprite.
Definition game_core.h:506
char desc[50]
Contains a brief description of the consumable.
Definition game_core.h:504
char name[25]
Contains the name of the consumable.
Definition game_core.h:503
Holds the base stats for a enemyClass.
Definition game_core.h:696
int beast
Flag used for "beast" enemies.
Definition game_core.h:705
int xp
Xp value given on death.
Definition game_core.h:703
int atk
Atk value.
Definition game_core.h:699
int hp
Hp value.
Definition game_core.h:698
int totalenergy
Total energy value.
Definition game_core.h:706
int totalstamina
Total stamina value.
Definition game_core.h:707
int def
Def value.
Definition game_core.h:700
int totalhp
Total hp value.
Definition game_core.h:704
int vel
Vel value.
Definition game_core.h:701
int level
Level value.
Definition game_core.h:702
Represents the entity initialised from a enemyClass.
Definition game_core.h:1164
int totalenergy
Full energy value.
Definition game_core.h:1177
int energy
Current energy value.
Definition game_core.h:1176
int def
Current def value.
Definition game_core.h:1169
int hp
Current hp value.
Definition game_core.h:1167
Skillslot * skills[ENEMY_SKILL_SLOTS+1]
Array with all the Skillslot.
Definition game_core.h:1185
fighterStatus status
Defines active fighterStatus.
Definition game_core.h:1182
int luck
Luck value.
Definition game_core.h:1172
int level
Level value.
Definition game_core.h:1171
struct Turncounter * counters[COUNTERSMAX+1]
Array with all the Turncounter pointers.
Definition game_core.h:1187
int turnboost_atk
Current temp boost value for atk.
Definition game_core.h:1188
int xp
Xp value given on death.
Definition game_core.h:1173
int index
Defines position inside containing foeParty.
Definition game_core.h:1165
int atk
Current atk value.
Definition game_core.h:1168
int beast
Flag defining the instance as "beast" if set.
Definition game_core.h:1183
int turnboost_enr
Current temp boost value for enr.
Definition game_core.h:1191
int prize
Amount of currency dropped on defeat.
Definition game_core.h:1193
int totalstamina
Full stamina value.
Definition game_core.h:1180
int turnboost_vel
Current temp boost value for vel.
Definition game_core.h:1190
int stamina
Current stamina value.
Definition game_core.h:1179
int turnboost_def
Current temp boost value for def.
Definition game_core.h:1189
char sprite[8][20]
Char matrix to hold the encoded sprite.
Definition game_core.h:1194
int totalhp
Full hp value.
Definition game_core.h:1174
int vel
Current vel value.
Definition game_core.h:1170
Represents the entity initialised from a equipClass.
Definition game_core.h:1417
int vel
equip boost vel value
Definition game_core.h:1431
Perk * perks[EQUIPPERKSMAX]
Array of Perk of the instance.
Definition game_core.h:1441
int level
Level value.
Definition game_core.h:1426
int enr
equip boost enr value
Definition game_core.h:1432
char sprite[8][20]
Char matrix to hold the encoded sprite.
Definition game_core.h:1442
int atk
equip boost atk value
Definition game_core.h:1429
int qty
Defines how many copies of the equipClass the instance holds.
Definition game_core.h:1422
int perksCount
Defines how many Perk pointers the instance holds.
Definition game_core.h:1435
int cost
Helps giving a coin value when selling or buying the equip.
Definition game_core.h:1437
quality qual
Defines which kind of quality the instances relates to.
Definition game_core.h:1439
int def
equip boost def value
Definition game_core.h:1430
char name[25]
Name string.
Definition game_core.h:1420
void(*) equip_fun(Fighter *, Enemy *, Path *)
Pointer to temp boost function applying to Enemy, takes a int.
Definition game_core.h:1440
char desc[50]
Description string.
Definition game_core.h:1421
int bonus
Defines how many pointers to bonus functions the instance holds.
Definition game_core.h:1434
int equipped
Flag indicating the instance as currently in use if set.
Definition game_core.h:1424
Equipzone type
Defines which kind of Equipzone the instance relates to.
Definition game_core.h:1419
Represents the entity containing an Equip instance.
Definition game_core.h:1472
Equipzone type
Defines which kind of Equipzone the instance relates to.
Definition game_core.h:1475
Equip * item
Pointer to the Equip instance associated.
Definition game_core.h:1477
char sprite[8][20]
Char matrix to hold the encoded sprite.
Definition game_core.h:1476
char * desc
Description string.
Definition game_core.h:1474
int active
Flag indicating the instance as currently ready to use if set.
Definition game_core.h:1473
Represents the entity initialised from a fighterClass.
Definition game_core.h:1094
int equipboost_atk
Current equip boost value for atk.
Definition game_core.h:1138
int turnboost_def
Current temp boost value for def.
Definition game_core.h:1118
int level
Current level value.
Definition game_core.h:1101
countStats * stats
Pointer to countStats instance.
Definition game_core.h:1143
struct Artifact * artifactsBag[ARTIFACTSMAX+1]
Array with all the Artifacts found.
Definition game_core.h:1128
int vel
Current vel value.
Definition game_core.h:1100
int equipsBagOccupiedSlots
Keeps track of how many slots are occupied.
Definition game_core.h:1130
int energy
Current energy value.
Definition game_core.h:1109
Perk * perks[PERKSMAX+1]
Array with all the Perk.
Definition game_core.h:1123
int floor_y
Current y position in floor.
Definition game_core.h:1150
int permboost_vel
Current temp boost value for vel.
Definition game_core.h:1135
int equipboost_enr
Current equip boost value for enr.
Definition game_core.h:1141
Skillslot * skills[FIGHTER_SKILL_SLOTS+1]
Array with all the Skillslot.
Definition game_core.h:1114
int permboost_def
Current temp boost value for def.
Definition game_core.h:1134
int earliestBagSlot
Keeps track of first available spot.
Definition game_core.h:1131
int def
Current def value.
Definition game_core.h:1099
int turnboost_vel
Current temp boost value for vel.
Definition game_core.h:1119
int totalhp
Full hp value.
Definition game_core.h:1106
int luck
Current luck value.
Definition game_core.h:1102
int permboost_atk
Current temp boost value for atk.
Definition game_core.h:1133
struct Equip * equipsBag[EQUIPSBAGSIZE+1]
Array with all the Equip found.
Definition game_core.h:1126
fighterStatus status
Defines active fighterStatus.
Definition game_core.h:1107
struct Turncounter * counters[COUNTERSMAX+1]
Array with all the Turncounter pointers.
Definition game_core.h:1116
int keys_balance
Amount of keys owned.
Definition game_core.h:1146
int atk
Current atk value.
Definition game_core.h:1098
int equipboost_vel
Current equip boost value for vel.
Definition game_core.h:1140
int permboost_enr
Current temp boost value for enr.
Definition game_core.h:1136
int floor_x
Current x position in floor.
Definition game_core.h:1149
Consumable * consumablesBag[CONSUMABLESMAX+1]
Array with all the Consumables found.
Definition game_core.h:1127
char name[FIGHTER_NAME_BUFSIZE]
Name string.
Definition game_core.h:1095
char sprite[8][20]
Char matrix to hold the encoded sprite.
Definition game_core.h:1147
int turnboost_enr
Current temp boost value for enr.
Definition game_core.h:1120
int totalstamina
Full stamina value.
Definition game_core.h:1112
int totalxp
Lifetime xp value.
Definition game_core.h:1103
int equipboost_def
Current equip boost value for def.
Definition game_core.h:1139
int balance
Amount of currency owned.
Definition game_core.h:1145
int hp
Current hp value.
Definition game_core.h:1097
int currentlevelxp
Xp gained for the current level.
Definition game_core.h:1104
Specialslot * specials[SPECIALSMAX+1]
Array with all the Specialslot.
Definition game_core.h:1113
int totalenergy
Full energy value.
Definition game_core.h:1110
int totallevelxp
Xp needed to level up.
Definition game_core.h:1105
int perksCount
Keeps track of how many perks are active.
Definition game_core.h:1122
struct Equipslot * equipslots[EQUIPZONES+1]
Array with all the Equipslot.
Definition game_core.h:1125
int turnboost_atk
Current temp boost value for atk.
Definition game_core.h:1117
int stamina
Current stamina value.
Definition game_core.h:1111
Represents the entity initialised from a floorClass.
Definition game_core.h:1826
int explored_area
Holds how many cells we explored.
Definition game_core.h:1838
Room * rooms_matrix[FLOOR_MAX_COLS][FLOOR_MAX_ROWS]
Pointer matrix for rooms of this floor.
Definition game_core.h:1834
int area
Holds how many cells we succesfully random walked.
Definition game_core.h:1833
int index
The floor's own number.
Definition game_core.h:1828
roomClass roomclass_layout[FLOOR_MAX_COLS][FLOOR_MAX_ROWS]
roomClass matrix for class value for rooms of this floor.
Definition game_core.h:1835
int floor_layout[FLOOR_MAX_COLS][FLOOR_MAX_ROWS]
Defines the layout for the Floor (which cells are actually filled).
Definition game_core.h:1832
int explored_matrix[FLOOR_MAX_COLS][FLOOR_MAX_ROWS]
Int matrix for explored value for rooms of this floor.
Definition game_core.h:1836
bool visible_matrix[FLOOR_MAX_COLS][FLOOR_MAX_ROWS]
Used for visibility in fov.
Definition game_core.h:1837
bool from_bsp
Flag for floors generated using bsp.
Definition game_core.h:1839
char * desc
Description string.
Definition game_core.h:1829
Holds the base stats for a foePartyClass.
Definition game_core.h:1750
int level
Defines level of the FoeParty.
Definition game_core.h:1752
Represents the entity initialised from a foePartyClass.
Definition game_core.h:1726
int size
Number of members in the FoeParty.
Definition game_core.h:1737
int turnboost_enr
Current temp boost value for enr.
Definition game_core.h:1733
int alive_bosses[FOES_BOSSES_MAX+1]
Array of integers with 1 for alive bosses in that position.
Definition game_core.h:1741
int alive_enemies[ROOM_ENEMIES_MAX+1]
Array of integers with 1 for alive enemies in that position.
Definition game_core.h:1740
int current_index
Index of current foe advancement.
Definition game_core.h:1739
int turnboost_def
Current temp boost value for def.
Definition game_core.h:1731
int turnboost_atk
Current temp boost value for atk.
Definition game_core.h:1730
Enemy * enemy_foes[ROOM_ENEMIES_MAX+1]
Array of pointers to all enemies in a room.
Definition game_core.h:1734
int tot_alive
Number of alive members of the FoeParty.
Definition game_core.h:1738
int turnboost_vel
Current temp boost value for vel.
Definition game_core.h:1732
int level
Level for the whole FoeParty.
Definition game_core.h:1728
Boss * boss_foes[FOES_BOSSES_MAX+1]
Array of pointers to all enemies in a room.
Definition game_core.h:1736
struct Turncounter * counters[COUNTERSMAX+1]
Array with all the Turncounter pointers.
Definition game_core.h:1729
Holds options useful for user runtime preferences.
Definition game_core.h:199
HLPD_DirectionalKeys_Schema directional_keys_schema
Definition game_core.h:203
bool use_3x3_fov
Definition game_core.h:202
bool use_default_background
Definition game_core.h:200
bool do_autosave
Definition game_core.h:201
Holds arguments for a game.
Definition game_core.h:1901
int current_enemy_index
Keeps track of current enemy index.
Definition game_core.h:1911
Wincon * wincon
Keeps track of current Wincon.
Definition game_core.h:1912
GameOptions * options
Keeps track of current options.
Definition game_core.h:1931
bool is_seeded
Denotes if the current game was started with a set seed.
Definition game_core.h:1933
Path * path
Keeps track of current Path.
Definition game_core.h:1914
Floor * current_floor
Pointer to current floor, initialised when gamemode==Rogue.
Definition game_core.h:1920
int current_fighters
Keeps track of Fighter number for the game.
Definition game_core.h:1907
roomClass current_roomtype
Keeps track of current room type.
Definition game_core.h:1908
Fighter * player
Keeps track of current Player.
Definition game_core.h:1916
int current_room_index
Keeps track of current room index.
Definition game_core.h:1909
clock_t start_time
Keeps track of game start time.
Definition game_core.h:1903
Room * current_room
Pointer to current room.
Definition game_core.h:1921
countStats * stats
Keeps track of stats for the game.
Definition game_core.h:1905
Gamemode gamemode
Keeps track of current Gamemode.
Definition game_core.h:1918
Holds a set of HLPD_Key to use for cardinal direction movement.
Definition game_core.h:182
HLPD_Key down
Definition game_core.h:185
HLPD_Key left
Definition game_core.h:186
HLPD_Key up
Definition game_core.h:183
HLPD_Key right
Definition game_core.h:184
Holds info about a keybind for the game.
Definition game_core.h:145
int val
Definition game_core.h:146
Holds text for a notification.
Definition game_core.h:1949
bool displayed
Definition game_core.h:1952
int8_t color
Definition game_core.h:1951
char buf[NOTIFICATION_BUFFER_SIZE+1]
Definition game_core.h:1950
Holds the state of game progression.
Definition game_core.h:1358
Wincon * win_condition
Defines the win condition for the current game.
Definition game_core.h:1362
int luck
Defines global luck value.
Definition game_core.h:1360
int length
Defines how many rooms there are in total.
Definition game_core.h:1359
int64_t * rng_advancements
Pointer to current advancements for rng.
Definition game_core.h:1365
char seed[PATH_SEED_BUFSIZE+1]
Contains seed for current run.
Definition game_core.h:1364
int prize
Defines the reward for getting to length.
Definition game_core.h:1361
Saveslot * current_saveslot
Defines current Saveslot for the game.
Definition game_core.h:1363
Represents the entity initialised from a perkClass.
Definition game_core.h:1012
int innerValue
Contains an integer for perks that need a state.
Definition game_core.h:1016
char desc[50]
Description string.
Definition game_core.h:1015
char name[25]
Name string.
Definition game_core.h:1014
Represents the entity initialised from a roadforkClass.
Definition game_core.h:1648
roadforkOption options[2]
Defines which choices the fork has.
Definition game_core.h:1652
char * desc
Description string.
Definition game_core.h:1650
Represents the entity initialised from a roomClass.
Definition game_core.h:1771
int index
The room's own number.
Definition game_core.h:1773
Enemy * enemies[ROOM_ENEMIES_MAX]
Array for enemies.
Definition game_core.h:1783
Shop * shop
The shop pointer, initialised for rooms of class SHOP.
Definition game_core.h:1777
Boss * boss
The boss pointer, initialised for rooms of class BOSS.
Definition game_core.h:1781
char * desc
Description string.
Definition game_core.h:1774
int enemyTotal
Total number of enemies initialised in enemies array.
Definition game_core.h:1782
Treasure * treasure
The treasure pointer, initialised for rooms of class TREASURE.
Definition game_core.h:1779
FoeParty * foes
The FoeParty pointer, initialised for rooms of class ENEMIES.
Definition game_core.h:1784
Roadfork * roadfork
The roadfork pointer, initialised for rooms of class ROADFORK.
Definition game_core.h:1778
Holds arguments for a saveslot.
Definition game_core.h:409
char name[50]
Name string for the saveslot.
Definition game_core.h:410
char save_path[255]
Path to savefile.
Definition game_core.h:411
int index
Index of saveslot.
Definition game_core.h:412
Represents a shop instance.
Definition game_core.h:1504
int consumablesCount
Total number of consumables for sale, includes quantity for each kind of consumable.
Definition game_core.h:1513
Consumable * consumables[CONSUMABLE_SHOP_MAX]
Array for consumables on sale.
Definition game_core.h:1515
int itemCount
Total number of items for sale.
Definition game_core.h:1507
char * desc
Description string.
Definition game_core.h:1506
int consumablePrices[CONSUMABLE_SHOP_MAX]
Array for consumables prices.
Definition game_core.h:1516
int equipsCount
Total number of equips for sale.
Definition game_core.h:1509
Equip * equips[EQUIP_SHOP_MAX]
Array for equips on sale.
Definition game_core.h:1510
int uniqueConsumablesCount
Total of unique consumables for sale.
Definition game_core.h:1514
int equipPrices[EQUIP_SHOP_MAX]
Array for equips prices.
Definition game_core.h:1511
Holds state for a skillType.
Definition game_core.h:898
int cost
Cost of use.
Definition game_core.h:903
char desc[80]
Desc string.
Definition game_core.h:902
char name[80]
Name string.
Definition game_core.h:901
int enabled
Flag defining if the current slot is initialised.
Definition game_core.h:899
Holds state for a Fighter specials.
Definition game_core.h:852
specialMove move
Defines which kind of specialMove the slot is holding.
Definition game_core.h:854
char name[80]
Name string.
Definition game_core.h:855
int cost
Cost of use.
Definition game_core.h:857
int enabled
Flag defining if the current slot is initialised.
Definition game_core.h:853
char desc[80]
Desc string.
Definition game_core.h:856
Represents the entity initialised from a treasureClass.
Definition game_core.h:1604
Chest * chest
The treasure Chest, initialised if class == TREASURE_CHEST.
Definition game_core.h:1610
Artifact * artifact
The treasure Artifact, initialised if class == TREASURE_ARTIFACT.
Definition game_core.h:1612
Consumable * consumable
The treasure Consumable, initialised if class == TREASURE_CONSUMABLE.
Definition game_core.h:1611
char desc[80]
Description string.
Definition game_core.h:1606
Represents the entity initialised from a CounterType.
Definition game_core.h:1304
void(*) boost_fp_fun(struct FoeParty *, int)
Pointer to temp boost function applying to FoeParty, takes a int.
Definition game_core.h:1316
void(*) effect_fun(Fighter *)
Pointer to effect function applying to Fighter.
Definition game_core.h:1309
int count
Defines the current count.
Definition game_core.h:1305
void(*) effect_fp_fun(struct FoeParty *)
Pointer to effect function applying to FoeParty.
Definition game_core.h:1312
Countertype type
Defines which kind of Countertype the instance relates to.
Definition game_core.h:1308
char * desc
Description string.
Definition game_core.h:1306
void(*) boost_fun(Fighter *, int)
Pointer to temp boost function applying to Fighter, takes a int.
Definition game_core.h:1313
void(*) boost_e_fun(Enemy *, int)
Pointer to temp boost function applying to Enemy, takes a int.
Definition game_core.h:1314
void(*) boost_b_fun(Boss *, int)
Pointer to temp boost function applying to Boss, takes a int.
Definition game_core.h:1315
void(*) effect_e_fun(Enemy *)
Pointer to effect function applying to Enemy.
Definition game_core.h:1310
int innerValue
Contains an integer for counters that need a state.
Definition game_core.h:1307
void(*) effect_b_fun(Boss *)
Pointer to effect function applying to Boss.
Definition game_core.h:1311
Defines the entity initialised from a winconClass.
Definition game_core.h:1339
int current_val
Defines the current progress.
Definition game_core.h:1341
int target_val
Defines the total progress.
Definition game_core.h:1342
Holds the lifetime stats of the player.
Definition game_core.h:780
int enemieskilled
How many enemies were defeated.
Definition game_core.h:781
int coinsfound
How many coins you found in total.
Definition game_core.h:789
int roomscompleted
How many rooms were completed.
Definition game_core.h:786
int equipsfound
How many equips were found.
Definition game_core.h:783
int killed_enemies[ENEMYCLASSESMAX+1]
Keeps track of which enemyClass you've killed.
Definition game_core.h:792
int criticalhits
How many criticals were dealt.
Definition game_core.h:785
int consumablesfound
How many consumabls were found.
Definition game_core.h:782
int unique_bosseskilled
How many unique bosses were defeated.
Definition game_core.h:793
int artifactsfound
How many artifacts were found.
Definition game_core.h:784
int killed_bosses[BOSSCLASSESMAX+1]
Keeps track of which bossClass you've killed.
Definition game_core.h:794
int bosseskilled
How many bosses were defeated.
Definition game_core.h:790
int keysfound
How many keys you found in total.
Definition game_core.h:795
int specialsunlocked
How many special move were unlocked.
Definition game_core.h:788
int floorscompleted
How many floors were completed.
Definition game_core.h:787
int unique_enemieskilled
How many unique enemies were defeated.
Definition game_core.h:791
Contains loaded values to pass to initRoom().
Definition game_core.h:1880
int total_foes
Definition game_core.h:1885
int done_loading
Definition game_core.h:1883
saveType save_type
Definition game_core.h:1889
Enemy * loaded_enemy
Definition game_core.h:1886
int * ptr_to_roomindex
Definition game_core.h:1888
int enemy_index
Definition game_core.h:1884
int * ptr_to_roomtotalenemies
Definition game_core.h:1887
int is_new_game
Definition game_core.h:1882
Holds arguments for a turnOption_OP.
Definition game_core.h:2124
Enemy * enemy
Pointer to Enemy for OP.
Definition game_core.h:2129
foeTurnOption_OP foe_op
Picked FoeTurnOption_OP, initialised only for some OPs.
Definition game_core.h:2144
loadInfo * load_info
Pointer to loadInfo for OP.
Definition game_core.h:2128
Path * path
Pointer to Rath for OP.
Definition game_core.h:2126
skillType picked_skill
Picked skillType, initialised only for OP_SKILL.
Definition game_core.h:2145
Fighter * actor
Pointer to Fighter actor for the OP.
Definition game_core.h:2125
FILE * save_file
Pointer to savefile for OP.
Definition game_core.h:2131
Boss * boss
Pointer to Boss for OP.
Definition game_core.h:2130
RingaBuf * rb_notifications
Pointer to RingaBuf for notifications for OP.
Definition game_core.h:2141
Koliseo_Temp * t_kls
Pointer to Koliseo_Temp for OP.
Definition game_core.h:2142
Room * room
Pointer to Room for OP.
Definition game_core.h:2127
Gamestate * gmst
Pointer to Gamestate for OP.
Definition game_core.h:2143