Greasy Fork is available in English.

Minebuns

We do a little thugging

Na nainštalovanie skriptu si budete musieť nainštalovať rozšírenie, ako napríklad Tampermonkey, Greasemonkey alebo Violentmonkey.

Na inštaláciu tohto skriptu je potrebné nainštalovať rozšírenie, ako napríklad Tampermonkey.

Na nainštalovanie skriptu si budete musieť nainštalovať rozšírenie, ako napríklad Tampermonkey, % alebo Violentmonkey.

Na nainštalovanie skriptu si budete musieť nainštalovať rozšírenie, ako napríklad Tampermonkey alebo Userscripts.

Na inštaláciu tohto skriptu je potrebné nainštalovať rozšírenie, ako napríklad Tampermonkey.

Na inštaláciu tohto skriptu je potrebné nainštalovať rozšírenie správcu používateľských skriptov.

(Už mám správcu používateľských skriptov, nechajte ma ho nainštalovať!)

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie, ako napríklad Stylus.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie, ako napríklad Stylus.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie, ako napríklad Stylus.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie správcu používateľských štýlov.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie správcu používateľských štýlov.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie správcu používateľských štýlov.

(Už mám správcu používateľských štýlov, nechajte ma ho nainštalovať!)

// ==UserScript==
// @name         Minebuns
// @namespace    *://minefun.io/*
// @version      1.0.0
// @author       Wang
// @description  We do a little thugging
// @match        *://minefun.io/*
// @grant        none
// ==/UserScript==

