aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--features/betterGuis/dungeonReadyGui.js206
-rw-r--r--features/betterGuis/index.js107
-rw-r--r--features/betterGuis/museumGui.js767
-rw-r--r--features/dungeonMap/index.js55
-rw-r--r--features/dungeonSolvers/index.js16
5 files changed, 693 insertions, 458 deletions
diff --git a/features/betterGuis/dungeonReadyGui.js b/features/betterGuis/dungeonReadyGui.js
index 956d4a6..a0c928c 100644
--- a/features/betterGuis/dungeonReadyGui.js
+++ b/features/betterGuis/dungeonReadyGui.js
@@ -1,32 +1,206 @@
-import { SoopyGui } from "../../../guimanager"
+import { SoopyGui, SoopyRenderEvent } from "../../../guimanager"
+import SoopyKeyPressEvent from "../../../guimanager/EventListener/SoopyKeyPressEvent"
+import SoopyMouseClickEvent from "../../../guimanager/EventListener/SoopyMouseClickEvent"
+import BoxWithTextAndDescription from "../../../guimanager/GuiElement/BoxWithTextAndDescription"
+import ButtonWithArrow from "../../../guimanager/GuiElement/ButtonWithArrow"
+import SoopyGuiElement from "../../../guimanager/GuiElement/SoopyGuiElement"
const ContainerChest = Java.type("net.minecraft.inventory.ContainerChest")
class DungeonReadyGui {
- constructor(){
+ constructor() {
this.checkMenu = false
this.soopyGui = new SoopyGui()
this.soopyGui.optimisedLocations = true
+
+ this.mainPage = new SoopyGuiElement().setLocation(0, 0, 1, 1)
+ this.soopyGui.element.addChild(this.mainPage)
+ this.soopyGui.element.addEvent(new SoopyKeyPressEvent().setHandler((...args) => {
+ this.keyPress(...args)
+ }))
+
+
+ this.startButton = new ButtonWithArrow().setText("§0Start Dungeon").setLocation(0.25, 0.25, 0.5, 0.5).addEvent(new SoopyMouseClickEvent().setHandler(() => {
+ this.startDungeon()
+ }))
+ this.soopyGui.element.addChild(this.startButton)
+
+ this.closeMenu = 0
+ this.nameToId = {}
+ this.nextId = 0
+ this.readyBoxes = []
+ for (let i = 0; i < 4; i++) {
+ let readyBox = new BoxWithTextAndDescription().setText("§0").setDesc("§0").setLocation(0.1 + 0.2 * i, 0.75, 0.15, 0.15).setColor(255, 150, 150)
+ this.readyBoxes.push(readyBox)
+
+
+ readyBox.text.setLocation(0, 0, 1, 0.6)
+ readyBox.description.setLocation(0.05, 0.6, 0.9, 0.4)
+ readyBox.visable = false
+
+
+ this.mainPage.addChild(readyBox)
+ }
+
+ this.classBoxes = []
+ this.currentPlayerClass = -1
+ this.classes = { "Healer": new Item("minecraft:potion"), "Mage": new Item("minecraft:blaze_rod"), "Berserker": new Item("minecraft:iron_sword"), "Archer": new Item("minecraft:bow"), "Tank": new Item("minecraft:leather_chestplate") }
+ Object.keys(this.classes).forEach((clas, i) => {
+ let classBox = new BoxWithTextAndDescription().setText("§0" + clas + "&7 - 0").setDesc("§0").setLocation(0.1 + 0.1625 * i, 0.1, 0.15, 0.1)
+ this.classBoxes.push(classBox)
+
+ let classIndex = i
+
+ classBox.text.setLocation(0, 0, 1, 0.6)
+ classBox.description.setLocation(0.05, 0.6, 0.9, 0.4)
+ classBox.addEvent(new SoopyRenderEvent().setHandler(() => {
+ let scale = 16 / Math.min(classBox.location.getWidthExact(), classBox.location.getHeightExact() / 2) * 3
+ this.classes[clas].draw(classBox.location.getXExact() + classBox.location.getWidthExact() / 2 - 16 * scale / 2, classBox.location.getYExact() + classBox.location.getHeightExact() - 16 * scale - 4, scale)
+ })).addEvent(new SoopyMouseClickEvent().setHandler(() => {
+ this.clickedClass(classIndex)
+ }))
+
+ this.mainPage.addChild(classBox)
+ })
+
+ this.playerReadyButton = new ButtonWithArrow().setText("§0Ready").setLocation(0.33, 0.33, 0.33, 0.33).setColor(255, 150, 150).addEvent(new SoopyMouseClickEvent().setHandler(() => {
+ this.ready()
+ }))
+ this.mainPage.addChild(this.playerReadyButton)
}
- tickMenu(){
+ startDungeon() {
+ if (Player.getContainer().getName() !== "Start Dungeon?") return
+ this.startButton.visable = false
+ Player.getContainer().click(13, false, "MIDDLE")
}
- guiOpened(event){
+ ready() {
+ if (!Player.getContainer().getName().startsWith("Catacombs - Floor ")) return
+ this.playerReadyButton.setColor(150, 150, 150)
+ for (let i = 0; i < 5; i++) {
+ if (ChatLib.removeFormatting(Player.getContainer().getStackInSlot(3 + i).getName().split(" ").pop()) === Player.getName()) {
+ Player.getContainer().drop(12 + i, false)
+ }
+ }
+ }
+
+ clickedClass(classIndex) {
+ if (!Player.getContainer().getName().startsWith("Catacombs - Floor ")) return
+
+ Player.getContainer().drop(2 + 4 * 9 + classIndex, false)
+
+ this.classBoxes[classIndex].setColor(150, 150, 150)
+
+ if (this.currentPlayerClass !== -1) this.classBoxes[this.currentPlayerClass].setColor(253, 255, 227)
+ }
+
+ reset() {
+ this.startButton.visable = true
+ this.playerReadyButton.setColor(255, 150, 150)
+
+ this.nameToId = {}
+ this.nextId = 0
+ this.closeMenu = 0
+
+ this.readyBoxes.forEach(b => {
+ b.visable = false
+ })
+ }
+
+ readyInOneSecond() {
+ this.closeMenu = Date.now() + 1000
+ }
+
+ tick() {
+ if (!this.soopyGui.ctGui.isOpen()) return
+
+ if (this.closeMenu > 0 && Date.now() > this.closeMenu) {
+ this.soopyGui.close()
+ Client.currentGui.close()
+ this.closeMenu = 0
+ return
+ }
+
+ if (Player.getContainer().getName().startsWith("Catacombs - Floor ")) {
+ this.startButton.visable = false
+
+ let clickingClassButton = -1
+
+ for (let i = 0; i < 5; i++) {
+ //ready up buttons
+ if (Player.getContainer().getStackInSlot(3 + i)) {
+ if (ChatLib.removeFormatting(Player.getContainer().getStackInSlot(3 + i).getName().split(" ").pop()) === Player.getName()) {
+ if (Player.getContainer().getStackInSlot(12 + i)) {
+ if (ChatLib.removeFormatting(Player.getContainer().getStackInSlot(12 + i).getName()) === "Ready") {
+ this.playerReadyButton.setColor(150, 255, 150)
+ } else {
+ this.playerReadyButton.setColor(255, 150, 150)
+ }
+ } else {
+ this.playerReadyButton.setColor(150, 150, 150)
+ }
+ } else {
+ let boxId = this.nameToId[ChatLib.removeFormatting(Player.getContainer().getStackInSlot(3 + i).getName().split(" ").pop())]
+
+ if (boxId) {
+ if (ChatLib.removeFormatting(Player.getContainer().getStackInSlot(12 + i).getName()) === "Ready") {
+ this.readyBoxes[boxId].setColor(150, 255, 150)
+ } else {
+ this.readyBoxes[boxId].setColor(255, 150, 150)
+ }
+ this.readyBoxes[boxId].setDesc("§0" + Player.getContainer().getStackInSlot(3 + i).getLore()[1])
+ }
+ }
+ }
+
+
+ //select class buttons
+ if (Player.getContainer().getStackInSlot(2 + 4 * 9 + i)) {
+ if (Player.getContainer().getStackInSlot(2 + 4 * 9 + i).getDamage() === 10) {
+ this.currentPlayerClass = i
+ this.classBoxes[i].setColor(250, 255, 150)
+ } else {
+ this.classBoxes[i].setColor(253, 255, 227)
+ }
+ this.classBoxes[i].setText("§0" + Object.keys(this.classes)[i] + "§7 - " + ChatLib.removeFormatting(Player.getContainer().getStackInSlot(2 + 4 * 9 + i).getName().split(" ")[0])).setLore(Player.getContainer().getStackInSlot(2 + 4 * 9 + i).getLore())
+ } else {
+ clickingClassButton = i
+ }
+ }
+
+ if (clickingClassButton !== -1) {
+ this.classBoxes[clickingClassButton].setColor(150, 150, 150)
+ if (this.currentPlayerClass !== -1) this.classBoxes[this.currentPlayerClass].setColor(253, 255, 227)
+ }
+ }
+
+ World.getAllPlayers().filter(p => p.getPing() === 1).forEach(p => {
+ if (p.getUUID().toString() === Player.getUUID().toString()) return
+
+ if (p.getName() in this.nameToId) return
+
+ this.nameToId[p.getName()] = this.nextId++
+
+ this.readyBoxes[this.nameToId[p.getName()]].setText("§0" + p.getName()).visable = true
+ })
+ }
+
+ guiOpened(event) {
let name = ""
- if(event.gui && event.gui.field_147002_h instanceof ContainerChest){
+ if (event.gui && event.gui.field_147002_h instanceof ContainerChest) {
name = event.gui.field_147002_h.func_85151_d().func_145748_c_().func_150260_c()
}
- if(this.soopyGui.ctGui.isOpen()){
- if(event.gui && event.gui.field_147002_h){
+ if (this.soopyGui.ctGui.isOpen()) {
+ if (event.gui && event.gui.field_147002_h) {
Player.getPlayer().field_71070_bA = event.gui.field_147002_h
- if(!Player.getContainer().getName().startsWith("Catacombs - Floor ")){
- return
+ if (!Player.getContainer().getName().startsWith("Catacombs - Floor ")) {
+ return
}
event.gui = this.soopyGui.ctGui
@@ -34,17 +208,21 @@ class DungeonReadyGui {
}
return
}
- if(name === "Start Dungeon?" || name.startsWith("Catacombs - Floor ")){
- if(event.gui && event.gui.field_147002_h) Player.getPlayer().field_71070_bA = event.gui.field_147002_h
+ if (name === "Start Dungeon?" || name.startsWith("Catacombs - Floor ")) {
+ if (event.gui && event.gui.field_147002_h) Player.getPlayer().field_71070_bA = event.gui.field_147002_h
this.soopyGui.open()
event.gui = this.soopyGui.ctGui
}
}
- tick(){
- if(this.soopyGui.ctGui.isOpen()){
- this.tickMenu()
+ keyPress(key, keyId) {
+ if (keyId === 1) { //escape key
+ // this.dontOpen = 1
+ Client.currentGui.close()
+ }
+ if (keyId === 18) { //'e' key
+ Client.currentGui.close()
}
}
}
diff --git a/features/betterGuis/index.js b/features/betterGuis/index.js
index 1e9c144..128b2d1 100644
--- a/features/betterGuis/index.js
+++ b/features/betterGuis/index.js
@@ -5,25 +5,25 @@ import logger from "../../logger";
import { f } from "../../../mappings/mappings";
import ToggleSetting from "../settings/settingThings/toggle";
import MuseumGui from "./museumGui.js";
-// import DungeonReadyGui from "./dungeonReadyGui";
+import DungeonReadyGui from "./dungeonReadyGui";
class BetterGuis extends Feature {
constructor() {
super()
}
- onEnable(){
+ onEnable() {
this.initVariables()
this.museumGui = new MuseumGui()
- // this.dungeonReady = new DungeonReadyGui()
+ this.dungeonReady = new DungeonReadyGui()
this.replaceSbMenuClicks = new ToggleSetting("Improve Clicks on SBMENU", "This will change clicks to middle clicks, AND use commands where possible (eg /pets)", true, "sbmenu_clicks", this)
- this.reliableSbMenuClicks = {getValue: ()=>false}//removed because hypixel fixed, code kept incase hypixel adds back bug later //new ToggleSetting("Make SBMENU clicks reliable", "This will delay clicks on sbmenu to time them so they dont get canceled", true, "sbmenu_time", this)
-
+ this.reliableSbMenuClicks = { getValue: () => false }//removed because hypixel fixed, code kept incase hypixel adds back bug later //new ToggleSetting("Make SBMENU clicks reliable", "This will delay clicks on sbmenu to time them so they dont get canceled", true, "sbmenu_time", this)
+
this.museumGuiEnabled = new ToggleSetting("Custom Museum GUI", "Custom gui for the Museum", true, "custom_museum_enabled", this)
- // this.dungeonReadyGuiEnabled = new ToggleSetting("Custom Dungeon Ready GUI", "Custom gui for the dungeon ready up menu", true, "custom_dungeon_ready_enabled", this)
-
+ this.dungeonReadyGuiEnabled = new ToggleSetting("Custom Dungeon Ready GUI (UNFINISHED)", "Custom gui for the dungeon ready up menu", false, "custom_dungeon_ready_enabled", this)
+
this.lastWindowId = 0
this.shouldHold = 10
this.clickSlot = -1
@@ -98,106 +98,115 @@ class BetterGuis extends Feature {
"Active Effects"
]
+ this.registerChat("&r&aDungeon starts in 1 second.&r", () => {
+ this.dungeonReady.readyInOneSecond.call(this.dungeonReady)
+ })
+ this.registerChat("&r&aDungeon starts in 1 second. Get ready!&r", () => {
+ this.dungeonReady.readyInOneSecond.call(this.dungeonReady)
+ })
this.registerEvent("guiMouseClick", this.guiClicked)
- this.registerEvent("guiOpened", (event)=>{
- if(this.museumGuiEnabled.getValue()) this.museumGui.guiOpened.call(this.museumGui, event)
- // if(this.dungeonReadyGuiEnabled.getValue()) this.dungeonReady.guiOpened.call(this.dungeonReady, event)
+ this.registerEvent("guiOpened", (event) => {
+ if (this.museumGuiEnabled.getValue()) this.museumGui.guiOpened.call(this.museumGui, event)
+ if (this.dungeonReadyGuiEnabled.getValue()) this.dungeonReady.guiOpened.call(this.dungeonReady, event)
+ })
+ this.registerEvent("worldLoad", () => {
+ this.dungeonReady.reset()
})
this.registerStep(true, 10, this.step)
- this.registerEvent("worldUnload", ()=>{this.museumGui.saveMuseumCache.call(this.museumGui)})
- this.registerStep(false, 30, ()=>{this.museumGui.saveMuseumCache.call(this.museumGui)})
+ this.registerEvent("worldUnload", () => { this.museumGui.saveMuseumCache.call(this.museumGui) })
+ this.registerStep(false, 30, () => { this.museumGui.saveMuseumCache.call(this.museumGui) })
}
- guiClicked(mouseX, mouseY, button, gui, event){
- if(gui.class.toString()==="class net.minecraft.client.gui.inventory.GuiChest" && button===0 && this.replaceSbMenuClicks.getValue()){
-
+ guiClicked(mouseX, mouseY, button, gui, event) {
+ if (gui.class.toString() === "class net.minecraft.client.gui.inventory.GuiChest" && button === 0 && this.replaceSbMenuClicks.getValue()) {
+
let hoveredSlot = gui.getSlotUnderMouse()
- if(!hoveredSlot) return
+ if (!hoveredSlot) return
let hoveredSlotId = hoveredSlot[f.slotNumber]
// logger.logMessage(hoveredSlotId, 4)
- if(this.guiSlotClicked(ChatLib.removeFormatting(Player.getContainer().getName()), hoveredSlotId)){
+ if (this.guiSlotClicked(ChatLib.removeFormatting(Player.getContainer().getName()), hoveredSlotId)) {
cancel(event)
}
}
}
- step(){
- if(this.museumGuiEnabled.getValue()) this.museumGui.tick.call(this.museumGui)
- // if(this.dungeonReadyGuiEnabled.getValue()) this.dungeonReady.tick.call(this.dungeonReady)
-
- if(this.replaceSbMenuClicks.getValue()){
- if(Player.getContainer() && Player.getContainer().getName()==="SkyBlock Menu"){
- if(this.lastWindowId === 0){
+ step() {
+ if (this.museumGuiEnabled.getValue()) this.museumGui.tick.call(this.museumGui)
+ if (this.dungeonReadyGuiEnabled.getValue()) this.dungeonReady.tick.call(this.dungeonReady)
+
+ if (this.replaceSbMenuClicks.getValue()) {
+ if (Player.getContainer() && Player.getContainer().getName() === "SkyBlock Menu") {
+ if (this.lastWindowId === 0) {
this.lastWindowId = Player.getContainer().getWindowId()
return;
}
- if(Player.getContainer().getWindowId()!==this.lastWindowId){
+ if (Player.getContainer().getWindowId() !== this.lastWindowId) {
this.lastWindowId = Player.getContainer().getWindowId()
- this.shouldHold+= 10
- if(Date.now()-this.clickSlotTime >1000){
+ this.shouldHold += 10
+ if (Date.now() - this.clickSlotTime > 1000) {
this.clickSlot = -1
}
- if(this.clickSlot && this.clickSlot != -1){
+ if (this.clickSlot && this.clickSlot != -1) {
Player.getContainer().click(this.clickSlot, false, "MIDDLE")
this.clickSlot = -1
}
- }else{
+ } else {
this.shouldHold--
}
- }else{
- this.lastWindowId =0
+ } else {
+ this.lastWindowId = 0
}
}
}
- guiSlotClicked(inventoryName, slotId){
- if(inventoryName.endsWith(" Sack")) return false
- switch(inventoryName){
+ guiSlotClicked(inventoryName, slotId) {
+ if (inventoryName.endsWith(" Sack")) return false
+ switch (inventoryName) {
case "SkyBlock Menu":
- switch(slotId){
+ switch (slotId) {
case 30:
ChatLib.command("pets")
- break
+ break
case 25:
ChatLib.command("storage")
- break
+ break
default:
- if(this.shouldHold>0 && this.reliableSbMenuClicks.getValue()){
+ if (this.shouldHold > 0 && this.reliableSbMenuClicks.getValue()) {
this.clickSlot = slotId
this.clickSlotTime = Date.now()
- }else{
+ } else {
Player.getContainer().click(slotId, false, "MIDDLE")
}
- break;
+ break;
}
return true
- break
+ break
default:
- if(this.middleClickGuis.includes(inventoryName)){
+ if (this.middleClickGuis.includes(inventoryName)) {
Player.getContainer().click(slotId, false, "MIDDLE")
return true
}
- for(let thing of this.middleClickStartsWith){
- if(inventoryName.startsWith(thing)){
+ for (let thing of this.middleClickStartsWith) {
+ if (inventoryName.startsWith(thing)) {
Player.getContainer().click(slotId, false, "MIDDLE")
return true
}
}
- for(let thing of this.middleClickEndsWith){
- if(inventoryName.endsWith(thing)){
+ for (let thing of this.middleClickEndsWith) {
+ if (inventoryName.endsWith(thing)) {
Player.getContainer().click(slotId, false, "MIDDLE")
return true
}
}
return false
- break
+ break
}
}
- initVariables(){
+ initVariables() {
this.replaceSbMenuClicks = undefined
this.lastWindowId = undefined
this.shouldHold = undefined
@@ -211,7 +220,7 @@ class BetterGuis extends Feature {
this.museumGui = undefined
}
- onDisable(){
+ onDisable() {
this.initVariables()
}
}
diff --git a/features/betterGuis/museumGui.js b/features/betterGuis/museumGui.js
index 0f7a3e9..2e6fb79 100644
--- a/features/betterGuis/museumGui.js
+++ b/features/betterGuis/museumGui.js
@@ -20,46 +20,46 @@ import * as utils from "../../utils/utils"
const ContainerChest = Java.type("net.minecraft.inventory.ContainerChest")
class MuseumGui {
- constructor(){
+ constructor() {
this.checkMenu = false
this.isInMuseum = false
this.guiOpenTickThing = false
this.dontOpen = 0
this.lastClosed = 0
- this.itemsInPages = JSON.parse(FileLib.read("soopyAddonsData","museumItemsCache.json") || "{}") || {}
+ this.itemsInPages = JSON.parse(FileLib.read("soopyAddonsData", "museumItemsCache.json") || "{}") || {}
this.itemsInPagesSaved = true
this.soopyGui = new SoopyGui()
this.soopyGui.optimisedLocations = true
- this.soopyGui.element.addEvent(new SoopyKeyPressEvent().setHandler((...args)=>{
+ this.soopyGui.element.addEvent(new SoopyKeyPressEvent().setHandler((...args) => {
this.keyPress(...args)
}))
- this.mainPage = new SoopyGuiElement().setLocation(0,0,1,1)
+ this.mainPage = new SoopyGuiElement().setLocation(0, 0, 1, 1)
this.soopyGui.element.addChild(this.mainPage)
let widthPer = 0.2
- let leftOffset = (1-widthPer*3-widthPer*4/5)/2
+ let leftOffset = (1 - widthPer * 3 - widthPer * 4 / 5) / 2
- this.weaponsIndicator = new SoopyBoxElement().setLocation(leftOffset, 0.05, widthPer*4/5, 0.15)
- this.weaponsIndicator.addEvent(new SoopyRenderEvent().setHandler(()=>{
- if(this.weaponsIndicator.hovered && ChatLib.removeFormatting(Player.getContainer().getStackInSlot(4).getName()) !== "Weapons"){
+ this.weaponsIndicator = new SoopyBoxElement().setLocation(leftOffset, 0.05, widthPer * 4 / 5, 0.15)
+ this.weaponsIndicator.addEvent(new SoopyRenderEvent().setHandler(() => {
+ if (this.weaponsIndicator.hovered && ChatLib.removeFormatting(Player.getContainer().getStackInSlot(4).getName()) !== "Weapons") {
this.weaponText.location.location.x.set(0.05, 500)
this.weaponText.location.size.x.set(0.9, 500)
this.weaponText.location.location.y.set(0.025, 500)
this.weaponText.location.size.y.set(0.35, 500)
-
+
this.weaponsIndicator.setColorOffset(-20, -20, -20, 100)
- Renderer.translate(0,0,100)
- Renderer.drawRect(Renderer.color(0,0,0,100), this.weaponsIndicator.location.getXExact(), this.weaponsIndicator.location.getYExact(), this.weaponsIndicator.location.getWidthExact(), this.weaponsIndicator.location.getHeightExact())
- let clicks = Player.getContainer().getName() === "Your Museum"?"1":"2"
- Renderer.translate(0,0,100)
- renderLibs.drawStringCenteredFull(clicks, this.weaponsIndicator.location.getXExact()+this.weaponsIndicator.location.getWidthExact()/2, this.weaponsIndicator.location.getYExact()+this.weaponsIndicator.location.getHeightExact()/2, Math.min(this.weaponsIndicator.location.getWidthExact()/Renderer.getStringWidth(clicks)/4, this.weaponsIndicator.location.getHeightExact()/4/2))
- }else{
+ Renderer.translate(0, 0, 100)
+ Renderer.drawRect(Renderer.color(0, 0, 0, 100), this.weaponsIndicator.location.getXExact(), this.weaponsIndicator.location.getYExact(), this.weaponsIndicator.location.getWidthExact(), this.weaponsIndicator.location.getHeightExact())
+ let clicks = Player.getContainer().getName() === "Your Museum" ? "1" : "2"
+ Renderer.translate(0, 0, 100)
+ renderLibs.drawStringCenteredFull(clicks, this.weaponsIndicator.location.getXExact() + this.weaponsIndicator.location.getWidthExact() / 2, this.weaponsIndicator.location.getYExact() + this.weaponsIndicator.location.getHeightExact() / 2, Math.min(this.weaponsIndicator.location.getWidthExact() / Renderer.getStringWidth(clicks) / 4, this.weaponsIndicator.location.getHeightExact() / 4 / 2))
+ } else {
this.weaponText.location.location.x.set(0.1, 500)
this.weaponText.location.size.x.set(0.8, 500)
this.weaponText.location.location.y.set(0.05, 500)
@@ -67,68 +67,69 @@ class MuseumGui {
this.weaponsIndicator.setColorOffset(0, 0, 0, 100)
}
- })).addEvent(new SoopyMouseClickEvent().setHandler(()=>{
+ })).addEvent(new SoopyMouseClickEvent().setHandler(() => {
this.clickedTopButton("Weapons")
}))
- this.weaponText = new SoopyTextElement().setText("§5Weapons").setMaxTextScale(10).setLocation(0.1,0.05,0.8,0.3)
+ this.weaponText = new SoopyTextElement().setText("§5Weapons").setMaxTextScale(10).setLocation(0.1, 0.05, 0.8, 0.3)
this.weaponsIndicator.addChild(this.weaponText)
- this.weaponsPercentageText = new SoopyTextElement().setLocation(0.1,0.4,0.8,0.2).setText("§0Items Donated: §7Loading...").setMaxTextScale(10)
+ this.weaponsPercentageText = new SoopyTextElement().setLocation(0.1, 0.4, 0.8, 0.2).setText("§0Items Donated: §7Loading...").setMaxTextScale(10)
this.weaponsIndicator.addChild(this.weaponsPercentageText)
- this.weaponsProgressBar = new ProgressBar().setLocation(0.1,0.6,0.8,0.35).showPercentage(true)
+ this.weaponsProgressBar = new ProgressBar().setLocation(0.1, 0.6, 0.8, 0.35).showPercentage(true)
this.weaponsIndicator.addChild(this.weaponsProgressBar)
this.mainPage.addChild(this.weaponsIndicator)
- this.armourIndicator = new SoopyBoxElement().setLocation(leftOffset+widthPer, 0.05, widthPer*4/5, 0.15)
- this.armourIndicator.addEvent(new SoopyRenderEvent().setHandler(()=>{
- if(this.armourIndicator.hovered && ChatLib.removeFormatting(Player.getContainer().getStackInSlot(4).getName()) !== "Armor Sets"){
+ this.armourIndicator = new SoopyBoxElement().setLocation(leftOffset + widthPer, 0.05, widthPer * 4 / 5, 0.15)
+ this.armourIndicator.addEvent(new SoopyRenderEvent().setHandler(() => {
+ if (this.armourIndicator.hovered && ChatLib.removeFormatting(Player.getContainer().getStackInSlot(4).getName()) !== "Armor Sets") {
this.armourText.location.location.x.set(0.05, 500)
this.armourText.location.size.x.set(0.9, 500)
this.armourText.location.location.y.set(0.025, 500)
this.armourText.location.size.y.set(0.35, 500)
-
+
this.armourIndicator.setColorOffset(-20, -20, -20, 100)
- Renderer.translate(0,0,100)
- Renderer.drawRect(Renderer.color(0,0,0,100), this.armourIndicator.location.getXExact(), this.armourIndicator.location.getYExact(), this.armourIndicator.location.getWidthExact(), this.armourIndicator.location.getHeightExact())
- let clicks = Player.getContainer().getName() === "Your Museum"?"1":"2"
- Renderer.translate(0,0,100)
- renderLibs.drawStringCenteredFull(clicks, this.armourIndicator.location.getXExact()+this.armourIndicator.location.getWidthExact()/2, this.armourIndicator.location.getYExact()+this.armourIndicator.location.getHeightExact()/2, Math.min(this.armourIndicator.location.getWidthExact()/Renderer.getStringWidth(clicks)/4, this.armourIndicator.location.getHeightExact()/4/2))
- }else{
+ Renderer.translate(0, 0, 100)
+ Renderer.drawRect(Renderer.color(0, 0, 0, 100), this.armourIndicator.location.getXExact(), this.armourIndicator.location.getYExact(), this.armourIndicator.location.getWidthExact(), this.armourIndicator.location.getHeightExact())
+ let clicks = Player.getContainer().getName() === "Your Museum" ? "1" : "2"
+ Renderer.translate(0, 0, 100)
+ renderLibs.drawStringCenteredFull(clicks, this.armourIndicator.location.getXExact() + this.armourIndicator.location.getWidthExact() / 2, this.armourIndicator.location.getYExact() + this.armourIndicator.location.getHeightExact() / 2, Math.min(this.armourIndicator.location.getWidthExact() / Renderer.getStringWidth(clicks) / 4, this.armourIndicator.location.getHeightExact() / 4 / 2))
+ } else {
this.armourText.location.location.x.set(0.1, 500)
this.armourText.location.size.x.set(0.8, 500)
this.armourText.location.location.y.set(0.05, 500)
this.armourText.location.size.y.set(0.3, 500)
- this.armourIndicator.setColorOffset(0, 0, 0, 100)}
- })).addEvent(new SoopyMouseClickEvent().setHandler(()=>{
+ this.armourIndicator.setColorOffset(0, 0, 0, 100)
+ }
+ })).addEvent(new SoopyMouseClickEvent().setHandler(() => {
this.clickedTopButton("Armor Sets")
}))
- this.armourText = new SoopyTextElement().setText("§5Armor Sets").setMaxTextScale(10).setLocation(0.1,0.05,0.8,0.3)
+ this.armourText = new SoopyTextElement().setText("§5Armor Sets").setMaxTextScale(10).setLocation(0.1, 0.05, 0.8, 0.3)
this.armourIndicator.addChild(this.armourText)
- this.armourPercentageText = new SoopyTextElement().setLocation(0.1,0.4,0.8,0.2).setText("§0Items Donated: §7Loading...").setMaxTextScale(10)
+ this.armourPercentageText = new SoopyTextElement().setLocation(0.1, 0.4, 0.8, 0.2).setText("§0Items Donated: §7Loading...").setMaxTextScale(10)
this.armourIndicator.addChild(this.armourPercentageText)
- this.armourProgressBar = new ProgressBar().setLocation(0.1,0.6,0.8,0.35).showPercentage(true)
+ this.armourProgressBar = new ProgressBar().setLocation(0.1, 0.6, 0.8, 0.35).showPercentage(true)
this.armourIndicator.addChild(this.armourProgressBar)
this.mainPage.addChild(this.armourIndicator)
- this.raritiesIndicator = new SoopyBoxElement().setLocation(leftOffset+widthPer*2, 0.05, widthPer*4/5, 0.15)
- this.raritiesIndicator.addEvent(new SoopyRenderEvent().setHandler(()=>{
- if(this.raritiesIndicator.hovered && ChatLib.removeFormatting(Player.getContainer().getStackInSlot(4).getName()) !== "Rarities"){
+ this.raritiesIndicator = new SoopyBoxElement().setLocation(leftOffset + widthPer * 2, 0.05, widthPer * 4 / 5, 0.15)
+ this.raritiesIndicator.addEvent(new SoopyRenderEvent().setHandler(() => {
+ if (this.raritiesIndicator.hovered && ChatLib.removeFormatting(Player.getContainer().getStackInSlot(4).getName()) !== "Rarities") {
this.raritiesText.location.location.x.set(0.05, 500)
this.raritiesText.location.size.x.set(0.9, 500)
this.raritiesText.location.location.y.set(0.025, 500)
this.raritiesText.location.size.y.set(0.35, 500)
-
+
this.raritiesIndicator.setColorOffset(-20, -20, -20, 100)
- Renderer.translate(0,0,100)
- Renderer.drawRect(Renderer.color(0,0,0,100), this.raritiesIndicator.location.getXExact(), this.raritiesIndicator.location.getYExact(), this.raritiesIndicator.location.getWidthExact(), this.raritiesIndicator.location.getHeightExact())
- let clicks = Player.getContainer().getName() === "Your Museum"?"1":"2"
- Renderer.translate(0,0,100)
- renderLibs.drawStringCenteredFull(clicks, this.raritiesIndicator.location.getXExact()+this.raritiesIndicator.location.getWidthExact()/2, this.raritiesIndicator.location.getYExact()+this.raritiesIndicator.location.getHeightExact()/2, Math.min(this.raritiesIndicator.location.getWidthExact()/Renderer.getStringWidth(clicks)/4, this.raritiesIndicator.location.getHeightExact()/4/2))
- }else{
+ Renderer.translate(0, 0, 100)
+ Renderer.drawRect(Renderer.color(0, 0, 0, 100), this.raritiesIndicator.location.getXExact(), this.raritiesIndicator.location.getYExact(), this.raritiesIndicator.location.getWidthExact(), this.raritiesIndicator.location.getHeightExact())
+ let clicks = Player.getContainer().getName() === "Your Museum" ? "1" : "2"
+ Renderer.translate(0, 0, 100)
+ renderLibs.drawStringCenteredFull(clicks, this.raritiesIndicator.location.getXExact() + this.raritiesIndicator.location.getWidthExact() / 2, this.raritiesIndicator.location.getYExact() + this.raritiesIndicator.location.getHeightExact() / 2, Math.min(this.raritiesIndicator.location.getWidthExact() / Renderer.getStringWidth(clicks) / 4, this.raritiesIndicator.location.getHeightExact() / 4 / 2))
+ } else {
this.raritiesText.location.location.x.set(0.1, 500)
this.raritiesText.location.size.x.set(0.8, 500)
this.raritiesText.location.location.y.set(0.05, 500)
@@ -136,35 +137,35 @@ class MuseumGui {
this.raritiesIndicator.setColorOffset(0, 0, 0, 100)
}
- })).addEvent(new SoopyMouseClickEvent().setHandler(()=>{
+ })).addEvent(new SoopyMouseClickEvent().setHandler(() => {
this.clickedTopButton("Rarities")
}))
- this.raritiesText = new SoopyTextElement().setText("§5Rarities").setMaxTextScale(10).setLocation(0.1,0.05,0.8,0.3)
+ this.raritiesText = new SoopyTextElement().setText("§5Rarities").setMaxTextScale(10).setLocation(0.1, 0.05, 0.8, 0.3)
this.raritiesIndicator.addChild(this.raritiesText)
- this.raritiesPercentageText = new SoopyTextElement().setLocation(0.1,0.4,0.8,0.2).setText("§0Items Donated: §7Loading...").setMaxTextScale(10)
+ this.raritiesPercentageText = new SoopyTextElement().setLocation(0.1, 0.4, 0.8, 0.2).setText("§0Items Donated: §7Loading...").setMaxTextScale(10)
this.raritiesIndicator.addChild(this.raritiesPercentageText)
- this.raritiesProgressBar = new ProgressBar().setLocation(0.1,0.6,0.8,0.35).showPercentage(true)
+ this.raritiesProgressBar = new ProgressBar().setLocation(0.1, 0.6, 0.8, 0.35).showPercentage(true)
this.raritiesIndicator.addChild(this.raritiesProgressBar)
this.mainPage.addChild(this.raritiesIndicator)
- this.specialIndicator = new SoopyBoxElement().setLocation(leftOffset+widthPer*3, 0.05, widthPer*4/5, 0.15)
- this.specialIndicator.addEvent(new SoopyRenderEvent().setHandler(()=>{
- if(this.specialIndicator.hovered && ChatLib.removeFormatting(Player.getContainer().getStackInSlot(4).getName()) !== "Special Items"){
+ this.specialIndicator = new SoopyBoxElement().setLocation(leftOffset + widthPer * 3, 0.05, widthPer * 4 / 5, 0.15)
+ this.specialIndicator.addEvent(new SoopyRenderEvent().setHandler(() => {
+ if (this.specialIndicator.hovered && ChatLib.removeFormatting(Player.getContainer().getStackInSlot(4).getName()) !== "Special Items") {
this.specialText.location.location.x.set(0.05, 500)
this.specialText.location.size.x.set(0.9, 500)
this.specialText.location.location.y.set(0.025, 500)
this.specialText.location.size.y.set(0.35, 500)
-
+
this.specialIndicator.setColorOffset(-20, -20, -20, 100)
- Renderer.translate(0,0,100)
- Renderer.drawRect(Renderer.color(0,0,0,100), this.specialIndicator.location.getXExact(), this.specialIndicator.location.getYExact(), this.specialIndicator.location.getWidthExact(), this.specialIndicator.location.getHeightExact())
- let clicks = Player.getContainer().getName() === "Your Museum"?"1":"2"
- Renderer.translate(0,0,100)
- renderLibs.drawStringCenteredFull(clicks, this.specialIndicator.location.getXExact()+this.specialIndicator.location.getWidthExact()/2, this.specialIndicator.location.getYExact()+this.specialIndicator.location.getHeightExact()/2, Math.min(this.specialIndicator.location.getWidthExact()/Renderer.getStringWidth(clicks)/4, this.specialIndicator.location.getHeightExact()/4/2))
-
- }else{
+ Renderer.translate(0, 0, 100)
+ Renderer.drawRect(Renderer.color(0, 0, 0, 100), this.specialIndicator.location.getXExact(), this.specialIndicator.location.getYExact(), this.specialIndicator.location.getWidthExact(), this.specialIndicator.location.getHeightExact())
+ let clicks = Player.getContainer().getName() === "Your Museum" ? "1" : "2"
+ Renderer.translate(0, 0, 100)
+ renderLibs.drawStringCenteredFull(clicks, this.specialIndicator.location.getXExact() + this.specialIndicator.location.getWidthExact() / 2, this.specialIndicator.location.getYExact() + this.specialIndicator.location.getHeightExact() / 2, Math.min(this.specialIndicator.location.getWidthExact() / Renderer.getStringWidth(clicks) / 4, this.specialIndicator.location.getHeightExact() / 4 / 2))
+
+ } else {
this.specialText.location.location.x.set(0.1, 500)
this.specialText.location.size.x.set(0.8, 500)
this.specialText.location.location.y.set(0.05, 500)
@@ -172,42 +173,42 @@ class MuseumGui {
this.specialIndicator.setColorOffset(0, 0, 0, 100)
}
- })).addEvent(new SoopyMouseClickEvent().setHandler(()=>{
+ })).addEvent(new SoopyMouseClickEvent().setHandler(() => {
this.clickedTopButton("Special Items")
}))
- this.specialText = new SoopyTextElement().setText("§5Special Items").setMaxTextScale(10).setLocation(0.1,0.05,0.8,0.3)
+ this.specialText = new SoopyTextElement().setText("§5Special Items").setMaxTextScale(10).setLocation(0.1, 0.05, 0.8, 0.3)
this.specialIndicator.addChild(this.specialText)
- this.specialPercentageText = new SoopyTextElement().setLocation(0.1,0.4,0.8,0.6).setText("§0Items Donated: §7Loading...").setMaxTextScale(10)
+ this.specialPercentageText = new SoopyTextElement().setLocation(0.1, 0.4, 0.8, 0.6).setText("§0Items Donated: §7Loading...").setMaxTextScale(10)
this.specialIndicator.addChild(this.specialPercentageText)
this.mainPage.addChild(this.specialIndicator)
- let box = new SoopyBoxElement().setLocation(0.5-widthPer*0.75, 0.25, widthPer*2*0.75, 0.075).setLore(["Click to search"])
- this.pageTitle = new SoopyTextElement().setText("§5Your Museum").setMaxTextScale(10).setLocation(0,0,1,1)
+ let box = new SoopyBoxElement().setLocation(0.5 - widthPer * 0.75, 0.25, widthPer * 2 * 0.75, 0.075).setLore(["Click to search"])
+ this.pageTitle = new SoopyTextElement().setText("§5Your Museum").setMaxTextScale(10).setLocation(0, 0, 1, 1)
box.addChild(this.pageTitle)
this.mainPage.addChild(box)
this.searchText = ""
- let search = new TextBox().setLocation(0.5-widthPer*0.75, 0.25, widthPer*2*0.75, 0.075)
- box.addEvent(new SoopyMouseClickEvent().setHandler(()=>{
+ let search = new TextBox().setLocation(0.5 - widthPer * 0.75, 0.25, widthPer * 2 * 0.75, 0.075)
+ box.addEvent(new SoopyMouseClickEvent().setHandler(() => {
box.visable = false
search.visable = true
search.select()
}))
search.visable = false
- search.text.mouseClickG = (mouseX, mouseY)=>{
- if(search.text.selected && !this.searchText){
+ search.text.mouseClickG = (mouseX, mouseY) => {
+ if (search.text.selected && !this.searchText) {
box.visable = true
search.visable = false
}
search.text.selected = false
}
- search.text.addEvent(new SoopyContentChangeEvent().setHandler((newVal, oldVal, resetFunction)=>{
+ search.text.addEvent(new SoopyContentChangeEvent().setHandler((newVal, oldVal, resetFunction) => {
this.searchText = newVal
this.showSearchItems()
}))
this.mainPage.addChild(search)
- this.mainPage.addEvent(new SoopyOpenGuiEvent().setHandler(()=>{
+ this.mainPage.addEvent(new SoopyOpenGuiEvent().setHandler(() => {
box.visable = true
search.visable = false
search.text.selected = false
@@ -215,55 +216,55 @@ class MuseumGui {
this.searchText = ""
}))
- this.nextButton = new ButtonWithArrow().setLocation(0.5+widthPer*3/2-widthPer/2, 0.25, widthPer/2, 0.075).setText("§0Next Page")
- this.nextButton.addEvent(new SoopyMouseClickEvent().setHandler(()=>{
- if(this.nextButton.visable)this.nextPage()
+ this.nextButton = new ButtonWithArrow().setLocation(0.5 + widthPer * 3 / 2 - widthPer / 2, 0.25, widthPer / 2, 0.075).setText("§0Next Page")
+ this.nextButton.addEvent(new SoopyMouseClickEvent().setHandler(() => {
+ if (this.nextButton.visable) this.nextPage()
}))
this.mainPage.addChild(this.nextButton)
- this.previousButton = new ButtonWithArrow().setLocation(0.5-widthPer*3/2, 0.25, widthPer/2, 0.075).setText("§0Previous Page").setDirectionRight(false)
- this.previousButton.addEvent(new SoopyMouseClickEvent().setHandler(()=>{
- if(this.previousButton.visable)this.previousPage()
+ this.previousButton = new ButtonWithArrow().setLocation(0.5 - widthPer * 3 / 2, 0.25, widthPer / 2, 0.075).setText("§0Previous Page").setDirectionRight(false)
+ this.previousButton.addEvent(new SoopyMouseClickEvent().setHandler(() => {
+ if (this.previousButton.visable) thi