public void decodeAndRender(int id, String message) throws JSONException {
		switch (id) {
		
		case 202:
			StartableMessage tsm = enc.startebleMessageDecode(message);
			this.startable = tsm.isStartable;
			break;
			
		case 203:
			StartedMessage startedGame = enc.startedMessageDecode(message);
			this.started = startedGame.started;
			this.Player = startedGame.playerID;
			this.SG.achtungPanel.requestFocus();
			break;
			
		case 404:
			
			this.saveMsg = new StageFlipper(enc.kickMessageDecode(message));
			this.loop = false;
			break;
			
		case 302: // Recieved updated movements from players, repaint board
			SnakeServerMessage SSM = enc.snakeServerMessageDecode(message);
			this.SG.achtungPanel.requestFocus();
			if(!SSM.clearBoard)
			SG.repaint(SSM.Players);
				
			else{
			SG.renderNewGame();
			if (SSM.hasWon){
				JOptionPane.showMessageDialog(null, SSM.winnerName + " has won!", "WinnerWinnerChickenDinner", JOptionPane.INFORMATION_MESSAGE);
				
			}
				}
			if (SG.nameSet == 0)
				
				
			SG.setNames(SSM);
			
			break;
			
		default:
			System.out.println("Should not come here! " + id); // might be 103 refresh msg
		}
	}