aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNinjune <enderknight537@gmail.com>2022-12-04 17:04:15 -0600
committerNinjune <enderknight537@gmail.com>2022-12-04 17:04:15 -0600
commit8ad19e54f6c3f44a84dd2565d910c207ffc5bc52 (patch)
tree88bf7492232501b471ca1cb52b2acf0969437759
parent1d26a47068b357c4a9f4cb0225aa063134e9a0d9 (diff)
downloadcoleweight-8ad19e54f6c3f44a84dd2565d910c207ffc5bc52.tar.gz
coleweight-8ad19e54f6c3f44a84dd2565d910c207ffc5bc52.tar.bz2
coleweight-8ad19e54f6c3f44a84dd2565d910c207ffc5bc52.zip
v1.6.11
-rw-r--r--chat/grieferTrack.js33
-rw-r--r--chat/message.js2
-rw-r--r--chat/updater.js35
-rw-r--r--commandManager.js3
-rw-r--r--commands/claim.js95
-rw-r--r--commands/fetchDiscord.js12
-rw-r--r--commands/reload.js11
-rw-r--r--index.js1
-rw-r--r--metadata.json2
-rw-r--r--render/cwGui.js26
-rw-r--r--render/naturals.js37
-rw-r--r--settings.js4
12 files changed, 128 insertions, 133 deletions
diff --git a/chat/grieferTrack.js b/chat/grieferTrack.js
index 468428a..5ac186f 100644
--- a/chat/grieferTrack.js
+++ b/chat/grieferTrack.js
@@ -3,7 +3,8 @@ import settings from "../settings"
import Settings from "../settings"
import constants from "../util/constants"
const PREFIX = constants.PREFIX
-let players = [] // global variable moment
+let checkedPlayers = [],
+ griefers = []
register("step", () => {
@@ -16,8 +17,10 @@ register("step", () => {
register("worldLoad", () => {
- players = []
- checkMMiners()
+ checkedPlayers = []
+ setTimeout(() => {
+ checkMMiners()
+ }, 1500)
})
@@ -32,19 +35,27 @@ function checkMMiners()
PlayerMap.filter(player => player.func_178853_c() > 0 && !player.func_178845_a().name.startsWith("!")).forEach((PlayerMP) => {
let player = PlayerMP.func_178845_a().name
- if(players.indexOf(player) == -1)
+ if(!checkedPlayers.includes(player))
{
- axios.get(`https://ninjune.dev/api/mminers?username=${player}`)
- .then(res => {
- if(res.data.found == true && res.data.type == "griefer")
- ChatLib.chat(`${PREFIX}&e'${res.data.name}' is a griefer!`)
- })
- players.push(player)
+ if(griefers.includes(player))
+ ChatLib.chat(`${PREFIX}&e'${player}' is a griefer!`)
+ checkedPlayers.push(player)
}
})
} catch(err) { if(settings.debug) console.log("grieferTrack trycatch: " + err) }
- return players
+ return checkedPlayers
}
+
+register("gameLoad", () => {
+ axios.get(`https://ninjune.dev/api/mminers`)
+ .then(res => {
+ griefers = res.data.griefers
+ })
+ .catch(err => {
+ if(!settings.debug) return
+ ChatLib.chat(err)
+ })
+})
export default "" \ No newline at end of file
diff --git a/chat/message.js b/chat/message.js
index 180e90b..60245de 100644
--- a/chat/message.js
+++ b/chat/message.js
@@ -40,7 +40,7 @@ register("chat", (level, typeOfChat, hypixelRank, username, playerMessage, event
ChatLib.chat(newMessage)
}).setCriteria(/^(\[\d+\] )?((?:(?:Guild|Party|Co-op) > )|(?:\[:v:\] ))?(\[\w+\+{0,2}\] )?(\w{1,16})(?: \[\w{1,6}\])?: (.*)$/g)
-register("worldLoad", () => {
+register("gameLoad", () => {
axios.get(`https://ninjune.dev/api/coleweight-leaderboard?length=500`)
.then(res => {
cwlbData = res.data
diff --git a/chat/updater.js b/chat/updater.js
deleted file mode 100644
index c936e80..0000000
--- a/chat/updater.js
+++ /dev/null
@@ -1,35 +0,0 @@
-import axios from "../../axios"
-import constants from "../util/constants"
-
-const PREFIX = constants.PREFIX,
- VERSION = constants.VERSION
-
-register("worldLoad", () => {
- axios.get(`https://chattriggers.com/api/modules/1367`)
- .then(res => {
- let ctVersionArray = (res.data.releases[0].releaseVersion).split('.'),
- currentVersionArray = VERSION.split('.'),
- newVersion = false
-
- for(let i = ctVersionArray.length; i >= 0; i--)
- {
- if (ctVersionArray[i] > currentVersionArray[i])
- newVersion = true
- else if (currentVersionArray[i] > ctVersionArray[i])
- newVersion = false
- }
-
- if(newVersion)
- {
- ChatLib.chat(`${PREFIX}&eYou are using an unsupported version of Coleweight!`)
- new TextComponent(`${PREFIX}&eClick &3here&e to update!`)
- .setClickAction("run_command")
- .setClickValue(`/ct load`)
- .chat()
- ChatLib.chat("")
- }
- })
-
-})
-
-export default "" \ No newline at end of file
diff --git a/commandManager.js b/commandManager.js
index cf28a8c..62623f8 100644
--- a/commandManager.js
+++ b/commandManager.js
@@ -2,9 +2,8 @@ import { openTimerGui } from "./render/timerGui.js"
import { openPowderGui } from "./render/powertrackerGui"
import { openCoordsGui } from "./render/coordsGui.js"
import { openDowntimeGui } from "./render/downtimeGui.js"
-import { openCwGui } from "./render/cwGui"
+import { openCwGui, reload } from "./render/cwGui"
import { help } from "./commands/help"
-import { reload } from "./commands/reload"
import { setkey } from "./commands/setkey"
import { spiral } from "./commands/spiral"
import { throne } from "./commands/throne"
diff --git a/commands/claim.js b/commands/claim.js
index 52cb5f8..e3f9a0d 100644
--- a/commands/claim.js
+++ b/commands/claim.js
@@ -2,7 +2,10 @@ import axios from "../../axios"
import settings from "../settings"
import constants from "../util/constants"
const PREFIX = constants.PREFIX
+const path = `https://ninjune.dev`
const serverId = java.util.UUID.randomUUID().toString().replace("-", "")
+let claimedServers = []
+
export function claim(structure)
{
@@ -24,11 +27,12 @@ export function claim(structure)
return
}
- axios.get(`https://ninjune.dev/api/claim?type=${structure}&lobby=${constants.serverData.server}&username=${Player.getName()}&serverID=${serverId}`)
+ axios.get(`${path}/api/claim?type=${structure}&lobby=${constants.serverData.server}&username=${Player.getName()}&serverID=${serverId}`)
.then(res => {
if(res.data.success)
{
ChatLib.chat(`${PREFIX}&aSuccessfully claimed ${constants.serverData.server} as your server!`)
+ claimedServers.push({player: Player.getName(), server: constants.serverData.server, structure: structure})
return
}
else
@@ -37,68 +41,79 @@ export function claim(structure)
if(res.data.code == 501)
{
ChatLib.chat(`${PREFIX}&cError: Not logged into the auth server. Try running the command again.`)
- Client.getMinecraft().func_152347_ac().joinServer(Client.getMinecraft().func_110432_I().func_148256_e(), Client.getMinecraft().func_110432_I().func_148254_d(), serverId)
- return
+ return Client.getMinecraft().func_152347_ac().joinServer(Client.getMinecraft().func_110432_I().func_148256_e(), Client.getMinecraft().func_110432_I().func_148254_d(), serverId)
}
else
- ChatLib.chat(`${PREFIX}&cError: ${res.data.reason}.`)
+ return ChatLib.chat(`${PREFIX}&cError: ${res.data.reason}.`)
}
})
.catch(err => {
- ChatLib.chat(`${PREFIX}&cError: ${err}`)
+ return ChatLib.chat(`${PREFIX}&cError: ${err}`)
})
-
}
+
register('gameLoad', (event) => {
try
{
Client.getMinecraft().func_152347_ac().joinServer(Client.getMinecraft().func_110432_I().func_148256_e(), Client.getMinecraft().func_110432_I().func_148254_d(), serverId)
}
catch(e) {}
+ // what if a player claims after gameload? idk man, making requests every worldload is hurting my server.
+ // this feature is barely used anyway.
+ getClaimed()
})
+
register('worldLoad', () => {
if(!settings.claiming) return
- axios.get(`https://ninjune.dev/api/unclaim?username=${Player.getName()}&serverID=${serverId}`)
- .then(res => {
- if(settings.debug && !res.data.success)
- ChatLib.chat("Unclaim: " + res.data.reason)
- if(res.data.code == 501)
- Client.getMinecraft().func_152347_ac().joinServer(Client.getMinecraft().func_110432_I().func_148256_e(), Client.getMinecraft().func_110432_I().func_148254_d(), serverId)
- })
- .catch(err => {
- if(settings.debug)
- ChatLib.chat(`${PREFIX}&cError: ${err}`)
- })
- // unclaims the lobby, isn't needed but will allow another player to claim lobby after claimer leaves.
+ if(claimedServers == undefined)
+ getClaimed()
setTimeout(() => {
const NetHandlerPlayClient = Client.getConnection(),
PlayerMap = NetHandlerPlayClient.func_175106_d() // getPlayerInfoMap
-
+ let player
+
if(settings.debug) console.log(constants.serverData.server)
- axios.get(`https://ninjune.dev/api/claimed?serverID=${constants.serverData.server}&authServer=${serverId}&passedName=${Player.getName()}`)
- .then(res => {
- if(res.data.claimed)
- {
- PlayerMap.filter(player => player.func_178853_c() /* getResponseTime */ > 0 && !player.func_178845_a()/* getGameProfile */.name.startsWith("!")).forEach((PlayerMP) => {
- let player = PlayerMP.func_178845_a()/* getGameProfile */.name
+
+ claimedServers.forEach((claimedServer) => {
+ PlayerMap.filter(player => player.func_178853_c() > 0 && !player.func_178845_a().name.startsWith("!")).forEach((PlayerMP) => {
+ player = PlayerMP.func_178845_a().name
+
+ if (player == claimedServer.player && claimedServer.server == constants.serverData.server)
+ ChatLib.chat(`${PREFIX}&cThe ${claimedServer.structure} in ${claimedServer.server} is claimed by ${claimedServer.player}.`)
+ })
- res.data.structures.forEach((structure) => {
- if (player == structure.player)
- ChatLib.chat(`${PREFIX}&cThe ${structure.structure} in ${structure.server} is claimed by ${structure.player}.`)
- //holy im so good at naming things, structure.structure I must be a genius.
+ if (Player.getName() == claimedServer.player)
+ {
+ axios.get(`${path}/api/unclaim?username=${Player.getName()}&serverID=${serverId}`)
+ .then(res => {
+ if(settings.debug && !res.data.success)
+ ChatLib.chat("Unclaim: " + res.data.reason)
+ if(res.data.code == 501)
+ Client.getMinecraft().func_152347_ac().joinServer(Client.getMinecraft().func_110432_I().func_148256_e(), Client.getMinecraft().func_110432_I().func_148254_d(), serverId)
})
- })
- }
- else if (res.data.err && settings.debug)
- {
- ChatLib.chat("Check claim: " + res.data.reason)
- }
- })
- .catch(err => {
- if(!settings.debug) return
- ChatLib.chat(`${PREFIX}&cError: ${err}`)
+ .catch(err => {
+ if(settings.debug)
+ ChatLib.chat(`${PREFIX}&cError: ${err}`)
+ })
+ }
})
}, 2000)
-}) \ No newline at end of file
+})
+
+
+function getClaimed()
+{
+ axios.get(`${path}/api/claimed?authServer=${serverId}&passedName=${Player.getName()}`)
+ .then(res => {
+ if(res.data.code == 501)
+ {
+ Client.getMinecraft().func_152347_ac().joinServer(Client.getMinecraft().func_110432_I().func_148256_e(), Client.getMinecraft().func_110432_I().func_148254_d(), serverId)
+ return
+ }
+ res.data.forEach(server => {
+ claimedServers.push(server)
+ })
+ })
+}
diff --git a/commands/fetchDiscord.js b/commands/fetchDiscord.js
index f44c385..f254edb 100644
--- a/commands/fetchDiscord.js
+++ b/commands/fetchDiscord.js
@@ -6,14 +6,14 @@ export function fetchDiscord(arg)
{
if(arg == undefined) { ChatLib.chat(`${PREFIX}&eRequires a username!`); return }
- axios.get(`https://api.ashcon.app/mojang/v2/user/${arg}`)
- .then(res => {
- let uuid = res.data.uuid
+ axios.get(`https://api.mojang.com/users/profiles/minecraft/${arg}`)
+ .then(mojangRes => {
+ let uuid = mojangRes.data.id
axios.get(`https://api.hypixel.net/player?key=${constants.data.api_key}&uuid=${uuid}`)
- .then(res2 => {
- let discordMessage = new TextComponent(`${PREFIX}&a${res.data.username}'s Discord: `)
+ .then(hypixelRes => {
+ let discordMessage = new TextComponent(`${PREFIX}&a${mojangRes.data.name}'s Discord: `)
ChatLib.chat(discordMessage);
- ChatLib.chat(`&b${res2.data.player.socialMedia.links.DISCORD}`)
+ ChatLib.chat(`&b${hypixelRes.data.player.socialMedia.links.DISCORD}`)
})
.catch(err => {
ChatLib.chat(`${PREFIX}&eNo discord linked :( (or no key linked)`)
diff --git a/commands/reload.js b/commands/reload.js
deleted file mode 100644
index 1c5fcc0..0000000
--- a/commands/reload.js
+++ /dev/null
@@ -1,11 +0,0 @@
-import constants from "../util/constants"
-const PREFIX = constants.PREFIX
-
-export function reload()
-{
- constants.upTimeTrack = false
- constants.stepsSinceLast = 0
- constants.cwValues = []
- constants.uptime = 0
- ChatLib.chat(`${PREFIX}Reloaded!`)
-} \ No newline at end of file
diff --git a/index.js b/index.js
index 8ad09bf..94eef22 100644
--- a/index.js
+++ b/index.js
@@ -5,5 +5,4 @@ import './chat/apiNew'
import './chat/message'
import './chat/serverdata'
import './commandManager'
-import './chat/updater'
import './chat/grieferTrack' \ No newline at end of file
diff --git a/metadata.json b/metadata.json
index bf79237..034e1f8 100644
--- a/metadata.json
+++ b/metadata.json
@@ -3,6 +3,6 @@
"creator": "Ninjune",
"entry": "index.js",
"description": "Mining utilities.",
- "version": "1.6.10",
+ "version": "1.6.11",
"requires": ["axios", "PogData", "Vigilance", "Elementa"]
} \ No newline at end of file
diff --git a/render/cwGui.js b/render/cwGui.js
index 4e0f660..5af6773 100644
--- a/render/cwGui.js
+++ b/render/cwGui.js
@@ -11,7 +11,8 @@ let cwValues = [],
baseColeweight = 0,
stepsSinceLast = 0,
coleweightHr = 0,
- cwValuesSum = 0
+ cwValuesSum = 0,
+ cwInfo
export function openCwGui()
@@ -20,6 +21,16 @@ export function openCwGui()
}
+export function reload()
+{
+ upTimeTrack = false
+ stepsSinceLast = 0
+ cwValues = []
+ uptime = 0
+ ChatLib.chat(`${PREFIX}Reloaded!`)
+}
+
+
register("dragged", (dx, dy, x, y) => {
if (!cwGui.isOpen()) return
constants.data.x = x
@@ -63,6 +74,12 @@ register("renderOverlay", () => {
Renderer.drawStringWithShadow(`&aCW: &b${coleweightMessage}\n&aCW/hr: &b${coleweightHr}\n&aUptime: &b${Math.floor(uptime/60)}m ${Math.floor(uptime%60)}s\n&aColeweight Gained: &b${Math.ceil(cwValuesSum*100) / 100}`, data.x, data.y)
})
+register("gameLoad", () => {
+ axios.get(`https://ninjune.dev/api/cwinfo`)
+ .then(cwInfoRes => {
+ cwInfo = cwInfoRes.data
+ })
+})
register("step", () => {
@@ -88,12 +105,9 @@ register("step", () => {
uuid = uuid + tempUuid[i]
}
}
- axios.get(`https://ninjune.dev/api/cwinfo`)
- .then(cwInfoRes => {
axios.get(`https://api.hypixel.net/skyblock/profiles?key=${constants.data.api_key}&uuid=${uuid}`)
.then(res => {
- let eq = 0,
- cwInfo = cwInfoRes.data
+ let eq = 0
for(let i=0; i < res.data.profiles.length; i+=1)
{
@@ -168,6 +182,7 @@ register("step", () => {
}
else if(stepsSinceLast > 20)
{
+ uptime = 0
upTimeTrack = false
stepsSinceLast = 0
cwValues = []
@@ -180,7 +195,6 @@ register("step", () => {
data.coleweight = Math.ceil(coleweight*100)/100
data.save()
})
- })
}
catch(e) {}
}
diff --git a/render/naturals.js b/render/naturals.js
index 595c32d..2f9adc9 100644
--- a/render/naturals.js
+++ b/render/naturals.js
@@ -2,37 +2,40 @@ import axios from "../../axios"
import settings from "../settings"
import constants from "../util/constants"
import { waypointRender } from "../util/helperFunctions"
-const PREFIX = constants.PREFIX
-let coords = []
+let coords = [],
+ visibleCoords = []
-
-register("step", () => {
- if(constants.serverData.map != "Crystal Hollows") return
+register("gameLoad", res => {
axios.get(`https://ninjune.dev/api/coords`)
.then((res) => {
- coords = []
- res.data.filter(coord =>
- (((-1 * settings.naturalRange)/2 < (parseInt(Player.getX()) - coord.x)) && ((parseInt(Player.getX()) - coord.x) < settings.naturalRange/2)
- && ((-1 * settings.naturalRange)/2 < (parseInt(Player.getY()) - coord.y)) && ((parseInt(Player.getY()) - coord.y) < settings.naturalRange/2)
- && ((-1 * settings.naturalRange)/2 < (parseInt(Player.getZ()) - coord.z)) && ((parseInt(Player.getZ()) - coord.z) < settings.naturalRange/2))
- ).forEach(coord => {
- coords.push([coord.x, coord.y, coord.z])
- })
+ coords = res.data
})
.catch((err) => {
- console.log(err)
+ if(settings.debug) return console.log(err)
+ })
+})
+
+register("step", () => {
+ if(constants.serverData.map != "Crystal Hollows" || !settings.showNaturals) return
+ visibleCoords = []
+ coords.filter(coord =>
+ (((-1 * settings.naturalRange)/2 < (parseInt(Player.getX()) - coord.x)) && ((parseInt(Player.getX()) - coord.x) < settings.naturalRange/2)
+ && ((-1 * settings.naturalRange)/2 < (parseInt(Player.getY()) - coord.y)) && ((parseInt(Player.getY()) - coord.y) < settings.naturalRange/2)
+ && ((-1 * settings.naturalRange)/2 < (parseInt(Player.getZ()) - coord.z)) && ((parseInt(Player.getZ()) - coord.z) < settings.naturalRange/2))
+ ).forEach(coord => {
+ visibleCoords.push([coord.x, coord.y, coord.z])
})
}).setFps(1)
register("renderWorld", () => {
if(!settings.showNaturals) return
- if(coords.length < 1) return
- waypointRender(coords)
+ if(visibleCoords.length < 1) return
+ waypointRender(visibleCoords)
})
register("worldUnload", () => {
- coords = []
+ visibleCoords = []
})
diff --git a/settings.js b/settings.js
index 92c13d2..3a5e1c7 100644
--- a/settings.js
+++ b/settings.js
@@ -1,6 +1,6 @@
import { @Vigilant, @ButtonProperty, @SwitchProperty, @SelectorProperty, @SliderProperty } from 'Vigilance'
-@Vigilant("Coleweight")
+@Vigilant("Coleweight/config")
class Settings {
@SwitchProperty({
name: "Coleweight tracker",
@@ -8,7 +8,7 @@ class Settings {
subcategory: "Coleweight Tracker",
category: "General"
})
- cwToggle = true;
+ cwToggle = false;
@ButtonProperty({
name: "Change Coleweight tracker position",