Hey it's not working but I wanna sleep
parent
eb3f1163aa
commit
44da525a5e
@ -0,0 +1,19 @@
|
|||||||
|
#include "bullet.h"
|
||||||
|
|
||||||
|
Bullet::Bullet() {
|
||||||
|
speed = 1.0;
|
||||||
|
height = 20;
|
||||||
|
width = 5;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Bullet::reset_pos(float x, float y) {
|
||||||
|
x_pos = x;
|
||||||
|
y_pos = y;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Bullet::draw() {
|
||||||
|
al_draw_filled_rectangle(x_pos, y_pos, x_pos + width, y_pos + height, al_map_rgb(0,0,0));
|
||||||
|
}
|
||||||
|
|
||||||
|
void Bullet::move(Direction dir) {
|
||||||
|
}
|
@ -0,0 +1,14 @@
|
|||||||
|
#pragma once
|
||||||
|
#include <allegro5/allegro.h>
|
||||||
|
#include <allegro5/allegro_primitives.h>
|
||||||
|
|
||||||
|
#include "game_element.h"
|
||||||
|
|
||||||
|
class Bullet : public GameElement {
|
||||||
|
public:
|
||||||
|
Bullet();
|
||||||
|
|
||||||
|
void reset_pos(float x, float y);
|
||||||
|
void draw();
|
||||||
|
void move(Direction dir);
|
||||||
|
};
|
@ -0,0 +1,16 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "enums.h"
|
||||||
|
|
||||||
|
class GameElement {
|
||||||
|
public:
|
||||||
|
float x_pos;
|
||||||
|
float y_pos;
|
||||||
|
float speed;
|
||||||
|
int height;
|
||||||
|
int width;
|
||||||
|
|
||||||
|
virtual void reset_pos(float x, float y) = 0;
|
||||||
|
virtual void move() = 0;
|
||||||
|
virtual void draw(Direction dir) = 0;
|
||||||
|
};
|
Binary file not shown.
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 4.8 KiB |
@ -0,0 +1,58 @@
|
|||||||
|
#include "ship.h"
|
||||||
|
|
||||||
|
Ship::Ship() {
|
||||||
|
speed = 1.0;
|
||||||
|
height = 40;
|
||||||
|
width = 40;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Ship::reset_pos(float x, float y) {
|
||||||
|
x_pos = x;
|
||||||
|
y_pos = y;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Ship::set_sprite(ALLEGRO_BITMAP* _sprite) {
|
||||||
|
sprite = _sprite;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Ship::draw() {
|
||||||
|
al_draw_bitmap(sprite, x_pos, y_pos, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
void Ship::move(Direction dir) {
|
||||||
|
float factor = 4 * speed;
|
||||||
|
switch (dir) {
|
||||||
|
case U:
|
||||||
|
y_pos -= factor;
|
||||||
|
break;
|
||||||
|
case D:
|
||||||
|
y_pos += factor;
|
||||||
|
break;
|
||||||
|
case R:
|
||||||
|
x_pos += factor;
|
||||||
|
break;
|
||||||
|
case L:
|
||||||
|
x_pos -= factor;
|
||||||
|
break;
|
||||||
|
case UR:
|
||||||
|
x_pos += factor;
|
||||||
|
y_pos -= factor;
|
||||||
|
break;
|
||||||
|
case UL:
|
||||||
|
x_pos -= factor;
|
||||||
|
y_pos -= factor;
|
||||||
|
break;
|
||||||
|
case DR:
|
||||||
|
x_pos += factor;
|
||||||
|
y_pos += factor;
|
||||||
|
break;
|
||||||
|
case DL:
|
||||||
|
x_pos -= factor;
|
||||||
|
y_pos += factor;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void Ship::fire() {
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,18 @@
|
|||||||
|
#pragma once
|
||||||
|
#include <allegro5/allegro.h>
|
||||||
|
|
||||||
|
#include "enums.h"
|
||||||
|
#include "game_element.h"
|
||||||
|
|
||||||
|
class Ship : public GameElement {
|
||||||
|
public:
|
||||||
|
ALLEGRO_BITMAP* sprite;
|
||||||
|
|
||||||
|
Ship();
|
||||||
|
|
||||||
|
void reset_pos(float x, float y);
|
||||||
|
void set_sprite(ALLEGRO_BITMAP* _sprite);
|
||||||
|
void draw();
|
||||||
|
void move(Direction dir);
|
||||||
|
void fire();
|
||||||
|
};
|
Loading…
Reference in New Issue