Ben Evans / Mbed 2 deprecated Defender_Game

Dependencies:   mbed

Committer:
evanso
Date:
Tue Apr 14 19:40:33 2020 +0000
Revision:
4:0df2b85e47f1
Parent:
3:dee187b8b30c
Child:
5:acd809cc824c
Added sprite movement using the analogue stick

Who changed what in which revision?

UserRevisionLine numberNew contents of line
evanso 3:dee187b8b30c 1 #include "Spaceship.h"
evanso 3:dee187b8b30c 2
evanso 4:0df2b85e47f1 3 const int k_spaceship_sprite[4][13] = {
evanso 3:dee187b8b30c 4 { 1,1,1,1,1,1,0,0,0,0,0,0,0 },
evanso 3:dee187b8b30c 5 { 0,1,1,1,1,1,1,1,1,0,0,0,0 },
evanso 3:dee187b8b30c 6 { 1,1,1,1,1,1,1,1,1,1,1,1,1 },
evanso 3:dee187b8b30c 7 { 0,0,1,1,1,1,1,0,0,0,0,0,0 },
evanso 3:dee187b8b30c 8 };
evanso 3:dee187b8b30c 9
evanso 3:dee187b8b30c 10 Spaceship::Spaceship() {
evanso 3:dee187b8b30c 11
evanso 3:dee187b8b30c 12 }
evanso 3:dee187b8b30c 13
evanso 3:dee187b8b30c 14 Spaceship::~Spaceship() {
evanso 3:dee187b8b30c 15
evanso 3:dee187b8b30c 16 }
evanso 3:dee187b8b30c 17
evanso 3:dee187b8b30c 18 void Spaceship::init() {
evanso 3:dee187b8b30c 19 position_x_spaceship_ = 40;
evanso 3:dee187b8b30c 20 position_y_spaceship_ = 20;
evanso 3:dee187b8b30c 21 }
evanso 3:dee187b8b30c 22
evanso 3:dee187b8b30c 23 void Spaceship::draw(N5110 &lcd) {
evanso 3:dee187b8b30c 24 // Draws spaceships at defined x and y positions
evanso 4:0df2b85e47f1 25 lcd.drawSprite(position_x_spaceship_, position_y_spaceship_, 4, 13, (int*)k_spaceship_sprite);
evanso 4:0df2b85e47f1 26 }
evanso 4:0df2b85e47f1 27
evanso 4:0df2b85e47f1 28 void Spaceship::clear_spaceship(N5110 &lcd){
evanso 4:0df2b85e47f1 29 // Clears spaceship from LCD by drawing a white sprite
evanso 4:0df2b85e47f1 30 lcd.drawRect(position_x_spaceship_, position_y_spaceship_, 13, 4, FILL_WHITE);
evanso 3:dee187b8b30c 31 }
evanso 3:dee187b8b30c 32
evanso 4:0df2b85e47f1 33 void Spaceship::movement(Gamepad &pad){
evanso 4:0df2b85e47f1 34 Direction joystick_direction = pad.get_direction();
evanso 4:0df2b85e47f1 35 // Changes x and y postion values depending on joystick input
evanso 4:0df2b85e47f1 36 if(joystick_direction == N){
evanso 4:0df2b85e47f1 37 position_y_spaceship_+= -1;
evanso 4:0df2b85e47f1 38 }else if(joystick_direction == S){
evanso 4:0df2b85e47f1 39 position_y_spaceship_+= 1;
evanso 4:0df2b85e47f1 40 }else if(joystick_direction == E){
evanso 4:0df2b85e47f1 41 position_x_spaceship_+= 2;
evanso 4:0df2b85e47f1 42 }else if(joystick_direction == W){
evanso 4:0df2b85e47f1 43 position_x_spaceship_-= 2;
evanso 4:0df2b85e47f1 44 }
evanso 4:0df2b85e47f1 45 }
evanso 4:0df2b85e47f1 46