Browse Source

Les tubes de couleurs commencent dorénavant tous avec un espace vide, les parties deviennent finissables

On peut dorénavant paramétrer autant de tubes que possible, certaines couleurs sont distribuées dans plusieurs tubes si besoin.

Changement des valeurs par défaut des paramètres de partie
pull/1/head
Figg 8 months ago
parent
commit
0bb062b33c
2 changed files with 9 additions and 7 deletions
  1. 3
    3
      index.html
  2. 6
    4
      js/game.js

+ 3
- 3
index.html View File

@@ -21,15 +21,15 @@
21 21
 		</menuitem>
22 22
 		<menuitem>
23 23
 			<label>Tubes Levels</label>
24
-			<input type="number" size="5" id="tbLevel" value="5">
24
+			<input type="number" size="5" id="tbLevel" value="6">
25 25
 		</menuitem>
26 26
 		<menuitem>
27 27
 			<label>Padding</label>
28
-			<input type="number" size="5" id="padding" value="5">
28
+			<input type="number" size="5" id="padding" value="10">
29 29
 		</menuitem>
30 30
 		<menuitem>
31 31
 			<label>Tube Size</label>
32
-			<input type="number" size="5" id="tbSize" value="5">
32
+			<input type="number" size="5" id="tbSize" value="50">
33 33
 		</menuitem>
34 34
 		<button type="button" onclick="newGame()">New game</button>
35 35
 	</menu>

+ 6
- 4
js/game.js View File

@@ -21,12 +21,13 @@ class Game {
21 21
 	*/
22 22
 	initializeColorTubes(tubeLevel)
23 23
 	{
24
-		let nbColors = this.tubes.length - 1;
24
+		let nbTubes = this.tubes.length - 1;
25 25
 		let allColors = [];
26 26
 		
27
-		for (let coloridx = 0; coloridx < nbColors; coloridx++)
27
+		for (let i = 0; i < nbTubes; i++)
28 28
 		{
29
-			for (let times = 0; times < tubeLevel; times++)
29
+			let coloridx = i % this.#colorsBank.length;
30
+			for (let times = 0; times < tubeLevel-1; times++)
30 31
 			{
31 32
 				allColors.push(this.#colorsBank[coloridx]);
32 33
 			}
@@ -41,7 +42,8 @@ class Game {
41 42
 		
42 43
 		for (let index = 0; index < allColors.length; index++)
43 44
 		{
44
-			this.tubes[Math.floor(index/tubeLevel)].addColor(allColors[index]);
45
+			let tubeIndex = Math.floor(index/(tubeLevel-1));
46
+			this.tubes[tubeIndex].addColor(allColors[index]);
45 47
 		}
46 48
 	}
47 49
 	

Loading…
Cancel
Save