Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Frogger/Frogger.h
- Committer:
- el19tb
- Date:
- 2020-05-23
- Revision:
- 46:e39abe665271
- Parent:
- 44:f02510eeb165
- Child:
- 47:29c4796a49e5
File content as of revision 46:e39abe665271:
#ifndef FROGGER_H #define FROGGER_H #include "mbed.h" #include "N5110.h" #include "Gamepad.h" #include "Frog.h" #include "Menu.h" #include "GraphicEngine.h" #include "WaterSprites.h" #include "Vehicle.h" #include "Background.h" #include <vector> #include <stdio.h> #include <cstddef> #include <vector> class Frogger { public: //GraphicEngine *graphics; // local renderer object Frog *frog; // one frog object int grid; // size of one game unit Frogger(); Frogger(Frog *frog, int grid, int w, int h); // constructor public: int current_level; bool frogWater; bool frogOnLog; // attached public: Gamepad gamepad; // actual hardware object int row_number; int grid_width; // screen width in grid units int lcd_w; int lcd_h; public: // Level One Car objects Object car_row_one_one[3]; Object car_row_two_one[2]; Object car_row_three_one[3]; Object car_row_four_one[4]; // Level One Log objects Object row_one_log[3]; // large sized Object row_two_log[2]; // medium sized Object row_three_log[3]; // large sized // Level two Car Objects Object car_row_one_two[4]; Object car_row_two_two[3]; Object car_row_three_two[4]; Object car_row_four_two[3]; // level two log objects Object level_row_one[2]; Object level_row_two[2]; Object level_row_three[3]; public: void checkFrogOnWater(); void checkFrogAction(Object log); void setupLevelTwoRows(); void moveFrogWithLog(Object *log); void levelOneCollision(); void levelTwoCollision(); void checkCollison(Object object); void setupRowDistance(Object *objects, int dis, int array_size); void setDistance(Object *object, int dis); void setRowObjects(Object *objecs, int row, int array_size); void createRow(Object *object, int row); void setSpriteObjects(Object *objects, char c, int array_size); void setSprite(Object *object, char c); void setDirObjects(Object *objecs, int dir, int array_size); void setDir(Object *objecs, int dir); //void moveLogLevelTwo(); void moveLogsLevelOne(); void moveLogsLevelTwo(); void speedSlow(); void speedMedium(); void speedFast(); // LEVEL ONE FUNCTIONS void setupLevelOne(); // set up vehicles void setupLevelOneRow(); void setupLevelOneXPos(); void setupLevelOneSprites(); void setupLevelOneDir(); // set up logs void setupLogsLevelOne(); void setLogLevelOneXPos(); void setLogLevelOneRow(); void setLogLevelOneDir(); void setLogLevelOneSprites(); // LEVEL TWO FUNCTIONS void setupLevelTwo(); int randCars(); // setup vehicles void setupLevelTwoXPos(); void setupLevelTwoSprites(); void setupLevelTwoDir(); //log objects void setupLogLevelTwo(); void setLogLevelTwoXPos(); void setLogLevelTwoRow(); void setLogLevelTwoSprite(); void setLogLevelTwoDir(); void initializeLevelTwo(); void displayObject(Object &temp_object); public: void start(); void input(); void process_input(); void clear(); void runLevelOne(); void runLevelTwo(); void moveVehiclesLevelOne(); void moveVehiclesLevelTwo(); void moveVehicle(Object *row, char c, int array_size); void moveIndividualObject(Object *vehicle, char c); void checkOutOfBounds(Object *vehicle); void runCurrentLevel(); void initializeParams(int w, int h, int grid); void initializeEmbeddedSystem(); void checkCurrentLevelCollision(); void checkIfFrogIsInWater(); void moveFrog(int xWay, int yWay); void game(); void refresh(); void createWaterLane(); void createMultipleLanesWater(); void drawRoadObjects(); void createRoadLane(); void createMultipleRoadLane(); void drawSafety(); void createSafetyObject(); void createMultipleSafetyLane(); void drawEndPost(); void drawWater(); void loopWater(); void moveWater(); void move(); void checkFrogOutOfBounds(); void setup(); void createGoalPost(); }; #endif