#ifndef ARENA_H #define ARENA_H #include "main.h" #ifndef PUBLIC_SERVER #include "image.h" #endif #ifdef __WIN32__ #define random rand #endif #define SCREEN_SPLIT_HORIZONTAL 1 #define SCREEN_SPLIT_VERTICAL 2 #include "list.h" #include "space.h" typedef struct arena_struct { #ifndef PUBLIC_SERVER char music[STR_SIZE]; image_t *background; #endif int w, h; list_t *listTimer; space_t *spaceShot; space_t *spaceTux; space_t *spaceItem; int countRound; int max_countRound; } arena_t; extern void setCurrentArena(arena_t * p); extern arena_t *getCurrentArena(); extern void initArena(); extern void quitArena(); extern arena_t *newArena(int w, int h); extern int conflictSpace(int x1, int y1, int w1, int h1, int x2, int y2, int w2, int h2); extern int isFreeSpace(arena_t * arena, int x, int y, int w, int h); extern void findFreeSpace(arena_t * arena, int *x, int *y, int w, int h); extern void getCenterScreen(int *screen_x, int *screen_y, int x, int y, int screen_size_x, int screen_size_y); #ifndef PUBLIC_SERVER extern void drawArena(arena_t * arena); #endif extern void eventArena(arena_t * arena); extern void destroyArena(arena_t * p); #endif