ELEC2645 (2018/19) / Mbed 2 deprecated el17lw

Dependencies:   mbed

Committer:
lewisgw
Date:
Wed Apr 10 13:40:58 2019 +0000
Revision:
16:331be5c7ed80
Now a rotating 'ball of fire' that moves across the screen to duck and dodge. The game ends if you hit it.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
lewisgw 16:331be5c7ed80 1 #include "Spikes.h"
lewisgw 16:331be5c7ed80 2
lewisgw 16:331be5c7ed80 3 // Define sprite arrays.
lewisgw 16:331be5c7ed80 4 int spikes_angle[5][8] = {
lewisgw 16:331be5c7ed80 5 { 1,0,1,0,0,1,0,0 },
lewisgw 16:331be5c7ed80 6 { 1,0,0,0,1,1,1,0 },
lewisgw 16:331be5c7ed80 7 { 0,0,0,1,1,1,1,1 },
lewisgw 16:331be5c7ed80 8 { 0,1,0,0,1,1,1,0 },
lewisgw 16:331be5c7ed80 9 { 1,0,0,1,0,1,0,0 },
lewisgw 16:331be5c7ed80 10 };
lewisgw 16:331be5c7ed80 11
lewisgw 16:331be5c7ed80 12 int spikes_flat[5][8] = {
lewisgw 16:331be5c7ed80 13 { 0,0,1,0,0,1,0,0 },
lewisgw 16:331be5c7ed80 14 { 0,1,0,0,1,1,1,0 },
lewisgw 16:331be5c7ed80 15 { 1,0,1,0,1,1,1,0 },
lewisgw 16:331be5c7ed80 16 { 1,0,0,0,1,1,1,0 },
lewisgw 16:331be5c7ed80 17 { 0,1,0,1,1,0,0,0 },
lewisgw 16:331be5c7ed80 18 };
lewisgw 16:331be5c7ed80 19
lewisgw 16:331be5c7ed80 20 // Constructor and destructor.
lewisgw 16:331be5c7ed80 21 Spikes::Spikes() {}
lewisgw 16:331be5c7ed80 22
lewisgw 16:331be5c7ed80 23 Spikes::~Spikes() {}
lewisgw 16:331be5c7ed80 24
lewisgw 16:331be5c7ed80 25 void Spikes::init() {
lewisgw 16:331be5c7ed80 26 _x = -10;
lewisgw 16:331be5c7ed80 27 _spikes_counter = 0;
lewisgw 16:331be5c7ed80 28 }
lewisgw 16:331be5c7ed80 29
lewisgw 16:331be5c7ed80 30 void Spikes::update_spikes() {
lewisgw 16:331be5c7ed80 31 _x++;
lewisgw 16:331be5c7ed80 32 _spikes_counter++;
lewisgw 16:331be5c7ed80 33 if (_spikes_counter == 2) _spikes_counter = 0;
lewisgw 16:331be5c7ed80 34 if (_x == 90) _x = -10;
lewisgw 16:331be5c7ed80 35 }
lewisgw 16:331be5c7ed80 36
lewisgw 16:331be5c7ed80 37 int * Spikes::get_spikes_sprite() {
lewisgw 16:331be5c7ed80 38 if (_spikes_counter == 1) {
lewisgw 16:331be5c7ed80 39 return *spikes_angle;
lewisgw 16:331be5c7ed80 40 } else {
lewisgw 16:331be5c7ed80 41 return *spikes_flat;
lewisgw 16:331be5c7ed80 42 }
lewisgw 16:331be5c7ed80 43 }
lewisgw 16:331be5c7ed80 44
lewisgw 16:331be5c7ed80 45 int Spikes::get_spikes_x() {
lewisgw 16:331be5c7ed80 46 return _x;
lewisgw 16:331be5c7ed80 47 }
lewisgw 16:331be5c7ed80 48
lewisgw 16:331be5c7ed80 49
lewisgw 16:331be5c7ed80 50
lewisgw 16:331be5c7ed80 51