new mods upon mods by devhammer: - Added paddle control using tilting of the console - Finished mute function - Reduced flickering See game.cpp for full info.

Dependencies:   mbed

Fork of RETRO_Pong_Mod by G. Andrew Duthie

This is a mod of the official Pong game released with the RETRO game console.

Game.h

Committer:
john_ghielec
Date:
2014-11-17
Revision:
1:cd8a3926f263
Child:
2:6ab46f2e851a

File content as of revision 1:cd8a3926f263:

#include "mbed.h"

#include "DisplayN18.h"

#pragma once

class Game {    
    static const char* LOSE_1;
    static const char* LOSE_2;
    static const char* SPLASH;
    
    static const int BALL_RADIUS = 3;
    static const int MAX_BALL_SPEED = 5;
    static const int PADDLE_WIDTH = 38;
    static const int PADDLE_HEIGHT = 4;
    static const int PADDLE_SPEED = 4;
    static const int BOUNCE_SOUND_TICKS = 2;
    
    int ballX;
    int ballY;
    int ballSpeedX;
    int ballSpeedY;
    int paddleX;
    int pwmTicksLeft;
    int lives;
    
    DigitalIn left;
    DigitalIn right;
    DigitalIn down;
    DigitalIn up;
    DigitalIn square;
    DigitalIn circle; 
    DigitalOut led1;
    DigitalOut led2;
    PwmOut pwm;
    AnalogIn ain;
    I2C i2c;
    DisplayN18 disp;
    
    void initialize();
    void initializeBall();
    
    void drawString(const char* str, int y);
    
    void clearPaddle();
    void drawPaddle();
    void updatePaddle();
    
    void clearBall();
    void drawBall();
    void updateBall();
    
    void checkCollision();
    void checkPwm();
    void checkLives();
    
    public:
        Game();
        
        void showSplashScreen();
        void tick();
};