I’ve started working on a replica of a game called ”Red Plane 1942”. I’m using the same engine we created in class for the Arkanoid project. What I’ve done this week is to create the basic objects. I made a class called BackgroundObject. It’s basically just a object with a sprite that moves down towards the end of the screen. After it is below the edge it resets above the screen and randomizes a x position. The Player object is always on the samy Y position, when the BackgroundObjects move down they create the illusion of the player flying forward.
So the BackgroundObject class inherits from the base class called Entity. I also started creating a Bullet class wich also inherits from the Entity class. The Bullet class has variables for X and Y direction, speed and damage.
class Bullet : public Entity { public: Bullet(float x, float y, Sprite* sprite, int damage, int speed, int xDirection, int yDirection, EType type); ~Bullet(); //Entity void Update(float deltatime); EType GetType(); Sprite* GetSprite(); Collider* GetCollider(); float GetX(); float GetY(); void SetVisibility(bool state); bool IsVisible(); //Bullet int GetDamage(); private: //Entity EType m_type; Sprite* m_sprite; Collider* m_collider; float m_x; float m_y; bool m_visible; //Bullet int m_damage; int m_speed; int m_xDirection; int m_yDirection; };
EType is a enum which describes what type of Entity the object is. In this case the bullet has a variable for it because the bullet can be either a playerbullet E_PBULLET or a enemybullet E_EBULLET.
Lämna en kommentar