Yang Zhenye 201199680

Dependencies:   mbed

Rooney/Rooney.cpp

Committer:
yangzhenye
Date:
2020-05-14
Revision:
7:a69ae964412c
Parent:
6:4abef55fee88

File content as of revision 7:a69ae964412c:

/* 
ELEC2645 Embedded Systems Project
School of Electronic & Electrical Engineering
University of Leeds
2019/20

Name:Yang Zhenye
Username:el17zy
Student ID Number:201199680
Date:2020/5/12
*/

#include "Rooney.h"

player::player(){}
player::~player(){}

int _stand[10][5] = {
    {0,0,1,0,0},
    {0,1,0,1,0},
    {0,0,1,0,0},
    {1,0,1,0,1},
    {1,1,1,1,1},
    {0,0,1,0,0},
    {0,0,1,0,0},
    {0,0,1,0,0},
    {0,1,0,1,0},
    {1,0,0,0,1},
    };
int _left[5][10] = {
    {0,0,0,1,1,0,0,0,0,1},
    {0,1,0,0,1,0,0,0,1,0},
    {1,0,1,1,1,1,1,1,0,0},
    {0,1,0,0,1,0,0,0,1,0},
    {0,0,0,1,1,0,0,0,0,1},
    };
int _right[5][10] = {
    {1,0,0,0,0,1,1,0,0,0},
    {0,1,0,0,0,1,0,0,1,0},
    {0,0,1,1,1,1,1,1,0,1},
    {0,1,0,0,0,1,0,0,1,0},
    {1,0,0,0,0,1,1,0,0,0},
    };   
    
 void player::init(){
     _player_x=38;
     _player_y=5;
     }
 void player::set_palyer_x(float joy_x, int speed) {
     _speed=speed;
     if (joy_x < float(-0.5)){ 
     _speed=-0.5;
     _player_x=38+_speed;}
     else if (_player_x<=0){
         _speed = 0;
         }
     if (joy_x > float(0.5)){ 
     _speed=0.5;
     _player_x=38+_speed;}
     else if (_player_x>=80){
         _speed = 0;}
     }
     
//void player::draw_gate(N5110 &lcd) {
//    lcd.drawLine(unsigned int const x0,
//                     unsigned int const y0,
//                     unsigned int const x1,
//                     unsigned int const y1,
//                     FullBlack)
//}
void player::add_score()
{
    _score++;
}
int player::get_score()
{
    return _score;
}
bool player::collision_flag() {
    if ((_player_x == _x - 2) && (_player_y == _y - 5)) {  
    _collision_flag = true;
    _score++;
    }
 }   
int * player::get_form(rooneybody body){
    if (body == left){
        return *_left;}
        else if (body == right){
            return *_right;}
            else if (body == stand){
                return *_stand;}}
int player::drawrooney(N5110 &lcd){
lcd.drawSprite(_player_x, _player_y, 5, 10, (int *)get_form(body));}

int player::get_x(){
    return _player_x;
    } 
int player::get_y(){
    return _player_y;
    } 
int player::get_speed(){
    return _speed;
    }