public void update(){
		if(reset){
			score = 0;
			player = new Player();
			puzzlePieces = new ArrayList<PuzzlePiece>();
			puzzlePieces.add(new PuzzlePiece(random.nextInt(3) + 1));
			reset = false;
		}
		
		player.update();
		
		for(PuzzlePiece puzzlePiece : puzzlePieces){
			puzzlePiece.update();
		}
		
		for(int i = 0; i < puzzlePieces.size(); i++){
			PuzzlePiece puzzlePiece = puzzlePieces.get(i);
			if(puzzlePiece.collision_Rect.intersects(Player.winCollision_Rect) && player.direction == puzzlePiece.state){
				puzzlePiece.active = false;
				puzzlePieces.remove(i);
				score++;
				puzzlePieces.add(new PuzzlePiece(random.nextInt(4) + 1));
			}
			
			if(puzzlePiece.collision_Rect.contains(Player.loseCollision_Point)){
				Level.loseGame = true;
				puzzlePiece.active = false;
				puzzlePieces.remove(i);
				GameStates.current_state = GameStates.GameState.END;
			}
		}
	}