Fixed tiles not breaking & misc other things
This commit is contained in:
		
							parent
							
								
									94da8b0870
								
							
						
					
					
						commit
						3ab87517da
					
				
					 2 changed files with 33 additions and 21 deletions
				
			
		
							
								
								
									
										47
									
								
								sketch.js
									
									
									
									
									
								
							
							
						
						
									
										47
									
								
								sketch.js
									
									
									
									
									
								
							|  | @ -14,7 +14,7 @@ let hit = false; | |||
| let hitTile = false; | ||||
| let tileX; | ||||
| let tileY; | ||||
| let ballSpeed = 12; | ||||
| let ballSpeed = 15; | ||||
| let turn = 0; | ||||
| let button; | ||||
| let score = 0; | ||||
|  | @ -77,31 +77,45 @@ function draw() { | |||
|       tileY = grid[i][j].y | ||||
|       hitTile = collideRectCircle(tileX, tileY, width / 13, width / 64, ballX, ballY, width / 64); | ||||
|       if (hitTile === true) { | ||||
|         // vec = createVector(random(-1, 1), random(0, 4));
 | ||||
|         // vec.normalize();
 | ||||
|         grid[i][j].hit = true; | ||||
|         ballSpeedX *= -1; | ||||
|         ballSpeedY *= -1; | ||||
|         vec = createVector(random(-1, 1), random(0, 4)); | ||||
|         vec.normalize(); | ||||
|         ballSpeedX = vec.x * ballSpeed; | ||||
|         ballSpeedY = vec.y * ballSpeed; | ||||
|         // ballSpeedX *= -1;
 | ||||
|         // ballSpeedY *= -1;
 | ||||
|         grid[i].splice(j, 1) | ||||
| 
 | ||||
|         //ADDING SCORE WHEN BALL HITS TILES
 | ||||
| 
 | ||||
|         if (j >= 0 && j <= 6) { | ||||
|           score += 6 - j | ||||
|         } | ||||
| 
 | ||||
|         break; | ||||
|       } | ||||
|       grid[i][j].deleteOnHit() // DELETES THE TILE ON HIT
 | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   // BALL COLLISION FOR PADDLE
 | ||||
| 
 | ||||
|   hit = collideRectCircle(mouseX, paddleY, width / 12, height / 64, ballX, ballY, width / 64); | ||||
|   if (hit === true) { | ||||
|   // BALL COLLISION FOR LEFT AND RIGHT PADDLE
 | ||||
| 
 | ||||
|   hitLeft = collideRectCircle(mouseX, paddleY, width / 24, height / 64, ballX, ballY, width / 64); | ||||
|   if (hitLeft === true) { | ||||
|     vec = createVector(random(-1, 1), random(0, 4)); | ||||
|     vec.normalize(); | ||||
|     vec.setHeading(45) | ||||
|     ballSpeedX = vec.x * -ballSpeed; | ||||
|     ballSpeedY = vec.y * -ballSpeed; | ||||
| 
 | ||||
|   } | ||||
| 
 | ||||
|   hitRight = collideRectCircle(mouseX + width / 24, paddleY, width / 16, height / 64, ballX, ballY, width / 64); | ||||
|   if (hitRight === true) { | ||||
|     vec = createVector(random(-1, 1), random(0, 4)); | ||||
|     vec.normalize(); | ||||
|     vec.setHeading(90) | ||||
|     ballSpeedX = vec.x * -ballSpeed; | ||||
|     ballSpeedY = vec.y * -ballSpeed; | ||||
|      | ||||
|   } | ||||
| 
 | ||||
| 
 | ||||
|  | @ -115,9 +129,14 @@ function draw() { | |||
|   //   paddleX += 10
 | ||||
|   // };
 | ||||
|   // rectMode(CENTER)
 | ||||
|   push() | ||||
|   noStroke() | ||||
|   fill(255); | ||||
|   rect(mouseX, paddleY, width / 12, height / 64); | ||||
|   rect(mouseX, paddleY, width / 24, height / 64); //Left Paddle
 | ||||
|   rect(mouseX + width / 24, paddleY, width / 24, height / 64); //Right Paddle
 | ||||
|   rectMode(CORNER) | ||||
|   pop() | ||||
|    | ||||
| 
 | ||||
|   // SCORE KEEPING
 | ||||
| 
 | ||||
|  | @ -126,9 +145,9 @@ function draw() { | |||
| 
 | ||||
|   // WIN CONDITION
 | ||||
| 
 | ||||
|   if (level === 1 && grid.length === 0) { | ||||
|   if (level === 1 && grid.every(row => row.length == 0)) { | ||||
|     winGame() | ||||
|   } else if  (grid.length === 0) { | ||||
|   } else if  (grid.every(row => row.length == 0)) { | ||||
|     lostGame() | ||||
|     level++ | ||||
|   } | ||||
|  |  | |||
							
								
								
									
										7
									
								
								tile.js
									
									
									
									
									
								
							
							
						
						
									
										7
									
								
								tile.js
									
									
									
									
									
								
							|  | @ -8,7 +8,6 @@ class Tile { | |||
|         this.colors = colors | ||||
|         this.x = i * width / 13; | ||||
|         this.y = j * width / 64; | ||||
|         this.hit = false; | ||||
|         this.score = score | ||||
|     } | ||||
| 
 | ||||
|  | @ -22,10 +21,4 @@ class Tile { | |||
|         this.colors = colors | ||||
|         return colors; | ||||
|     } | ||||
| 
 | ||||
|     deleteOnHit() { | ||||
|         if (this.hit) { | ||||
|             grid[this.i].splice(this.j, 1) | ||||
|         } | ||||
|     } | ||||
| } | ||||
		Loading…
	
		Reference in a new issue