package net.mcreator.myfriendmava;
import net.minecraftforge.event.ServerChatEvent;
import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.api.distmarker.Dist;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import net.minecraft.network.chat.Component;
import net.mcreator.myfriendmava.OpenAIClient;
import java.io.IOException;
@Mod.EventBusSubscriber(modid = "myfriendmava", value = Dist.CLIENT)
public class ChatHandler {
private static final OpenAIClient openAIClient = new OpenAIClient();
@SubscribeEvent
public static void onChatMessage(ServerChatEvent event) {
String message = event.getMessage().getString();
if (message.contains("Mava")) {
new Thread(() -> {
try {
String characterPrompt = "You are Mava, a friendly and loyal companion who loves to protect and help your owner. "
+ "Respond to this message in a kind and enthusiastic manner: " + message;
String response = openAIClient.getResponse(characterPrompt);
//JSON-respond JsonObject jsonResponse = JsonParser.parseString(response).getAsJsonObject();
String reply = jsonResponse.getAsJsonArray("choices").get(0).getAsJsonObject().get("text").getAsString().trim();
event.getPlayer().sendSystemMessage(Component.literal("Mava: " + reply));
} catch (IOException e) {
e.printStackTrace();
}
}).start();
}
}
}