Files
skevity/source/game_source/cells.h

51 lines
2.6 KiB
C

#ifndef CELLS_H
#define CELLS_H
#define CELL_FLAG_BLOCKING 0b00000000000000000000000000000001
#define CELL_FLAG_PARTIAL_COVER 0b00000000000000000000000000000010
#define CELL_FLAG_DAMAGEABLE 0b00000000000000000000000000000100
#define CELL_FLAG_SLIPPERY 0b00000000000000000000000000001000
#define CELL_FLAG_UNEVEN 0b00000000000000000000000000010000
#define CELL_FLAG_FLORE 0b00000000000000000000000000100000
#define CELL_FLAG_STARE 0b00000000000000000000000001000000
#define CELL_FLAG_MOVEABLE 0b00000000000000000000000010000000
#define CELL_FLAG_EXPLODING 0b00000000000000000000000100000000
#define CELL_FLAG_FLAMABLE 0b00000000000000000000001000000000
#define CELL_FLAG_RADIO_ACTIVE 0b00000000000000000000010000000000
//#define CELL_FLAG_ 0b00000000000000000000100000000000
//#define CELL_FLAG_ 0b00000000000000000001000000000000
//#define CELL_FLAG_ 0b00000000000000000010000000000000
//#define CELL_FLAG_ 0b00000000000000000100000000000000
//#define CELL_FLAG_ 0b00000000000000001000000000000000
//#define CELL_FLAG_ 0b00000000000000010000000000000000
//#define CELL_FLAG_ 0b00000000000000100000000000000000
//#define CELL_FLAG_ 0b00000000000001000000000000000000
//#define CELL_FLAG_ 0b00000000000010000000000000000000
//#define CELL_FLAG_ 0b00000000000100000000000000000000
//#define CELL_FLAG_ 0b00000000001000000000000000000000
//#define CELL_FLAG_ 0b00000000010000000000000000000000
//#define CELL_FLAG_ 0b00000000100000000000000000000000
//#define CELL_FLAG_ 0b00000001000000000000000000000000
//#define CELL_FLAG_ 0b00000010000000000000000000000000
//#define CELL_FLAG_ 0b00000100000000000000000000000000
//#define CELL_FLAG_ 0b00001000000000000000000000000000
//#define CELL_FLAG_ 0b00010000000000000000000000000000
//#define CELL_FLAG_ 0b00100000000000000000000000000000
//#define CELL_FLAG_ 0b01000000000000000000000000000000
//#define CELL_FLAG_ 0b10000000000000000000000000000000
#include "tile.h"
typedef short cell_id;
typedef struct {
cell_id id;
unsigned int flags;
tile tile;
void(*func)(int x, int y, void* data);
} cell;
int UpdateCells(cell* cell, int x, int y, void* data);
cell* SetCell(cell_id id);
#endif // !CELLS_H