private.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. /* $Id: private.h,v 1.17 2001/05/07 02:41:36 kilobug Exp $ */
  2. #ifndef __PROLO_PRIVATE_H__
  3. #define __PROLO_PRIVATE_H__
  4. #include "action.h"
  5. #define MIN_ANGLE 0.01F
  6. #define MAX_ANGLE ((float)(M_PI * 2.0F))
  7. #define DIST_MIN_TAKE 1.0 /* distance minimum pour prendre un r4d2 ou un anakronox (au carre) */
  8. typedef enum _obj_type_t
  9. {
  10. obj_r4d2 = 0, obj_akx = 1
  11. } obj_type_t;
  12. /* gestion des objets dans la carte */
  13. typedef struct _obj_t
  14. {
  15. boolean_t change;
  16. obj_type_t type;
  17. int id;
  18. float x, y;
  19. int team_id;
  20. int error;
  21. } obj_t;
  22. typedef struct _akx_t
  23. {
  24. boolean_t change;
  25. obj_type_t type;
  26. int id;
  27. float x, y;
  28. int team_id;
  29. int error;
  30. akx_act_t action;
  31. float energy;
  32. } akx_t;
  33. typedef struct _r4d2_t
  34. {
  35. boolean_t change;
  36. obj_type_t type;
  37. int id;
  38. float x, y;
  39. int team_id;
  40. int error;
  41. r4d2_act_t action;
  42. } r4d2_t;
  43. typedef union _item_t
  44. {
  45. obj_t obj;
  46. akx_t akx;
  47. r4d2_t r4d2;
  48. } item_t;
  49. extern item_t *gl_objects;
  50. void new_akx(float x, float y, int id);
  51. void new_r4d2(float x, float y, int id);
  52. #endif