Zeyu Feng 201377605

Dependencies:   mbed

On Minerva

Committer:
el19zf
Date:
Fri May 22 16:07:02 2020 +0000
Revision:
22:cded0cd8e1c9
Parent:
18:93d050e7705d
Final Submission. I have read and agreed with Statement of Academic Integrity.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
el19zf 18:93d050e7705d 1 #include "Instruction.h"
el19zf 18:93d050e7705d 2
el19zf 18:93d050e7705d 3 const char instruction [11][15] = {
el19zf 18:93d050e7705d 4 {" Instruction "},
el19zf 18:93d050e7705d 5 {"--------------"},
el19zf 18:93d050e7705d 6 {"Move- Joystick"},
el19zf 18:93d050e7705d 7 {"--------------"},
el19zf 18:93d050e7705d 8 {"control 'peop-"},
el19zf 18:93d050e7705d 9 {"le' away from "},
el19zf 18:93d050e7705d 10 {"shots and rea-"},
el19zf 18:93d050e7705d 11 {"ch the destin-"},
el19zf 18:93d050e7705d 12 {"ation. "},
el19zf 18:93d050e7705d 13 {" Press B "},
el19zf 18:93d050e7705d 14 {" back to menu "}
el19zf 18:93d050e7705d 15 };
el19zf 18:93d050e7705d 16
el19zf 18:93d050e7705d 17 Instruction::Instruction()
el19zf 18:93d050e7705d 18 {
el19zf 18:93d050e7705d 19
el19zf 18:93d050e7705d 20 }
el19zf 18:93d050e7705d 21
el19zf 18:93d050e7705d 22 Instruction::~Instruction()
el19zf 18:93d050e7705d 23 {
el19zf 18:93d050e7705d 24
el19zf 18:93d050e7705d 25 }
el19zf 18:93d050e7705d 26
el19zf 18:93d050e7705d 27 void Instruction::init()
el19zf 18:93d050e7705d 28 {
el19zf 18:93d050e7705d 29 _draw_flag = 0;
el19zf 18:93d050e7705d 30 }
el19zf 18:93d050e7705d 31
el19zf 18:93d050e7705d 32 void Instruction::draw(N5110 &lcd, Gamepad &pad)
el19zf 18:93d050e7705d 33 {
el19zf 18:93d050e7705d 34 init();
el19zf 18:93d050e7705d 35 pad.tone(10,0.05);
el19zf 18:93d050e7705d 36 pad.set_bpm(0);
el19zf 18:93d050e7705d 37 pad.reset_buttons();
el19zf 18:93d050e7705d 38 while (!pad.B_pressed()) {
el19zf 18:93d050e7705d 39 lcd.clear();
el19zf 18:93d050e7705d 40 _d = pad.get_direction();
el19zf 18:93d050e7705d 41 if(_d == N||_d ==NE||_d==NW) {
el19zf 18:93d050e7705d 42 _draw_flag = _draw_flag - 1;
el19zf 18:93d050e7705d 43 } else if(_d == S||_d==SE||_d==SW) {
el19zf 18:93d050e7705d 44 _draw_flag = _draw_flag + 1;
el19zf 18:93d050e7705d 45 }
el19zf 18:93d050e7705d 46 //
el19zf 18:93d050e7705d 47 if(_draw_flag < 0) {
el19zf 18:93d050e7705d 48 _draw_flag = 0;
el19zf 18:93d050e7705d 49 } else if(_draw_flag > 5)
el19zf 18:93d050e7705d 50 _draw_flag = 5;
el19zf 18:93d050e7705d 51
el19zf 18:93d050e7705d 52 for(int i = 0; i < 6; i++)
el19zf 18:93d050e7705d 53 lcd.printString(instruction[_draw_flag + i],0,i);
el19zf 18:93d050e7705d 54 lcd.refresh();
el19zf 18:93d050e7705d 55 pad.leds_on();
el19zf 18:93d050e7705d 56 wait(0.25);
el19zf 18:93d050e7705d 57 }
el19zf 18:93d050e7705d 58 }