This is a solution to the Rock, Paper, Scissors challenge on Frontend Mentor. Frontend Mentor challenges help you improve your coding skills by building realistic projects.
Welcome to the Rock Paper Scissors Lizard Spock game! ๐ฎ This project is a modern twist on the classic game of Rock Paper Scissors, offering an extended version with five possible choices. It's a fun and interactive game where you compete against the house to see who comes out on top! ๐
Users should be able to:
- View the optimal layout for the game depending on their device's screen size
- Play Rock, Paper, Scissors against the computer
- Maintain the state of the score after refreshing the browser (optional)
- Bonus: Play Rock, Paper, Scissors, Lizard, Spock against the computer (optional)
I utilized HTML, SCSS, and JavaScript to bring this project to life. Attention to detail was crucial to mimic the provided design as closely as possible while ensuring a smooth and interactive user experience. Here are some highlights:
- HTML & SCSS (Sass) - To structure and style the game interface, making it visually appealing and responsive. ๐จ
- JavaScript - For handling game logic, player interactions, and DOM manipulations. ๐ฅ๏ธ
- Classic and Extended Modes: Choose between the classic Rock-Paper-Scissors mode and the extended Rock-Paper-Scissors-Lizard-Spock mode. ๐น๏ธ
- Player and House Picks: Both the player and the house make their picks, with icons displayed on the screen. The game then determines the winner based on the chosen options. ๐
- Dynamic Status Display: The game dynamically displays the result of each round, informing the player whether it's a tie, win, or loss. ๐ฌ
- Score Tracking: Your score is tracked across games and saved in the browserโs local storage, so you can always see how well you're doing! ๐
- Play Again Option: After each round, easily start a new game to continue the fun. ๐
- Responsive UI: The game features a us
Throughout this project, I honed my skills in writing clean, maintainable code by adhering to the DRY (Don't Repeat Yourself) principle. Additionally, I delved deeper into JavaScript to ensure an optimal user experience and learned how to make my code even more efficient.
I'm planning to introduce sound features and a reset score option in the future to further enhance the gaming experience. Continuously refining my JavaScript skills to write even cleaner and more efficient code remains a priority.
[Saleeman Abdullahi Alaba Aransiola]
- Github - My GitHub Profile
- Frontend Mentor - @naijadevgamer
- Twitter - @naijadevgamer
- LinkedIn - Abdullah Saleeman
- Contact - [email protected]
I extend my gratitude to the Almighty ALLAH for guiding me through this project.