Files
AirHockey/README.md
2018-03-28 15:38:34 -04:00

35 lines
1.5 KiB
Markdown
Executable File

# Air Hockey
A simple browser-based air hockey game using socket.io with Electron desktop client
### Development Environment
* node 8.9.4
* npm 5.7.1
* Tested on MacOS 10.13.2
### Dependencies
node.js, Electron, socket.io
# Installation Instructions
* Clone to local machine
* Run _npm install_ from root directory and Electron Client directory to install node module dependencies
# Running the App
### Starting the server
* Execute _node app.js_ from root directory to start the app server
### Launching Browser Client
* Navigate to http://localhost:3000/airhockey.html from your browser
### Launching Electron Client
* Execute _npm start_ from inside the _Electron Client_ directory to launch the Electron Client
### Usage
* To join the game, click "Join Game" and enter your name
* Once another player has joined from another browser window, the game will begin and puck will pick a random direction to travel
* Use the arrow keys on your keyboard to move your paddle
* The paddle will not move until 2 players are present
* When the puck enters one of the purple goals on either end, the opposing player will score a point and the player's positions will be reset, with the puck traveling in a new random direction
* If you attempt to join a game with 2 players, you will not be allowed, but your name will appear in the _Spectator_ box below the game
* If you are currently a Spectator and a paddle becomes available, clicking _Join Game_ will automatically assign your name to that paddle
* You can toggle collision and goal sounds using the _Toggle Sounds_ button