ELEC2645 (2018/19) / Mbed 2 deprecated el17set_

Dependencies:   mbed

Committer:
S_Tingle
Date:
Wed May 08 18:12:27 2019 +0000
Revision:
19:1073cc64cb0b
Parent:
18:ba4159ab4da7
Child:
21:7d4827af00d6
added all coin collisions + health display

Who changed what in which revision?

UserRevisionLine numberNew contents of line
S_Tingle 13:c3b550fc2445 1 #include "Coin.h"
S_Tingle 13:c3b550fc2445 2
S_Tingle 13:c3b550fc2445 3 Coin::Coin(){
S_Tingle 16:37d98c281eb3 4 _spawn = true;
S_Tingle 13:c3b550fc2445 5 }
S_Tingle 13:c3b550fc2445 6
S_Tingle 13:c3b550fc2445 7 Coin::~Coin(){
S_Tingle 13:c3b550fc2445 8
S_Tingle 13:c3b550fc2445 9 }
S_Tingle 13:c3b550fc2445 10
S_Tingle 13:c3b550fc2445 11 void Coin::init(int x,int y){
S_Tingle 13:c3b550fc2445 12 x_coin = x;
S_Tingle 13:c3b550fc2445 13 y_coin = y;
S_Tingle 13:c3b550fc2445 14 }
S_Tingle 13:c3b550fc2445 15
S_Tingle 14:d0650d0de063 16 int Coin::get_x_coin(){
S_Tingle 13:c3b550fc2445 17 return x_coin;
S_Tingle 13:c3b550fc2445 18 }
S_Tingle 13:c3b550fc2445 19
S_Tingle 14:d0650d0de063 20 int Coin::get_y_coin(){
S_Tingle 13:c3b550fc2445 21 return y_coin;
S_Tingle 13:c3b550fc2445 22 }
S_Tingle 13:c3b550fc2445 23
S_Tingle 17:ce6b54422113 24 int Coin::coins(){
S_Tingle 17:ce6b54422113 25 return coin;
S_Tingle 17:ce6b54422113 26 }
S_Tingle 17:ce6b54422113 27
S_Tingle 13:c3b550fc2445 28 void Coin::drawSprite(N5110 &lcd){
S_Tingle 16:37d98c281eb3 29 lcd.drawSprite(x_coin,y_coin,2,2,(int *)coin_01);
S_Tingle 13:c3b550fc2445 30 }
S_Tingle 13:c3b550fc2445 31
S_Tingle 16:37d98c281eb3 32 bool Coin::collidePlayer(int x, int y, Gamepad &pad) {
S_Tingle 16:37d98c281eb3 33 for (int ix = 0; ix < 7; ix++) {
S_Tingle 16:37d98c281eb3 34 for (int iy = 0; iy < 7; iy++) {
S_Tingle 19:1073cc64cb0b 35 /* if ( x + 3 == x_coin + ix &&
S_Tingle 19:1073cc64cb0b 36 y + 3 == y_coin + iy) {
S_Tingle 19:1073cc64cb0b 37 ++coin;
S_Tingle 19:1073cc64cb0b 38 pad.tone(650,0.25);
S_Tingle 19:1073cc64cb0b 39 return true;*/
S_Tingle 19:1073cc64cb0b 40 if ( x + ix == x_coin - 1 &&
S_Tingle 16:37d98c281eb3 41 y + iy == y_coin) {
S_Tingle 17:ce6b54422113 42 ++coin;
S_Tingle 16:37d98c281eb3 43 pad.tone(650,0.25);
S_Tingle 19:1073cc64cb0b 44 return true;
S_Tingle 19:1073cc64cb0b 45 } else if ( x + ix == x_coin + 2 &&
S_Tingle 18:ba4159ab4da7 46 y + iy == y_coin) {
S_Tingle 18:ba4159ab4da7 47 ++coin;
S_Tingle 18:ba4159ab4da7 48 pad.tone(650,0.25);
S_Tingle 19:1073cc64cb0b 49 return true;
S_Tingle 19:1073cc64cb0b 50 } else if ( x + ix == x_coin &&
S_Tingle 18:ba4159ab4da7 51 y + iy == y_coin - 1) {
S_Tingle 18:ba4159ab4da7 52 ++coin;
S_Tingle 18:ba4159ab4da7 53 pad.tone(650,0.25);
S_Tingle 19:1073cc64cb0b 54 return true;
S_Tingle 19:1073cc64cb0b 55 } else if ( x + ix == x_coin &&
S_Tingle 18:ba4159ab4da7 56 y + iy == y_coin + 2) {
S_Tingle 18:ba4159ab4da7 57 ++coin;
S_Tingle 18:ba4159ab4da7 58 pad.tone(650,0.25);
S_Tingle 18:ba4159ab4da7 59 return true;
S_Tingle 19:1073cc64cb0b 60 }
S_Tingle 16:37d98c281eb3 61 }
S_Tingle 16:37d98c281eb3 62 }
S_Tingle 16:37d98c281eb3 63 return false;
S_Tingle 16:37d98c281eb3 64 }
S_Tingle 16:37d98c281eb3 65
S_Tingle 16:37d98c281eb3 66 void Coin::spawn(int x, int y, N5110 &lcd, Gamepad &pad) {
S_Tingle 16:37d98c281eb3 67 drawSprite(lcd);
S_Tingle 16:37d98c281eb3 68 if (collidePlayer(x,y,pad) == true) {
S_Tingle 16:37d98c281eb3 69 x_coin = 100;
S_Tingle 16:37d98c281eb3 70 y_coin = 100;
S_Tingle 16:37d98c281eb3 71 } else {
S_Tingle 16:37d98c281eb3 72
S_Tingle 16:37d98c281eb3 73 }
S_Tingle 13:c3b550fc2445 74 }