Dependencies: mbed
StartMenu/StartMenu.cpp@11:7a4abe731f9c, 2020-05-25 (annotated)
- Committer:
- ll17lrc
- Date:
- Mon May 25 16:40:59 2020 +0000
- Revision:
- 11:7a4abe731f9c
- Parent:
- 10:df6a496270be
- Child:
- 12:299479b6bb59
Removed level select.; Added level 6
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ll17lrc | 10:df6a496270be | 1 | #include "StartMenu.h" |
ll17lrc | 2:823dea76ff2e | 2 | |
ll17lrc | 2:823dea76ff2e | 3 | StartMenu::StartMenu() |
ll17lrc | 2:823dea76ff2e | 4 | { |
ll17lrc | 2:823dea76ff2e | 5 | |
ll17lrc | 2:823dea76ff2e | 6 | } |
ll17lrc | 2:823dea76ff2e | 7 | |
ll17lrc | 2:823dea76ff2e | 8 | StartMenu::~StartMenu() |
ll17lrc | 2:823dea76ff2e | 9 | { |
ll17lrc | 2:823dea76ff2e | 10 | |
ll17lrc | 2:823dea76ff2e | 11 | } |
ll17lrc | 2:823dea76ff2e | 12 | |
ll17lrc | 4:a9d5fca3b7ba | 13 | void StartMenu::complete(Gamepad &pad,N5110 &lcd) |
ll17lrc | 2:823dea76ff2e | 14 | { |
ll17lrc | 3:4494e6928194 | 15 | |
ll17lrc | 4:a9d5fca3b7ba | 16 | ImpossEngine imposs; |
ll17lrc | 4:a9d5fca3b7ba | 17 | |
ll17lrc | 3:4494e6928194 | 18 | int selector = 1; |
ll17lrc | 3:4494e6928194 | 19 | |
ll17lrc | 3:4494e6928194 | 20 | int arrow[7][5] = { |
ll17lrc | 3:4494e6928194 | 21 | {0,0,0,0,0}, |
ll17lrc | 3:4494e6928194 | 22 | {1,1,0,0,0}, |
ll17lrc | 3:4494e6928194 | 23 | {1,1,1,1,0}, |
ll17lrc | 3:4494e6928194 | 24 | {1,1,1,1,1}, |
ll17lrc | 3:4494e6928194 | 25 | {1,1,1,1,0}, |
ll17lrc | 3:4494e6928194 | 26 | {1,1,0,0,0}, |
ll17lrc | 3:4494e6928194 | 27 | {0,0,0,0,0}, |
ll17lrc | 3:4494e6928194 | 28 | }; |
ll17lrc | 3:4494e6928194 | 29 | |
ll17lrc | 2:823dea76ff2e | 30 | while( pad.A_pressed() == false ){ |
ll17lrc | 2:823dea76ff2e | 31 | |
ll17lrc | 2:823dea76ff2e | 32 | lcd.clear(); |
ll17lrc | 2:823dea76ff2e | 33 | lcd.printString(" Start Game ",0,1); |
ll17lrc | 11:7a4abe731f9c | 34 | lcd.printString(" How to play ",0,2); |
ll17lrc | 2:823dea76ff2e | 35 | lcd.drawSprite(5,selector * 8,7,5,(int *)arrow); |
ll17lrc | 2:823dea76ff2e | 36 | lcd.refresh(); |
ll17lrc | 2:823dea76ff2e | 37 | |
ll17lrc | 2:823dea76ff2e | 38 | wait(0.15); |
ll17lrc | 2:823dea76ff2e | 39 | |
ll17lrc | 2:823dea76ff2e | 40 | if( pad.get_direction() == S ){ |
ll17lrc | 11:7a4abe731f9c | 41 | if( selector < 2 ){ |
ll17lrc | 2:823dea76ff2e | 42 | selector ++; |
ll17lrc | 2:823dea76ff2e | 43 | } |
ll17lrc | 2:823dea76ff2e | 44 | } |
ll17lrc | 2:823dea76ff2e | 45 | if( pad.get_direction() == N ){ |
ll17lrc | 2:823dea76ff2e | 46 | if( selector > 1 ){ |
ll17lrc | 2:823dea76ff2e | 47 | selector --; |
ll17lrc | 2:823dea76ff2e | 48 | } |
ll17lrc | 2:823dea76ff2e | 49 | } |
ll17lrc | 10:df6a496270be | 50 | } |
ll17lrc | 2:823dea76ff2e | 51 | if( selector == 1 ){ |
ll17lrc | 10:df6a496270be | 52 | imposs.set_level_one(); |
ll17lrc | 2:823dea76ff2e | 53 | } |
ll17lrc | 2:823dea76ff2e | 54 | if( selector == 2 ){ |
ll17lrc | 11:7a4abe731f9c | 55 | wait(0.15); |
ll17lrc | 11:7a4abe731f9c | 56 | while(pad.A_pressed() == false){ |
ll17lrc | 11:7a4abe731f9c | 57 | lcd.clear(); |
ll17lrc | 11:7a4abe731f9c | 58 | lcd.printString("Use the ",0,0); |
ll17lrc | 11:7a4abe731f9c | 59 | lcd.printString("joystick to ",0,1); |
ll17lrc | 11:7a4abe731f9c | 60 | lcd.printString("move the ball.",0,2); |
ll17lrc | 11:7a4abe731f9c | 61 | lcd.drawSprite(70,40,7,5,(int *)arrow); |
ll17lrc | 11:7a4abe731f9c | 62 | lcd.refresh(); |
ll17lrc | 11:7a4abe731f9c | 63 | } |
ll17lrc | 11:7a4abe731f9c | 64 | while(pad.A_pressed() == false){ |
ll17lrc | 11:7a4abe731f9c | 65 | wait(0.15); |
ll17lrc | 11:7a4abe731f9c | 66 | lcd.clear(); |
ll17lrc | 11:7a4abe731f9c | 67 | lcd.printString("Press A to ",0,0); |
ll17lrc | 11:7a4abe731f9c | 68 | lcd.printString("double your ",0,1); |
ll17lrc | 11:7a4abe731f9c | 69 | lcd.printString("speed! ",0,2); |
ll17lrc | 11:7a4abe731f9c | 70 | lcd.drawSprite(70,40,7,5,(int *)arrow); |
ll17lrc | 11:7a4abe731f9c | 71 | lcd.refresh(); |
ll17lrc | 11:7a4abe731f9c | 72 | } |
ll17lrc | 11:7a4abe731f9c | 73 | while(pad.A_pressed() == false){ |
ll17lrc | 11:7a4abe731f9c | 74 | wait(0.15); |
ll17lrc | 11:7a4abe731f9c | 75 | lcd.clear(); |
ll17lrc | 11:7a4abe731f9c | 76 | lcd.printString("Touch a wall ",0,0); |
ll17lrc | 11:7a4abe731f9c | 77 | lcd.printString("and you fail! ",0,1); |
ll17lrc | 11:7a4abe731f9c | 78 | lcd.printString("There are 5 ",0,2); |
ll17lrc | 11:7a4abe731f9c | 79 | lcd.printString("levels. ",0,3); |
ll17lrc | 11:7a4abe731f9c | 80 | lcd.printString("Good luck! ",0,4); |
ll17lrc | 11:7a4abe731f9c | 81 | lcd.drawSprite(70,40,7,5,(int *)arrow); |
ll17lrc | 11:7a4abe731f9c | 82 | lcd.refresh(); |
ll17lrc | 11:7a4abe731f9c | 83 | } |
ll17lrc | 4:a9d5fca3b7ba | 84 | imposs.set_level_zero(); |
ll17lrc | 2:823dea76ff2e | 85 | } |
ll17lrc | 2:823dea76ff2e | 86 | |
ll17lrc | 4:a9d5fca3b7ba | 87 | } |