
Game for Leeds University Gamepad for the FRDM-K64F: Game is a RPG Horror Title.
Dependencies: mbed FATFileSystem
main.cpp@10:4fda7b01484a, 2019-04-26 (annotated)
- Committer:
- rottenegg
- Date:
- Fri Apr 26 02:31:11 2019 +0000
- Revision:
- 10:4fda7b01484a
- Parent:
- 9:ac396c818874
- Child:
- 11:7f3e9bc7366d
CaMove: Added Additional Chaser Character Model.; SceneCreator: Added RNG input to cause Minor Changes.; SceneFunctions: Added Scene 2, 3 Functions.; Ready For Main GAME MANAGER...
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
rottenegg | 0:af8236e47084 | 1 | /* |
rottenegg | 0:af8236e47084 | 2 | ELEC2645 Embedded Systems Project |
rottenegg | 0:af8236e47084 | 3 | School of Electronic & Electrical Engineering |
rottenegg | 0:af8236e47084 | 4 | University of Leeds |
rottenegg | 0:af8236e47084 | 5 | Name:Saad Tayyab |
rottenegg | 0:af8236e47084 | 6 | Username:el17st |
rottenegg | 0:af8236e47084 | 7 | Student ID Number:201145512 |
rottenegg | 0:af8236e47084 | 8 | Date: 18/04/2019 |
rottenegg | 0:af8236e47084 | 9 | */ |
rottenegg | 0:af8236e47084 | 10 | |
rottenegg | 0:af8236e47084 | 11 | #include "mbed.h" |
rottenegg | 7:cbec3402b4e3 | 12 | #include "WDplayer.h" |
rottenegg | 8:e3a76a808a4c | 13 | #include "SDFileSystem.h" |
rottenegg | 7:cbec3402b4e3 | 14 | #include "Bitmap.h" |
rottenegg | 7:cbec3402b4e3 | 15 | #include "CaMove.h" |
rottenegg | 8:e3a76a808a4c | 16 | #include "SceneCreator.h" |
rottenegg | 8:e3a76a808a4c | 17 | |
rottenegg | 8:e3a76a808a4c | 18 | SDFileSystem sd(PTE3, PTE1, PTE2, PTE4, "sd"); |
rottenegg | 8:e3a76a808a4c | 19 | N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11); |
rottenegg | 8:e3a76a808a4c | 20 | CaMove CM(PTB9,PTB11,PTB10); |
rottenegg | 9:ac396c818874 | 21 | SceneCreator SNC(PTD0); |
rottenegg | 10:4fda7b01484a | 22 | Timer Time; |
rottenegg | 8:e3a76a808a4c | 23 | |
rottenegg | 8:e3a76a808a4c | 24 | int main() { |
rottenegg | 8:e3a76a808a4c | 25 | lcd.init(); |
rottenegg | 10:4fda7b01484a | 26 | /* |
rottenegg | 10:4fda7b01484a | 27 | Time.start(); |
rottenegg | 10:4fda7b01484a | 28 | SNC.Scenesp(lcd,CM,0,40,20,Fd,0); |
rottenegg | 10:4fda7b01484a | 29 | Time.stop(); |
rottenegg | 10:4fda7b01484a | 30 | int Random = (int)Time.read(); |
rottenegg | 10:4fda7b01484a | 31 | Random = Random % 3; |
rottenegg | 10:4fda7b01484a | 32 | SNC.Scenesp(lcd,CM,1,35,29,Fd,Random); |
rottenegg | 10:4fda7b01484a | 33 | SNC.Scenesp(lcd,CM,2,61,17,Lt,Random); |
rottenegg | 10:4fda7b01484a | 34 | */ |
rottenegg | 10:4fda7b01484a | 35 | SNC.Scenesp(lcd,CM,3,58,26,Bd,0); |
rottenegg | 8:e3a76a808a4c | 36 | |
rottenegg | 8:e3a76a808a4c | 37 | } |
rottenegg | 8:e3a76a808a4c | 38 | |
rottenegg | 8:e3a76a808a4c | 39 | /* |
rottenegg | 8:e3a76a808a4c | 40 | |
rottenegg | 8:e3a76a808a4c | 41 | SDFileSystem sd(PTE3, PTE1, PTE2, PTE4, "sd"); |
rottenegg | 8:e3a76a808a4c | 42 | N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11); |
rottenegg | 8:e3a76a808a4c | 43 | CaMove CM(PTB9,PTB11,PTB10); |
rottenegg | 8:e3a76a808a4c | 44 | |
rottenegg | 8:e3a76a808a4c | 45 | void speak(); |
rottenegg | 8:e3a76a808a4c | 46 | void speak2(); |
rottenegg | 8:e3a76a808a4c | 47 | void trans(); |
rottenegg | 0:af8236e47084 | 48 | |
rottenegg | 0:af8236e47084 | 49 | int main() { |
rottenegg | 8:e3a76a808a4c | 50 | int evecount = 0; |
rottenegg | 8:e3a76a808a4c | 51 | CM.init(40,20,Fd); |
rottenegg | 8:e3a76a808a4c | 52 | lcd.init(); |
rottenegg | 8:e3a76a808a4c | 53 | CM.set_region(4,21,5,24); |
rottenegg | 8:e3a76a808a4c | 54 | CM.set_region(71,31,10,14); // region 0 |
rottenegg | 8:e3a76a808a4c | 55 | |
rottenegg | 8:e3a76a808a4c | 56 | while(CM.in_screen()) { |
rottenegg | 8:e3a76a808a4c | 57 | lcd.clear(); |
rottenegg | 8:e3a76a808a4c | 58 | Bitmap::renderBMP(SCN[0],lcd,0,0); |
rottenegg | 8:e3a76a808a4c | 59 | |
rottenegg | 8:e3a76a808a4c | 60 | if (evecount == 0) { |
rottenegg | 8:e3a76a808a4c | 61 | lcd.drawRect(5,2,18,2,FILL_BLACK); |
rottenegg | 8:e3a76a808a4c | 62 | lcd.drawRect(4,21,5,24,FILL_BLACK); |
rottenegg | 8:e3a76a808a4c | 63 | } |
rottenegg | 8:e3a76a808a4c | 64 | |
rottenegg | 8:e3a76a808a4c | 65 | CM.move(lcd); |
rottenegg | 8:e3a76a808a4c | 66 | int x = CM.get_treg(); |
rottenegg | 8:e3a76a808a4c | 67 | //Interative Region 1 Triggered |
rottenegg | 8:e3a76a808a4c | 68 | if (x == 0) { |
rottenegg | 8:e3a76a808a4c | 69 | evecount = 1; |
rottenegg | 8:e3a76a808a4c | 70 | trans(); |
rottenegg | 8:e3a76a808a4c | 71 | speak(); |
rottenegg | 8:e3a76a808a4c | 72 | trans(); |
rottenegg | 8:e3a76a808a4c | 73 | } |
rottenegg | 8:e3a76a808a4c | 74 | if (x == 1) { |
rottenegg | 8:e3a76a808a4c | 75 | trans(); |
rottenegg | 8:e3a76a808a4c | 76 | speak2(); |
rottenegg | 8:e3a76a808a4c | 77 | trans(); |
rottenegg | 8:e3a76a808a4c | 78 | |
rottenegg | 8:e3a76a808a4c | 79 | } |
rottenegg | 8:e3a76a808a4c | 80 | lcd.refresh(); |
rottenegg | 8:e3a76a808a4c | 81 | wait(0.1); |
rottenegg | 8:e3a76a808a4c | 82 | } |
rottenegg | 8:e3a76a808a4c | 83 | } |
rottenegg | 8:e3a76a808a4c | 84 | void trans() { |
rottenegg | 8:e3a76a808a4c | 85 | for (int i = 0;i < 84;i++) { |
rottenegg | 8:e3a76a808a4c | 86 | lcd.drawRect(0,0,i,48,FILL_BLACK); |
rottenegg | 8:e3a76a808a4c | 87 | lcd.refresh(); |
rottenegg | 8:e3a76a808a4c | 88 | } |
rottenegg | 8:e3a76a808a4c | 89 | for (int i = 0;i < 84;i++) { |
rottenegg | 8:e3a76a808a4c | 90 | lcd.drawRect(0,0,i,48,FILL_WHITE); |
rottenegg | 8:e3a76a808a4c | 91 | lcd.refresh(); |
rottenegg | 8:e3a76a808a4c | 92 | } |
rottenegg | 8:e3a76a808a4c | 93 | } |
rottenegg | 5:860087ff295e | 94 | |
rottenegg | 8:e3a76a808a4c | 95 | void speak() { |
rottenegg | 8:e3a76a808a4c | 96 | lcd.clear(); |
rottenegg | 8:e3a76a808a4c | 97 | lcd.printString("Hello my name",0,0); |
rottenegg | 8:e3a76a808a4c | 98 | lcd.printString("Veigar i shall",0,1); |
rottenegg | 8:e3a76a808a4c | 99 | lcd.printString("Help you ...",0,2); |
rottenegg | 8:e3a76a808a4c | 100 | lcd.printString("find what you",0,3); |
rottenegg | 8:e3a76a808a4c | 101 | lcd.printString("seek. now go..",0,4); |
rottenegg | 8:e3a76a808a4c | 102 | lcd.refresh(); |
rottenegg | 8:e3a76a808a4c | 103 | wait(1); |
rottenegg | 8:e3a76a808a4c | 104 | } |
rottenegg | 8:e3a76a808a4c | 105 | |
rottenegg | 8:e3a76a808a4c | 106 | void speak2() { |
rottenegg | 8:e3a76a808a4c | 107 | lcd.clear(); |
rottenegg | 8:e3a76a808a4c | 108 | lcd.printString("its a lamp",0,0); |
rottenegg | 8:e3a76a808a4c | 109 | lcd.printString("quite eerie",0,1); |
rottenegg | 8:e3a76a808a4c | 110 | lcd.refresh(); |
rottenegg | 8:e3a76a808a4c | 111 | wait(1); |
rottenegg | 8:e3a76a808a4c | 112 | } |
rottenegg | 8:e3a76a808a4c | 113 | |
rottenegg | 8:e3a76a808a4c | 114 | */ |