
Game for Leeds University Gamepad for the FRDM-K64F: Game is a RPG Horror Title.
Dependencies: mbed FATFileSystem
SceneCreator/SceneFunctions.h@26:716bcd47f3ca, 2019-05-10 (annotated)
- Committer:
- rottenegg
- Date:
- Fri May 10 21:25:27 2019 +0000
- Revision:
- 26:716bcd47f3ca
- Parent:
- 21:f3b0ce18b44f
FINAL_SUBMISSION; ; Changes:; WDplayer: Major Memory Leek fixed related to fclose(); Game_Manager: Tuned Scene Order and Improved Random number generator.; SceneFuctions: Added a Randomly changing Object to Scene 4.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
rottenegg | 9:ac396c818874 | 1 | #ifndef SCENEFUNCTIONS_H |
rottenegg | 9:ac396c818874 | 2 | #define SCENEFUNCTIONS_H |
rottenegg | 9:ac396c818874 | 3 | |
rottenegg | 13:95323e0f2fcb | 4 | /** SceneFunctions Class |
rottenegg | 13:95323e0f2fcb | 5 | @brief Contains Private Functions for each Pre Event and Pos Event. SceneFunctions is friend and parent to SceneCreator. |
rottenegg | 13:95323e0f2fcb | 6 | @breif Also contains ultity functions like button locks and small animation sequences |
rottenegg | 13:95323e0f2fcb | 7 | |
rottenegg | 13:95323e0f2fcb | 8 | @author Saad Tayyab |
rottenegg | 13:95323e0f2fcb | 9 | @date 25th April 2019 |
rottenegg | 13:95323e0f2fcb | 10 | */ |
rottenegg | 9:ac396c818874 | 11 | #include "mbed.h" |
rottenegg | 17:7d4d8905b608 | 12 | #include "Bitmap.h" |
rottenegg | 9:ac396c818874 | 13 | #include "CaMove.h" |
rottenegg | 21:f3b0ce18b44f | 14 | #include "WDplayer.h" |
rottenegg | 9:ac396c818874 | 15 | |
rottenegg | 13:95323e0f2fcb | 16 | class SceneFunctions { |
rottenegg | 13:95323e0f2fcb | 17 | friend class SceneCreator; |
rottenegg | 13:95323e0f2fcb | 18 | |
rottenegg | 13:95323e0f2fcb | 19 | private : |
rottenegg | 21:f3b0ce18b44f | 20 | //Hardware pointers |
rottenegg | 13:95323e0f2fcb | 21 | DigitalIn *_BOK; |
rottenegg | 21:f3b0ce18b44f | 22 | //Private Variables |
rottenegg | 21:f3b0ce18b44f | 23 | int _progress; //for Fucntions that require Completion path (e.g do this then this to open) |
rottenegg | 13:95323e0f2fcb | 24 | bool _p[3]; |
rottenegg | 13:95323e0f2fcb | 25 | |
rottenegg | 9:ac396c818874 | 26 | //constructor functions |
rottenegg | 9:ac396c818874 | 27 | void set_buttonPin(PinName pin); |
rottenegg | 9:ac396c818874 | 28 | void deletebutton(); |
rottenegg | 21:f3b0ce18b44f | 29 | void reset_variables(); |
rottenegg | 21:f3b0ce18b44f | 30 | |
rottenegg | 9:ac396c818874 | 31 | //Ultility Functions |
rottenegg | 21:f3b0ce18b44f | 32 | void transition(Bitmap &lcd); //transition effect |
rottenegg | 21:f3b0ce18b44f | 33 | void lockin(Bitmap &lcd); //stops program until user presses button |
rottenegg | 21:f3b0ce18b44f | 34 | void flash(Bitmap &lcd); //makes screen flash |
rottenegg | 21:f3b0ce18b44f | 35 | |
rottenegg | 21:f3b0ce18b44f | 36 | //Obj Functions create dissapearing or appearing Objects - pre- function (occurs before everything else) |
rottenegg | 21:f3b0ce18b44f | 37 | //Event Functions used to create mini instances due to a user clicking something |
rottenegg | 15:3d29fb195958 | 38 | |
rottenegg | 9:ac396c818874 | 39 | //scene 0 Functions |
rottenegg | 9:ac396c818874 | 40 | void set_scene0(CaMove &CM); |
rottenegg | 9:ac396c818874 | 41 | //pre functions objs |
rottenegg | 17:7d4d8905b608 | 42 | void obj0_scene0(Bitmap &lcd); |
rottenegg | 9:ac396c818874 | 43 | //pos functions events |
rottenegg | 17:7d4d8905b608 | 44 | void event0_scene0(Bitmap &lcd); |
rottenegg | 17:7d4d8905b608 | 45 | void event1_scene0(Bitmap &lcd); |
rottenegg | 15:3d29fb195958 | 46 | |
rottenegg | 9:ac396c818874 | 47 | //scene 1 Functions |
rottenegg | 9:ac396c818874 | 48 | void set_scene1(CaMove &CM); |
rottenegg | 9:ac396c818874 | 49 | //pre |
rottenegg | 17:7d4d8905b608 | 50 | void obj0_scene1(Bitmap &lcd); |
rottenegg | 17:7d4d8905b608 | 51 | void obj1_scene1(Bitmap &lcd); |
rottenegg | 9:ac396c818874 | 52 | //pos |
rottenegg | 17:7d4d8905b608 | 53 | void event0_scene1(Bitmap &lcd); |
rottenegg | 17:7d4d8905b608 | 54 | void event1_scene1(Bitmap &lcd,CaMove &CM); |
rottenegg | 15:3d29fb195958 | 55 | |
rottenegg | 10:4fda7b01484a | 56 | //Scene2 Functions |
rottenegg | 10:4fda7b01484a | 57 | void set_scene2(CaMove &CM); |
rottenegg | 10:4fda7b01484a | 58 | //pre functions |
rottenegg | 17:7d4d8905b608 | 59 | void obj0_scene2(Bitmap &lcd); |
rottenegg | 17:7d4d8905b608 | 60 | void obj1_scene2(Bitmap &lcd,int rng); |
rottenegg | 10:4fda7b01484a | 61 | //pos functions |
rottenegg | 21:f3b0ce18b44f | 62 | void event0_scene2(Bitmap &lcd,CaMove &CM,WDplayer &wav); |
rottenegg | 15:3d29fb195958 | 63 | |
rottenegg | 10:4fda7b01484a | 64 | //Scene 3 Function |
rottenegg | 10:4fda7b01484a | 65 | void set_scene3(CaMove &CM); |
rottenegg | 10:4fda7b01484a | 66 | //pre function |
rottenegg | 17:7d4d8905b608 | 67 | void obj0_scene3(Bitmap &lcd); |
rottenegg | 17:7d4d8905b608 | 68 | void obj1_scene3(Bitmap &lcd); |
rottenegg | 17:7d4d8905b608 | 69 | void obj3_scene3(Bitmap &lcd); |
rottenegg | 17:7d4d8905b608 | 70 | void obj4_scene3(Bitmap &lcd); |
rottenegg | 10:4fda7b01484a | 71 | //pos function |
rottenegg | 17:7d4d8905b608 | 72 | void event0_scene3(Bitmap &lcd); |
rottenegg | 17:7d4d8905b608 | 73 | void event1_scene3(Bitmap &lcd); |
rottenegg | 17:7d4d8905b608 | 74 | void event2_scene3(Bitmap &lcd); |
rottenegg | 17:7d4d8905b608 | 75 | void event3_scene3(Bitmap &lcd,CaMove &CM); |
rottenegg | 10:4fda7b01484a | 76 | |
rottenegg | 15:3d29fb195958 | 77 | //Scene 4 Function |
rottenegg | 15:3d29fb195958 | 78 | void set_scene4(CaMove &CM); |
rottenegg | 15:3d29fb195958 | 79 | //pre functions |
rottenegg | 17:7d4d8905b608 | 80 | void obj1_scene4(Bitmap &lcd); |
rottenegg | 26:716bcd47f3ca | 81 | void obj2_scene4(Bitmap &lcd,int rng); |
rottenegg | 17:7d4d8905b608 | 82 | void obj3_scene4(Bitmap &lcd); |
rottenegg | 15:3d29fb195958 | 83 | //pos function |
rottenegg | 21:f3b0ce18b44f | 84 | void event0_scene4(Bitmap &lcd,CaMove &CM,WDplayer &wav); |
rottenegg | 10:4fda7b01484a | 85 | |
rottenegg | 9:ac396c818874 | 86 | }; |
rottenegg | 9:ac396c818874 | 87 | |
rottenegg | 9:ac396c818874 | 88 | #endif |