Game codes for Pokemon Academy Yiu Fai Kwok - 201198802 I have read the University Regulations on Plagiarism and state that the work covered by this declaration is my own and does not contain any unacknowledged work from other sources.

Dependencies:   mbed FXOS8700CQ mbed-rtos

Committer:
yfkwok
Date:
Wed Apr 03 03:06:00 2019 +0000
Revision:
2:464c7e62d97d
Child:
10:adff3c804985
Date 3/4/2019 - Mini game one beta complete

Who changed what in which revision?

UserRevisionLine numberNew contents of line
yfkwok 2:464c7e62d97d 1 #include "Bulbasaur.h"
yfkwok 2:464c7e62d97d 2
yfkwok 2:464c7e62d97d 3 Bulbasaur::Bulbasaur()
yfkwok 2:464c7e62d97d 4 {
yfkwok 2:464c7e62d97d 5
yfkwok 2:464c7e62d97d 6 }
yfkwok 2:464c7e62d97d 7
yfkwok 2:464c7e62d97d 8 Bulbasaur::~Bulbasaur()
yfkwok 2:464c7e62d97d 9 {
yfkwok 2:464c7e62d97d 10
yfkwok 2:464c7e62d97d 11 }
yfkwok 2:464c7e62d97d 12
yfkwok 2:464c7e62d97d 13 //Enumerate instruction menu from page 1 - 3
yfkwok 2:464c7e62d97d 14 enum Page {
yfkwok 2:464c7e62d97d 15 PAGE_1, PAGE_2, PAGE_3
yfkwok 2:464c7e62d97d 16 };
yfkwok 2:464c7e62d97d 17
yfkwok 2:464c7e62d97d 18 void Bulbasaur::draw_cha1_sprite(int pos_x, int pos_y,N5110 &lcd)
yfkwok 2:464c7e62d97d 19 {
yfkwok 2:464c7e62d97d 20 static int bulbasaur_data[] = {
yfkwok 2:464c7e62d97d 21 0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,
yfkwok 2:464c7e62d97d 22 0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,
yfkwok 2:464c7e62d97d 23 0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,1,0,0,0,0,
yfkwok 2:464c7e62d97d 24 0,0,0,0,0,0,0,1,1,0,0,1,0,0,1,0,1,1,0,0,
yfkwok 2:464c7e62d97d 25 0,0,0,1,1,0,1,0,0,0,1,1,0,0,1,0,0,0,1,0,
yfkwok 2:464c7e62d97d 26 0,0,1,0,0,1,1,0,0,1,0,1,0,0,0,1,0,0,0,1,
yfkwok 2:464c7e62d97d 27 0,0,1,0,0,0,1,1,1,0,1,0,0,0,0,0,1,0,0,1,
yfkwok 2:464c7e62d97d 28 0,0,1,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0,0,1,
yfkwok 2:464c7e62d97d 29 0,1,0,0,0,0,0,0,0,1,1,1,0,0,0,0,1,0,1,0,
yfkwok 2:464c7e62d97d 30 1,1,0,0,0,0,0,0,0,0,0,1,0,0,0,1,1,1,1,0,
yfkwok 2:464c7e62d97d 31 1,1,0,0,0,0,0,0,0,0,1,0,1,1,1,0,0,0,1,0,
yfkwok 2:464c7e62d97d 32 1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,1,0,1,0,
yfkwok 2:464c7e62d97d 33 1,0,0,0,0,0,1,1,0,0,0,0,1,0,0,1,1,1,0,0,
yfkwok 2:464c7e62d97d 34 0,1,0,0,0,0,1,1,0,0,0,1,0,0,1,0,0,0,0,0,
yfkwok 2:464c7e62d97d 35 0,0,1,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,
yfkwok 2:464c7e62d97d 36 0,0,0,0,1,1,1,1,1,1,1,0,1,0,1,0,0,0,0,0,
yfkwok 2:464c7e62d97d 37 0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0
yfkwok 2:464c7e62d97d 38 };
yfkwok 2:464c7e62d97d 39
yfkwok 2:464c7e62d97d 40 _pos_x = pos_x;
yfkwok 2:464c7e62d97d 41 _pos_y = pos_y;
yfkwok 2:464c7e62d97d 42 lcd.drawSprite(_pos_x, _pos_y, 17, 20, bulbasaur_data);
yfkwok 2:464c7e62d97d 43 }
yfkwok 2:464c7e62d97d 44
yfkwok 2:464c7e62d97d 45 void Bulbasaur::description(Gamepad &pad, N5110 &lcd)
yfkwok 2:464c7e62d97d 46 {
yfkwok 2:464c7e62d97d 47 Page currentPage = PAGE_1;
yfkwok 2:464c7e62d97d 48 int fps = 8.0;
yfkwok 2:464c7e62d97d 49 static int instruct_data[] = {
yfkwok 2:464c7e62d97d 50 1,1,1,1,1,1,1,
yfkwok 2:464c7e62d97d 51 0,1,1,1,1,1,0,
yfkwok 2:464c7e62d97d 52 0,0,1,1,1,0,0,
yfkwok 2:464c7e62d97d 53 0,0,0,1,0,0,0
yfkwok 2:464c7e62d97d 54 };
yfkwok 2:464c7e62d97d 55
yfkwok 2:464c7e62d97d 56 while(pad.check_event(Gamepad::B_PRESSED) == false){
yfkwok 2:464c7e62d97d 57 switch (currentPage) {
yfkwok 2:464c7e62d97d 58 case PAGE_1:
yfkwok 2:464c7e62d97d 59 lcd.clear();
yfkwok 2:464c7e62d97d 60 lcd.printString("Bulbasaur",0,0);
yfkwok 2:464c7e62d97d 61 lcd.printString("is so lazy",0,1);
yfkwok 2:464c7e62d97d 62 lcd.printString("that he never",0,2);
yfkwok 2:464c7e62d97d 63 lcd.printString("finds time to",0,3);
yfkwok 2:464c7e62d97d 64 lcd.printString("do actual work",0,4);
yfkwok 2:464c7e62d97d 65 lcd.drawSprite(39, 44, 4, 7, instruct_data);
yfkwok 2:464c7e62d97d 66 lcd.refresh();
yfkwok 2:464c7e62d97d 67 if(pad.get_direction() == S){currentPage = PAGE_2;}
yfkwok 2:464c7e62d97d 68 wait(1.0f/fps);
yfkwok 2:464c7e62d97d 69 break;
yfkwok 2:464c7e62d97d 70 case PAGE_2:
yfkwok 2:464c7e62d97d 71 lcd.clear();
yfkwok 2:464c7e62d97d 72 lcd.printString("Easily lured",0,0);
yfkwok 2:464c7e62d97d 73 lcd.printString("by YouTube",0,1);
yfkwok 2:464c7e62d97d 74 lcd.printString("and social",0,2);
yfkwok 2:464c7e62d97d 75 lcd.printString("apps! Motivate",0,3);
yfkwok 2:464c7e62d97d 76 lcd.printString("him so that he",0,4);
yfkwok 2:464c7e62d97d 77 lcd.drawSprite(39, 44, 4, 7, instruct_data);
yfkwok 2:464c7e62d97d 78 lcd.refresh();
yfkwok 2:464c7e62d97d 79 if(pad.get_direction() == S){currentPage = PAGE_3;}
yfkwok 2:464c7e62d97d 80 wait(1.0f/fps);
yfkwok 2:464c7e62d97d 81 break;
yfkwok 2:464c7e62d97d 82 case PAGE_3:
yfkwok 2:464c7e62d97d 83 lcd.clear();
yfkwok 2:464c7e62d97d 84 lcd.printString("can graduate!",0,0);
yfkwok 2:464c7e62d97d 85 lcd.printString("Press B",0,5);
yfkwok 2:464c7e62d97d 86 lcd.refresh();
yfkwok 2:464c7e62d97d 87 wait(1.0f/fps);
yfkwok 2:464c7e62d97d 88 }
yfkwok 2:464c7e62d97d 89 }
yfkwok 2:464c7e62d97d 90 }