Chris Dick
/
Gameduino_Invaders_game
Invaders game for the Gameduino
main.cpp@2:20a89dc286d5, 2012-12-20 (annotated)
- Committer:
- TheChrisyd
- Date:
- Thu Dec 20 21:33:52 2012 +0000
- Revision:
- 2:20a89dc286d5
- Parent:
- 1:f44175dd69fd
- Child:
- 4:e82f4a87df9e
Shields aren't destroyed when hit, life sprites aren't displaying properly.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
TheChrisyd | 2:20a89dc286d5 | 1 | #include "mbed.h" |
TheChrisyd | 2:20a89dc286d5 | 2 | #include "GD.h" |
TheChrisyd | 2:20a89dc286d5 | 3 | #include "shield.h" |
TheChrisyd | 2:20a89dc286d5 | 4 | GDClass GD(ARD_MOSI, ARD_MISO, ARD_SCK, ARD_D9, USBTX, USBRX) ; |
TheChrisyd | 2:20a89dc286d5 | 5 | |
TheChrisyd | 2:20a89dc286d5 | 6 | /*--------------------------------------------------------- |
TheChrisyd | 2:20a89dc286d5 | 7 | A Space Invaders clone for Gameduino |
TheChrisyd | 2:20a89dc286d5 | 8 | |
TheChrisyd | 2:20a89dc286d5 | 9 | http://www.artlum.com/gameduino/gameduino.html#invaders |
TheChrisyd | 2:20a89dc286d5 | 10 | |
TheChrisyd | 2:20a89dc286d5 | 11 | Version 0.9 alpha - Still seme things to add |
TheChrisyd | 2:20a89dc286d5 | 12 | but I'm out of memory! |
TheChrisyd | 2:20a89dc286d5 | 13 | |
TheChrisyd | 2:20a89dc286d5 | 14 | Edit "joystick.cpp" if you have a custom joystick. |
TheChrisyd | 2:20a89dc286d5 | 15 | ---------------------------------------------------------*/ |
TheChrisyd | 2:20a89dc286d5 | 16 | |
TheChrisyd | 2:20a89dc286d5 | 17 | #include "game.h" |
TheChrisyd | 2:20a89dc286d5 | 18 | #include "arduino.h" |
TheChrisyd | 2:20a89dc286d5 | 19 | |
TheChrisyd | 2:20a89dc286d5 | 20 | void setup() { |
TheChrisyd | 2:20a89dc286d5 | 21 | GD.begin(); |
TheChrisyd | 2:20a89dc286d5 | 22 | makeGraphics(); |
TheChrisyd | 2:20a89dc286d5 | 23 | Coprocessor::reset(samplePlaybackBuffer); |
TheChrisyd | 2:20a89dc286d5 | 24 | //randomSeed(GD.rd(FRAME)); |
TheChrisyd | 2:20a89dc286d5 | 25 | resetGameSounds(); |
TheChrisyd | 2:20a89dc286d5 | 26 | initGame(); |
TheChrisyd | 2:20a89dc286d5 | 27 | } |
TheChrisyd | 2:20a89dc286d5 | 28 | |
TheChrisyd | 2:20a89dc286d5 | 29 | void loop() { |
TheChrisyd | 2:20a89dc286d5 | 30 | GD.waitvblank(); |
TheChrisyd | 2:20a89dc286d5 | 31 | updateGame(); |
TheChrisyd | 2:20a89dc286d5 | 32 | updateGameSounds(); |
TheChrisyd | 2:20a89dc286d5 | 33 | |
TheChrisyd | 2:20a89dc286d5 | 34 | // Debugging/info |
TheChrisyd | 2:20a89dc286d5 | 35 | if (0) { |
TheChrisyd | 2:20a89dc286d5 | 36 | joystick.dump(0,33); // Show the joystick state |
TheChrisyd | 2:20a89dc286d5 | 37 | int yline = Coprocessor::yline(); |
TheChrisyd | 2:20a89dc286d5 | 38 | showNumber(yline,0,31); |
TheChrisyd | 2:20a89dc286d5 | 39 | } |
TheChrisyd | 2:20a89dc286d5 | 40 | // Screenshot when you press the select button |
TheChrisyd | 2:20a89dc286d5 | 41 | if (0 and joystick.isPressed(Joystick::buttonSelect)) { |
TheChrisyd | 2:20a89dc286d5 | 42 | sendScreenshot(); |
TheChrisyd | 2:20a89dc286d5 | 43 | } |
TheChrisyd | 2:20a89dc286d5 | 44 | } |
TheChrisyd | 2:20a89dc286d5 | 45 | |
TheChrisyd | 2:20a89dc286d5 | 46 | |
TheChrisyd | 2:20a89dc286d5 | 47 | int main() { |
TheChrisyd | 2:20a89dc286d5 | 48 | setup(); |
TheChrisyd | 2:20a89dc286d5 | 49 | while (1) { |
TheChrisyd | 2:20a89dc286d5 | 50 | loop(); |
TheChrisyd | 2:20a89dc286d5 | 51 | } |
TheChrisyd | 0:8a7c58553b44 | 52 | } |