Solo CLF project about the creation of the FlickColor game in Python with very precise instructions.

Overview

NSI - Projet n°1 [Classe de terminale]

Instructions du projet

Règles du FlickColor

Le but du FlickColor est de faire se propager les couleurs sur une grille jusqu'à ce qu'il n'en reste plus qu'une à la fin du jeu. Le joueur doit pouvoir remplir la grille d'une seule couleur en un minimum de coups.

image

Projet

  • Nous devons utiliser TKinter pour l'interface graphique.
  • Notre programme devra comporter:
    • Un écran d'accueil pour démarrer le jeu
    • Un écran de jeu
    • Un écran de sortie à la fin du jeu
  • Notre programme devra proposer deux niveaux de jeu:
    • Niveau 1 : Grille 5*5
    • Niveau 2 : Grille 10*10
  • Nous considérerons qu'une grille de jeu est une liste de listes, et que chaque ligne de la grille de jeu est une liste de couleurs.
  • Les cases de la grille de jeu peuvent prendre jusqu'à 6 couleurs différentes.
  • Les grilles de jeu sont générées de manière aléatoire et sont différentes à chaque partie.
  • L'écran de jeu doit posséder une zone d'affichage du nombre de coups joués. Cet affichage doit se mettre à jour chaque fois que le joueur choisit une nouvelle couleur.
  • Nous devons utiliser une foncion récursive pour "propager la couleur" en suivant ce schéma:
def colorier(grille,i,j,couleur_initiale,couleur_finale):
  """ Propage, si la case i,j est de couleur initiale,
  la couleur finale à la case i,j et à toutes les cases adjacentes
  de même couleur initiale.
  Deux cases adjacentes sont côte à côte soit horizontalement, soit verticalement.
  """
  • Notre code doit être structuré avec des fonctions de taille raisonnable.
  • Notre projet devra adopter une approche modulaire, et nous devons séparer la partie graphique de la partie fonctionnelle.

Critères

  • Résultat final
  • Implication en classe durant les séances de projet
  • Respect des consignes
  • Organisation et propreté du code informatique
  • Présence de commentaires dans le code (Avec #)
  • Spécifications des fonctions ("""...""")
  • Rapport clair avec un contenu significatif

Remise du projet

Fichier zip contenant les programmes et le rapport pour le 15/11/2021.

Owner
COZAX
Young French javascript oriented developer born in 2004.
COZAX
Software Design | Spring 2020 | Classic Arcade Game

Breakout Software Design Final Project, Spring 2020 Team members: Izumi, Lilo For our Interactive Visualization, we implemented the classic arcade gam

Lilo Heinrich 1 Jul 26, 2022
Python game engine for 2D multiplayer online games.

LAN-Caster The goal of LAN-Caster is to provide an easy-to-use code base (game engine) for developing 2D multiplayer online games. LAN-Caster original

Douglas Bakewell 1 Feb 11, 2022
Jogo da velha com interface gráfica desenvolvida em Python utilizando pygame e IA(Inteligência Artificial)

Jogo-da-Velha Sobre o projeto Jogo da velha com interface gráfica desenvolvida em Python utilizando pygame e IA(Inteligência Artificial) Layout tela d

Matheus Maia Alvarez 6 Apr 09, 2022
A module for use with Pygame. Includes fully customisable buttons, textboxes, sliders and many more, as well as the ability to create and run animations on these widgets.

Pygame Widgets A helper module for common widgets that may be required in developing applications with Pygame. It supports fully customisable buttons,

37 Jan 02, 2023
A coven of tools to assist in PnP RPGs.

pupillae A coven of tools to assist PnP RPGs. Status: Pre-alpha. Testing. Adding necessary functions and features as discovered/required. Other-than-P

0 Dec 09, 2021
2DMC is an abrrieviation for 2 Dimensional Minecraft.

2DMC 2DMC is an abrrieviation for 2 Dimensional Minecraft. This idea is originally created and implemented by Griffpatch on Scratch. This is a persona

DaNub 5 Nov 06, 2022
Typing Game : from nob to good

Fast and Curious A game to learn/improve keyboard typing skills. The main idea is to improve your typing skills and at the same time learn fun facts (

Raffaele Fiorillo 7 Jun 13, 2022
Finding a method to objectively quantify skill expression in games, using reinforcement learning

Analyzing Skill Expression in Games This is a repo where I describe a method to measure the amount of skill expression games have. Table of Contents M

Marcus Chiam 4 Nov 19, 2022
An easy to use game engine/framework for python.

A game engine powered by python and panda3d.

Petter Amland 1.6k Jan 05, 2023
Simple python program to simulate Conway's game of life with custom variables.

ConwaysGameOfLife Simple python program to simulate Conway's game of life with custom variables. Custom Variables Grid-size : Change the size of the p

davidgasinski 1 Oct 28, 2021
Chess GUI

Lucas Chess Lucas Chess is a GUI of chess: To learn to play chess. To play chess against engines. Dependencies Python 2.7 PyQt4 PyAudio psutil Python

Lucas 322 Dec 20, 2022
Snake Game in Python

Snake game is one of the most popular arcade games of all time. In this game, the main objective of the player is to catch the maximum number of fruits without hitting the wall or itself.

Pavan Ananth Sharma 4 Jul 05, 2022
A python script to solve Wordle puzzles

Wordle solver A python script to solve Wordle puzzles.

Felix Weinberger 1 Feb 12, 2022
A python project to help you solve the Wordle game.

A python project to help you solve the Wordle game.

Jia Ping Chu 2 Feb 06, 2022
Chess turnament organizer (short construct concept)

Turnament Organizer Chess turnament organizer (short construct concept). It is my hobby app I want to write to support lightweight tool for smart roun

kkuba91 3 Dec 16, 2022
Automatic game data translator for RPGMaker-MV

RPGMaker-MV Translator 🕹️ 🎮 Use AI to translate all the dialogs and texts of your RPGMaker automatically. 👊 You worked hard to make your game, now

Davide Liu 11 Dec 26, 2022
This is a simple rock paper scissor game created with python.

This is a simple rock paper scissor game created with python.

Fayas Noushad 3 Feb 04, 2022
A simple hangman game for beginners trying to learn python

Hangman Game This is a simple hangman game for beginners trying to learn python. I have tried to keep it as simply as possible. Sample output Here is

1 Oct 13, 2021
Open-source project written in the ursina engine, simulating the popular game Minecraft.

Voxelcraft is an open-source project written in the ursina engine, simulating the popular game Minecraft.

Calinescu Mihai 21 Oct 06, 2022
ReplitTD - Replit Tower Defense Game

IMPORTANT: I mean no offense at all in this game, this is only based off of cycl

kokomi simp :3 3 Jun 25, 2022