# Mario Kart 3.js - JavaScript/WebGL Mario Kart

[Link](https://mario-kart-3-js.vercel.app/)

[![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/Lunakepio/Mario-Kart-3.js)

DISCLAIMER : This is not a completed project, I would say around 50% of the work has been done up to now. It takes a lot of time so please enjoy.

## How to install

Fork the repository

Clone the repository or download it

Open your terminal and inside the project folder, run :

```bash
  npm install
```

Start the dev server

```bash
  npm run dev
```

## How to use (Gameplay)

- Use the <kbd>W</kbd> key to accelerate, the mouse to steer for now (will be updated for mobile/gamepad/keyboard).

- Steer with the mouse.

- Press and hold the space bar to initiate a drift. Steer and counter steer to maintain the drift. release it to get a mini - turbo.

- Press <kbd>E</kbd> key to use the current item.

- Press <kbd>R</kbd> to reset your position, usable anytime.

## How to use (Code)

- Anything needs update.

- You can also edit the README to add elements to the To-do List.

- Feel free to bring your ideas to the project even if you can't code them.

## TO - DO

- [ ] Design Landing page

- [ ] Add items

- [ ] Add texture to the flame shaders

- [ ] Add curve/length modifiers to drift particles 3/4

- [ ] Add Skid marks

- [x] Add smokes

- [ ] Add wind screen effect when boosting

- [ ] Improve sound design quality

- [ ] Design UI for HUD

- [ ] Make Time Trial mode

- [ ] Design tracks and checkpoints

- [ ] Improve code quality

- [ ] Add Minimap

- [ ] Items
  - [ ] Tennis ball
  - [ ] Bomb
  - [ ] Real red shell
  - [ ] Treats
  - [ ] ?

## License

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
