private static MinecraftBotData generateData( String server, String username, String password, AuthService service, Session session, int protocol, String loginProxy, String proxy) { MinecraftBotData.Builder builder = MinecraftBotData.builder(); if (proxy != null && !proxy.isEmpty()) { int port = 80; ProxyType type = ProxyType.SOCKS; if (proxy.contains(":")) { String[] parts = proxy.split(":"); proxy = parts[0]; port = Integer.parseInt(parts[1]); if (parts.length > 2) type = ProxyType.values()[Integer.parseInt(parts[2]) - 1]; } builder.socksProxy(new ProxyData(proxy, port, type)); } if (loginProxy != null && !loginProxy.isEmpty()) { int port = 80; if (loginProxy.contains(":")) { String[] parts = loginProxy.split(":"); loginProxy = parts[0]; port = Integer.parseInt(parts[1]); } builder.httpProxy(new ProxyData(loginProxy, port, ProxyType.HTTP)); } builder.username(username).authService(service).protocol(protocol); if (session != null) builder.session(session); else builder.password(password); if (server != null && !server.isEmpty()) { int port = 25565; if (server.contains(":")) { String[] parts = server.split(":"); server = parts[0]; port = Integer.parseInt(parts[1]); } builder.server(server).port(port); } else throw new IllegalArgumentException("Unknown server!"); return builder.build(); }