ELEC2645 (2018/19) / Mbed 2 deprecated el17dg

Dependencies:   mbed

Fork of el17dg by Dmitrijs Griskovs

Committer:
Noximilien
Date:
Mon Mar 04 20:15:55 2019 +0000
Revision:
5:2b9181bc5c89
Parent:
4:02c63aaa2df9
Child:
6:100b46be4bea
Have made the ship moving around in the "start game". Have done 4 different models of stars and a model of a blaster. Have made that the ship would not leave the set border limit (beyond the screen).

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Noximilien 3:10918b0f7a7d 1
Noximilien 3:10918b0f7a7d 2
Noximilien 3:10918b0f7a7d 3 #include "mbed.h"
Noximilien 3:10918b0f7a7d 4 #include "N5110.h"
Noximilien 3:10918b0f7a7d 5 #include "Gamepad.h"
Noximilien 3:10918b0f7a7d 6
Noximilien 3:10918b0f7a7d 7 #include "models.h"
Noximilien 4:02c63aaa2df9 8 #include "main.h"
Noximilien 4:02c63aaa2df9 9 #include "game.h"
Noximilien 3:10918b0f7a7d 10
Noximilien 5:2b9181bc5c89 11 //int x_ship_origin = 0;
Noximilien 5:2b9181bc5c89 12 //int y_ship_origin = 24;
Noximilien 5:2b9181bc5c89 13
Noximilien 5:2b9181bc5c89 14 int x_ship_pos = 0;
Noximilien 5:2b9181bc5c89 15 int y_ship_pos = 24;
Noximilien 5:2b9181bc5c89 16 const int ship_step_incremetion = 2;
Noximilien 5:2b9181bc5c89 17
Noximilien 4:02c63aaa2df9 18 bool Game::updateAndDraw() {
Noximilien 5:2b9181bc5c89 19
Noximilien 5:2b9181bc5c89 20
Noximilien 5:2b9181bc5c89 21 shipMovment();
Noximilien 5:2b9181bc5c89 22 lcd.drawSprite(x_ship_pos, y_ship_pos, spaceship1_width, spaceship1_height, spaceShip1);
Noximilien 5:2b9181bc5c89 23
Noximilien 5:2b9181bc5c89 24 /*char buffer[4];
Noximilien 5:2b9181bc5c89 25 sprintf(buffer,"%i\n",(int)(x_dir.read()*84));
Noximilien 5:2b9181bc5c89 26 printf(buffer);*/
Noximilien 3:10918b0f7a7d 27
Noximilien 4:02c63aaa2df9 28 bool want_to_pause = false;
Noximilien 4:02c63aaa2df9 29 if (gamepad.check_event(gamepad.START_PRESSED)){
Noximilien 4:02c63aaa2df9 30 want_to_pause = true;
Noximilien 4:02c63aaa2df9 31 }
Noximilien 4:02c63aaa2df9 32 return want_to_pause;
Noximilien 4:02c63aaa2df9 33 }
Noximilien 5:2b9181bc5c89 34
Noximilien 5:2b9181bc5c89 35
Noximilien 5:2b9181bc5c89 36 void Game::shipMovment(){ // The position of the ship
Noximilien 5:2b9181bc5c89 37
Noximilien 5:2b9181bc5c89 38 if(x_ship_pos <= 48 && x_ship_pos >= 0){
Noximilien 5:2b9181bc5c89 39 if(x_dir.read() > 0.6f){
Noximilien 5:2b9181bc5c89 40 x_ship_pos -= ship_step_incremetion;
Noximilien 5:2b9181bc5c89 41 }
Noximilien 5:2b9181bc5c89 42 else if(x_dir.read() < 0.4f){
Noximilien 5:2b9181bc5c89 43 x_ship_pos += ship_step_incremetion;
Noximilien 5:2b9181bc5c89 44 }
Noximilien 5:2b9181bc5c89 45 }
Noximilien 5:2b9181bc5c89 46
Noximilien 5:2b9181bc5c89 47 else if (x_ship_pos <= 48){ x_ship_pos = 0;} //Limits for x direction border IMPROVE IF POSSIBLE.
Noximilien 5:2b9181bc5c89 48 else { x_ship_pos = 48;}
Noximilien 5:2b9181bc5c89 49
Noximilien 5:2b9181bc5c89 50
Noximilien 5:2b9181bc5c89 51 if (y_ship_pos <= (47 - spaceship1_height) && y_ship_pos >= 0){
Noximilien 5:2b9181bc5c89 52 if(y_dir.read() > 0.6f){
Noximilien 5:2b9181bc5c89 53 y_ship_pos -= ship_step_incremetion;
Noximilien 5:2b9181bc5c89 54 }
Noximilien 5:2b9181bc5c89 55 else if(y_dir.read() < 0.4f){
Noximilien 5:2b9181bc5c89 56 y_ship_pos += ship_step_incremetion;
Noximilien 5:2b9181bc5c89 57 }
Noximilien 5:2b9181bc5c89 58 }
Noximilien 5:2b9181bc5c89 59 else if (y_ship_pos >= (47 - spaceship1_height)){ y_ship_pos = 47 - spaceship1_height;} //Limits for y direction border IMPROVE IF POSSIBLE.
Noximilien 5:2b9181bc5c89 60 else if (y_ship_pos < 0){ y_ship_pos = 0;}
Noximilien 5:2b9181bc5c89 61
Noximilien 5:2b9181bc5c89 62 }
Noximilien 5:2b9181bc5c89 63
Noximilien 5:2b9181bc5c89 64
Noximilien 5:2b9181bc5c89 65 void Game::shipFire(){
Noximilien 5:2b9181bc5c89 66 //if (gamepad.check_event(gamepad.B_PRESSED){
Noximilien 5:2b9181bc5c89 67
Noximilien 5:2b9181bc5c89 68 //}
Noximilien 5:2b9181bc5c89 69
Noximilien 5:2b9181bc5c89 70
Noximilien 5:2b9181bc5c89 71 }
Noximilien 5:2b9181bc5c89 72
Noximilien 5:2b9181bc5c89 73