diff options
Diffstat (limited to 'src/main/java')
28 files changed, 3316 insertions, 0 deletions
diff --git a/src/main/java/rosegoldaddons/Config.java b/src/main/java/rosegoldaddons/Config.java new file mode 100644 index 0000000..0047b65 --- /dev/null +++ b/src/main/java/rosegoldaddons/Config.java @@ -0,0 +1,52 @@ +package rosegoldaddons; + +import gg.essential.vigilance.Vigilant; +import gg.essential.vigilance.data.Property; +import gg.essential.vigilance.data.PropertyType; + +import java.awt.*; +import java.io.File; +import java.util.Arrays; + +import java.io.File; + +public class Config extends Vigilant { + public static Config INSTANCE = new Config(); + + @Property(type = PropertyType.SWITCH, name = "Auto Start Dungeon + Ready", description = "Automatically starts the dungeon and gets ready.", + category = "RoseGoldAddons", subcategory = "General") + public boolean AutoReady = true; + + @Property(type = PropertyType.SWITCH, name = "Party Untransfer", description = "When you really dont wanna be party leader.", + category = "RoseGoldAddons", subcategory = "General") + public boolean AutoUntransfer = true; + + @Property(type = PropertyType.SWITCH, name = "Enderman ESP", description = "**NOT** Needed for enderman macro.", + category = "RoseGoldAddons", subcategory = "General") + public boolean EndermanESP = false; + + @Property(type = PropertyType.SWITCH, name = "Use Utility Items when Swapping", description = "Automatically use Tuba / Orb / Wand when AOTS or Whip swap are enabled", + category = "RoseGoldAddons", subcategory = "General") + public boolean UseUtility = false; + + @Property(type = PropertyType.SLIDER, name = "Sword Swap Delay", description = "How often to swap swords (in miliseconds)", + category = "RoseGoldAddons", subcategory = "General", max = 2000) + public int swapFrequency = 500; + + @Property(type = PropertyType.SLIDER, name = "ItemFrame Terminal Aura Delay", description = "How often to click an item frame (in miliseconds)", + category = "RoseGoldAddons", subcategory = "General", max = 500) + public int auraDelay = 10; + + @Property(type = PropertyType.SLIDER, name = "Smooth Look Velocity", description = "How fast should head rotation changes be (in miliseconds)", + category = "RoseGoldAddons", subcategory = "General", min = 1, max = 200) + public int smoothLookVelocity = 50; + + @Property(type = PropertyType.SLIDER, name = "Macro Range", description = "Look for entities only in radius of the player, 0 = unlimited", + category = "RoseGoldAddons", subcategory = "General", min = 0, max = 100) + public int macroRadius = 0; + + public Config() { + super(new File("./config/rosegoldaddons/config.toml"), "RoseGold Addons"); + initialize(); + } +} diff --git a/src/main/java/rosegoldaddons/FMLLoadingPlugin.java b/src/main/java/rosegoldaddons/FMLLoadingPlugin.java new file mode 100644 index 0000000..57d237e --- /dev/null +++ b/src/main/java/rosegoldaddons/FMLLoadingPlugin.java @@ -0,0 +1,45 @@ +package rosegoldaddons; + +import net.minecraftforge.common.ForgeVersion; +import net.minecraftforge.fml.relauncher.IFMLLoadingPlugin; +import org.spongepowered.asm.launch.MixinBootstrap; +import org.spongepowered.asm.mixin.MixinEnvironment; +import org.spongepowered.asm.mixin.Mixins; + + +import java.util.Map; + +@IFMLLoadingPlugin.MCVersion(ForgeVersion.mcVersion) +public class FMLLoadingPlugin implements IFMLLoadingPlugin { + + public FMLLoadingPlugin() { + MixinBootstrap.init(); + Mixins.addConfiguration("mixins.rosegoldaddons.json"); + MixinEnvironment.getCurrentEnvironment().setObfuscationContext("searge"); + } + + @Override + public String[] getASMTransformerClass() { + return new String[0]; + } + + @Override + public String getModContainerClass() { + return null; + } + + @Override + public String getSetupClass() { + return null; + } + + @Override + public void injectData(Map<String, Object> data) { + + } + + @Override + public String getAccessTransformerClass() { + return null; + } +} diff --git a/src/main/java/rosegoldaddons/Main.java b/src/main/java/rosegoldaddons/Main.java new file mode 100644 index 0000000..9c2a338 --- /dev/null +++ b/src/main/java/rosegoldaddons/Main.java @@ -0,0 +1,159 @@ +package rosegoldaddons; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.GuiScreen; +import net.minecraft.client.settings.KeyBinding; +import net.minecraft.util.ChatComponentText; +import net.minecraftforge.client.ClientCommandHandler; +import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.fml.client.registry.ClientRegistry; +import net.minecraftforge.fml.common.Mod; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; +import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; +import net.minecraftforge.fml.common.gameevent.InputEvent; +import net.minecraftforge.fml.common.gameevent.TickEvent; +import net.minecraftforge.fml.common.network.FMLNetworkEvent; +import org.lwjgl.input.Keyboard; +import rosegoldaddons.commands.*; +import rosegoldaddons.features.BlockBreakAura; +import rosegoldaddons.features.*; +import rosegoldaddons.utils.OpenSkyblockGui; + +import java.io.*; + +@Mod(modid = "timechanger", name = "RoseGold Addons", version = "2.1") +public class Main { + public static GuiScreen display = null; + public static Config configFile = Config.INSTANCE; + public static KeyBinding[] keyBinds = new KeyBinding[11]; + public static int tickCount = 0; + public static boolean endermanMacro = false; + public static boolean powderMacro = false; + public static String u = ""; + public static boolean AOTSMacro = false; + public static boolean SoulWhipMacro = false; + public static boolean verified = false; + public static boolean GhostMacro = false; + public static boolean legitToggle = false; + public static boolean gemNukeToggle = false; + public static boolean wartToggle = false; + public static boolean autoUseItems = false; + public static boolean autoHardStone = false; + + @Mod.EventHandler + public void onFMLInitialization(FMLPreInitializationEvent event) { + File directory = new File(event.getModConfigurationDirectory(), "rosegoldaddons"); + if (!directory.exists()) { + directory.mkdirs(); + } + } + + @Mod.EventHandler + public void init(FMLInitializationEvent event) { + MinecraftForge.EVENT_BUS.register(this); + MinecraftForge.EVENT_BUS.register(new AutoReady()); + MinecraftForge.EVENT_BUS.register(new OpenSkyblockGui()); + MinecraftForge.EVENT_BUS.register(new EndermanMacro()); + MinecraftForge.EVENT_BUS.register(new ItemFrameAura()); + MinecraftForge.EVENT_BUS.register(new PowderMacro()); + MinecraftForge.EVENT_BUS.register(new SwordSwapping()); + MinecraftForge.EVENT_BUS.register(new PartyUntransfer()); + MinecraftForge.EVENT_BUS.register(new GhostMacro()); + MinecraftForge.EVENT_BUS.register(new BlockBreakAura()); + MinecraftForge.EVENT_BUS.register(new WartMacro()); + MinecraftForge.EVENT_BUS.register(new CustomItemMacro()); + MinecraftForge.EVENT_BUS.register(new HardstoneMacro()); + + configFile.initialize(); + ClientCommandHandler.instance.registerCommand(new OpenSettings()); + ClientCommandHandler.instance.registerCommand(new Rosedrobe()); + ClientCommandHandler.instance.registerCommand(new LobbySwap()); + ClientCommandHandler.instance.registerCommand(new Backpack()); + ClientCommandHandler.instance.registerCommand(new WartSetup()); + ClientCommandHandler.instance.registerCommand(new UseCooldown()); + + keyBinds[0] = new KeyBinding("Custom Item Macro Toggle", Keyboard.KEY_NONE, "RoseGold Addons"); + keyBinds[1] = new KeyBinding("Toggle Enderman Macro", Keyboard.KEY_NONE, "RoseGold Addons"); + keyBinds[2] = new KeyBinding("Item Frame Aura", Keyboard.KEY_NONE, "RoseGold Addons"); + keyBinds[3] = new KeyBinding("Powder Macro Toggle", Keyboard.KEY_NONE, "RoseGold Addons"); + keyBinds[4] = new KeyBinding("AOTS SS Toggle", Keyboard.KEY_NONE, "RoseGold Addons"); + keyBinds[5] = new KeyBinding("Soul Whip SS Toggle", Keyboard.KEY_NONE, "RoseGold Addons"); + keyBinds[6] = new KeyBinding("Ghost Macro Toggle", Keyboard.KEY_NONE, "RoseGold Addons"); + keyBinds[7] = new KeyBinding("Item Frame Legit Mode Toggle", Keyboard.KEY_NONE, "RoseGold Addons"); + keyBinds[8] = new KeyBinding("Gemstone Smart Nuke", Keyboard.KEY_NONE, "RoseGold Addons"); + keyBinds[9] = new KeyBinding("Wart Macro", Keyboard.KEY_NONE, "RoseGold Addons"); + keyBinds[10] = new KeyBinding("Hardstone Macro", Keyboard.KEY_NONE, "RoseGold Addons"); + + for (KeyBinding keyBind : keyBinds) { + ClientRegistry.registerKeyBinding(keyBind); + } + } + + @SubscribeEvent + public void tick(TickEvent.ClientTickEvent event) { + if (event.phase != TickEvent.Phase.START) return; + if (display != null) { + try { + Minecraft.getMinecraft().displayGuiScreen(display); + } catch (Exception e) { + e.printStackTrace(); + } + display = null; + } + } + + @SubscribeEvent + public void connect(FMLNetworkEvent.ClientConnectedToServerEvent event) { + + } + + @SubscribeEvent + public void key(InputEvent.KeyInputEvent event) { + if (keyBinds[0].isPressed()) { + autoUseItems = !autoUseItems; + String str = autoUseItems ? "§aCustom Item Macro Activated" : "§cCustom Item Macro Deactivated"; + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText(str)); + } else if (keyBinds[1].isPressed()) { + endermanMacro = !endermanMacro; + String str = endermanMacro ? "§aZealot Macro Activated" : "§cZealot Macro Deactivated"; + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText(str)); + } else if (keyBinds[2].isPressed()) { + ItemFrameAura.mainAura(); + } else if (keyBinds[3].isPressed()) { + powderMacro = !powderMacro; + String str = powderMacro ? "§aPowder Macro Activated" : "§cPowder Macro Deactivated"; + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText(str)); + } else if (keyBinds[4].isPressed()) { + AOTSMacro = !AOTSMacro; + String str = AOTSMacro ? "§aAOTS Macro Activated" : "§cAOTS Macro Deactivated"; + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText(str)); + } else if (keyBinds[5].isPressed()) { + SoulWhipMacro = !SoulWhipMacro; + String str = SoulWhipMacro ? "§aSoul Whip Macro Activated" : "§cSoul Whip Macro Deactivated"; + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText(str)); + } else if(keyBinds[6].isPressed()) { + GhostMacro = !GhostMacro; + String str = GhostMacro ? "§aGhost Macro Activated" : "§cGhost Macro Deactivated"; + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText(str)); + } else if(keyBinds[7].isPressed()) { + legitToggle = !legitToggle; + String str = legitToggle ? "§aLegit Mode Activated" : "§cLegit Mode Deactivated"; + SwordSwapping.tickCount = 0; + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText(str)); + } else if(keyBinds[8].isPressed()) { + gemNukeToggle = !gemNukeToggle; + String str = gemNukeToggle ? "§aGemstone Nuke Activated" : "§cGemstone Nuke Deactivated"; + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText(str)); + } else if(keyBinds[9].isPressed()) { + wartToggle = !wartToggle; + String str = wartToggle ? "§aWart Macro Activated" : "§cWart Macro Deactivated"; + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText(str)); + } else if(keyBinds[10].isPressed()) { + autoHardStone = !autoHardStone; + String str = autoHardStone ? "§aHardstone Macro Activated" : "§cHardstone Macro Deactivated"; + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText(str)); + } + } + +} diff --git a/src/main/java/rosegoldaddons/OpenSettings.java b/src/main/java/rosegoldaddons/OpenSettings.java new file mode 100644 index 0000000..0e79b74 --- /dev/null +++ b/src/main/java/rosegoldaddons/OpenSettings.java @@ -0,0 +1,57 @@ +package rosegoldaddons; + +import net.minecraft.command.CommandBase; +import net.minecraft.command.ICommand; +import net.minecraft.command.ICommandSender; +import net.minecraft.util.BlockPos; +import org.jetbrains.annotations.NotNull; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +public class OpenSettings implements ICommand { + @Override + public String getCommandName() { + return "rosegoldaddons"; + } + + @Override + public String getCommandUsage(ICommandSender sender) { + return "/" + getCommandName(); + } + + @Override + public List<String> getCommandAliases() { + return new ArrayList<>(Arrays.asList("rosegoldaddons", "rga")); + } + + @Override + public void processCommand(ICommandSender sender, String[] args) { + /*EntityPlayerSP player = (EntityPlayerSP) sender; + player.addChatMessage(new ChatComponentText("hi "+player.getName()+"!"));*/ + Main.display = Main.configFile.gui(); + return; + } + + @Override + public boolean canCommandSenderUseCommand(ICommandSender sender) { + return true; + } + + @Override + public List<String> addTabCompletionOptions(ICommandSender sender, String[] args, BlockPos pos) { + return new ArrayList<>(); + } + + @Override + public boolean isUsernameIndex(String[] args, int index) { + return false; + } + + @Override + public int compareTo(@NotNull ICommand o) { + return 0; + } +} + diff --git a/src/main/java/rosegoldaddons/commands/Backpack.java b/src/main/java/rosegoldaddons/commands/Backpack.java new file mode 100644 index 0000000..f69cd87 --- /dev/null +++ b/src/main/java/rosegoldaddons/commands/Backpack.java @@ -0,0 +1,87 @@ +package rosegoldaddons.commands; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.inventory.GuiChest; +import net.minecraft.command.CommandBase; +import net.minecraft.command.CommandException; +import net.minecraft.command.ICommand; +import net.minecraft.command.ICommandSender; +import net.minecraft.inventory.Container; +import net.minecraft.inventory.ContainerChest; +import net.minecraft.inventory.Slot; +import net.minecraft.util.BlockPos; +import net.minecraft.util.ChatComponentText; +import net.minecraft.util.StringUtils; +import net.minecraftforge.client.event.GuiScreenEvent; +import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; +import org.jetbrains.annotations.NotNull; +import rosegoldaddons.Main; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +public class Backpack implements ICommand { + public static boolean openBP = false; + public static int bpSlot = 0; + + @Override + public String getCommandName() { + return "backpack"; + } + + @Override + public String getCommandUsage(ICommandSender sender) { + return "/" + getCommandName(); + } + + @Override + public List<String> getCommandAliases() { + return new ArrayList<>(Arrays.asList("backpack", "bp")); + } + + @Override + public void processCommand(ICommandSender sender, String[] args) throws CommandException { + if (args.length == 0) { + Minecraft.getMinecraft().thePlayer.sendChatMessage("/storage"); + } else { + if (isNumeric(args[0])) { + Minecraft.getMinecraft().thePlayer.sendChatMessage("/storage"); + openBP = true; + bpSlot = Integer.parseInt(args[0]); + } else { + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText("§cInvalid Arguments.")); + return; + } + } + } + + @Override + public boolean canCommandSenderUseCommand(ICommandSender sender) { + return true; + } + + @Override + public List<String> addTabCompletionOptions(ICommandSender sender, String[] args, BlockPos pos) { + return new ArrayList<>(); + } + + @Override + public boolean isUsernameIndex(String[] args, int index) { + return false; + } + + private boolean isNumeric(String str) { + try { + Double.parseDouble(str); + return true; + } catch (NumberFormatException e) { + return false; + } + } + + @Override + public int compareTo(@NotNull ICommand o) { + return 0; + } +} diff --git a/src/main/java/rosegoldaddons/commands/LobbySwap.java b/src/main/java/rosegoldaddons/commands/LobbySwap.java new file mode 100644 index 0000000..517354b --- /dev/null +++ b/src/main/java/rosegoldaddons/commands/LobbySwap.java @@ -0,0 +1,57 @@ +package rosegoldaddons.commands; + +import net.minecraft.client.Minecraft; +import net.minecraft.command.CommandException; +import net.minecraft.command.ICommand; +import net.minecraft.command.ICommandSender; +import net.minecraft.util.BlockPos; +import org.jetbrains.annotations.NotNull; + +import java.util.ArrayList; +import java.util.List; + +public class LobbySwap implements ICommand { + public static boolean swapLobby = false; + + @Override + public String getCommandName() { + return "lobbyswap"; + } + + @Override + public String getCommandUsage(ICommandSender sender) { + return "/" + getCommandName(); + } + + @Override + public List<String> getCommandAliases() { + return new ArrayList<>(); + } + + @Override + public void processCommand(ICommandSender sender, String[] args) throws CommandException { + swapLobby = true; + Minecraft.getMinecraft().thePlayer.sendChatMessage("/sbmenu"); + + } + + @Override + public boolean canCommandSenderUseCommand(ICommandSender sender) { + return true; + } + + @Override + public List<String> addTabCompletionOptions(ICommandSender sender, String[] args, BlockPos pos) { + return null; + } + + @Override + public boolean isUsernameIndex(String[] args, int index) { + return false; + } + + @Override + public int compareTo(@NotNull ICommand o) { + return 0; + } +} diff --git a/src/main/java/rosegoldaddons/commands/Rosedrobe.java b/src/main/java/rosegoldaddons/commands/Rosedrobe.java new file mode 100644 index 0000000..1f7fd62 --- /dev/null +++ b/src/main/java/rosegoldaddons/commands/Rosedrobe.java @@ -0,0 +1,90 @@ +package rosegoldaddons.commands; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.inventory.GuiChest; +import net.minecraft.command.CommandBase; +import net.minecraft.command.CommandException; +import net.minecraft.command.ICommand; +import net.minecraft.command.ICommandSender; +import net.minecraft.inventory.Container; +import net.minecraft.inventory.ContainerChest; +import net.minecraft.inventory.Slot; +import net.minecraft.util.BlockPos; +import net.minecraft.util.ChatComponentText; +import net.minecraft.util.StringUtils; +import net.minecraftforge.client.event.GuiScreenEvent; +import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; +import org.jetbrains.annotations.NotNull; +import rosegoldaddons.Main; +import scala.actors.threadpool.Arrays; + +import java.util.ArrayList; +import java.util.List; + +public class Rosedrobe implements ICommand { + public static boolean openWardrobe = false; + public static int slot = 0; + int windowId; + + @Override + public String getCommandName() { + return "rosedrobe"; + } + + @Override + public String getCommandUsage(ICommandSender sender) { + return "/" + getCommandName(); + } + + @Override + public List<String> getCommandAliases() { + return new ArrayList<>(); + } + + @Override + public void processCommand(ICommandSender sender, String[] args) throws CommandException { + if (args.length == 0) { + Minecraft.getMinecraft().thePlayer.sendChatMessage("/pets"); + slot = 0; + openWardrobe = true; + } else { + if (isNumeric(args[0])) { + Minecraft.getMinecraft().thePlayer.sendChatMessage("/pets"); + openWardrobe = true; + slot = Integer.parseInt(args[0]); + } else { + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText("§cInvalid Arguments.")); + return; + } + } + } + + @Override + public boolean canCommandSenderUseCommand(ICommandSender sender) { + return true; + } + + @Override + public List<String> addTabCompletionOptions(ICommandSender sender, String[] args, BlockPos pos) { + return new ArrayList<>(); + } + + @Override + public boolean isUsernameIndex(String[] args, int index) { + return false; + } + + private boolean isNumeric(String str) { + try { + Double.parseDouble(str); + return true; + } catch (NumberFormatException e) { + return false; + } + } + + @Override + public int compareTo(@NotNull ICommand o) { + return 0; + } +} diff --git a/src/main/java/rosegoldaddons/commands/UseCooldown.java b/src/main/java/rosegoldaddons/commands/UseCooldown.java new file mode 100644 index 0000000..912c75a --- /dev/null +++ b/src/main/java/rosegoldaddons/commands/UseCooldown.java @@ -0,0 +1,90 @@ +package rosegoldaddons.commands; + +import net.minecraft.client.Minecraft; +import net.minecraft.command.CommandException; +import net.minecraft.command.ICommand; +import net.minecraft.command.ICommandSender; +import net.minecraft.entity.player.InventoryPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.util.BlockPos; +import net.minecraft.util.ChatComponentText; +import org.jetbrains.annotations.NotNull; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; + +public class UseCooldown implements ICommand { + public static HashMap<String, Integer> items = new HashMap<String, Integer>(); + + @Override + public String getCommandName() { + return "usecooldown"; + } + + @Override + public String getCommandUsage(ICommandSender sender) { + return "/" + getCommandName(); + } + + @Override + public List<String> getCommandAliases() { + return new ArrayList<>(); + } + + @Override + public void processCommand(ICommandSender sender, String[] args) throws CommandException { + if (args.length == 1 && isNumeric(args[0])) { + InventoryPlayer inv = Minecraft.getMinecraft().thePlayer.inventory; + + ItemStack curStack = inv.getStackInSlot(Minecraft.getMinecraft().thePlayer.inventory.currentItem); + if (curStack != null) { + int cd = Integer.parseInt(args[0]); + if (cd == 0) { + items.remove(curStack.getDisplayName()); + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText("§aSuccessfully Removed " + curStack.getDisplayName() + "§a.")); + return; + } + if (cd < 1) { + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText("§cInvalid Miliseconds, Minimum delay 1 Milisecond.")); + return; + } + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText("§aSuccessfully Added " + curStack.getDisplayName() + "§a with delay of " + cd + " ms.")); + items.put(curStack.getDisplayName(), cd); + } else { + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText("§cError getting current held item.")); + } + } else { + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText("§cInvalid Arguments.")); + } + } + + @Override + public boolean canCommandSenderUseCommand(ICommandSender sender) { + return true; + } + + @Override + public List<String> addTabCompletionOptions(ICommandSender sender, String[] args, BlockPos pos) { + return new ArrayList<>(); + } + + @Override + public boolean isUsernameIndex(String[] args, int index) { + return false; + } + + private boolean isNumeric(String str) { + try { + Double.parseDouble(str); + return true; + } catch (NumberFormatException e) { + return false; + } + } + + @Override + public int compareTo(@NotNull ICommand o) { + return 0; + } +} diff --git a/src/main/java/rosegoldaddons/commands/WartSetup.java b/src/main/java/rosegoldaddons/commands/WartSetup.java new file mode 100644 index 0000000..a5cca13 --- /dev/null +++ b/src/main/java/rosegoldaddons/commands/WartSetup.java @@ -0,0 +1,82 @@ +package rosegoldaddons.commands; + +import net.minecraft.client.Minecraft; +import net.minecraft.command.CommandException; +import net.minecraft.command.ICommand; +import net.minecraft.command.ICommandSender; +import net.minecraft.util.BlockPos; +import net.minecraft.util.ChatComponentText; +import org.jetbrains.annotations.NotNull; + +import java.util.ArrayList; +import java.util.List; + +public class WartSetup implements ICommand { + public static int wartEnd = 99999; + public static String cardinal = "west"; + + @Override + public String getCommandName() { + return "wartsetup"; + } + + @Override + public String getCommandUsage(ICommandSender sender) { + return "/" + getCommandName(); + } + + @Override + public List<String> getCommandAliases() { + return new ArrayList<>(); + } + + @Override + public void processCommand(ICommandSender sender, String[] args) throws CommandException { + if(args.length == 2) { + if(args[0].equals("west")) { + cardinal = "west"; + } else if(args[0].equals("north")) { + cardinal = "north"; + } else if(args[0].equals("east")) { + cardinal = "east"; + } else if(args[0].equals("south")) { + cardinal = "south"; + } + + if(isNumeric(args[1])) { + wartEnd = (int) Math.floor(Double.parseDouble(args[1])); + } + } else { + Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText("§cInvalid Arguments.")); + } + } + + @Override + public boolean canCommandSenderUseCommand(ICommandSender sender) { + return true; + } + + @Override + public List<String> addTabCompletionOptions(ICommandSender sender, String[] args, BlockPos pos) { + return new ArrayList<>(); + } + + @Override + public boolean isUsernameIndex(String[] args, int index) { + return false; + } + + @Override + public int compareTo(@NotNull ICommand o) { + return 0; + } + + private boolean isNumeric(String str) { + try { + Double.parseDouble(str); + return true; + } catch (NumberFormatException e) { + return false; + } + } +} diff --git a/src/main/java/rosegoldaddons/events/ReceivePacketEvent.java b/src/main/java/rosegoldaddons/events/ReceivePacketEvent.java new file mode 100644 index 0000000..e658a1e --- /dev/null +++ b/src/main/java/rosegoldaddons/events/ReceivePacketEvent.java @@ -0,0 +1,16 @@ +package rosegoldaddons.events; + +import net.minecraft.network.Packet; +import net.minecraftforge.fml.common.eventhandler.Cancelable; +import net.minecraftforge.fml.common.eventhandler.Event; + +@Cancelable +public class ReceivePacketEvent extends Event { + + public Packet<?> packet; + + public ReceivePacketEvent(Packet<?> packet) { + this.packet = packet; + } + +} diff --git a/src/main/java/rosegoldaddons/events/RenderLivingEntityEvent.java b/src/main/java/rosegoldaddons/events/RenderLivingEntityEvent.java new file mode 100644 index 0000000..8a6c9ed --- /dev/null +++ b/src/main/java/rosegoldaddons/events/RenderLivingEntityEvent.java @@ -0,0 +1,26 @@ +package rosegoldaddons.events; + +import net.minecraft.client.model.ModelBase; +import net.minecraft. |
