Skip to content

Latest commit

ย 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽฎ UNO Game (C++ Console Edition)

A fully functional command-line implementation of the classic card game UNO, written in modern C++.

This project simulates a turn-based UNO game for 2 or more players, featuring full game rules, deck shuffling, card logic, and turn rotation โ€” all with an emphasis on clean code structure and good memory management practices.

image


๐Ÿ“Œ Features

  • โ™ ๏ธ Full UNO rule implementation (skip, reverse, draw two, wild, wild draw four)
  • ๐Ÿง  Smart AI and player interactions
  • ๐ŸŽฒ Randomized deck shuffle at each game start
  • ๐Ÿ”„ Robust turn management and card validation logic
  • ๐Ÿšซ Rule enforcement (e.g., must say UNO before last card, penalties, etc.)
  • ๐Ÿ“ฆ Clean and decoupled object-oriented design
  • ๐Ÿงน Safe memory management using modern C++ features (smart pointers, RAII, deep x shallow copy)

image


๐Ÿš€ Getting Started

Prerequisites

  • C++17 or later
  • CMake (optional, if using a build system)
  • An IDE like Visual Studio or Rider, or a C++ compiler like g++ or clang++

Compilation

  • Using IDE:
    • Open the solution(.sln) file
    • Run the project (F5) inside with the IDE Compiler

Using terminal:

g++ -std=c++17 -Wall -Wextra -o unoGame main.cpp
./unoGame

How to Play

  • Follow terminal prompts to choose players and draw cards.

  • Play continues clockwise unless reversed.

  • First player to empty their hand wins.

  • Special cards behave as per UNO rules.

  • You must yell UNO! befor throwing your penultimate card.

About

C++ Console Game of the traditional UNO game, developed in one week using C++ features and memory management good practices

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages