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
Script to remap minecraft 1.12 java classes.

Remapper Script to remap minecraft 1.12 java classes. Usage You must have Python installed. You must have the script, mappings, and files / folders in

8 Dec 02, 2022
Memory game in Python

Concentration - Memory Game Concentration is a memory game written in Python, inspired by memory-game. Description As stated in the introduction of th

Marco Colonna 0 Jul 21, 2022
Guess The Random Number - A sample Random Number Guessing Game Python Program

Guess_The_Random_Number This repo contains a simple "Random Number Guessing Game

Pramod Kumar 3 Feb 09, 2022
Space Invaders x Asteroid Game

Retro Journey 1: Space Invaders A simple implementation of a retro style video game where users compete against asteroids and the goal is to destroy a

Sandesh Lamsal 2 Aug 05, 2022
This is Minesweeper coded in Python. It has almost all features from the main game

Minesweeper This is Minesweeper coded in Python. It has almost all features from the main game Use right click to open tile, right click on an open ti

3 Jul 12, 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
Online battleships game on python and JS

Battleships Online battleships game Using websockets to connect to the client. SQLite database for storing account data and game logs (for players top

5 Nov 11, 2021
Given some input, spit out the possible words for a Wordle puzzle

Wordle Helper, because why not. Given some input, spit out the possible words for a Wordle puzzle First time setup # Download the dictionary to a file

Richard Duarte 1 Jan 25, 2022
:tada: 2048 in your terminal

term2048 term2048 is a terminal-based version of 2048. Install pip install term2048 To upgrade a previous installation, use: pip install -U term2048

Baptiste Fontaine 798 Nov 21, 2022
A little python script for finding the best word choice in a Wordle game

A little python script for finding the best word choice in a Wordle game, by assuming that at each step you want to minimise the average number of possible answers left after guessing that word (note

zeb 26 Mar 16, 2022
Guess number game with PyQt5

Guess-Number-Project Guess number game with PyQt5 you can choose a number in your mind and then computer will guess a nummber and you guide the comput

MohammadAli.HBA 1 Nov 11, 2021
2D Minecraft Clone made with Python & Pygame & OpenGL

2D Minecraft Clone This is a 2D clone of the well-known game Minecraft made in Python using Pygame and ModernGL I started this mostly as a self-improv

Kadir Aksoy 2 Sep 25, 2022
Pyxel is a retro game engine for Python.

Pyxel is open source and free to use. Let's start making a retro game with Pyxel!

Takashi Kitao 11.2k Jan 09, 2023
Utility for generating randomizer datapacks for minecraft.

Minecraft Rando Utility for generating randomizer datapacks for minecraft. At the moment, it randomizes the following: Loot tables (including block dr

2 Dec 02, 2021
Editing tool (read/write) .sc files (*_tes.sc , *.sc, *_dl.sc ) from Supercell games (Brawl Stars, Clash Royale, Clash of Clans and others).

SupercellSWF Version 0.1.0.2 About Editing tool (read/write) .sc files (*_tes.sc , *.sc, *_dl.sc ) from Supercell games (Brawl Stars, Clash Royale, Cl

Fred31 11 Jun 23, 2022
Flappy Bird clone in Python using Pyglet

python_Flappy-Bird This is the Game Flappy Bird which was originally developt by Dong Nguyen under .Gears recreated in Python. Requirements (used to d

Konstantin Opora 1 Dec 10, 2021
Utility to find games owned by all (or at least some) of the passed players.

SteamCommonGameFinder Utility to find games that are owned by all (or at least some) of the players you pass into this programm. You can already find

Daniel O'Grady 4 Jan 04, 2022
AXI Combat is a networked multiplayer game built on the AXI Visualizer 3D engine.

AXI_Combat AXI Combat is a networked multiplayer game built on the AXI Visualizer 3D engine. https://axi.x10.mx/Combat AXI Combat is released under th

. 0 Aug 02, 2022
Python Program: Hilo Game

Python Program: Hilo Game 🂡 Description Hilo is a game in which the player gues

2 Jan 22, 2022
Multi minecraft server helper for python

呐 Yuki 您的群组服操作小助手。 使用Python3编写。使用 .yaml 配置文件记录子服,配合Screen管理Linux系统上的Minecraft子服,支持MCDR子服与非MCDR子服。 功能: 开启所有子服 关闭所有子服 重载所有子服MCDR 重载所有子服ChatBridge 使用方法:

3 Mar 17, 2022