(()=>{var d={listeners:{},activeKeys:new Set,on:function(r,e){this.listeners[r]||(this.listeners[r]=[]),this.listeners[r].push(e)},remove:function(r,e){this.listeners[r]&&(this.listeners[r]=this.listeners[r].filter(t=>t!==e))},emit:function(r,e){this.listeners[r]&&this.listeners[r].forEach(t=>t(e))},trackKey:function(r,e,t){r==="keydown"&&moduleManager.handleKeyPress(t),r==="keydown"&&!this.activeKeys.has(e)&&(this.activeKeys.add(e),this.emit("keyPress",{key:e,code:t})),r==="keyup"&&this.activeKeys.has(e)&&(this.activeKeys.delete(e),this.emit("keyRelease",{key:e,code:t}))}};var n=class{constructor(e,t,i,s){this.name=e,this.category=t,this.options=i,this.keybind=s,this.waitingForBind=!1,this.isEnabled=!1,this.toggle=this.toggle.bind(this)}onEnable(){}onDisable(){}onRender(){}onSettingUpdate(){}enable(){this.isEnabled=!0,d.emit("module.update",this),this.onEnable()}disable(){this.isEnabled=!1,d.emit("module.update",this),this.onDisable()}toggle(){this.isEnabled?this.disable():this.enable()}};var v=class extends n{constructor(){super("Arraylist","Visual"),this.namesMap={},this.arraylistContainer=null,this.initialized=!1}update(e,t){if(t){if(!this.namesMap[e]){let s=document.createElement("div");s.style.backgroundColor="rgba(10, 10, 10, 0.7)",s.style.color="white",s.style.padding="2px 10px 2px 10px",s.style.display="flex",s.style.alignItems="center",s.style.boxSizing="border-box",s.style.margin="0",s.style.fontFamily="'Product Sans', sans-serif",s.style.boxShadow="rgb(0, 0, 0, 0.05) -5px 1px",s.style.transition="max-height 0.2s ease-in-out, opacity 0.2s ease-in-out",s.style.overflow="hidden",s.style.maxHeight="0",s.style.opacity="0";let a=document.createElement("span");a.style.fontWeight="800",a.style.fontSize="16px",a.style.backgroundImage="var(--Minebuns-accent-color)",a.style.color="transparent",a.style.backgroundClip="text",a.innerHTML=e,s.appendChild(a),this.arraylistContainer.appendChild(s),setTimeout(()=>{s.style.maxHeight="50px",s.style.opacity="1"},1),this.namesMap[e]=s}}else if(this.namesMap[e]){let s=this.namesMap[e];s.style.maxHeight="0",s.style.opacity="0",setTimeout(()=>{this.arraylistContainer.removeChild(s),delete this.namesMap[e]},5)}let i=Object.values(this.namesMap).sort((s,a)=>this.measureElementWidth(a)-this.measureElementWidth(s));this.arraylistContainer.innerHTML="",i.forEach(s=>{this.arraylistContainer.appendChild(s)})}onEnable(){this.initialized?this.arraylistContainer.style.opacity="1":(this.arraylistContainer=document.createElement("div"),this.arraylistContainer.style.flexDirection="column",this.arraylistContainer.style.position="absolute",this.arraylistContainer.style.zIndex="1000",this.arraylistContainer.style.display="flex",this.arraylistContainer.style.right="5px",this.arraylistContainer.style.top="5px",this.arraylistContainer.style.alignItems="flex-end",this.arraylistContainer.style.pointerEvents="none",this.arraylistContainer.style.textTransform="lowercase",this.arraylistContainer.style.border="2px solid transparent",this.arraylistContainer.style.borderImage="var(--Minebuns-accent-color)",this.arraylistContainer.style.borderImageSlice="1",this.arraylistContainer.style.borderBottom="0",this.arraylistContainer.style.borderLeft="0",document.body.appendChild(this.arraylistContainer),d.on("module.update",e=>{this.update(e.name,e.isEnabled)}),this.initialized=!0)}measureElementWidth(e){return e.getBoundingClientRect().width}onDisable(){this.arraylistContainer.style.opacity="0"}};var o={get stores(){if(this._stores)return this._stores;{let r=app._vnode.component.appContext.provides,e=r[Object.getOwnPropertySymbols(r).find(t=>r[t]._s)];return this._stores=e._s}},get gameWorld(){return this.stores.get("gameState").gameWorld}};var S=class extends n{constructor(){super("Watermark","Visual",{Text:"Minebuns"})}onSettingUpdate(){let e=document.querySelector(".Minebuns-overlay-title");e&&(e.textContent=this.options.Text)}onEnable(){let e=document.querySelector(".Minebuns-overlay-title");e||(e=document.createElement("div"),e.className="Minebuns-overlay-title",e.textContent=this.options.Text,e.style.position="absolute",e.style.top="0",e.style.left="0",e.style.padding="0.5em",e.style.userSelect="none",e.style.display="none",e.style.zIndex="1000",e.style.textShadow="var(--Minebuns-accent-color) 0px 0px 10px",e.style.fontFamily="'Product Sans', sans-serif",e.style.fontSize="24px",e.style.background="var(--Minebuns-accent-color)",e.style.backgroundClip="text",e.style.webkitFontSmoothing="antialiased",e.style.webkitTextFillColor="transparent",document.body.appendChild(e)),document.querySelector(".Minebuns-overlay-title").style.display="flex"}onDisable(){document.querySelector(".Minebuns-overlay-title").style.display="none"}};var E=class{constructor(e,t){this.module=e,this.container=t,this.components=[],this.initialized=!1,this.isOpen=!1}initialize(){this.initialized||!this.module?.options||(Object.keys(this.module.options).forEach(e=>{let t=this.module.options[e],i=typeof t;e.toLowerCase().includes("color")?this.addColorPicker(e):i==="boolean"||t==="true"||t==="false"?this.addCheckbox(e):i==="string"?this.addStringInput(e):this.addNumberInput(e)}),this.components.forEach(e=>e.style.display="none"),this.initialized=!0)}toggle(){this.isOpen=!this.isOpen,this.components.forEach(e=>{e.style.display=this.isOpen?"flex":"none",this.isOpen?this.container.style.marginBottom="5px":this.container.style.marginBottom="0px"})}addNumberInput(e){let t=document.createElement("div");t.className="gui-setting-container";let i=document.createElement("span");i.className="gui-setting-label",i.textContent=e;let s=document.createElement("input");s.type="text",s.className="gui-text-input",s.value=this.module.options[e];let a=s.value;s.addEventListener("input",()=>{let l=s.value.trim();!isNaN(l)&&l!==""&&(a=l,this.module.options[e]=l,d.emit("setting.update",this.module))}),s.addEventListener("blur",()=>{(isNaN(s.value)||s.value.trim()==="")&&(s.value=a)}),s.addEventListener("keydown",l=>{l.key==="Enter"&&s.blur()}),t.appendChild(i),t.appendChild(s),this.container.appendChild(t),this.components.push(t)}addStringInput(e){let t=document.createElement("div");t.className="gui-setting-container";let i=document.createElement("span");i.className="gui-setting-label",i.textContent=e;let s=document.createElement("input");s.type="text",s.className="gui-text-input",s.value=this.module.options[e],s.addEventListener("input",()=>{let a=s.value.trim();this.module.options[e]=a,d.emit("setting.update",this.module)}),t.appendChild(i),t.appendChild(s),this.container.appendChild(t),this.components.push(t)}addCheckbox(e){let t=document.createElement("div");t.className="gui-setting-container";let i=document.createElement("span");i.className="gui-setting-label",i.textContent=e;let s=document.createElement("div");s.className="gui-checkbox",s.classList.toggle("enabled",this.module.options[e]===!0||this.module.options[e]==="true"),s.addEventListener("click",()=>{let a=s.classList.contains("enabled");s.classList.toggle("enabled"),this.module.options[e]=(!a).toString(),d.emit("setting.update",this.module)}),t.appendChild(i),t.appendChild(s),this.container.appendChild(t),this.components.push(t)}addColorPicker(e){let t=document.createElement("div");t.className="gui-setting-container";let i=document.createElement("span");i.className="gui-setting-label",i.textContent=e;let s=document.createElement("div");s.className="gui-color-picker",s.style.background=this.module.options[e];let a=document.createElement("input");a.type="color",a.className="gui-color-input",s.appendChild(a),a.addEventListener("input",l=>{s.style.background=l.target.value,this.module.options[e]=l.target.value,d.emit("setting.update",this.module)}),t.appendChild(i),t.appendChild(s),this.container.appendChild(t),this.components.push(t)}};var k=class{constructor(e,t={top:"200px",left:"200px"}){this.panel=document.createElement("div"),this.panel.className="gui-panel",this.panel.style.top=t.top,this.panel.style.left=t.left,this.header=document.createElement("div"),this.header.className="gui-header",this.header.textContent=e,this.panel.appendChild(this.header),document.body.appendChild(this.panel),this.buttons=[],this.setupDragHandling()}setupDragHandling(){let e=!1,t={x:0,y:0};this.header.addEventListener("mousedown",i=>{e=!0,t.x=i.clientX-this.panel.offsetLeft,t.y=i.clientY-this.panel.offsetTop}),document.addEventListener("mousemove",i=>{e&&(this.panel.style.left=i.clientX-t.x+"px",this.panel.style.top=i.clientY-t.y+"px")}),document.addEventListener("mouseup",()=>e=!1)}addButton(e){let t=document.createElement("div");t.className="gui-button-container";let i=document.createElement("div");i.className=`gui-button ${e.isEnabled?"enabled":""}`,i.textContent=e.name;let s=new E(e,t);return i.addEventListener("mousedown",a=>{a.button===0&&(e.toggle(),i.classList.toggle("enabled",e.isEnabled)),a.button===1&&(i.textContent="waiting for bind..",e.waitingForBind=!0)}),i.addEventListener("contextmenu",a=>{a.preventDefault(),s.initialize(),s.toggle()}),i.setAttribute("tabindex",-1),i.addEventListener("keydown",a=>{i.textContent=e.name,e.waitingForBind&&(a.preventDefault(),a.stopPropagation(),a.stopImmediatePropagation(),a.key==="Escape"?e.keybind=null:e.keybind=String(a.code),e.waitingForBind=!1)}),t.appendChild(i),this.panel.appendChild(t),this.buttons.push(i),i}show(){this.panel.style.display="block"}hide(){this.panel.style.display="none"}};var ae=`@font-face {\r
    font-family: "Product Sans";\r
    src: url(https://fonts.gstatic.com/s/productsans/v19/pxiDypQkot1TnFhsFMOfGShVF9eO.woff2);\r
}\r
\r
:root {\r
    --Minebuns-accent-color: linear-gradient(90deg, rgb(64, 190, 255) 0%, rgb(129, 225, 255) 100%);\r
    --button-color: rgb(40, 40, 40, 0.9);\r
    --hover-color: rgb(50, 50, 50, 0.9);\r
    --panel-bg: rgb(34, 34, 34, 0.85);\r
    --panel-bg: rgb(10, 10, 10, 0.85);\r
    --text-color: #ffffff;\r
    --header-text-size: 25px;\r
    --button-text-size: 20px;\r
    --setting-text-size: 15px;\r
}\r
\r
.gui-panel {\r
    position: fixed;\r
    z-index: 1000;\r
    width: 200px;\r
    border-radius: 8px;\r
    background-color: var(--panel-bg);\r
    box-shadow: 0 4px 8px rgba(0,0,0,0.3);\r
    font-family: 'Product Sans', sans-serif;\r
    color: var(--text-color);\r
    overflow: hidden;\r
}\r
\r
.gui-header {\r
    background-color: var(--header-bg);\r
    height: 40px;\r
    font-weight: 900;\r
    display: flex;\r
    align-items: center;\r
    justify-content: center;\r
    font-size: var(--header-text-size);\r
    cursor: grab;\r
}\r
\r
.gui-header:active {\r
    cursor: grabbing;\r
}\r
\r
.gui-button {\r
    height: 35px;\r
    display: flex;\r
    align-items: center;\r
    padding-left: 10px;\r
    box-sizing: border-box;\r
    cursor: pointer;\r
    border-radius: 0;\r
    transition: all 0.3s;\r
    font-size: var(--button-text-size);\r
    font-weight: 200;\r
    outline: none;\r
    background: var(--button-color);\r
    color: var(--text-color);\r
}\r
\r
.gui-button.enabled {\r
    background: var(--Minebuns-accent-color);\r
}\r
\r
.gui-button:not(.enabled):hover {\r
    background: var(--hover-color);\r
}\r
\r
.gui-background {\r
    position: absolute;\r
    left: 0;\r
    top: 0;\r
    z-index: 999;\r
    height: 100%;\r
    width: 100%;\r
    backdrop-filter: blur(15px);\r
    background: rgba(0, 0, 0, 0.3);\r
}\r
\r
.gui-setting-container {\r
    display: flex;\r
    align-items: center;\r
    justify-content: space-between;\r
    background-color: var(--panel-bg);\r
    padding: 2px;\r
}\r
\r
.gui-setting-label {\r
    font-size: var(--setting-text-size);\r
    margin-left: 10px;\r
    font-weight: 300;\r
    color: var(--text-color);\r
}\r
\r
.gui-checkbox {\r
    width: 15px;\r
    height: 15px;\r
    border-radius: 4px;\r
    background: var(--button-color);\r
    position: relative;\r
    margin: 8px;\r
    cursor: pointer;\r
    transition: background 0.3s;\r
}\r
\r
.gui-checkbox.enabled {\r
    background: var(--Minebuns-accent-color);\r
}\r
\r
.gui-color-picker {\r
    width: 15px;\r
    height: 15px;\r
    border-radius: 4px;\r
    position: relative;\r
    margin: 8px;\r
    cursor: pointer;\r
}\r
\r
.gui-color-input {\r
    width: 20px;\r
    height: 20px;\r
    opacity: 0;\r
    cursor: pointer;\r
}\r
\r
.gui-button-container {\r
    background-color: var(--panel-bg);\r
    display: flex;\r
    flex-direction: column;\r
}\r
\r
.gui-text-input {\r
    background: var(--button-color);\r
    border: none;\r
    color: var(--text-color);\r
    font-family: 'Product Sans', sans-serif;\r
    font-size: var(--setting-text-size);\r
    width: 40px;\r
    border-radius: 4px;\r
    outline: none;\r
    transition: background 0.3s;\r
    text-align: center;\r
    margin: 5px;\r
    margin-right: 10px;\r
}\r
\r
.gui-text-input:hover {\r
    background: var(--hover-color);\r
}\r
\r
.gui-text-input:focus {\r
    background: var(--hover-color);\r
}\r
\r
.with-animations .gui-panel {\r
    animation: fadeInScale 0.3s ease-out;\r
}\r
\r
@keyframes fadeInScale {\r
    from {\r
        opacity: 0;\r
        transform: scale(0.9);\r
    }\r
    to {\r
        opacity: 1;\r
        transform: scale(1);\r
    }\r
}\r
\r
.with-animations .gui-background {\r
    animation: fadeIn 0.3s ease-out;\r
}\r
\r
@keyframes fadeIn {\r
    from { opacity: 0; }\r
    to { opacity: 1; }\r
}\r
\r
.with-animations .gui-button {\r
    transition: transform 0.2s ease, background 0.2s ease;\r
}\r
\r
.with-animations .gui-button:hover {\r
    transform: scale(1.01);\r
}\r
\r
.with-animations .gui-setting-container {\r
    will-change: transform, opacity;\r
    transform-origin: top;\r
    animation: slideDown 0.25s ease-out forwards;\r
}\r
\r
@keyframes slideDown {\r
    from {\r
        opacity: 0;\r
        transform: scaleY(0.8);\r
    }\r
    to {\r
        opacity: 1;\r
        transform: scaleY(1);\r
    }\r
}\r
`;var b={normalizeVector(r){let e=r.x*r.x+r.y*r.y+r.z*r.z;if(e>0){let t=1/Math.sqrt(e);return[r.x*t,r.y*t,r.z*t]}return r},distanceBetween(r,e){let t=e.x-r.x,i=e.y-r.y,s=e.z-r.z;return t*t+i*i+s*s},distanceBetweenSqrt(r,e){return Math.sqrt(this.distanceBetween(r,e))},calculateDistance(r,e){return Math.hypot(e.x-r.x,e.y-r.y,e.z-r.z)},calculateDistanceArr(r,e){return Math.hypot(e[0]-r[0],e[1]-r[1],e[2]-r[2])}};var h={getClosestPlayer(){let r=o.gameWorld.player.position,e=o.gameWorld.server.players,t=[];return e.forEach(function(i,s){let a=b.distanceBetween(r,{x:i._model.position.x,y:i._model.position.y,z:i._model.position.z});i.id=s,t.push({player:i,distance:a})}),t.sort((i,s)=>i.distance-s.distance),t.map(i=>i.player)[0]},hexToRgb(r){var e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(r);return e?{r:parseInt(e[1],16),g:parseInt(e[2],16),b:parseInt(e[3],16)}:null},getCssRule(r){for(let e of document.styleSheets)for(let t of e.cssRules||[])if(t.selectorText?.includes(r))return t},openOtherItem(r){let e=Object.values(o.gameWorld.player.position).map(Math.floor),t=o.gameWorld.systemsManager.activeSystems.find(i=>i?.openOtherItem);o.stores.get("inventoryState").setBackpackStates(0),setTimeout(()=>{t.openOtherItem(e,r)},100)}};function pe(r){let e=document.createElement("style");e.textContent=r,document.head.appendChild(e)}pe(ae);var M=class extends n{constructor(){super("ClickGUI","Visual",{"Accent Color 1":"rgb(64, 190, 255)","Accent Color 2":"rgb(129, 225, 255)","Button Color":"rgb(40, 40, 40, 0.9)","Hover Color":"rgb(50, 50, 50, 0.9)","Header Color":"rgb(0, 0, 0, 0.85)","Panel Color":"rgb(18 18 18)","Text Color":"#ffffff","Enable Animations":!0},"Comma"),this.GUILoaded=!1,this.panels=[],this.blurredBackground=null,this.updateColors()}updateAnimations(){this.options["Enable Animations"]?document.body.classList.add("with-animations"):document.body.classList.remove("with-animations")}updateColors(){document.body.style.setProperty("--Minebuns-accent-color",`linear-gradient(90deg, ${this.options["Accent Color 1"]} 0%, ${this.options["Accent Color 2"]} 100%)`),document.body.style.setProperty("--button-color",this.options["Button Color"]),document.body.style.setProperty("--hover-color",this.options["Hover Color"]),document.body.style.setProperty("--header-bg",this.options["Header Color"]),document.body.style.setProperty("--panel-bg",this.options["Panel Color"]),document.body.style.setProperty("--text-color",this.options["Text Color"])}onEnable(){document.pointerLockElement&&document.exitPointerLock(),this.GUILoaded?(this.showGUI(),this.updateAnimations()):(this.setupBackground(),this.createPanels(),this.setupEventListeners(),this.GUILoaded=!0,this.updateAnimations());let e=h.getCssRule(".pause-cont");e&&(e.style.display="none"),this.fixCanvas()}fixCanvas(){document.querySelector("#game")&&game.dispatchEvent(new Event("resize",{bubbles:!0}))}setupBackground(){this.blurredBackground=document.createElement("div"),this.blurredBackground.className="gui-background",document.body.appendChild(this.blurredBackground)}createPanels(){let e=[{title:"Combat",position:{top:"100px",left:"100px"}},{title:"Movement",position:{top:"100px",left:"320px"}},{title:"Visual",position:{top:"100px",left:"540px"}},{title:"Misc",position:{top:"100px",left:"760px"}},{title:"Menus",position:{top:"100px",left:"1000px"}}];this.panels.forEach(i=>{i.panel&&i.panel.parentNode&&i.panel.parentNode.removeChild(i.panel)}),this.panels=[],e.forEach(i=>{let s=new k(i.title,i.position);this.panels.push(s)});let t={};Object.values(u.modules).forEach(i=>{t[i.category]||(t[i.category]=[]),t[i.category].push(i)}),Object.entries(t).forEach(([i,s])=>{let a=this.panels.find(l=>l.header.textContent===i);a&&(s.sort((l,m)=>m.name.length-l.name.length),s.forEach(l=>a.addButton(l)))})}setupEventListeners(){d.on("module.update",e=>{let t=this.panels.find(s=>s.header.textContent===e.category);if(!t)return;let i=t.buttons.find(s=>s.textContent===e.name);i&&i.classList.toggle("enabled",e.isEnabled)})}showGUI(){this.panels.forEach(e=>e.show()),this.blurredBackground.style.display="block"}onDisable(e=!0){this.panels.forEach(a=>a.hide()),this.blurredBackground.style.display="none";let t=h.getCssRule(".pause-cont");t&&(t.style.display="");let i=document.getElementsByClassName("pause-cont")[0];i&&(i.style.display="none"),this.fixCanvas();let s=document.querySelector("#game");e&&s&&s.click()}onSettingUpdate(){this.updateColors(),this.updateAnimations()}};var C=class extends n{constructor(){super("Airjump","Movement",null)}onRender(){o?.gameWorld?.player&&(o.gameWorld.player.collision.isGrounded=!0)}};var W=class extends n{constructor(){super("Instabreak","Misc",null),this.originalHardness=new Map}onEnable(){Object.values(o.gameWorld.items).forEach(e=>{e?.destruction&&(this.originalHardness.has(e)||this.originalHardness.set(e,e.destruction.durability),e.destruction.durability=0)})}onDisable(){Object.values(o.gameWorld.items).forEach(e=>{e?.destruction&&this.originalHardness.has(e)&&(e.destruction.durability=this.originalHardness.get(e))})}};var w=class extends n{constructor(){super("Nuker","Misc",{Radius:3,"Chunk Interval":1e3}),this.lastExecutionTime=0}onRender(){if(!o?.gameWorld?.player)return;let e=this.options.Radius,t=this.options["Chunk Interval"],i=Date.now();if(i-this.lastExecutionTime>=t){this.lastExecutionTime=i;let s=Object.values(o.gameWorld.player.position).splice(0,3).map(Math.floor);for(let a=-e;a<=e;a++)for(let l=-e;l<=e;l++)for(let m=-e;m<=e;m++){let[c,f,y]=[s[0]+a,s[1]+l,s[2]+m];o.gameWorld.chunkManager.getBlock(c,f,y)!==0&&o.gameWorld.chunkManager.setBlock(c,f,y,0,!0,!0)}}}};var P=class extends n{constructor(){super("AdBypass","Misc")}onEnable(){this._reward=this._reward||o.stores.get("adsStore").rewardCommercialVideoWrapper,o.stores.get("adsStore").rewardCommercialVideoWrapper=()=>!0}onDisable(){o.stores.get("adsStore").rewardCommercialVideoWrapper=()=>this._reward}};var _=class extends n{constructor(){super("Fly","Movement",{"Vertical Speed":5})}onRender(){o?.gameWorld?.player&&(o.gameWorld.player.velocity.gravity=0,o?.gameWorld?.player?.inputs.jump?o.gameWorld.player.velocity.velVec3.y=this.options["Vertical Speed"]:o?.gameWorld?.player?.inputs.crouch?o.gameWorld.player.velocity.velVec3.y=-this.options["Vertical Speed"]:o.gameWorld.player.velocity.velVec3.y=0)}onDisable(){o.gameWorld.player.velocity.gravity=23}};var I=class extends n{constructor(){super("Speed","Movement",{Speed:15})}onRender(){o?.gameWorld?.player&&(o.gameWorld.player.velocity.moveSpeed=this.options.Speed,o.gameWorld.player.velocity.fastMoveSpeed=this.options.Speed)}onDisable(){o.gameWorld.player.velocity.moveSpeed=4.5,o.gameWorld.player.velocity.fastMoveSpeed=6.4}};var B=class extends n{constructor(){super("FreeHeadcoins","Misc")}async onEnable(){let e=await o.network.get("users/freeSpinner");o.stores.get("userState").user.balance.headcoins+=e.data.amount,u.modules.FreeHeadcoins.disable()}};var D=class extends n{constructor(){super("Fill","Misc",{Radius:4,"Block ID":652,"Chunk Interval":500}),this.lastExecutionTime=0}onRender(){if(!o?.gameWorld?.player)return;let e=this.options.Radius,t=this.options["Chunk Interval"],i=Date.now();if(i-this.lastExecutionTime>=t){this.lastExecutionTime=i;let s=Object.values(o.gameWorld.player.position).splice(0,3).map(Math.floor);for(let a=-e;a<=e;a++)for(let l=-e;l<=e;l++)for(let m=-e;m<=e;m++){let[c,f,y]=[s[0]+a,s[1]+l,s[2]+m];o.gameWorld.chunkManager.getBlock(c,f,y)==0&&o.gameWorld.chunkManager.setBlock(c,f,y,this.options["Block ID"],!0,!0)}}}};var z=class extends n{constructor(){super("Chams","Visual",null)}onRender(){o?.gameWorld?.player&&o.gameWorld.server.players.forEach(e=>{e.playerMaterial.depthTest=!1,e.playerMaterial.wireframe=!0})}onDisable(){o.gameWorld.server.players.forEach(e=>{e.playerMaterial.depthTest=!0,e.playerMaterial.wireframe=!1})}};var R=class extends n{constructor(){super("FOVChanger","Visual",{FOV:120})}onRender(){let e=o?.gameWorld?.threeScene?.camera||null;e?.updateProjectionMatrix&&e.fov!==parseFloat(this.options.FOV)&&(e.fov=parseFloat(this.options.FOV),e.updateProjectionMatrix(),o.gameWorld.player.settings.__defineGetter__("fov",()=>parseFloat(this.options.FOV)))}onDisable(){o.gameWorld.threeScene.camera=70,o.gameWorld.threeScene.camera.updateProjectionMatrix(),delete o.gameWorld.player.settings.fov,o.gameWorld.player.settings.fov=70}};var T=class extends n{constructor(){super("Scaffold","Movement",null)}onRender(){if(!o?.gameWorld?.player)return;let e=Object.values(o.gameWorld.player.position).splice(0,3).map(Math.floor);e[1]--;let t=o.gameWorld.player.currentInventoryItemId,i=o.gameWorld.chunkManager.getBlock(...e),s=o.gameWorld.items[i]?.replaceable||!1;(i==0||s)&&t&&o.gameWorld.chunkManager.setBlock(...e,t,!0,!0)}};var A=class extends n{constructor(){super("Killaura","Combat",{"Y Offset":1.62,Reach:5,Delay:100}),this.lastExecutionTime=null}onRender(){let e=Date.now();o?.gameWorld?.player&&e-this.lastExecutionTime>=this.options.Delay&&(this.lastExecutionTime=e,this.tryKill())}tryKill(){let e=this.options.Reach,t=this.options["Y Offset"],i=h.getClosestPlayer();var s={x:o.gameWorld.player.position.x,y:o.gameWorld.player.position.y+t,z:o.gameWorld.player.position.z},a=i._model.position,l={x:s.x-a.x,y:s.y-a.y,z:s.z-a.z},m=Math.sqrt(l.x*l.x+l.y*l.y+l.z*l.z);m!==0&&(l.x/=m,l.y/=m,l.z/=m),l.x=-l.x,l.y=-l.y,l.z=-l.z;var c=Math.sqrt(Math.pow(s.x-a.x,2)+Math.pow(s.y-a.y,2)+Math.pow(s.z-a.z,2));c<e&&o.gameWorld.server.sendData(13,[o.gameWorld.time.localServerTimeMs,s.x,s.y,s.z,l.x,l.y,l.z,c,i.id])}};var O=class extends n{constructor(){super("GunModifier","Combat",{Spread:.5,"Bullets per shot":100,"Firerate (ms)":1,"Bullet distance":1e3,"Reload Time":1,Recoil:!1})}get gunSystem(){return o.gameWorld.systemsManager.activeSystems.find(e=>e?.bulletsSystem)}onEnable(){let e=this.gunSystem.playerShooter.currPlayerWeaponSpec;e.bulletsPerShot=this.options["Bullets per shot"],e.firerateMs=this.options["Firerate (ms)"],e.distance=this.options["Bullet distance"],e.startSpread=this.options.Spread,e.reloadTimeMs=this.options["Reload Time"],this.options.Recoil||(e.recoilAttackY=0,e.recoilAttackY=0)}};var N=class extends n{constructor(){super("Aimbot","Combat",{"On Aim":"true","On Shoot":"true","Y Offset":.5}),this.lastExecutionTime=null}getClosestEnemy(e,t){let i=null,s=1/0;return t.forEach(a=>{if(a?.model?.position&&a.isAlive){let l=b.calculateDistance(e.position,a.model.position);l<s&&(s=l,i=a)}}),i}aimAtEnemy(){let e=o.gameWorld.player,t=o.gameWorld.server.players;if(!e||!t)return;let i=this.getClosestEnemy(e,t);if(i){let s=i.model.position,a=e.position,l={x:s.x-a.x,z:s.z-a.z},m=Math.atan2(l.x,l.z),c=parseFloat(this.options["Y Offset"]),f=s.y+c-a.y,y=Math.hypot(l.x,l.z),x=Math.atan2(f,y);x=Math.max(Math.min(x,Math.PI/2),-Math.PI/2);let g=(m+Math.PI)%(2*Math.PI);e.rotation.y=g,e.rotation.x=x}}onRender(){o?.gameWorld?.server&&(this.options["On Aim"]=="true"&&o.gameWorld.player.inputs.rightMB?this.aimAtEnemy():this.options["On Shoot"]=="true"&&o.gameWorld.player.inputs.leftMB?this.aimAtEnemy():this.options["On Shoot"]!=="true"&&this.options["On Aim"]!=="true"&&this.aimAtEnemy())}};var L=class extends n{constructor(){super("NoClip","Movement")}get playerPhysicsSystem(){return o.gameWorld.systemsManager.activeSystems.find(e=>e?.playerPhysicsSystem).playerPhysicsSystem}onRender(){o?.gameWorld?.player&&(this._og=this._og||this.playerPhysicsSystem.resolveBlockCollision,this.playerPhysicsSystem.resolveBlockCollision==this._og&&(this.playerPhysicsSystem.resolveBlockCollision=()=>{}))}onDisable(){this.playerPhysicsSystem.resolveBlockCollision=this._og}};var U=class extends n{constructor(){super("Timer","Movement",{Multiplier:1.2}),this.interval=null}onEnable(){this.interval&&clearInterval(this.interval),this.interval=setInterval(()=>{let e=o.gameWorld.time;e.elapsedTimeMs+=20*this.options.Multiplier},20)}onDisable(){this.interval&&clearInterval(this.interval)}};var p={toServer:{TIME_STEP_INFO:1,REQUEST_RESPAWN:4,GOT_DAMAGE:27,PARKOUR_REQUEST_RESPAWN:1004,ONE_BLOCK_REQUEST_RESPAWN:1552,BED_WARS_REQUEST_RESPAWN:1600,SANDBOX_REQUEST_RESPAWN:1700},toClient:{SET_WALK_MODE:41,SET_INVISIBLE_MODE:42},listeners:{},packetListener(r,e){Object.values(this.listeners).forEach(t=>{let i=t(r,e);i!=null&&(e=i)}),o.gameWorld.server.msgsToSend.push(r,e)},init(){d.on("render",()=>{o?.gameWorld?.server?.sendData&&(o.gameWorld.server.sendData=this.packetListener.bind(this))})}};var F=class extends n{constructor(){super("NoFall","Movement",null)}onEnable(){p.listeners.NoFall=function(e,t){if(e==p.toServer.TIME_STEP_INFO&&t.lp){let i=t.lp[3];i>0&&(t.lp[3]*=.01),i<0&&(t.lp[3]=-.01),i==0&&(t.lp[3]=-.01)}}}onDisable(){delete p.listeners.NoFall}};var H=class extends n{constructor(){super("HighJump","Movement",{"Jump Height":25})}onRender(){o.gameWorld.player.velocity.jumpSpeed=parseFloat(this.options["Jump Height"])}onDisable(){o.gameWorld.player.velocity.jumpSpeed=8.285714285714286}};var V=class extends n{constructor(){super("NoHunger","Misc",null)}onEnable(){p.listeners.NoHunger=function(e,t){e==p.toServer.TIME_STEP_INFO&&(t.m&&delete t.m,t.s&&delete t.s,t.j&&delete t.j)}}onDisable(){delete p.listeners.NoHunger}};var K=class extends n{constructor(){super("NoDrown","Misc",null)}get damageListener(){return o.gameWorld.eventEmitter._events.get(48).values().next().value}onRender(){o?.gameWorld?.eventEmitter?._events&&this.damageListener.callback.toString().includes("damageToApply")&&(this.damageListener.callback=()=>{})}onDisable(){o?.gameWorld?.eventEmitter?._events&&(this.damageListener.callback=e=>{this.damageToApply+=e})}};var j=class extends n{constructor(){super("GroundSpeed","Movement",{Speed:15})}get playerPhysicsSystem(){return o.gameWorld.systemsManager.activeSystems.find(e=>e?.playerPhysicsSystem).playerPhysicsSystem}resetMovementSpeed(){o.gameWorld.player.velocity.moveSpeed=4.5,o.gameWorld.player.velocity.fastMoveSpeed=6.4}onRender(){o?.gameWorld?.player&&(o.gameWorld.player.collision.isGrounded?(o.gameWorld.player.velocity.moveSpeed=this.options.Speed,o.gameWorld.player.velocity.fastMoveSpeed=this.options.Speed):this.resetMovementSpeed())}onEnable(){let e=0,t=0;this.playerPhysicsSystem.BB.min.__defineGetter__("y",()=>e-.1),this.playerPhysicsSystem.BB.max.__defineGetter__("y",()=>t-.1),this.playerPhysicsSystem.BB.min.__defineSetter__("y",i=>{e=i}),this.playerPhysicsSystem.BB.max.__defineSetter__("y",i=>{t=i})}onDisable(){this.resetMovementSpeed(),delete this.playerPhysicsSystem.BB.min.y,delete this.playerPhysicsSystem.BB.max.y}};var G=class extends n{constructor(){super("InstantRespawn","Misc")}get gamemode(){return location.pathname.replace("/match/","")}onRender(){if(o.gameWorld?.player.isAlive)return;let e=!1;switch(this.gamemode){case"one-block":o.gameWorld.server.sendData(p.toServer.ONE_BLOCK_REQUEST_RESPAWN,!0),e=!0;case"parkour":o.gameWorld.server.sendData(p.toServer.PARKOUR_REQUEST_RESPAWN,!0),e=!0;case"bedwars":o.gameWorld.server.sendData(p.toServer.BED_WARS_REQUEST_RESPAWN,!0),e=!0;case"survival":o.gameWorld.server.sendData(p.toServer.SANDBOX_REQUEST_RESPAWN,!0),e=!0}e&&o.stores.get("gameState").setLayoutState(0)}};var Y=class extends n{constructor(){super("ShopAnywhere","Misc")}get npcSystem(){return o?.gameWorld?.systemsManager?.activeSystems.find(e=>e?.isPlayerInShoppingZone)}onRender(){this?.npcSystem?.isPlayerInShoppingZone&&(this._og=this._og||this.npcSystem.isPlayerInShoppingZone,this.npcSystem.isPlayerInShoppingZone==this._og&&(this.npcSystem.isPlayerInShoppingZone=()=>!0))}onDisable(){this.npcSystem.isPlayerInShoppingZone=this._og}};var q=class extends n{constructor(){super("SelfHarm","Misc",{Amount:1})}onEnable(){o.gameWorld.server.msgsToSend.push(p.toServer.GOT_DAMAGE,parseFloat(this.options.Amount)),this.disable()}};var Q=class extends n{constructor(){super("Dupe","Misc")}onEnable(){let e=o.stores.get("inventoryState"),t=e[1][e.selectedItem].q;for(let i=0;i<t;i++)o.gameWorld.server.sendData(509,[1,"1",e.selectedItem]),o.gameWorld.server.sendData(509,[1,"1",e.selectedItem]);this.disable()}};var Z=class extends n{constructor(){super("BlockFinder","Misc",{"Search Radius":16,"Block ID":581}),this.CHUNK_SIZE=16,this.CHUNK_CHECK_MS=200,this.foundBlocks=[],this.lastChunkKey="",this.chunkInterval=null,this.raf=null,this.ui=null,this.listEl=null}getPlayerChunk(){let e=o.gameWorld.player.position;return[Math.floor(e.x/this.CHUNK_SIZE),Math.floor(e.y/this.CHUNK_SIZE),Math.floor(e.z/this.CHUNK_SIZE)]}createUI(){if(this.ui)return;let e=document.createElement("div");e.style.cssText=`
            position:fixed;
            top:80px;
            left:80px;
            width:260px;
            background:#111;
            color:#ddd;
            font:11px system-ui, sans-serif;
            border-radius:6px;
            box-shadow:0 6px 20px rgba(0,0,0,.4);
            z-index:99999;
            user-select:none;
        `,e.innerHTML=`
            <div class="bf-head" style="
                padding:6px 8px;
                cursor:move;
                opacity:.85;
            ">
                Block Finder
            </div>
            <div class="bf-list" style="
                max-height:260px;
                overflow:auto;
                padding:4px 8px 8px;
                font-family:monospace;
                white-space:pre;
            "></div>
        `,document.body.appendChild(e),this.ui=e,this.listEl=e.querySelector(".bf-list");let t=!1,i=0,s=0,a=e.querySelector(".bf-head");a.onmousedown=l=>{t=!0,i=l.clientX-e.offsetLeft,s=l.clientY-e.offsetTop},document.addEventListener("mousemove",this._dragMove=l=>{t&&(e.style.left=l.clientX-i+"px",e.style.top=l.clientY-s+"px")}),document.addEventListener("mouseup",this._dragUp=()=>{t=!1})}destroyUI(){this.ui&&(this.ui.remove(),this.ui=null,this.listEl=null,document.removeEventListener("mousemove",this._dragMove),document.removeEventListener("mouseup",this._dragUp))}scanChunks(){let e=this.options["Search Radius"]|0,t=this.options["Block ID"]|0,i=o.gameWorld.chunkManager,s=this.getPlayerChunk();this.foundBlocks.length=0;for(let a=-e;a<=e;a++)for(let l=-e;l<=e;l++)for(let m=-e;m<=e;m++){let c=s[0]+a,f=s[1]+l,y=s[2]+m,x=i.getChunkArray(c,f,y);if(x)for(let g=0;g<x.length;g++){if(x[g]!==t)continue;let ie=(c<<4)+(g&15),re=(f<<4)+(g>>4&15),ne=(y<<4)+(g>>8);o.gameWorld.chunkManager.getBlock(ie,re,ne)===t&&this.foundBlocks.push([ie,re,ne])}}}renderDistances=()=>{if(!this.listEl)return;let e=[...o.gameWorld.player.position];this.foundBlocks.length===0?this.listEl.textContent="none nearby":this.listEl.textContent=this.foundBlocks.map(t=>({pos:t,d:b.calculateDistanceArr(e,t)})).sort((t,i)=>t.d-i.d).map(t=>`${t.pos[0]}, ${t.pos[1]}, ${t.pos[2]}  ${t.d.toFixed(1)}m`).join(`
`),this.raf=requestAnimationFrame(this.renderDistances)};onEnable(){this.createUI(),this.scanChunks(),this.renderDistances(),this.chunkInterval=setInterval(()=>{let e=this.getPlayerChunk().join(",");e!==this.lastChunkKey&&(this.lastChunkKey=e,this.scanChunks())},this.CHUNK_CHECK_MS)}onDisable(){clearInterval(this.chunkInterval),cancelAnimationFrame(this.raf),this.chunkInterval=null,this.raf=null,this.foundBlocks.length=0,this.lastChunkKey="",this.destroyUI()}};var X=class extends n{constructor(){super("Spider","Movement",{Speed:5})}get playerPhysicsSystem(){return o.gameWorld.systemsManager.activeSystems.find(e=>e?.playerPhysicsSystem).playerPhysicsSystem}get upAgainstWall(){return this.playerPhysicsSystem.playerVelVec3.x==0||this.playerPhysicsSystem.playerVelVec3.z==0}onRender(){o?.gameWorld?.player&&o?.gameWorld?.player?.inputs.jump&&this.upAgainstWall&&(o.gameWorld.player.velocity.velVec3.y=this.options.Speed)}};var $=class extends n{constructor(){super("Freecam","Visual",{"3rd person":"true"}),this._copy=null,this.realPos=null}get playerModel(){return o.gameWorld.systemsManager.activeSystems.find(e=>e?.model).model}onEnable(){let e=o.gameWorld,t=0;e.player.cameraMode==1&&this.options["3rd person"]=="true"&&(o.gameWorld.switchCameraView(),t=100),o.gameWorld.server.msgsListeners[p.toClient.SET_INVISIBLE_MODE](),setTimeout(()=>{this._copy=this._copy||this.playerModel.position.copy,this.playerModel.position.copy=()=>{},this.realPos=this.playerModel.position},t)}onDisable(){o.gameWorld.server.msgsListeners[p.toClient.SET_WALK_MODE](),this.playerModel.position.copy=this._copy.bind(this.playerModel.position),this.playerModel.position=this.realPos}};var J=class extends n{constructor(){super("AirPlace","Misc")}get blockPlaceSystem(){return o.gameWorld.systemsManager.activeSystems.find(e=>e?._handlePlaceInAir)}onEnable(){this.blockPlaceSystem.canPlaceBlocksInAir=!0}onDisable(){this.blockPlaceSystem.canPlaceBlocksInAir=o.gameWorld.player.gameMode==2}};var ee=class extends n{constructor(){super("Crafting","Menus")}onEnable(){h.openOtherItem(2),this.disable(),u.modules.ClickGUI.onDisable(!1)}};var te=class extends n{constructor(){super("DyeingTable","Menus")}onEnable(){h.openOtherItem(9),this.disable(),u.modules.ClickGUI.onDisable(!1)}};var oe=class extends n{constructor(){super("CuttingTable","Menus")}onEnable(){h.openOtherItem(10),this.disable(),u.modules.ClickGUI.onDisable(!1)}};var u={modules:{},addModules:function(...r){for(let e of r){let t=new e;this.modules[t.name]=t}},addModule:function(r){this.modules[r.name]=r},handleKeyPress:function(r){for(let e in this.modules){let t=this.modules[e];t.waitingForBind?(t.keybind=r,t.waitingForBind=!1):t.keybind==r&&t.toggle()}},init(){this.addModules(v,S,M,C,W,w,P,_,I,j,B,D,z,R,T,A,O,N,L,U,F,H,V,K,G,Y,q,Q,Z,X,$,J,ee,te,oe),d.on("render",()=>{for(let r in this.modules)this.modules[r].isEnabled&&this.modules[r].onRender()}),d.on("keydown",this.handleKeyPress.bind(this)),d.on("setting.update",()=>{for(let r in this.modules)this.modules[r].isEnabled&&this.modules[r].onSettingUpdate()}),this.modules.Arraylist.enable(),this.modules.ClickGUI.enable()}};var se=class{constructor(){this.version="1.0.0",this.init()}init(){setInterval(()=>{d.emit("render")},1e3/60),document.addEventListener("keydown",e=>{d.emit("keydown",e.code)}),u.init(),p.init(),this.packets=p,this.moduleManager=u,this.hooks=o}disable(){}};function le(){window.minebuns=new se}document.readyState==="complete"||document.readyState==="interactive"?le():document.addEventListener("DOMContentLoaded",()=>{setTimeout(le,1e3)});})();