#ifndef OBJ_PLAYER_H_
#define OBJ_PLAYER_H_

#include "main.h"

/* private structure for object OBJID_PLAYER */
struct sobj_player {
  struct VG_RectCent rectc;        /* rectangle-position */
  int gold;                        /* gold coins */
  int bombwait;                    /* loops to wait before to set next bomb */
  int anzbombs;                    /* number of bombs to put at the same time */
  int putbombs;                    /* number of bombs put */
  int dark_counter;                /* counter for being dark */
  int extralife;                   /* whether has extralife */
  VG_BOOL has_key;                 /* whether has key */

  enum { SOBJ_PLAYER_STAND = 0,
         SOBJ_PLAYER_GO,
         SOBJ_PLAYER_DIE,
         SOBJ_PLAYER_DONE
       } status;
  enum { SOBJ_PLAYER_MOV_RIGHT = 0,
         SOBJ_PLAYER_MOV_LEFT
       } moving;

  /* images and sprites */
  struct {
    struct VG_Image *stand;         /* image when standing */
    struct VG_Sprite *go;           /* sprite when going */
    struct VG_Sprite *die;          /* sprite when dying */
    struct VG_Image *dark_stand;    /* dark image when standing */
    struct VG_Sprite *dark_go;      /* dark sprite when going */
    struct VG_Sprite *done;         /* sprite when level done */
    struct VG_Image *key_symbol;    /* key-symbol */
    struct VG_Image *heart_symbol;  /* heart-symbol */
    struct VG_Image *bombs_symbol;  /* bombs-symbol */
  } images;
};

#endif /* OBJ_PLAYER_H_ */
