Salut, je suis étudiant en prépa ISIMA et je vais vous présenter un de mes projets extra scolaires le plus avancé…
J’ai créé et publié sur le PLay Store un tetris nommé “Tronix”.
Le jeu contient plusieurs modes de jeux comme:
Tronix utilise un systeme de scoring un peu différent du Tetris Classic
Lignes | Score | Bonus Multiplicateur |
---|---|---|
Simple | 40 pts | x level |
Double | 100 pts | x level |
Triple | 300 pts | x level |
Quad | 1200 pts | x level |
T-Spin Simple | 800 pts | x level |
T-Spin Double | 1200 pts | x level |
T-Spin Triple | 1600 pts | x level |
BackToBack | nombre de BackToBack | x 1.5 |
Combo | 50 pts | Combo countx x level |
Le gain de niveau est aussi un peu différent du vrai Tetris.
les niveaux augmentent lorsque que l’on fait un certain nombre de
lignes, il faut donc faire x lignes pour passer au niveau supérieur, x
dépend du niveau actuel.
Voici à quoi pourrait ressembler un extrait de mon code en Python:
= 3
Level_Up =0
Number_Of_Lines = 1
Current_Level
def LevelUp():
if( Level_tmp >= Level_Up ):
= Level_Up +2
Level_Up += 1
Current_Level else:
+= 1 Level_tmp
Il s’agit donc d’une suite arithmétique où
Tronix a été développé sur UNITY, en C# Voici un exemple de code en C#, ici la fonction permet de détecter si une ligne est remplie, si c’est le cas alors la fonction renvoie true sinon false.
public bool IsLineFull(int row)
{
RectInt bounds = Bounds;
for (int col = bounds.xMin; col < bounds.xMax; col++)
{
Vector3Int position = new Vector3Int(col, row, 0);
// The line is not full if a tile is missing
if (!tilemap.HasTile(position))
{
return false;
}
}
}
return true;