aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/dev/mayaqq/ygasi/Ygasi.java33
-rw-r--r--src/main/java/dev/mayaqq/ygasi/dataGen/DataGenRegistry.java (renamed from src/main/java/dev/mayaqq/ygasi/registry/dataGen/DataGenRegistry.java)6
-rw-r--r--src/main/java/dev/mayaqq/ygasi/dataGen/advancements/AdvancementProvider.java (renamed from src/main/java/dev/mayaqq/ygasi/registry/dataGen/advancements/AdvancementProvider.java)2
-rw-r--r--src/main/java/dev/mayaqq/ygasi/dataGen/advancements/Advancements.java (renamed from src/main/java/dev/mayaqq/ygasi/registry/dataGen/advancements/Advancements.java)2
-rw-r--r--src/main/java/dev/mayaqq/ygasi/dataGen/recipes/YgasiRecipes.java (renamed from src/main/java/dev/mayaqq/ygasi/registry/dataGen/recipes/YgasiRecipes.java)4
-rw-r--r--src/main/java/dev/mayaqq/ygasi/events/PlayerConnectEvent.java8
-rw-r--r--src/main/java/dev/mayaqq/ygasi/events/RegisterEvents.java7
-rw-r--r--src/main/java/dev/mayaqq/ygasi/gui/BranchGui.java71
-rw-r--r--src/main/java/dev/mayaqq/ygasi/gui/ConfigGui.java1
-rw-r--r--src/main/java/dev/mayaqq/ygasi/gui/DruidryGui.java4
-rw-r--r--src/main/java/dev/mayaqq/ygasi/gui/ExtraGui.java6
-rw-r--r--src/main/java/dev/mayaqq/ygasi/gui/MercenaryGui.java6
-rw-r--r--src/main/java/dev/mayaqq/ygasi/gui/ResetGui.java4
-rw-r--r--src/main/java/dev/mayaqq/ygasi/gui/WizardryGui.java4
-rw-r--r--src/main/java/dev/mayaqq/ygasi/registry/CommandRegistry.java4
-rw-r--r--src/main/java/dev/mayaqq/ygasi/registry/EventRegistry.java9
-rw-r--r--src/main/java/dev/mayaqq/ygasi/registry/ItemRegistry.java25
-rw-r--r--src/main/java/dev/mayaqq/ygasi/secrete/Frog.java28
-rw-r--r--src/main/java/dev/mayaqq/ygasi/util/AdvUtils.java (renamed from src/main/java/dev/mayaqq/ygasi/util/YgasiUtils.java)11
19 files changed, 147 insertions, 88 deletions
diff --git a/src/main/java/dev/mayaqq/ygasi/Ygasi.java b/src/main/java/dev/mayaqq/ygasi/Ygasi.java
index 5f1605d..7caa6d4 100644
--- a/src/main/java/dev/mayaqq/ygasi/Ygasi.java
+++ b/src/main/java/dev/mayaqq/ygasi/Ygasi.java
@@ -1,44 +1,25 @@
package dev.mayaqq.ygasi;
-import dev.mayaqq.ygasi.events.RegisterEvents;
-import dev.mayaqq.ygasi.items.SkillBookItem;
-import dev.mayaqq.ygasi.registry.CommandRegistry;
-import dev.mayaqq.ygasi.registry.ConfigRegistry;
-import dev.mayaqq.ygasi.registry.StatRegistry;
-import dev.mayaqq.ygasi.util.YgasiUtils;
-import eu.pb4.polymer.api.item.PolymerItemGroup;
-import eu.pb4.polymer.api.item.PolymerItemUtils;
-import eu.pb4.polymer.api.resourcepack.PolymerModelData;
-import eu.pb4.polymer.api.resourcepack.PolymerRPUtils;
+import dev.mayaqq.ygasi.registry.*;
+import dev.mayaqq.ygasi.secrete.Frog;
import net.fabricmc.api.ModInitializer;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.item.Items;
-import net.minecraft.text.Text;
-import net.minecraft.util.Identifier;
-import net.minecraft.util.registry.Registry;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Ygasi implements ModInitializer {
public static final Logger LOGGER = LoggerFactory.getLogger("ygasi");
- public static final PolymerItemGroup YGASI_GROUP = PolymerItemGroup.create(new Identifier("ygasi"), Text.translatable("creative.ygasi.group"), () -> new ItemStack(Items.BOOK));
-
- public static final SkillBookItem SKILL_BOOK = new SkillBookItem(new Item.Settings().group(YGASI_GROUP).maxCount(1), Items.BOOK);
-
@Override
public void onInitialize() {
+ //load the config data and register everything that needs to be registered on startup
ConfigRegistry.load();
+ ItemRegistry.register();
StatRegistry.register();
CommandRegistry.register();
- RegisterEvents.register();
-
- PolymerRPUtils.addAssetSource("ygasi");
- PolymerModelData modelData = PolymerRPUtils.requestModel(Items.BOOK, new Identifier("ygasi", "item/skill_book"));
+ EventRegistry.register();
- Registry.register(Registry.ITEM, "ygasi:skill_book", SKILL_BOOK);
+ Frog.blender();
- LOGGER.info("You've got a skill issue!");
+ LOGGER.info("You've Got A Skill Issue (YGASI has been initialized!)");
}
} \ No newline at end of file
diff --git a/src/main/java/dev/mayaqq/ygasi/registry/dataGen/DataGenRegistry.java b/src/main/java/dev/mayaqq/ygasi/dataGen/DataGenRegistry.java
index 8cd9b6e..1e78016 100644
--- a/src/main/java/dev/mayaqq/ygasi/registry/dataGen/DataGenRegistry.java
+++ b/src/main/java/dev/mayaqq/ygasi/dataGen/DataGenRegistry.java
@@ -1,7 +1,7 @@
-package dev.mayaqq.ygasi.registry.dataGen;
+package dev.mayaqq.ygasi.dataGen;
-import dev.mayaqq.ygasi.registry.dataGen.advancements.AdvancementProvider;
-import dev.mayaqq.ygasi.registry.dataGen.recipes.YgasiRecipes;
+import dev.mayaqq.ygasi.dataGen.advancements.AdvancementProvider;
+import dev.mayaqq.ygasi.dataGen.recipes.YgasiRecipes;
import net.fabricmc.fabric.api.datagen.v1.DataGeneratorEntrypoint;
import net.fabricmc.fabric.api.datagen.v1.FabricDataGenerator;
diff --git a/src/main/java/dev/mayaqq/ygasi/registry/dataGen/advancements/AdvancementProvider.java b/src/main/java/dev/mayaqq/ygasi/dataGen/advancements/AdvancementProvider.java
index 5748316..1944d4b 100644
--- a/src/main/java/dev/mayaqq/ygasi/registry/dataGen/advancements/AdvancementProvider.java
+++ b/src/main/java/dev/mayaqq/ygasi/dataGen/advancements/AdvancementProvider.java
@@ -1,4 +1,4 @@
-package dev.mayaqq.ygasi.registry.dataGen.advancements;
+package dev.mayaqq.ygasi.dataGen.advancements;
import net.fabricmc.fabric.api.datagen.v1.FabricDataGenerator;
import net.fabricmc.fabric.api.datagen.v1.provider.FabricAdvancementProvider;
diff --git a/src/main/java/dev/mayaqq/ygasi/registry/dataGen/advancements/Advancements.java b/src/main/java/dev/mayaqq/ygasi/dataGen/advancements/Advancements.java
index 130a885..8c0d5f5 100644
--- a/src/main/java/dev/mayaqq/ygasi/registry/dataGen/advancements/Advancements.java
+++ b/src/main/java/dev/mayaqq/ygasi/dataGen/advancements/Advancements.java
@@ -1,4 +1,4 @@
-package dev.mayaqq.ygasi.registry.dataGen.advancements;
+package dev.mayaqq.ygasi.dataGen.advancements;
import de.dafuqs.revelationary.advancement_criteria.AdvancementGottenCriterion;
import net.minecraft.advancement.Advancement;
diff --git a/src/main/java/dev/mayaqq/ygasi/registry/dataGen/recipes/YgasiRecipes.java b/src/main/java/dev/mayaqq/ygasi/dataGen/recipes/YgasiRecipes.java
index 75afdfe..032cc2e 100644
--- a/src/main/java/dev/mayaqq/ygasi/registry/dataGen/recipes/YgasiRecipes.java
+++ b/src/main/java/dev/mayaqq/ygasi/dataGen/recipes/YgasiRecipes.java
@@ -1,4 +1,4 @@
-package dev.mayaqq.ygasi.registry.dataGen.recipes;
+package dev.mayaqq.ygasi.dataGen.recipes;
import net.fabricmc.fabric.api.datagen.v1.FabricDataGenerator;
import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider;
@@ -10,7 +10,7 @@ import net.minecraft.tag.ItemTags;
import java.util.function.Consumer;
-import static dev.mayaqq.ygasi.Ygasi.SKILL_BOOK;
+import static dev.mayaqq.ygasi.registry.ItemRegistry.SKILL_BOOK;
public class YgasiRecipes extends FabricRecipeProvider {
public YgasiRecipes(FabricDataGenerator dataGenerator) {
diff --git a/src/main/java/dev/mayaqq/ygasi/events/PlayerConnectEvent.java b/src/main/java/dev/mayaqq/ygasi/events/PlayerConnectEvent.java
index 26b5051..7836ca6 100644
--- a/src/main/java/dev/mayaqq/ygasi/events/PlayerConnectEvent.java
+++ b/src/main/java/dev/mayaqq/ygasi/events/PlayerConnectEvent.java
@@ -1,20 +1,20 @@
package dev.mayaqq.ygasi.events;
import dev.mayaqq.ygasi.registry.ConfigRegistry;
-import dev.mayaqq.ygasi.util.YgasiUtils;
+import dev.mayaqq.ygasi.util.AdvUtils;
import net.fabricmc.fabric.api.networking.v1.ServerPlayConnectionEvents;
import net.minecraft.item.ItemStack;
import net.minecraft.util.Identifier;
-import static dev.mayaqq.ygasi.Ygasi.SKILL_BOOK;
+import static dev.mayaqq.ygasi.registry.ItemRegistry.SKILL_BOOK;
public class PlayerConnectEvent {
- public static void onJoin() {
+ public static void onPlayerConnect() {
ServerPlayConnectionEvents.JOIN.register((handler, sender, server) -> {
if (!handler.player.getScoreboardTags().contains("skill_book_unlocked") && ConfigRegistry.CONFIG.enableSkillBook) {
handler.player.addScoreboardTag("skill_book_unlocked");
handler.player.getInventory().offerOrDrop(new ItemStack(SKILL_BOOK));
- YgasiUtils.grantAdvancementCriterion(handler.player, new Identifier("ygasi", "recipes/minecraft_ygasi/skill_book"), "opened_skill_menu");
+ AdvUtils.grantAdvancementCriterion(handler.player, new Identifier("ygasi", "recipes/minecraft_ygasi/skill_book"), "opened_skill_menu");
}
});
}
diff --git a/src/main/java/dev/mayaqq/ygasi/events/RegisterEvents.java b/src/main/java/dev/mayaqq/ygasi/events/RegisterEvents.java
deleted file mode 100644
index 08476f1..0000000
--- a/src/main/java/dev/mayaqq/ygasi/events/RegisterEvents.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package dev.mayaqq.ygasi.events;
-
-public class RegisterEvents {
- public static void register() {
- PlayerConnectEvent.onJoin();
- }
-}
diff --git a/src/main/java/dev/mayaqq/ygasi/gui/BranchGui.java b/src/main/java/dev/mayaqq/ygasi/gui/BranchGui.java
index d4cb050..d293f47 100644
--- a/src/main/java/dev/mayaqq/ygasi/gui/BranchGui.java
+++ b/src/main/java/dev/mayaqq/ygasi/gui/BranchGui.java
@@ -1,6 +1,6 @@
package dev.mayaqq.ygasi.gui;
-import dev.mayaqq.ygasi.util.YgasiUtils;
+import dev.mayaqq.ygasi.util.AdvUtils;
import eu.pb4.sgui.api.elements.*;
import net.minecraft.item.ItemStack;
@@ -18,9 +18,9 @@ import net.minecraft.util.Identifier;
public class BranchGui {
public static void gui(ServerPlayerEntity player) {
+ Text cost = Text.of("§3" + ConfigRegistry.CONFIG.branchCost);
try {
SkillGui gui = new SkillGui(ScreenHandlerType.GENERIC_9X3, player, false) {};
-
//the title of the gui
gui.setTitle(Text.translatable("gui.ygasi.branch.title", player.getStatHandler().getStat(Stats.CUSTOM.getOrCreateStat(SKILL_POINTS))).formatted(Formatting.DARK_AQUA));
@@ -48,12 +48,12 @@ public class BranchGui {
//branch items
//mercenary gui button
- if (!YgasiUtils.getAdvancementProgress(player, "minecraft", "ygasi/mercenary")) {
+ if (!AdvUtils.getAdvancementProgress(player, "minecraft", "ygasi/mercenary")) {
gui.setSlot(11, new GuiElementBuilder()
.setItem(Items.DIAMOND_SWORD)
.setCustomModelData(1)
.hideFlag(ItemStack.TooltipSection.MODIFIERS)
- .addLoreLine(Text.translatable("gui.ygasi.branch.cost", ConfigRegistry.CONFIG.branchCost))
+ .addLoreLine(Text.translatable("gui.ygasi.branch.cost", cost))
.setName(Text.translatable("gui.ygasi.branch.mercenary.title").formatted(Formatting.BOLD))
.setCallback((index, clickType, actionType) -> save(player, "mercenary", "gui.ygasi.branch.mercenary.title"))
);
@@ -68,10 +68,10 @@ public class BranchGui {
}
//wizardry gui button
- if (!YgasiUtils.getAdvancementProgress(player, "minecraft", "ygasi/wizardry")) {
+ if (!AdvUtils.getAdvancementProgress(player, "minecraft", "ygasi/wizardry")) {
gui.setSlot(13, new GuiElementBuilder()
.setItem(Items.BLAZE_ROD)
- .addLoreLine(Text.translatable("gui.ygasi.branch.cost", ConfigRegistry.CONFIG.branchCost))
+ .addLoreLine(Text.translatable("gui.ygasi.branch.cost", cost))
.setName(Text.translatable("gui.ygasi.branch.wizardry.title").formatted(Formatting.BOLD))
.setCallback((index, clickType, actionType) -> save(player, "wizardry", "gui.ygasi.branch.wizardry.title"))
);
@@ -85,10 +85,10 @@ public class BranchGui {
}
//druidry gui button
- if (!YgasiUtils.getAdvancementProgress(player, "minecraft", "ygasi/druidry")) {
+ if (!AdvUtils.getAdvancementProgress(player, "minecraft", "ygasi/druidry")) {
gui.setSlot(15, new GuiElementBuilder()
.setItem(Items.OAK_SAPLING)
- .addLoreLine(Text.translatable("gui.ygasi.branch.cost", ConfigRegistry.CONFIG.branchCost))
+ .addLoreLine(Text.translatable("gui.ygasi.branch.cost", cost))
.setName(Text.translatable("gui.ygasi.branch.druidry.title").formatted(Formatting.BOLD))
.setCallback((index, clickType, actionType) -> save(player, "druidry", "gui.ygasi.branch.druidry.title"))
);
@@ -102,10 +102,10 @@ public class BranchGui {
}
//extra gui button
- if (!YgasiUtils.getAdvancementProgress(player, "minecraft", "ygasi/extra")) {
+ if (!AdvUtils.getAdvancementProgress(player, "minecraft", "ygasi/extra")) {
gui.setSlot(26, new GuiElementBuilder()
.setItem(Items.BOOK)
- .addLoreLine(Text.translatable("gui.ygasi.branch.cost", ConfigRegistry.CONFIG.branchCost / 2))
+ .addLoreLine(Text.translatable("gui.ygasi.branch.cost", Text.of("§3" + ConfigRegistry.CONFIG.branchCost / 2)))
.setName(Text.translatable("gui.ygasi.branch.extra.title").formatted(Formatting.BOLD))
.setCallback((index, clickType, actionType) -> save(player, "extra", "gui.ygasi.branch.extra.title"))
);
@@ -137,7 +137,7 @@ public class BranchGui {
);
//grant the player the root advancement of ygasi
- YgasiUtils.grantAdvancementCriterion(player, new Identifier("minecraft", "ygasi/root"), "opened_skill_menu");
+ AdvUtils.grantAdvancementCriterion(player, new Identifier("minecraft", "ygasi/root"), "opened_skill_menu");
gui.open();
} catch (Exception e) {
@@ -146,43 +146,68 @@ public class BranchGui {
}
//this happens when you try to unlock a branch
public static void save(ServerPlayerEntity player, String branch, String branchName) {
+ Boolean hasMercenary = AdvUtils.getAdvancementProgress(player, "minecraft", "ygasi/mercenary");
+ Boolean hasWizadry = AdvUtils.getAdvancementProgress(player, "minecraft", "ygasi/wizardry");
+ Boolean hasDrudiry = AdvUtils.getAdvancementProgress(player, "minecraft", "ygasi/druidry");
//special category for extra branch because it's half the price
if (branch.equals("extra")) {
if (player.getStatHandler().getStat(Stats.CUSTOM.getOrCreateStat(SKILL_POINTS)) >= ConfigRegistry.CONFIG.branchCost / 2) {
+ //remove the spent skill points
player.getStatHandler().setStat(player, Stats.CUSTOM.getOrCreateStat(SKILL_POINTS), player.getStatHandler().getStat(Stats.CUSTOM.getOrCreateStat(SKILL_POINTS)) - ConfigRegistry.CONFIG.branchCost / 2);
- YgasiUtils.grantAdvancementCriterion(player, new Identifier("minecraft", "ygasi/extra"), "unlocked_extra");
+ AdvUtils.grantAdvancementCriterion(player, new Identifier("minecraft", "ygasi/extra"), "unlocked_extra");
player.sendMessage(Text.translatable("gui.ygasi.branch.unlock", Text.translatable(branchName)), false);
ExtraGui.gui(player);
} else {
player.sendMessage(Text.translatable("gui.ygasi.branch.no.skill"), false);
}
- //the rest of the branches
+ //the rest of the branches
} else {
//same code as in extra
if (player.getStatHandler().getStat(Stats.CUSTOM.getOrCreateStat(SKILL_POINTS)) >= ConfigRegistry.CONFIG.branchCost) {
- player.getStatHandler().setStat(player, Stats.CUSTOM.getOrCreateStat(SKILL_POINTS), player.getStatHandler().getStat(Stats.CUSTOM.getOrCreateStat(SKILL_POINTS)) - ConfigRegistry.CONFIG.branchCost);
- player.sendMessage(Text.translatable("gui.ygasi.branch.unlock", Text.translatable(branchName)), false);
- player.closeHandledScreen();
//grant the player the advancement of the branch they unlocked
switch (branch) {
case "mercenary" -> {
- YgasiUtils.grantAdvancementCriterion(player, new Identifier("minecraft", "ygasi/mercenary"), "unlocked_mercenary");
- MercenaryGui.gui(player);
+ if (hasWizadry || hasDrudiry) {
+ player.sendMessage(Text.translatable("gui.ygasi.branch.no.unlock"), true);
+ } else {
+ hasMercenary = true;
+ AdvUtils.grantAdvancementCriterion(player, new Identifier("minecraft", "ygasi/mercenary"), "unlocked_mercenary");
+ MercenaryGui.gui(player);
+ unlockSuccess(player, branchName);
+ }
}
case "wizardry" -> {
- YgasiUtils.grantAdvancementCriterion(player, new Identifier("minecraft", "ygasi/wizardry"), "unlocked_wizardry");
- WizardryGui.gui(player);
+ if (hasMercenary || hasDrudiry) {
+ player.sendMessage(Text.translatable("gui.ygasi.branch.no.unlock"), true);
+ } else {
+ hasWizadry = true;
+ AdvUtils.grantAdvancementCriterion(player, new Identifier("minecraft", "ygasi/wizardry"), "unlocked_wizardry");
+ WizardryGui.gui(player);
+ unlockSuccess(player, branchName);
+ }
}
case "druidry" -> {
- YgasiUtils.grantAdvancementCriterion(player, new Identifier("minecraft", "ygasi/druidry"), "unlocked_druidry");
- DruidryGui.gui(player);
+ if (hasMercenary || hasWizadry) {
+ player.sendMessage(Text.translatable("gui.ygasi.branch.no.unlock"), true);
+ } else {
+ hasDrudiry = true;
+ AdvUtils.grantAdvancementCriterion(player, new Identifier("minecraft", "ygasi/druidry"), "unlocked_druidry");
+ DruidryGui.gui(player);
+ unlockSuccess(player, branchName);
+ }
}
}
- //if the player doesn't have enough skill points
+ player.closeHandledScreen();
+ //if the player doesn't have enough skill points
} else {
player.sendMessage(Text.translatable("gui.ygasi.branch.no.skill"), false);
player.closeHandledScreen();
}
}
}
+ private static void unlockSuccess(ServerPlayerEntity player, String branchName) {
+ player.sendMessage(Text.translatable("gui.ygasi.branch.unlock", Text.translatable(branchName)), false);
+ //remove the spent skill points
+ player.getStatHandler().setStat(player, Stats.CUSTOM.getOrCreateStat(SKILL_POINTS), player.getStatHandler().getStat(Stats.CUSTOM.getOrCreateStat(SKILL_POINTS)) - ConfigRegistry.CONFIG.branchCost);
+ }
} \ No newline at end of file
diff --git a/src/main/java/dev/mayaqq/ygasi/gui/ConfigGui.java b/src/main/java/dev/mayaqq/ygasi/gui/ConfigGui.java
index f847227..c9f0383 100644
--- a/src/main/java/dev/mayaqq/ygasi/gui/ConfigGui.java
+++ b/src/main/java/dev/mayaqq/ygasi/gui/ConfigGui.java
@@ -91,7 +91,6 @@ public class ConfigGui {
gui.open();
}
-
private static void textInput(ServerPlayerEntity player, String option) {
try {
SignGui gui = new SignGui(player) {
diff --git a/src/main/java/dev/mayaqq/ygasi/gui/DruidryGui.java b/src/main/java/dev/mayaqq/ygasi/gui/DruidryGui.java
index 64e3db3..7c3e0fd 100644
--- a/src/main/java/dev/mayaqq/ygasi/gui/DruidryGui.java
+++ b/src/main/java/dev/mayaqq/ygasi/gui/DruidryGui.java
@@ -1,6 +1,6 @@
package dev.mayaqq.ygasi.gui;
-import dev.mayaqq.ygasi.util.YgasiUtils;
+import dev.mayaqq.ygasi.util.AdvUtils;
import eu.pb4.sgui.api.elements.GuiElementBuilder;
import net.minecraft.item.Items;
import net.minecraft.screen.ScreenHandlerType;
@@ -14,7 +14,7 @@ public class DruidryGui {
public static void gui(ServerPlayerEntity player) {
String title = Text.translatable("gui.ygasi.branch.druidry.title").getString() + " " + Text.translatable("gui.ygasi.branch.title", player.getStatHandler().getStat(Stats.CUSTOM.getOrCreateStat(SKILL_POINTS))).getString();
try {
- if (!YgasiUtils.getAdvancementProgress(player, "minecraft", "ygasi/druidry")) {
+ if (!AdvUtils.getAdvancementProgress(player, "minecraft", "ygasi/druidry")) {
player.sendMessage(Text.translatable("gui.ygasi.branches.fail"), false);
BranchGui.gui(player);
} else {
diff --git a/src/main/java/dev/mayaqq/ygasi/gui/ExtraGui.java b/src/main/java/dev/mayaqq/ygasi/gui/ExtraGui.java
index 268535b..89905d7 100644
--- a/src/main/java/dev/mayaqq/ygasi/gui/ExtraGui.java
+++ b/src/main/java/dev/mayaqq/ygasi/gui/ExtraGui.java
@@ -1,6 +1,6 @@
package dev.mayaqq.ygasi.gui;
-import dev.mayaqq.ygasi.util.YgasiUtils;
+import dev.mayaqq.ygasi.util.AdvUtils;
import eu.pb4.sgui.api.elements.GuiElementBuilder;
import net.minecraft.item.Items;
import net.minecraft.screen.ScreenHandlerType;
@@ -14,13 +14,13 @@ public class ExtraGui {
public static void gui(ServerPlayerEntity player) {
String title = Text.translatable("gui.ygasi.branch.extra.title").getString() + " " + Text.translatable("gui.ygasi.branch.title", player.getStatHandler().getStat(Stats.CUSTOM.getOrCreateStat(SKILL_POINTS))).getString();
try {
- if (!YgasiUtils.getAdvancementProgress(player, "minecraft", "ygasi/extra")) {
+ if (!AdvUtils.getAdvancementProgress(player, "minecraft", "ygasi/extra")) {
player.sendMessage(Text.translatable("gui.ygasi.branches.fail"), false);
BranchGui.gui(player);
} else {
SkillGui gui = new SkillGui(ScreenHandlerType.GENERIC_9X3, player, false) {};
- gui.setTitle(Text.of( title));
+ gui.setTitle(Text.of(title));
for (int x = 0; x <= 26; x++) {
gui.setSlot(x, new GuiElementBuilder()
diff --git a/src/main/java/dev/mayaqq/ygasi/gui/MercenaryGui.java b/src/main/java/dev/mayaqq/ygasi/gui/MercenaryGui.java
index 43d06ed..9eb0122 100644
--- a/src/main/java/dev/mayaqq/ygasi/gui/MercenaryGui.java
+++ b/src/main/java/dev/mayaqq/ygasi/gui/MercenaryGui.java
@@ -1,6 +1,6 @@
package dev.mayaqq.ygasi.gui;
-import dev.mayaqq.ygasi.util.YgasiUtils;
+import dev.mayaqq.ygasi.util.AdvUtils;
import eu.pb4.sgui.api.elements.GuiElementBuilder;
import net.minecraft.item.Items;
import net.minecraft.screen.ScreenHandlerType;
@@ -15,7 +15,7 @@ public class MercenaryGui {
public static void gui(ServerPlayerEntity player) {
String title = Text.translatable("gui.ygasi.branch.mercenary.title").getString() + " " + Text.translatable("gui.ygasi.branch.title", player.getStatHandler().getStat(Stats.CUSTOM.getOrCreateStat(SKILL_POINTS))).formatted(Formatting.DARK_AQUA).getString();
try {
- if (!YgasiUtils.getAdvancementProgress(player, "minecraft", "ygasi/mercenary")) {
+ if (!AdvUtils.getAdvancementProgress(player, "minecraft", "ygasi/mercenary")) {
player.sendMessage(Text.translatable("gui.ygasi.branches.fail"), false);
BranchGui.gui(player);
} else {
@@ -37,7 +37,7 @@ public class MercenaryGui {
.addLoreLine(Text.of("§3Skill Points: " + player.getStatHandler().getStat(Stats.CUSTOM.getOrCreateStat(SKILL_POINTS))))
);
- if (!YgasiUtils.getAdvancementProgress(player, "minecraft", "ygasi/offence1")) {
+ if (!AdvUtils.getAdvancementProgress(player, "minecraft", "ygasi/offence1")) {
gui.setSlot(10, new GuiElementBuilder()
.setItem(Items.DIAMOND_SWORD)
.setName(Text.translatable("gui.ygasi.mercenary.offence1"))
diff --git a/src/main/java/dev/mayaqq/ygasi/gui/ResetGui.java b/src/main/java/dev/mayaqq/ygasi/gui/ResetGui.java
index a976929..c581e02 100644
--- a/src/main/java/dev/mayaqq/ygasi/gui/ResetGui.java
+++ b/src/main/java/dev/mayaqq/ygasi/gui/ResetGui.java
@@ -1,6 +1,6 @@
package dev.mayaqq.ygasi.gui;
-import dev.mayaqq.ygasi.util.YgasiUtils;
+import dev.mayaqq.ygasi.util.AdvUtils;
import eu.pb4.sgui.api.elements.GuiElementBuilder;
import net.minecraft.item.Items;
import net.minecraft.screen.ScreenHandlerType;
@@ -48,7 +48,7 @@ public class ResetGui {
player.playSound(SoundEvents.ENTITY_EXPERIENCE_ORB_PICKUP, SoundCategory.PLAYERS, 1.0F, 1.0F);
player.experienceLevel -= 10;
player.closeHandledScreen();
- YgasiUtils.revokeAllAdvancements(player, "minecraft", "ygasi/");
+ AdvUtils.revokeAllAdvancements(player, "minecraft", "ygasi/");
player.sendMessage(Text.translatable("gui.ygasi.reset.success"), false);
player.getStatHandler().setStat(player, Stats.CUSTOM.getOrCreateStat(SKILL_POINTS), player.getStatHandler().getStat(Stats.CUSTOM.getOrCreateStat(SKILL_POINTS_TOTAL)));
BranchGui.gui(player);
diff --git a/src/main/java/dev/mayaqq/ygasi/gui/WizardryGui.java b/src/main/java/dev/mayaqq/ygasi/gui/WizardryGui.java
index 9dfc5dc..347135f 100644
--- a/src/main/java/dev/mayaqq/ygasi/gui/WizardryGui.java
+++ b/src/main/java/dev/mayaqq/ygasi/gui/WizardryGui.java
@@ -1,6 +1,6 @@
package dev.mayaqq.ygasi.gui;
-import dev.mayaqq.ygasi.util.YgasiUtils;
+import dev.mayaqq.ygasi.util.AdvUtils;
import eu.pb4.sgui.api.elements.GuiElementBuilder;
import net.minecraft.item.Items;
import net.minecraft.screen.ScreenHandlerType;
@@ -14,7 +14,7 @@ public class WizardryGui {
public static void gui(ServerPlayerEntity player) {
String title = Text.translatable("gui.ygasi.branch.wizardry.title").getString() + " " + Text.translatable("gui.ygasi.branch.title", player.getStatHandler().getStat(Stats.CUSTOM.getOrCreateStat(SKILL_POINTS))).getString();
try {
- if (!YgasiUtils.getAdvancementProgress(player, "minecraft", "ygasi/wizardry")) {
+ if (!AdvUtils.getAdvancementProgress(player, "minecraft", "ygasi/wizardry")) {
player.sendMessage(Text.translatable("gui.ygasi.branches.fail"), false);
BranchGui.gui(player);
} else {
diff --git a/src/main/java/dev/mayaqq/ygasi/registry/CommandRegistry.java b/src/main/java/dev/mayaqq/ygasi/registry/CommandRegistry.java
index 44ba603..781ef4d 100644
--- a/src/main/java/dev/mayaqq/ygasi/registry/CommandRegistry.java
+++ b/src/main/java/dev/mayaqq/ygasi/registry/CommandRegistry.java
@@ -58,7 +58,7 @@ public class CommandRegistry {
ServerPlayerEntity player = EntityArgumentType.getPlayer(context, "target");
player.resetStat(Stats.CUSTOM.getOrCreateStat(SKILL_POINTS));
player.resetStat(Stats.CUSTOM.getOrCreateStat(StatRegistry.SKILL_POINTS_TOTAL));
- context.getSource().sendMessage(Text.translatable("commands.ygasi.skillpoints.reset", player.getEntityName()).formatted(Formatting.GREEN));
+ player.sendMessage(Text.translatable("commands.ygasi.skillpoints.reset", player.getEntityName()).formatted(Formatting.GREEN));
return 1;
})))
.then(literal("add")
@@ -76,7 +76,7 @@ public class CommandRegistry {
.then(CommandManager.argument("target", EntityArgumentType.player())
.executes(context -> {
ServerPlayerEntity player = EntityArgumentType.getPlayer(context, "target");
- context.getSource().sendMessage(Text.translatable("commands.ygasi.skillpoints.get", player.getEntityName(), player.getStatHandler().getStat(Stats.CUSTOM.getOrCreateStat(SKILL_POINTS)), player.getStatHandler().getStat(Stats.CUSTOM.getOrCreateStat(SKILL_POINTS_TOTAL))).formatted(Formatting.GREEN));
+ player.sendMessage(Text.translatable("commands.ygasi.skillpoints.get", player.getEntityName(), player.getStatHandler().getStat(Stats.CUSTOM.getOrCreateStat(SKILL_POINTS)), player.getStatHandler().getStat(Stats.CUSTOM.getOrCreateStat(SKILL_POINTS_TOTAL))).formatted(Formatting.GREEN));
return 1;
}))))
.then(literal("config")
diff --git a/src/main/java/dev/mayaqq/ygasi/registry/EventRegistry.java b/src/main/java/dev/mayaqq/ygasi/registry/EventRegistry.java
new file mode 100644
index 0000000..ee13faf
--- /dev/null
+++ b/src/main/java/dev/mayaqq/ygasi/registry/EventRegistry.java
@@ -0,0 +1,9 @@
+package dev.mayaqq.ygasi.registry;
+
+import dev.mayaqq.ygasi.events.PlayerConnectEvent;
+
+public class EventRegistry {
+ public static void register() {
+ PlayerConnectEvent.onPlayerConnect();
+ }
+}
diff --git a/src/main/java/dev/mayaqq/ygasi/registry/ItemRegistry.java b/src/main/java/dev/mayaqq/ygasi/registry/ItemRegistry.java
new file mode 100644
index 0000000..61cb93d
--- /dev/null
+++ b/src/main/java/dev/mayaqq/ygasi/registry/ItemRegistry.java
@@ -0,0 +1,25 @@
+package dev.mayaqq.ygasi.registry;
+
+import dev.mayaqq.ygasi.items.SkillBookItem;
+import eu.pb4.polymer.api.item.PolymerItemGroup;
+import eu.pb4.polymer.api.resourcepack.PolymerModelData;
+import eu.pb4.polymer.api.resourcepack.PolymerRPUtils;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.item.Items;
+import net.minecraft.text.Text;
+import net.minecraft.util.Identifier;
+import net.minecraft.util.registry.Registry;
+
+public class ItemRegistry {
+ public static final PolymerItemGroup YGASI_GROUP = PolymerItemGroup.create(new Identifier("ygasi"), Text.translatable("creative.ygasi.group"), () -> new ItemStack(Items.BOOK));
+
+ public static final SkillBookItem SKILL_BOOK = new SkillBookItem(new Item.Settings().group(YGASI_GROUP).maxCount(1), Items.BOOK);
+ public static void register() {
+ PolymerRPUtils.addAssetSource("ygasi");
+
+ PolymerModelData skillBookModelData = PolymerRPUtils.requestModel(Items.BOOK, new Identifier("ygasi", "item/skill_book"));
+
+ Registry.register(Registry.ITEM, "ygasi:skill_book", SKILL_BOOK);
+ }
+}
diff --git a/src/main/java/dev/mayaqq/ygasi/secrete/Frog.java b/src/main/java/dev/mayaqq/ygasi/secrete/Frog.java
new file mode 100644
index 0000000..400d3ab
--- /dev/null
+++ b/src/main/java/dev/mayaqq/ygasi/secrete/Frog.java
@@ -0,0 +1,28 @@
+package dev.mayaqq.ygasi.secrete;
+
+import java.time.LocalDate;
+import java.util.Base64;
+
+import static dev.mayaqq.ygasi.Ygasi.LOGGER;
+
+public class Frog {
+ //its a frog, frog in a blender!
+ public static void blender() {
+ String frog = "ICAgICAgICAgICBfX18KICAgX19fX19fX3xfX198X19fX19fCl9ffF9fX19fX19fX19fX19fX19fX3wKXCAgXV9fX19fX19fX19fX19fX19bIGAtLS0uIAogYC4gICAgICAgICAgICAgICAgICAgX19fICBMCiAgfCAgIF8gICAgICAgICAgICAgIHwgICBMIHwKICB8IC4nX2AtLS5fX18gICBfXyAgfCAgIHwgfCAgICAgIAogIHwoICdvYCAgIC0gLmAuJ18gKSB8ICAgRiBGICAgICAgIAogIHwgYC0uXyAgICAgIGBfYC4vXyB8ICAvIC8gICAgICAgICAKICBKICAgJy9cXCAgICAoIC4nLyApRi4nIC8KICAgTCAsX18vL2AtLS0nYC0nXy9KICAuJwogICBKICAvLScgICAgICAgICcvIEYuJwogICAgTCAgICAgICAgICAgICcgSicKICAgIEogYC5gLS4gLi0nLicgIEYKICAgICBMICBgLi0nLi0nICAgSgogICAgIHxfXyhfXyhfX18pX198CiAgICAgRiAgICAgICAgICAgIEoKICAgIEogICAgICAgICAgICAgIEwKICAgIHxfX19fX19fX19fX19fX3w=";
+
+ if (LocalDate.now().getDayOfWeek().getValue() == 3) {
+ byte[] decodedBytes = Base64.getDecoder().decode(frog);
+ // Split the bytes into lines using the newline character
+ String[] lines = new String(decodedBytes).split("\n");
+ // Print each line
+ for (String line : lines) {
+ LOGGER.info(line);
+ }
+ if (Math.random() < 0.5) {
+ LOGGER.info("It's wednesday my dudes");
+ } else {
+ LOGGER.info("Blender is the best 3D software.");
+ }
+ }
+ }
+}
diff --git a/src/main/java/dev/mayaqq/ygasi/util/YgasiUtils.java b/src/main/java/dev/mayaqq/ygasi/util/AdvUtils.java
index 1c3b267..b2227fe 100644
--- a/src/main/java/dev/mayaqq/ygasi/util/YgasiUtils.java
+++ b/src/main/java/dev/mayaqq/ygasi/util/AdvUtils.java
@@ -5,17 +5,16 @@ import net.minecraft.advancement.PlayerAdvancementTracker;
import net.minecraft.server.ServerAdvancementLoader;
import net.minecraft.server.network.ServerPlayerEntity;
import net.minecraft.util.Identifier;
-import org.jetbrains.annotations.NotNull;
import static dev.mayaqq.ygasi.Ygasi.LOGGER;
-public class YgasiUtils {
- public static void grantAdvancementCriterion(@NotNull ServerPlayerEntity serverPlayerEntity, Identifier advancementIdentifier, String criterion) {
- if (serverPlayerEntity.getServer() == null) {
+public class AdvUtils {
+ public static void grantAdvancementCriterion(ServerPlayerEntity player, Identifier advancementIdentifier, String criterion) {
+ if (player.getServer() == null) {
return;
}
- ServerAdvancementLoader sal = serverPlayerEntity.getServer().getAdvancementLoader();
- PlayerAdvancementTracker tracker = serverPlayerEntity.getAdvancementTracker();
+ ServerAdvancementLoader sal = player.getServer().getAdvancementLoader();
+ PlayerAdvancementTracker tracker = player.getAdvancementTracker();
Advancement advancement = sal.get(advancementIdentifier);
if (advancement == null) {