Initial publish

Dependencies:   mbed

Fork of el17dg by Dmitrijs Griskovs

Committer:
Noximilien
Date:
Mon Mar 04 20:15:55 2019 +0000
Revision:
5:2b9181bc5c89
Parent:
4:02c63aaa2df9
Child:
14:e8de27c4d0d4
Have made the ship moving around in the "start game". Have done 4 different models of stars and a model of a blaster. Have made that the ship would not leave the set border limit (beyond the screen).

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Noximilien 0:69abdc43ae39 1 /*
Noximilien 0:69abdc43ae39 2 ELEC2645 Embedded Systems Project
Noximilien 0:69abdc43ae39 3 School of Electronic & Electrical Engineering
Noximilien 0:69abdc43ae39 4 University of Leeds
Noximilien 0:69abdc43ae39 5 Name: Dmitrijs Griskovs
Noximilien 0:69abdc43ae39 6 Username: el17dg
Noximilien 0:69abdc43ae39 7 Student ID Number: 201160286
Noximilien 0:69abdc43ae39 8 Date: start - 25/02/2019
Noximilien 0:69abdc43ae39 9 */
Noximilien 0:69abdc43ae39 10
Noximilien 0:69abdc43ae39 11
Noximilien 4:02c63aaa2df9 12 #include "main.h"
Noximilien 3:10918b0f7a7d 13 #include "game.h"
Noximilien 4:02c63aaa2df9 14 #include "menu.h"
Noximilien 3:10918b0f7a7d 15
Noximilien 0:69abdc43ae39 16
Noximilien 0:69abdc43ae39 17
Noximilien 1:5aa2312d3e94 18 N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11);
Noximilien 4:02c63aaa2df9 19
Noximilien 3:10918b0f7a7d 20 Gamepad gamepad;
Noximilien 4:02c63aaa2df9 21
Noximilien 1:5aa2312d3e94 22 AnalogIn pot(PTB2);
Noximilien 2:ec89189860e0 23 AnalogIn x_dir(PTB11);
Noximilien 2:ec89189860e0 24 AnalogIn y_dir(PTB10);
Noximilien 2:ec89189860e0 25
Noximilien 4:02c63aaa2df9 26 Menu menu;
Noximilien 4:02c63aaa2df9 27 Game game;
Noximilien 4:02c63aaa2df9 28
Noximilien 4:02c63aaa2df9 29 //static const unsigned int MAX_LINE_LENGTH = 14;
Noximilien 3:10918b0f7a7d 30
Noximilien 1:5aa2312d3e94 31
Noximilien 1:5aa2312d3e94 32 void intro();
Noximilien 2:ec89189860e0 33 void pointer(int x, int y);
Noximilien 2:ec89189860e0 34 void pointer_position(int menu_number);
Noximilien 3:10918b0f7a7d 35 void ship_movement();
Noximilien 3:10918b0f7a7d 36
Noximilien 4:02c63aaa2df9 37 //char line_buffer[MAX_LINE_LENGTH];
Noximilien 2:ec89189860e0 38
Noximilien 4:02c63aaa2df9 39
Noximilien 0:69abdc43ae39 40
Noximilien 4:02c63aaa2df9 41 ScreenOption current_screen = ScreenOption_Menu;
Noximilien 4:02c63aaa2df9 42
Noximilien 4:02c63aaa2df9 43 void intro();
Noximilien 4:02c63aaa2df9 44
Noximilien 1:5aa2312d3e94 45 int main(){
Noximilien 1:5aa2312d3e94 46 lcd.init();
Noximilien 4:02c63aaa2df9 47 gamepad.init();
Noximilien 1:5aa2312d3e94 48
Noximilien 1:5aa2312d3e94 49 intro();
Noximilien 1:5aa2312d3e94 50
Noximilien 4:02c63aaa2df9 51 while(1){ //Waiting for the option "start game" to be selected and for the button B to be pressed
Noximilien 1:5aa2312d3e94 52 lcd.clear();
Noximilien 2:ec89189860e0 53
Noximilien 4:02c63aaa2df9 54 if (current_screen == ScreenOption_Game) {
Noximilien 4:02c63aaa2df9 55 bool gameIsPaused = game.updateAndDraw();
Noximilien 4:02c63aaa2df9 56 if (gameIsPaused) {
Noximilien 4:02c63aaa2df9 57 current_screen = ScreenOption_Menu;
Noximilien 4:02c63aaa2df9 58 }
Noximilien 4:02c63aaa2df9 59 }
Noximilien 4:02c63aaa2df9 60 else if (current_screen == ScreenOption_Menu) {
Noximilien 4:02c63aaa2df9 61 bool wantsToChangeScreen = menu.updateAndDraw();
Noximilien 4:02c63aaa2df9 62 if (wantsToChangeScreen) {
Noximilien 4:02c63aaa2df9 63 current_screen = menu.getCurrentScreenSelection();
Noximilien 4:02c63aaa2df9 64 }
Noximilien 2:ec89189860e0 65 }
Noximilien 2:ec89189860e0 66
Noximilien 1:5aa2312d3e94 67 lcd.refresh();
Noximilien 1:5aa2312d3e94 68 wait_ms(1000/10);
Noximilien 1:5aa2312d3e94 69 }
Noximilien 1:5aa2312d3e94 70 }
Noximilien 1:5aa2312d3e94 71
Noximilien 4:02c63aaa2df9 72 void intro(){ // This just will be an intro for the game.
Noximilien 1:5aa2312d3e94 73 lcd.clear();
Noximilien 1:5aa2312d3e94 74 lcd.printString(" StarBarians",1,1);
Noximilien 1:5aa2312d3e94 75 lcd.refresh();
Noximilien 2:ec89189860e0 76 wait(0.5);
Noximilien 1:5aa2312d3e94 77 lcd.printString(" And the quest ",1,2);
Noximilien 4:02c63aaa2df9 78 lcd.printString(" of the Princess Spacecate",1,3);
Noximilien 4:02c63aaa2df9 79 lcd.printString(" Spacecate",1,4);
Noximilien 1:5aa2312d3e94 80 lcd.refresh();
Noximilien 2:ec89189860e0 81 wait(0.5);
Noximilien 4:02c63aaa2df9 82 }