Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.teammetallurgy.aquaculture.misc;
- import com.google.gson.Gson;
- import com.google.gson.GsonBuilder;
- import com.google.gson.JsonArray;
- import com.google.gson.JsonObject;
- import java.io.File;
- import java.io.FileWriter;
- import java.io.IOException;
- public class LootTableBuilder {
- private static final Gson GSON = new GsonBuilder().setPrettyPrinting().create();
- private File outputDir;
- private String entityName;
- public LootTableBuilder(File outputDir, String entityName) {
- this.outputDir = outputDir;
- this.entityName = entityName;
- }
- public void build() {
- JsonObject json = new JsonObject();
- json.addProperty("type", "minecraft:entity");
- JsonArray pollsArray = new JsonArray();
- JsonObject polls = new JsonObject();
- polls.addProperty("rolls", 1);
- pollsArray.add(polls);
- JsonArray entriesArray = new JsonArray();
- JsonObject entries = new JsonObject();
- entries.addProperty("type", "minecraft:item");
- entries.addProperty("name", "aquaculture:" + this.entityName);
- entriesArray.add(entries);
- polls.add("entries", entriesArray);
- JsonObject pollsBone = new JsonObject();
- pollsBone.addProperty("rolls", 1);
- pollsArray.add(pollsBone);
- JsonArray entriesArrayBone = new JsonArray();
- JsonObject entriesBone = new JsonObject();
- entriesBone.addProperty("type", "minecraft:item");
- entriesBone.addProperty("name", "minecraft:bone_meal");
- entriesArrayBone.add(entriesBone);
- pollsBone.add("entries", entriesArrayBone);
- JsonArray conditions = new JsonArray();
- JsonObject condition = new JsonObject();
- condition.addProperty("condition", "minecraft:random_chance");
- condition.addProperty("chance", 0.05);
- conditions.add(condition);
- pollsBone.add("conditions", conditions);
- json.add("pools", pollsArray);
- try (FileWriter writer = new FileWriter(new File(this.outputDir, this.entityName + ".json"))) {
- GSON.toJson(json, writer);
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement