Im currently using this, but nothing happens
package me.mrfunny.nextlevelauth;
import com.google.gson.Gson;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.entity.player.ServerPlayerEntity;
import net.minecraft.network.PacketBuffer;
import net.minecraft.server.MinecraftServer;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.text.TranslationTextComponent;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.entity.EntityJoinWorldEvent;
import net.minecraftforge.event.entity.player.PlayerEvent;
import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.network.NetworkEvent;
import net.minecraftforge.fml.network.NetworkRegistry;
import net.minecraftforge.fml.network.simple.SimpleChannel;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import java.io.File;
import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.Scanner;
import java.util.function.BiConsumer;
import java.util.function.Function;
import java.util.function.Supplier;
// The value here should match an entry in the META-INF/mods.toml file
@Mod("nextlevelauth")
public class ExampleMod {
// Directly reference a log4j logger.
private static final Logger LOGGER = LogManager.getLogger();
private static final String PROTOCOL_VERSION = "1";
public static final SimpleChannel INSTANCE = NetworkRegistry.newSimpleChannel(
new ResourceLocation("nextlevelauth", "authmain"),
() -> PROTOCOL_VERSION,
PROTOCOL_VERSION::equals,
PROTOCOL_VERSION::equals
);
private int id = 0;
public ExampleMod() {
MinecraftForge.EVENT_BUS.register(ExampleMod.class);
try{
INSTANCE.registerMessage(id, AuthMessage.class, new BiConsumer<AuthMessage, PacketBuffer>() {
@Override
public void accept(AuthMessage authMessage, PacketBuffer packetBuffer) {
id++;
packetBuffer.writeString(authMessage.token);
}
}, new Function<PacketBuffer, AuthMessage>() {
@Override
public AuthMessage apply(PacketBuffer packetBuffer) {
LOGGER.info("logged in1");
return new AuthMessage(packetBuffer.readString());
}
}, new BiConsumer<AuthMessage, Supplier<NetworkEvent.Context>>() {
@Override
public void accept(AuthMessage authMessage, Supplier<NetworkEvent.Context> contextSupplier) {
LOGGER.info("logged in2");
handle(authMessage, contextSupplier);
}
});
} catch (Exception exception){
exception.printStackTrace();
}
}
public static void handle(AuthMessage msg, Supplier<NetworkEvent.Context> ctx) {
ctx.get().enqueueWork(() -> {
ServerPlayerEntity sender = ctx.get().getSender(); // the client that sent this packet
try{
URL url = new URL("https://nextlevel.su/api/v1/user/");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.addRequestProperty("User-Agent", "PostmanRuntime/7.26.8");
connection.addRequestProperty("Authorization", "Bearer " + msg.token);
connection.addRequestProperty("Content-Type", "application/json");
connection.addRequestProperty("Accept", "application/json");
connection.connect();
int responseCode = connection.getResponseCode();
if(responseCode != 200){
connection.disconnect();
sender.disconnect();
return;
}
ctx.get().setPacketHandled(true);
connection.disconnect();
} catch (Exception exception){
exception.printStackTrace();
ctx.get().getSender().disconnect();
}
});
}
@OnlyIn(Dist.CLIENT)
@SubscribeEvent
public static void onJoin(PlayerEvent.PlayerLoggedInEvent event){
try {
LOGGER.info("connected");
} catch (Exception exception) {
exception.printStackTrace();
}
}
public static String readFile(String path, Charset encoding) {
byte[] encoded = new byte[0];
try {
encoded = Files.readAllBytes(Paths.get(path));
} catch (IOException exception) {
exception.printStackTrace();
}
return new String(encoded, encoding).replace("\n", "").replace("\r", "");
}
}
My AuthMessage class
package me.mrfunny.nextlevelauth;
public class AuthMessage {
public String token;
public AuthMessage(String token){
this.token = token;
}
}