mirror of
https://github.com/owenlejeune/AirHockey.git
synced 2025-11-08 08:32:45 -05:00
dependabot/npm_and_yarn/electron-10.1.3
Bumps [electron](https://github.com/electron/electron) from 9.0.0 to 10.1.3. - [Release notes](https://github.com/electron/electron/releases) - [Changelog](https://github.com/electron/electron/blob/master/docs/breaking-changes.md) - [Commits](https://github.com/electron/electron/compare/v9.0.0...v10.1.3) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
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
Description
Languages
JavaScript
85.2%
HTML
10.1%
CSS
4.7%