public static boolean advanceCheckpoint(){
		switch(state){
			case FINISHED:
				return false;
			case INACTIVE:
				eCoreEventManager.startEvent();
				break;
			case PROUDOFSUBJECT:
				eCoreEventManager.loungeHint();
				break;
			case TELEPORTER_BEFORE:
				eCoreEventManager.temporaryRetreat();
				break;
			case DOWNTHEDRAIN:
				eCoreEventManager.finalRetreat();
				break;
			case WITHTHEFISHES:
				eCoreEventManager.spawnGiant();
				break;
			case DEJAVU:
				eCoreEventManager.rememberTheNukes();
			default:			
		}
		
		state = state.next();
		state.setRespawn();
		Bukkit.broadcast(ChatColor.DARK_BLUE + "[eCore] " + ChatColor.WHITE + "Advanced to checkpoint: "+ ChatColor.GRAY +state.toString()+"(id: "+state.getID()+")", "eCore.*");
		saveNeeded = true;
		return true;
	}