Kern Fowler / Mbed 2 deprecated Donkey_Kong_Game

Dependencies:   mbed

Committer:
Kern_EL17KJTF
Date:
Wed May 08 20:24:57 2019 +0000
Revision:
15:9e8d1b6fe81e
Parent:
12:50a7abf21f18
Child:
20:c4e6941c98e2
Donkey Kong Game sprite added. Game fully working

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Kern_EL17KJTF 10:28575a6eaa13 1 /*
Kern_EL17KJTF 10:28575a6eaa13 2 ELEC2645 Project
Kern_EL17KJTF 10:28575a6eaa13 3 Donkey.cpp
Kern_EL17KJTF 10:28575a6eaa13 4 Class file for Donkey Kong in Donkey Kong game.
Kern_EL17KJTF 10:28575a6eaa13 5 */
Kern_EL17KJTF 10:28575a6eaa13 6 #include "Donkey.h"
Kern_EL17KJTF 10:28575a6eaa13 7
Kern_EL17KJTF 10:28575a6eaa13 8
Kern_EL17KJTF 10:28575a6eaa13 9
Kern_EL17KJTF 10:28575a6eaa13 10 Donkey::Donkey()
Kern_EL17KJTF 10:28575a6eaa13 11 {
Kern_EL17KJTF 10:28575a6eaa13 12
Kern_EL17KJTF 10:28575a6eaa13 13 }
Kern_EL17KJTF 10:28575a6eaa13 14 Donkey::~Donkey()
Kern_EL17KJTF 10:28575a6eaa13 15 {
Kern_EL17KJTF 10:28575a6eaa13 16
Kern_EL17KJTF 10:28575a6eaa13 17 }
Kern_EL17KJTF 10:28575a6eaa13 18
Kern_EL17KJTF 10:28575a6eaa13 19 int donkeykong_x = 0;
Kern_EL17KJTF 15:9e8d1b6fe81e 20 int donkeykong_y = 34;
Kern_EL17KJTF 10:28575a6eaa13 21 int donkey_kong_speed = 10;
Kern_EL17KJTF 10:28575a6eaa13 22 int donkey_direction;
Kern_EL17KJTF 10:28575a6eaa13 23
Kern_EL17KJTF 10:28575a6eaa13 24
Kern_EL17KJTF 10:28575a6eaa13 25 void Donkey::donkeykong_movement(Gamepad &pad, N5110 &lcd) {
Kern_EL17KJTF 15:9e8d1b6fe81e 26 int game_dk_walking_right_1[14][16] = {
Kern_EL17KJTF 15:9e8d1b6fe81e 27 {0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 28 {0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 29 {0,0,0,0,0,0,0,0,1,1,0,1,1,0,1,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 30 {0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,},
Kern_EL17KJTF 15:9e8d1b6fe81e 31 {0,0,0,0,0,1,1,0,0,0,0,1,0,0,0,1,},
Kern_EL17KJTF 15:9e8d1b6fe81e 32 {0,0,0,0,1,1,0,0,0,1,0,0,1,0,1,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 33 {0,0,1,1,1,0,0,0,0,0,1,1,1,1,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 34 {0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 35 {0,1,0,0,0,0,0,0,0,0,0,0,0,1,1,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 36 {1,0,0,0,1,1,1,0,0,1,1,1,0,0,0,1,},
Kern_EL17KJTF 15:9e8d1b6fe81e 37 {1,0,0,1,0,0,0,1,1,1,0,0,1,0,0,1,},
Kern_EL17KJTF 15:9e8d1b6fe81e 38 {1,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1,},
Kern_EL17KJTF 15:9e8d1b6fe81e 39 {1,0,0,1,1,1,0,0,0,0,0,0,0,1,1,1,},
Kern_EL17KJTF 15:9e8d1b6fe81e 40 {1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,},
Kern_EL17KJTF 10:28575a6eaa13 41 };
Kern_EL17KJTF 10:28575a6eaa13 42
Kern_EL17KJTF 15:9e8d1b6fe81e 43 int game_dk_walking_left_1[14][16] = {
Kern_EL17KJTF 15:9e8d1b6fe81e 44 {0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 45 {0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 46 {0,1,0,1,1,0,1,1,0,0,0,0,0,0,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 47 {1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 48 {1,0,0,0,1,0,0,0,0,1,1,0,0,0,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 49 {0,1,0,1,0,0,1,0,0,0,1,1,0,0,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 50 {0,0,1,1,1,1,0,0,0,0,0,1,1,1,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 51 {0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 52 {0,1,1,0,0,0,0,0,0,0,0,0,0,0,1,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 53 {1,0,0,0,1,1,1,0,0,1,1,1,0,0,0,1,},
Kern_EL17KJTF 15:9e8d1b6fe81e 54 {1,0,0,1,0,0,1,1,1,0,0,0,1,0,0,1,},
Kern_EL17KJTF 15:9e8d1b6fe81e 55 {1,0,1,0,0,0,0,0,0,0,0,0,1,0,0,1,},
Kern_EL17KJTF 15:9e8d1b6fe81e 56 {1,1,1,0,0,0,0,0,0,0,1,1,1,0,0,1,},
Kern_EL17KJTF 15:9e8d1b6fe81e 57 {1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,},
Kern_EL17KJTF 10:28575a6eaa13 58 };
Kern_EL17KJTF 10:28575a6eaa13 59
Kern_EL17KJTF 15:9e8d1b6fe81e 60 int game_dk_stationary[14][16] = {
Kern_EL17KJTF 15:9e8d1b6fe81e 61 {0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 62 {0,0,0,0,1,0,0,0,1,1,0,0,0,0,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 63 {0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 64 {0,0,0,0,1,0,0,0,0,0,1,1,0,0,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 65 {0,0,0,1,0,1,1,0,1,1,0,1,0,0,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 66 {0,0,1,1,0,1,1,0,1,1,0,0,1,0,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 67 {0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 68 {0,0,1,0,1,0,0,0,0,0,1,0,0,1,0,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 69 {0,1,0,0,0,1,1,1,1,1,0,0,0,0,1,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 70 {0,1,0,0,1,0,0,1,0,0,0,1,0,0,1,0,},
Kern_EL17KJTF 15:9e8d1b6fe81e 71 {1,0,0,1,0,1,0,0,0,0,1,0,1,0,0,1,},
Kern_EL17KJTF 15:9e8d1b6fe81e 72 {1,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,},
Kern_EL17KJTF 15:9e8d1b6fe81e 73 {1,0,1,0,1,0,0,1,1,0,0,1,0,1,0,1,},
Kern_EL17KJTF 15:9e8d1b6fe81e 74 {0,1,1,1,1,1,1,0,0,1,1,1,1,1,1,0,},
Kern_EL17KJTF 10:28575a6eaa13 75 };
Kern_EL17KJTF 10:28575a6eaa13 76 donkey_direction = pad.get_direction();
Kern_EL17KJTF 10:28575a6eaa13 77 if (donkey_direction == NE || donkey_direction == E || donkey_direction == SE) {
Kern_EL17KJTF 12:50a7abf21f18 78 donkeykong_x = donkeykong_x + 3;
Kern_EL17KJTF 15:9e8d1b6fe81e 79 lcd.drawSprite(donkeykong_x,donkeykong_y,14,16,(int *)game_dk_walking_right_1);
Kern_EL17KJTF 10:28575a6eaa13 80 }
Kern_EL17KJTF 10:28575a6eaa13 81 else if (donkey_direction == NW || donkey_direction == W || donkey_direction == SW) {
Kern_EL17KJTF 12:50a7abf21f18 82 donkeykong_x = donkeykong_x - 3;
Kern_EL17KJTF 15:9e8d1b6fe81e 83 lcd.drawSprite(donkeykong_x,donkeykong_y,14,16,(int *)game_dk_walking_left_1);
Kern_EL17KJTF 10:28575a6eaa13 84 }
Kern_EL17KJTF 10:28575a6eaa13 85 else {
Kern_EL17KJTF 15:9e8d1b6fe81e 86 lcd.drawSprite(donkeykong_x,donkeykong_y,14,16,(int *)game_dk_stationary);
Kern_EL17KJTF 10:28575a6eaa13 87 }
Kern_EL17KJTF 10:28575a6eaa13 88 lcd.refresh();
Kern_EL17KJTF 10:28575a6eaa13 89 if (donkeykong_x > 68) {
Kern_EL17KJTF 10:28575a6eaa13 90 donkeykong_x = 68;
Kern_EL17KJTF 10:28575a6eaa13 91 }
Kern_EL17KJTF 10:28575a6eaa13 92 if (donkeykong_x < 0) {
Kern_EL17KJTF 10:28575a6eaa13 93 donkeykong_x = 0;
Kern_EL17KJTF 10:28575a6eaa13 94 }
Kern_EL17KJTF 10:28575a6eaa13 95 }
Kern_EL17KJTF 11:b288d01533cc 96