![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
Li Ruofan 201199450
Dependencies: mbed Gamepad Joystick
myShip/spaceship.cpp
- Committer:
- DannyLee
- Date:
- 2020-05-15
- Revision:
- 5:e3a9f0548922
- Parent:
- 3:cf9fead9c3f4
- Child:
- 6:cbd9e1f26a10
File content as of revision 5:e3a9f0548922:
/* SPACE RACE Game using Arduino and Nokia 5110 LCD * Coded by: Ruofan Li * Date: 28-4-2020 * Input -> Joystick (x0,y0) */ #include <spaceship.h> // Library for spaceship.cpp //*Construct and Destruct Spaceship::Spaceship() { } Spaceship::~Spaceship() { } void Spaceship::init(int x,int y,int width,int height) { _x = x; //x value is fixed _y = y; //y is also fixed _width = width; _height = height; _speed = 4; } void Spaceship::draw(N5110 &lcd) { // draw Spaceship in screen of N5110. int Spaceship[15][10] = { 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,1,1,0,0,0,0, 0,0,0,0,1,1,0,0,0,0, 0,0,1,1,0,0,1,1,0,0, 0,1,1,1,1,1,1,1,1,0, 0,1,1,1,1,1,1,1,1,0, 1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, 1,1,1,1,0,0,1,1,1,1, 0,1,1,1,0,0,1,1,1,0, 0,0,1,1,0,0,1,1,0,0, 0,0,0,1,1,1,1,0,0,0, 0,0,0,0,0,0,0,0,0,0, lcd.drawSprite(lcd, _x,_y,_height,_width,(int)Spaceship);// Specify rows and columns in sprite }; void loop() { display.clearDisplay(); // clears the screen and start new gamescreen(); //Displays the box, score and speed values //Get input from user Joy_X = analogRead(A1); //It will read the X value from Joystick if (Joy_X < 312 && POS!=1 && control==true) //If joy stick moves right { POS--; control = false;} //Decreace position of spaceship else if (Joy_X > 712 && POS!=3 && control==true) //If joy stick moves right { POS++; control = false;} //Increace position of spaceship else if (Joy_X >502 && Joy_X<522) //If joystick back to initial position control = true; //Prepare for next move //Input from user received // get the position of the spaceship Vector2D Spaceship::get_pos() { Vector2D p = {_x,_y}; return p; } // set the position of the spaceship void Spaceship::set_pos(Vector2D p) { _x = p.x; _y = p.y; } // add score when pass pillars void Spaceship::add_score() { _score++; } // get score int Spaceship::get_score() { return _score; } // the life of the spaceship void Spaceship::set_life() { _life++; } // get life int Spaceship::get_life() { return _life; }