Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | RSS feed

  1. #ifndef HEADS_H
  2. #define HEADS_H
  3.  
  4. #include "../collision.h"
  5.  
  6. //Goblin/medusa/dragon head statues
  7. typedef struct {
  8.         int id, type; //0 = Rhyno head | 1 = Goblin | 2 = Dragon | 3 = Demon | 4 = Fireball | 5 = Air Jar
  9.         int state, timer;
  10.         double x, y;
  11.         int dir;
  12.         int hp, invincible;
  13.         int cooloff;
  14.         int counter;
  15.        
  16.         //Mask mask;
  17. } Head;
  18.  
  19. void createHead(int type, int x, int y, int dir, int offset, int cooloff);
  20.  
  21. //Bullet from Rhyno statues
  22. typedef struct {
  23.         int id;
  24.         double x, y;
  25.         int hsp;
  26.         double imageIndex;
  27.        
  28.         //Mask mask;
  29. } Bullet;
  30.  
  31. void createBullet(int x, int y, int dir, int minid); //Minid is the spawner's id
  32.  
  33. //Fireball
  34. typedef struct {
  35.         int id;
  36.         double x, y;
  37.         int angle;
  38.         int spd;
  39.         double imageIndex;
  40.        
  41.         Mask mask;
  42. } Fireball;
  43.  
  44. void createFireball(int x, int y, int angle, int minid);
  45.  
  46. //Medusa lazer
  47. typedef struct {
  48.         int id;
  49.         double x, y;
  50.         int dir;
  51.         double imageIndex;
  52.        
  53.         Mask mask;
  54. } Laser;
  55.  
  56. void createLaser(int x, int y, int dir);
  57.  
  58. //Dragon flame
  59. typedef struct {
  60.         int id;
  61.         int x, y;
  62.         int dir;
  63.         int timer;
  64.         double imageIndex;
  65. } Flame;
  66.  
  67. void createFlame(int x, int y, int dir);
  68.  
  69. //Demon Boulder
  70. typedef struct {
  71.         int id;
  72.         double x, y;
  73.         double vsp;
  74.         int dir;
  75.         double imageIndex;
  76. } Rock;
  77.  
  78. void createRock(int x, int y, int dir);
  79.  
  80. //Air
  81. typedef struct {
  82.         int id;
  83.         double x, y;
  84.         double imageIndex;
  85. } Air;
  86.  
  87. void createAir(int x, int y);
  88.  
  89. #endif