Mochu Yao explorer game

Dependencies:   mbed

explorer/explorer.h

Committer:
el17my
Date:
2020-04-27
Revision:
8:201ef0618b7d
Parent:
7:88c4ba6bb37b
Child:
10:559487aac60e

File content as of revision 8:201ef0618b7d:

/** explorer 
* @the explorer file has three functions
  1 the movement of a explorer to jump and move in left or right direction
  2 check fallen and collision
  3 reset the game
* @date April 15th 2020
* @author Yaomochu
*/
#ifndef EXPLORER_H
#define EXPLORER_H

#include "mbed.h"
#include "Gamepad.h"
#include "surface.h"
//use the enum to define the value we need for the explorer
enum Explorer_sprite {Move_right,Move_left,Stand_left, Stand_right};
//we have four sprite form so we can define the sprite on the screen by using these enum
//the explorer's direction
enum Player_direction {right,left};

class Explorer {
 public:
 Explorer();
 //Constructor
 ~Explorer();
 //Destructor
void init();
void set_x_coordinate(float joy_x, int speed, Player_direction direction);
void set_y_coordinate(bool ifjump, int jump_height);
int get_y();
 
int get_x();

int get_speed();

int get_jump_height();

Player_direction get_direction();

Explorer_sprite get_explorer_sprite();

int * get_form(Explorer_sprite sprite);
//this function is used to get the players form and print on the screen (same as the item file)

void fall(bool f_flag, Gamepad &gamepad);
//the fall flag need to add music to hint the player that the game is over
void reset_flag(bool flag,Gamepad &gamepad);
//the reset flag also need to add music to hint the player that the game has been reseted
bool get_fall_flag();

bool get_reset_flag();
 
 private:
    
  int _x;
  int _y;
  int _speed;
  int _jump_height;
  bool _f_flag;
  bool _r_flag;
  Line _line_1;
  Line _line_2;
  Line _line_3;
  Line _line_4;
  Line _line_5;
  Line _line_6;
  Player_direction _player_direction;
  Explorer_sprite _explorer_sprite;   
};
#endif