Skip to content

Barbalho12/floodit

Repository files navigation

Flood-It

Functionalities

  • Creation of typedef, structs and enuns.

  • Modularization of the program (.c and .h files).

  • Random generation of the tray (14x14 cells);

  • Presentation of the initial interface of the game with the generated board.

  • Read user input.

  • Recursively updating the tray.

  • Filling the adjacent ones of the same color.

  • Implementation of the end condition of the game (maximum 25 rounds or board completely filled).

  • Saving and loading the state of a game.

  • Uniform distribution in the generation of colors in the tray.

  • Graphical Interface Development compatible with Linux and Windows.

  • Communication with the user by clicking the mouse.

  • Enable the creation of matches with other levels of difficulty with bigger / smaller boards and maximum number of moves.

  • Documentation of functionalities of each subroutine.

  • Give the possibility to Save and Load several games.

  • Enable the creation of games with different colors.

Compiling

Windows

# Compiling loadGame
gcc loadGame.c interface.c color.c table.c file.c controle.c -o loadGame -mms-bitfields 
-IC:/gtk3/include/gtk-3.0 -IC:/gtk3/include/cairo -IC:/gtk3/include/pango-1.0 -IC:/gtk3/include/atk-1.0 
-IC:/gtk3/include/cairo -IC:/gtk3/include -IC:/gtk3/include/gdk-pixbuf-2.0 -IC:/gtk3/include/libpng15 
-IC:/gtk3/include/glib-2.0 -IC:/gtk3/lib/glib-2.0/include -LC:/gtk3/lib -lgtk-3 -lgobject-2.0 -lglib-2.0
# Compiling newGame
gcc newGame.c color.c table.c file.c -o newGame

Linux

sudo apt install libgtk-3-dev
# Compiling loadGame
gcc loadGame.c interface.c color.c table.c file.c controle.c -o loadGame `pkg-config --cflags --libs gtk+-3.0`
# Compiling newGame
gcc newGame.c color.c table.c file.c -o newGame

Members

Felipe Barbalho Rocha Raul Silveira Silva