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.
Gold/Gold.h@21:7b6da5796f47, 2020-05-13 (annotated)
- Committer:
- ZhongYufan
- Date:
- Wed May 13 14:59:01 2020 +0000
- Revision:
- 21:7b6da5796f47
- Parent:
- 18:d4fccdf8d90e
Final Submission. I have read and agreed with Statement of Academic Integrity
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ZhongYufan | 1:9c7bb3db32bc | 1 | #ifndef GOLD_H |
ZhongYufan | 1:9c7bb3db32bc | 2 | #define GOLD_H |
ZhongYufan | 1:9c7bb3db32bc | 3 | |
ZhongYufan | 1:9c7bb3db32bc | 4 | #include "mbed.h" |
ZhongYufan | 1:9c7bb3db32bc | 5 | #include "N5110.h" |
ZhongYufan | 1:9c7bb3db32bc | 6 | #include "Gamepad.h" |
ZhongYufan | 1:9c7bb3db32bc | 7 | #include "Winch.h" |
ZhongYufan | 1:9c7bb3db32bc | 8 | #include "Monster.h" |
ZhongYufan | 8:c5969685cf02 | 9 | #include "time.h" |
ZhongYufan | 1:9c7bb3db32bc | 10 | |
ZhongYufan | 1:9c7bb3db32bc | 11 | /** Gold Class |
ZhongYufan | 17:3ba4ec25c4c5 | 12 | @brief Controls the gold in the gold miner game |
ZhongYufan | 16:e3ecfcd2a389 | 13 | @author Yufan Zhong, University of Leeds and SWJTU |
ZhongYufan | 16:e3ecfcd2a389 | 14 | @date May 2020 |
ZhongYufan | 1:9c7bb3db32bc | 15 | */ |
ZhongYufan | 16:e3ecfcd2a389 | 16 | |
ZhongYufan | 1:9c7bb3db32bc | 17 | class Gold |
ZhongYufan | 1:9c7bb3db32bc | 18 | { |
ZhongYufan | 1:9c7bb3db32bc | 19 | |
ZhongYufan | 1:9c7bb3db32bc | 20 | public: |
ZhongYufan | 16:e3ecfcd2a389 | 21 | /** Constructor */ |
ZhongYufan | 1:9c7bb3db32bc | 22 | Gold(); |
ZhongYufan | 18:d4fccdf8d90e | 23 | |
ZhongYufan | 16:e3ecfcd2a389 | 24 | /** Destructor */ |
ZhongYufan | 1:9c7bb3db32bc | 25 | ~Gold(); |
ZhongYufan | 18:d4fccdf8d90e | 26 | |
ZhongYufan | 16:e3ecfcd2a389 | 27 | /** Initialise the gold |
ZhongYufan | 16:e3ecfcd2a389 | 28 | * @param gold_num - number of the gold |
ZhongYufan | 16:e3ecfcd2a389 | 29 | */ |
ZhongYufan | 1:9c7bb3db32bc | 30 | void init(int gold_num); |
ZhongYufan | 18:d4fccdf8d90e | 31 | |
ZhongYufan | 16:e3ecfcd2a389 | 32 | /** Draw the golds |
ZhongYufan | 16:e3ecfcd2a389 | 33 | * @param lcd - N5110 library |
ZhongYufan | 16:e3ecfcd2a389 | 34 | */ |
ZhongYufan | 1:9c7bb3db32bc | 35 | void draw(N5110 &lcd); |
ZhongYufan | 18:d4fccdf8d90e | 36 | |
ZhongYufan | 16:e3ecfcd2a389 | 37 | /** Update the data |
ZhongYufan | 16:e3ecfcd2a389 | 38 | */ |
ZhongYufan | 1:9c7bb3db32bc | 39 | void update(); |
ZhongYufan | 18:d4fccdf8d90e | 40 | |
ZhongYufan | 16:e3ecfcd2a389 | 41 | /** Mark the gold which has been caught |
ZhongYufan | 16:e3ecfcd2a389 | 42 | * @param caught_i - the serial number of the captured gold |
ZhongYufan | 16:e3ecfcd2a389 | 43 | */ |
ZhongYufan | 1:9c7bb3db32bc | 44 | void gold_caught(int caught_i); |
ZhongYufan | 18:d4fccdf8d90e | 45 | |
ZhongYufan | 16:e3ecfcd2a389 | 46 | /** Get the number of lifted gold |
ZhongYufan | 18:d4fccdf8d90e | 47 | * @return the number of lifted gold. |
ZhongYufan | 16:e3ecfcd2a389 | 48 | */ |
ZhongYufan | 1:9c7bb3db32bc | 49 | int get_reached_num(); |
ZhongYufan | 18:d4fccdf8d90e | 50 | |
ZhongYufan | 16:e3ecfcd2a389 | 51 | /** Get the number of left golds |
ZhongYufan | 18:d4fccdf8d90e | 52 | * @return the number of left golds. |
ZhongYufan | 16:e3ecfcd2a389 | 53 | */ |
ZhongYufan | 8:c5969685cf02 | 54 | int get_left_num(); |
ZhongYufan | 18:d4fccdf8d90e | 55 | |
ZhongYufan | 16:e3ecfcd2a389 | 56 | /** Get the position of the gold |
ZhongYufan | 16:e3ecfcd2a389 | 57 | * @param gold_i - the serial number of the gold |
ZhongYufan | 18:d4fccdf8d90e | 58 | * @return the position of the gold |
ZhongYufan | 16:e3ecfcd2a389 | 59 | */ |
ZhongYufan | 1:9c7bb3db32bc | 60 | Vector2D get_pos(int gold_i); |
ZhongYufan | 18:d4fccdf8d90e | 61 | |
ZhongYufan | 16:e3ecfcd2a389 | 62 | /** Set the position of the gold |
ZhongYufan | 16:e3ecfcd2a389 | 63 | * @param p - the position of the gold |
ZhongYufan | 16:e3ecfcd2a389 | 64 | */ |
ZhongYufan | 1:9c7bb3db32bc | 65 | void set_pos(Vector2D p); |
ZhongYufan | 18:d4fccdf8d90e | 66 | |
ZhongYufan | 16:e3ecfcd2a389 | 67 | /** Set the speed of the caught gold |
ZhongYufan | 16:e3ecfcd2a389 | 68 | * @param speed - the speed of the gold |
ZhongYufan | 16:e3ecfcd2a389 | 69 | */ |
ZhongYufan | 12:07a9f2140d9b | 70 | void set_speed(int speed); |
ZhongYufan | 1:9c7bb3db32bc | 71 | |
ZhongYufan | 1:9c7bb3db32bc | 72 | private: |
ZhongYufan | 1:9c7bb3db32bc | 73 | int _gold_num; |
ZhongYufan | 1:9c7bb3db32bc | 74 | int _gold_left; |
ZhongYufan | 1:9c7bb3db32bc | 75 | int _gold_caught[12]; |
ZhongYufan | 1:9c7bb3db32bc | 76 | int _gold_reached[12]; |
ZhongYufan | 1:9c7bb3db32bc | 77 | int _x[12]; |
ZhongYufan | 1:9c7bb3db32bc | 78 | int _y[12]; |
ZhongYufan | 12:07a9f2140d9b | 79 | int _gold_speed; |
ZhongYufan | 1:9c7bb3db32bc | 80 | |
ZhongYufan | 1:9c7bb3db32bc | 81 | }; |
ZhongYufan | 1:9c7bb3db32bc | 82 | #endif |