QUOTE: Never too old to chase dreams.

freezo

A retro platform game

tile.h (748B)


      1#pragma once
      2
      3typedef struct Tile tile_t;
      4
      5#include "util.h"
      6#include "game.h"
      7
      8typedef enum {
      9  TILE_AIR,
     10  TILE_WOOD_PLATFORM,
     11  TILE_STONE_JOINT,
     12  TILE_STONE_WALL,
     13  TILE_GRASS,
     14  TILE_STONE,
     15  TILE_SNOW,
     16  TILE_SAND,
     17  TILE_BOX,
     18  TILE_BG_CHANDELIER,
     19  TILE_BG_WINDOW_1,
     20  TILE_BG_WINDOW_2,
     21  TILE_BG_BANNER,
     22  TILE_BG_BRICK_1,
     23  TILE_BG_BRICK_2,
     24  TILE_BG_BRICK_3,
     25  TILE_BG_INFO,
     26} tile_e;
     27
     28struct Tile {
     29  pos_t pos;
     30  tile_e type;
     31};
     32
     33tile_t *tile_create(pos_t pos, tile_e type);
     34void tile_update(tile_t *tile, game_t *game);
     35void tile_draw(tile_t *tile, game_t *game);
     36tile_t *tile_get(game_t *game, int x, int y);
     37bool tile_ground(tile_t *tile);
     38bool tile_solid(tile_t *tile);
     39bool tile_wall(tile_t *tile);
     40void tile_free(tile_t *tile);