108 lines
2.0 KiB
C
108 lines
2.0 KiB
C
#ifndef GBM_CONSTS_H
|
|
#define GBM_CONSTS_H
|
|
|
|
typedef enum CELLTYPE {
|
|
START,
|
|
BLUE,
|
|
RED,
|
|
EVENT,
|
|
VS,
|
|
BOWSER,
|
|
CHANCE_TIME,
|
|
BOO,
|
|
STAR,
|
|
BANK
|
|
} CELLTYPE ;
|
|
static int n_cell_type = 10 ;
|
|
|
|
typedef enum ITEM {
|
|
DOUBLE_DICE,
|
|
SPECIAL_DOUBLE_DICE,
|
|
TRIPLE_DICE,
|
|
SPECIAL_TRIPLE_DICE,
|
|
CURSED_DICE,
|
|
SMALL_CUSTOM_DICE,
|
|
CUSTOM_DICE,
|
|
BOO_BELL,
|
|
GOLD_PIPE,
|
|
KEY,
|
|
PLUNDER_CHEST,
|
|
WARP_BLOCK,
|
|
SPECIAL_WARP_BLOCK
|
|
} ITEM ;
|
|
static int n_items = 13 ;
|
|
|
|
typedef struct cell {
|
|
int id ; // mostly for parkour
|
|
int coord_x ;
|
|
int coord_y ;
|
|
bool star_allowed ;
|
|
CELLTYPE type ;
|
|
struct cell* prev_1 ;
|
|
struct cell* prev_2 ;
|
|
struct cell* prev_3 ;
|
|
struct cell* prev_4 ;
|
|
struct cell* next_1 ;
|
|
struct cell* next_2 ;
|
|
struct cell* next_3 ;
|
|
struct cell* next_4 ; // I dont wanna deal with free/malloc there pls
|
|
char* meta ; // mostly for event spaces (also for hidden blocks)
|
|
} cell ;
|
|
|
|
typedef struct playerStats {
|
|
int minigames_wins ;
|
|
int coin_collected ;
|
|
int red_count ;
|
|
int bowser_count ;
|
|
int items_used ;
|
|
int lost_coins ;
|
|
int lost_stars ;
|
|
int tiles_travelled ;
|
|
int events_triggered ;
|
|
int hidden_blocks ;
|
|
} playerStats ;
|
|
|
|
typedef struct player {
|
|
char* name ;
|
|
cell* standing_tile ;
|
|
int coins ;
|
|
int stars ;
|
|
ITEM* items ;
|
|
int item_len ;
|
|
int max_items ;
|
|
playerStats stats ;
|
|
} player ;
|
|
|
|
typedef struct imgs {int len; SDL_Texture** arr;} imgs ;
|
|
|
|
// arrays
|
|
extern int* cell_count ;
|
|
|
|
extern int* item_costs ;
|
|
extern int* item_start ;
|
|
extern int* item_end ;
|
|
extern bool* item_is_normal_type ;
|
|
extern bool* item_is_special_type ;
|
|
|
|
// global
|
|
static int n_turns = 20;
|
|
|
|
static int n_star_spaces = 5 ;
|
|
static int star_cost = 20 ;
|
|
|
|
extern cell* start ; // starting tile
|
|
|
|
extern cell** playerCells ;
|
|
static int n_players ;
|
|
|
|
extern player* players ;
|
|
|
|
extern imgs digits ;
|
|
// len is always 10 for this
|
|
|
|
static int __width__ = 1200 ;
|
|
static int __height__ = 800 ;
|
|
|
|
static int tile_size = 50 ;
|
|
|
|
#endif |