diff options
Diffstat (limited to 'src/base/shot.h')
| -rw-r--r-- | src/base/shot.h | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/src/base/shot.h b/src/base/shot.h new file mode 100644 index 0000000..db157cb --- /dev/null +++ b/src/base/shot.h @@ -0,0 +1,61 @@ + +#ifndef SHOT_H + +#define SHOT_H + +#include "base/main.h" +#include "base/list.h" +#include "base/tux.h" +#include "base/arena.h" + +#ifndef PUBLIC_SERVER +#include "client/interface.h" +#endif + +typedef struct shot_struct +{ + int id; + + int x; + int y; + + int w; + int h; + + int px; + int py; + + int position; + int gun; + + int author_id; + bool_t isCanKillAuthor; + +#ifndef PUBLIC_SERVER + SDL_Surface *img; +#endif +} shot_t; + +extern bool_t isShotInicialized(); +extern void initShot(); +extern shot_t* newShot(int x,int y, int px, int py, int gun, int author_id); +extern shot_t* getShotID(list_t *listShot, int id); +extern void replaceShotID(shot_t *shot, int id); +extern void getStatusShot(void *p, int *id, int *x,int *y, int *w, int *h); +extern void setStatusShot(void *p, int x, int y, int w, int h); +#ifndef PUBLIC_SERVER +extern void drawShot(shot_t *p); +extern void drawListShot(list_t *listShot); +#endif +extern int isConflictWithListShot(list_t *listShot, int x, int y, int w, int h); +extern void eventMoveListShot(arena_t *arena); +extern void checkShotIsInTuxScreen(arena_t *arena); + +extern void boundBombBall(shot_t *shot); +extern void transformOnlyLasser(shot_t *shot); + +extern void destroyShot(shot_t *p); +extern void quitShot(); + +#endif + |