view projects/tank_wars/game.h @ 16:670be80463a3 matrix_gpio

- analog matrixIn/matrixOut are now mapped as floats from 0 to 1 - use of an external PRU code can be enabled with -P <filename> - 16 channels of programmable GPIO can be accessed straight from render() either writing directly to the matrixGpio[] array or using digitalWrite(), digitalRead(), setDigitalDirection() macros from Utilities.h .
author Giulio Moro <giuliomoro@yahoo.it>
date Mon, 27 Apr 2015 13:01:57 +0100
parents 49f22e1246b2
children fbfeb5895efd
line wrap: on
line source
/*
 * game.h
 *
 *  Created on: Nov 10, 2014
 *      Author: parallels
 */

#ifndef GAME_H_
#define GAME_H_

// Initialisation
void setupGame(int width, int height);
void restartGame();

// Update physics
void nextGameFrame();

// State updaters
void setTank1CannonAngle(float angle);
void setTank2CannonAngle(float angle);
void setTank1CannonStrength(float strength);
void setTank2CannonStrength(float strength);
void fireProjectile();

// State queries
bool gameStatusPlayer1Turn();
bool gameStatusProjectileInMotion();
int gameStatusWinner();

// Render screen; returns length of buffer used
int drawGame(float *buffer, int bufferSize);

// Cleanup and memory release
void cleanupGame();

#endif /* GAME_H_ */