1
0
mirror of https://github.com/zumbiepig/MineXLauncher.git synced 2025-06-08 09:24:48 +00:00

add more mods

This commit is contained in:
zumbiepig 2024-09-04 08:28:29 -07:00
parent d401d604e7
commit 2c3dc69c75
No known key found for this signature in database
GPG Key ID: 17C891BE28B953DE
9 changed files with 611 additions and 0 deletions

View File

@ -224,6 +224,38 @@
"author": "ZXMushroom63",
"authorLink": "https://github.com/ZXMushroom63",
"source": "https://github.com/EaglerRinth/eaglerrinth.github.io/blob/main/CommunityMods/AutoFish.js"
},
{
"id": "recipe-mod",
"name": "Recipe Mod",
"description": "This is a recipe mod for eaglerforge, a bit like JEI.",
"author": "Oeil-de-Lynx",
"authorLink": "https://github.com/OeildeLynx31",
"source": "https://github.com/OeildeLynx31/eaglerforge-mods/blob/main/eagler_recipe.js"
},
{
"id": "auto-respawn",
"name": "Auto Respawn",
"description": "auto respawn mod",
"author": "Oeil-de-Lynx",
"authorLink": "https://github.com/OeildeLynx31",
"source": "https://github.com/OeildeLynx31/eaglerforge-mods/blob/main/auto_respawn.js"
},
{
"id": "jump-boost",
"name": "Jump Boost",
"description": "jump boost mod",
"author": "Oeil-de-Lynx",
"authorLink": "https://github.com/OeildeLynx31",
"source": "https://github.com/OeildeLynx31/eaglerforge-mods/blob/main/jump_boost.js"
},
{
"id": "player-vision",
"name": "Player Vision",
"description": "player vision mod",
"author": "Oeil-de-Lynx",
"authorLink": "https://github.com/OeildeLynx31",
"source": "https://github.com/OeildeLynx31/eaglerforge-mods/blob/main/player_vision.js"
}
],
"resourcepacks": [

View File

@ -0,0 +1,8 @@
ModAPI.require('player');
ModAPI.addEventListener("update", () => {
if (Boolean(ModAPI.player ? (ModAPI.player.isPlayer() ? true : false) : false)) {
if (ModAPI.player.isEntityAlive() === false) {
ModAPI.player.respawnPlayer();
};
};
});

View File

@ -0,0 +1,12 @@
let height = 0;
let maxJumpHeight = 3;
document.addEventListener('keydown', function(event) {
if (event.code == 'Space' && ModAPI.mcinstance.$currentScreen === null) {
if (height < maxJumpHeight) {
ModAPI.mcinstance.$thePlayer.$motionY = 1;
height += 1;
} else if (ModAPI.mcinstance.$thePlayer.$isCollidedVertically === 1){
height = 0;
}
}
});

View File

@ -0,0 +1,68 @@
let decoder = new TextDecoder();
let listPseudos;
let select = document.createElement('select');
select.addEventListener('mousedown', function (e) {
if (Minecraft.$theWorld) {
select.innerHTML = "";
listPseudos = [];
Minecraft.$theWorld.$playerEntities.$array1.data.forEach(element => {
if (element) {
listPseudos.push(decoder.decode(new Uint8Array(element.$getName().$characters.data)));
}
});
listPseudos.forEach(element => {
let option = document.createElement('option');
option.innerText = element + ((listPseudos.indexOf(element) === 0)?" (you)":"");
option.value = element;
select.appendChild(option);
});
if (document.querySelector(`option[value="${Minecraft.$renderViewEntity.$getName()}"]`)) {
document.querySelector(`option[value="${Minecraft.$renderViewEntity.$getName()}"]`).toggleAttribute('selected');
}
}
})
function keepLoadedPlayer() {
if (profile !== Minecraft.$thePlayer) {
Minecraft.$renderViewEntity = Minecraft.$thePlayer;
setTimeout(function() {Minecraft.$renderViewEntity = profile;}, 0);
}
}
select.addEventListener('change', function (e) {
window.profile = Minecraft.$theWorld.$playerEntities.$array1.data.find(function (element) {
if (element) {
return element.$getName() == select.value;
} else {
return null;
}
});
if (profile) {
Minecraft.$renderViewEntity = profile;
if (typeof(keepLoadedPlayerInterval) !== "undefined") {
clearInterval(keepLoadedPlayerInterval);
}
if (profile === Minecraft.$thePlayer) {
Minecraft.$gameSettings.$hideGUI = 0;
} else {
Minecraft.$gameSettings.$hideGUI = 1;
window.keepLoadedPlayerInterval = setInterval(keepLoadedPlayer, 1000);
}
}
})
ModAPI.addEventListener("frame", () => {
if (Minecraft.$theWorld && Minecraft.$theWorld.$playerEntities.$array1.data.length > 1) {
select.style.display = "unset";
} else {
select.style.display = "none";
}
})
select.style.position = "absolute";
select.style.top = "0px";
select.style.left = "0px";
document.body.appendChild(select);

View File

@ -0,0 +1,491 @@
let recipes = {};
function displayMessage(msg) {
let advancement = document.createElement('advancement');
let message = document.createElement('message');
if (msg === "success") {
document.querySelector(':root').style.setProperty('--hue-rotate', "0deg");
message.innerText = "Recipes imported successfully";
} else if (msg === "error") {
document.querySelector(':root').style.setProperty('--hue-rotate', "250deg");
message.innerText = "Recipes not imported The mod wont work";
}
advancement.appendChild(message);
document.body.appendChild(advancement);
}
fetch("https://raw.githubusercontent.com/PrismarineJS/minecraft-data/master/data/pc/1.8/recipes.json")
.then(response => response.json())
.then(json => recipes = json)
.then(() => addAllItems())
.then(() => displayMessage("success"))
.catch(() => displayMessage("error"));
function getRecipe(recipe, index) {
let json = {};
let craft = Object.values(recipe)[index];
let grid = [];
json.result = ModAPI.getItemById(craft.result.id);
json.resultNumber = craft.result.count;
json.grid = [];
if (craft.inShape) {
while (craft.inShape.length < 3) {
craft.inShape.push([null, null, null]);
}
craft.inShape.forEach(craftLine => {
while (craftLine.length < 3) {
craftLine.push(null);
}
});
grid = [].concat(craft.inShape[0], craft.inShape[1], craft.inShape[2]);
} else if (craft.outShape) {
grid = [].concat(craft.outShape[0], craft.outShape[1], craft.outShape[2]);
}
grid.forEach(item => {
if (item) {
if (item.id) {
fixedItem = item.id;
} else {
fixedItem = item;
}
json.grid.push(ModAPI.getItemById(fixedItem));
} else {
json.grid.push(null);
}
});
return json;
}
function getRecipesForId(id) {
return recipes[id];
}
ModAPI.getItemById = function (id) {
return Object.keys(ModAPI.items)[Object.values(ModAPI.items).indexOf(Object.values(ModAPI.items).find(function (item) {
if (item) {
if(item.getID() == id) {
return true;
} else {
return false;
}
} else {
return false;
}
}))];
}
ModAPI.getIdforItem = function (item) {
if (ModAPI.items[item]) {
return ModAPI.items[item].getID()
}
}
function craft(result, index) {
if (!recipes[ModAPI.getIdforItem(result)]) {
return false;
}
let craft = getRecipe(getRecipesForId(ModAPI.getIdforItem(result)), index);
let matrixGrid = [];
let resultItem;
craft.grid.forEach(item => {
if (item) {
matrixGrid.push(ModAPI.reflect.classes[0].constructors[4].exec({itemIn: ModAPI.items[item].getRef(), amount: 1}));
} else {
matrixGrid.push(null);
}
});
resultItem = ModAPI.reflect.classes[0].constructors[4].exec({itemIn: ModAPI.items[craft.result].getRef(), amount: craft.resultNumber})
if (matrixGrid.length == 9) {
Minecraft.$currentScreen.$inventorySlots0.$craftMatrix1.$stackList.data = matrixGrid;
Minecraft.$currentScreen.$inventorySlots0.$craftResult0.$stackResult.data[0] = resultItem;
}
return true;
}
function currentScreenName() {
return String(Minecraft.$currentScreen).substring(String(Minecraft.$currentScreen).lastIndexOf(".") + 1, String(Minecraft.$currentScreen).lastIndexOf("@"));
}
// GUI
let button = document.createElement('button');
button.setAttribute('id', 'recipesButton')
document.body.appendChild(button);
button.style.position = "absolute";
button.style.display = "none";
button.style.top = "0px";
button.style.left = "0px";
button.style.width = "40px";
button.style.height = "36px";
button.style.transformOrigin = "top left";
button.style.border = "0px";
button.style.backgroundSize = "100% 100%";
function addStyle(styleString) {
const style = document.createElement('style');
style.textContent = styleString;
document.body.append(style);
}
let recipeGui = document.createElement('div');
recipeGui.setAttribute('id', 'recipeGui');
recipeGui.style.position = "absolute";
recipeGui.style.backgroundColor = "#c6c6c6";
let textInput = document.createElement('div');
textInput.setAttribute('id', 'textInput');
let itemList = document.createElement('div');
itemList.setAttribute('id', 'itemList');
function addItem(url, id) {
let item = document.createElement('item');
let name = String(id).replaceAll('_', ' ');
item.setAttribute('class', 'item');
item.setAttribute('itemName', name);
item.style.background = `url('${url}'), url('https://raw.githubusercontent.com/kuronekony4n/mcicons/main/assets/itemBg.png')`;
item.style.backgroundSize = "75% 75%, cover";
item.style.backgroundPosition = "center";
item.style.backgroundRepeat = "no-repeat";
itemList.appendChild(item);
item.onclick = function() {
craft(id, 0);
}
}
recipeGui.appendChild(textInput);
recipeGui.appendChild(itemList);
document.body.appendChild(recipeGui);
window.searchFieldValue = "";
window.recipeGui = false;
window.cursor = "";
const exceptions = {
planks: "oak_planks",
noteblock: "note_block",
golden_rail: "powered_rail",
wool: "white_wool",
brick_block: "bricks",
snow_layer: "snow",
snow: "snow_block",
fence: "oak_fence",
lit_pumpkin: "jack_o_lantern",
stained_glass: "white_stained_glass",
trapdoor: "oak_trapdoor",
stonebrick: "stone_bricks",
melon_block: "melon",
fence_gate: "oak_fence_gate",
stained_hardened_clay: "white_terracotta",
stained_glass_pane: "white_stained_glass_pane",
slime: "slime_block",
carpet: "white_carpet",
stone_slab2:"red_sandstone_slab",
sign: "oak_sign",
boat: "oak_boat",
bed: "red_bed",
speckled_melon: "glistering_melon_slice",
netherbrick: "nether_bricks",
banner: "white_banner",
wooden_pressure_plate: "oak_pressure_plate",
wooden_slab: "oak_slab",
wooden_button: "oak_button",
wooden_door: "oak_door",
dye: "white_dye",
fireworks: "firework_rocket",
firework_charge: "firework_star",
}
button.onclick = function () {
window.recipeGui = !window.recipeGui;
if (window.recipeGui) {
window.intervalCursor = setInterval(() => {
window.cursor = "_";
textInput.innerText = window.searchFieldValue + window.cursor;
let timeout = setTimeout(() => {
window.cursor = "";
textInput.innerText = window.searchFieldValue + window.cursor;
}, 1000);
}, 2000);
} else {
clearTimeout(intervalCursor);
}
}
function addAllItems() {
Object.keys(recipes).forEach(item => {
let name = ModAPI.getItemById(item);
let url = "";
if (exceptions[name]) {
url = `https://raw.githubusercontent.com/kuronekony4n/mcicons/main/icons-1.21-thumb/${exceptions[name]}.png`;
} else {
if (name != undefined) {
url = `https://raw.githubusercontent.com/kuronekony4n/mcicons/main/icons-1.21-thumb/${name}.png`;
} else {
url = `https://static.wikia.nocookie.net/minecraft_gamepedia/images/b/b5/Missing_Texture_JE4.png`;
}
}
addItem(url, name);
});
}
addStyle(`
#recipesButton {
background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA2CAYAAACbZ/oUAAACkklEQVRoQ+2aPUsDQRCGjY2tnREhWNikEBFsFEEsrBSCAbFQEMHGykos/AJjCslfSBOwESGQTrAI12g6EYtAmkgaGwv/QYywjK8y4+3qhdzGSbW7N7e3775PhrmPxID8a/9wzIdDCW6R7KAJVME+2AprtHKYXG23/TY4kfiilzrfd0EFe4YxLfcnh1lXa7VaV7VmFmZD568E96ExUkChUKBD5XL5cyM6LRX8sR3q8C/hktCduliiGYfHh6n99vxG7ceDW2q74t0zpFWw8cx7hyUnF67W2D9DvVKn8XQmzcb8Be+uI62CjWfeO+zqJGKJ3D5cPlA3OZmk9ujUKJu98dxg/To0e0eGtAoOQdcbh0eG+GcD+J9EMVg8SDWKJB7PxeyN80iZXMLbGWkVzKDbtw5P7M8RXWMzY2zdi/hJtbGEPW7cy+OLU0GC2X7w6ZXOnV/Jut0eItIq2OydTRKywT7WDiO6iDeOV8+r1F08Wgytk21QR3RxwtJZibrbq8vRI62CGf/6yuHDuUOSmL/Ls7gi6ih+enM6tE7GeJw8t5OjbiqVonar1aL26d5u9EirYMbjvnK4uFEkic1mk8VbKk4wG0voYtZFXCWMj4vHtIauFB4q2OwvJjAvHcYH8XjTj2WmjduNmwabySV0MRgx3jrZYudBjDHAuZZWwWb7/oXDiIor3iyHnUEpA7uiK72CcX7iIb1MU8HGQimBee+wK95BELCasWDAACnrxuLtoQ3eKtjY6aXDNnhLhUdU6Eo5IrIsLV1AwlsFmx3z3mEJb4kI16wrzdMzpFVwiCW9dBiXRh+pZbOfrypccYpDPH5911lP+MelKjgOtjmswdZhFm+H68Qp1OoDcRUcJ8sc18I6/A6Toag65vT7bwAAAABJRU5ErkJggg==');
outline: none;
}
#recipesButton:hover {
background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA2CAYAAACbZ/oUAAACoElEQVRoQ+2aL0hDURTGnUWjzY3BMFgMIsJAWXAYTAYxiEFhCBaTIA7DnILTIIjFuiJYxBWbYJAZhIkgYhAskxWLYVHTFHmcfYNzePfq2+adZ+m+++6/736/dzhv74a6pF/PRE2858KNj+sQt0y28ruhCnbBVlijkcPgau296JjCxuWGepP1ChDfiLQKdtdk2WHB1f2j26aqPVwf8x1/7aDk20ZqUCgU6NZdqT5OCKMxPrcq+Md7zXfsWIclYSP7U7QTfQN9VK6+VKn8sHFJZVu824a0CvY8c95hycnk6Rz7ED+dP1H90MwQ2+Y3eDcdaRXseea8w7ZOIpbI7f3JPV2Gh8NUjoxE2OiNfYvzZ77ROzCkVbAPus443N/D/zeAzySKweRBSsok8dgXozeOI0VyCW9rpFUwg27HOjyYThBd0XiUzXsRPyk3lrDHjXt9eLVKSDDadz++Ud/YeNru9RCRVsHe3pkEIRPs/7TDiC7ijfVXu1d0Obk56Zsnm6CO6OKAxzvHdLk0Ox080iqY8a+jHM4kMiRx72aPxRVRR/Gji6O+eTK2x8Fzy7k6rrEYlSuVCpW3V1eCR1oFMx53lMP5hTxJLJfLLN5ScoLRWEIXoy7iGhMwzuaztIamJB4q2NtfDGBOOoxfHvClH9NME7efL57ZSC6hi40R49RWih0HMW7oa5tLq2Bv+/6Fw4iKLd4sh1+VUgS2RVf6BGP9j4f09VAFexZKAcx5h23xLhb5syKYMOCYUtT9E18PTfBWwZ6dTjpsgreUeASFrhQjAovS0gQS3irY2zHnHZbwloiwjbrSOG1DWgX7WNI+h3FhcCovPuZ/Us4Ws1a2x9N3XSaHS1VwK+0JYC4zhwW8A5i/9UMYHRBXwa03JrAZBYc/AS53y4zphYZNAAAAAElFTkSuQmCC');
}
#textInput {
width: 88%;
margin-left: 4%;
padding-left: 2%;
border: 1px solid #111;
border-radius: 0px;
font-family: Minecraftia;
display: flex;
align-items: center;
background-color: #8b8b8b;
color: white;
text-shadow: 3px 3px 0px rgb(55 55 55 / 75%);
border-image-slice: 14 14 14 14;
border-image-outset: 0px 0px 0px 0px;
border-image-repeat: stretch stretch;
border-image-source: url("data:image/png;base64,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");
border-style: solid;
user-select: none;
pointer-events: all;
}
#itemList {
width: 95%;
margin-left: 4%;
overflow-y: auto;
display: flex;
align-items: center;
flex-wrap: wrap;
justify-content: flex-start;
align-content: flex-start;
pointer-events: all;
}
item.item {
height: var(--itemSize);
width: var(--itemSize);
display: block;
}
#recipeGui {
pointer-events: none;
}
#itemList::-webkit-scrollbar {
width: var(--sb-size);
}
#itemList::-webkit-scrollbar-thumb {
background: #adadad;
border-radius: 0px;
border-right: calc(var(--sb-size) / 6) solid #808080;
border-bottom: calc(var(--sb-size) / 6) solid #808080;
}
#itemList::-webkit-scrollbar-track {
background: #e4e4e4;
border-radius: 0px;
}
@supports not selector(::-webkit-scrollbar) {
#itemList {
scrollbar-color: #e4e4e4 #c0c0c0;
}
}
`
);
ModAPI.addEventListener("update", () => {
if (currentScreenName() === "GuiCrafting") {
button.style.display = "block";
window.ScaledResolution = innerHeight/ModAPI.mcinstance.$displayHeight*ModAPI.ScaledResolution.getScaleFactor();
button.style.scale = ModAPI.ScaledResolution.getScaleFactor()/2;
button.style.top = ScaledResolution * (Minecraft.$currentScreen.$guiTop + 35) + "px";
button.style.left = ScaledResolution * (Minecraft.$currentScreen.$guiLeft + 6) + "px";
} else {
button.style.display = "none";
window.recipeGui = false;
}
})
ModAPI.addEventListener("update", () => {
if (window.recipeGui) {
recipeGui.style.display = "block";
recipeGui.style.left = ScaledResolution * (Minecraft.$currentScreen.$guiLeft + 3) + "px";
recipeGui.style.top = ScaledResolution * (Minecraft.$currentScreen.$guiTop + 72) + "px";
recipeGui.style.width = ScaledResolution * (Minecraft.$currentScreen.$xSize - 6) + "px";
recipeGui.style.height = ScaledResolution * (Minecraft.$currentScreen.$ySize - 75) + "px";
textInput.style.height = ScaledResolution * 12 + "px";
textInput.style.marginTop = ScaledResolution * 5 + "px";
textInput.style.borderWidth = ModAPI.ScaledResolution.getScaleFactor() + "px";
textInput.style.fontSize = ModAPI.ScaledResolution.getScaleFactor()/2.5 + "rem";
textInput.style.paddingBottom = ModAPI.ScaledResolution.getScaleFactor() + "px";
textInput.style.textShadow = `${ModAPI.ScaledResolution.getScaleFactor()}px ${ModAPI.ScaledResolution.getScaleFactor()}px 0px rgb(55 55 55 / 75%)`;
itemList.style.height = `calc(100% - ${ScaledResolution * 22}px)`;
itemList.style.marginTop = ScaledResolution * 2 + "px";
document.querySelector(':root').style.setProperty('--itemSize', (ModAPI.ScaledResolution.getScaleFactor() * 17.25) + "px");
document.querySelector(':root').style.setProperty('--sb-size', (ModAPI.ScaledResolution.getScaleFactor() * 5) + "px");
} else {
recipeGui.style.display = "none";
}
})
document.addEventListener('keydown', function(event) {
if (window.recipeGui && event.key.length == 1 && window.searchFieldValue.length < 30) {
window.searchFieldValue = window.searchFieldValue + event.key;
} else if (window.recipeGui && event.key == "Backspace") {
window.searchFieldValue = window.searchFieldValue.slice(0,-1);
} else if (window.recipeGui && event.key == "Space") {
window.searchFieldValue = window.searchFieldValue + " ";
}
if (window.recipeGui) {
textInput.innerText = window.searchFieldValue + window.cursor;
event.stopPropagation();
Array.from(document.getElementsByClassName('item')).forEach(itemElement => {
if (window.searchFieldValue.length > 0) {
if (itemElement.getAttribute("itemName").includes(window.searchFieldValue)) {
itemElement.style.display = "block";
} else {
itemElement.style.display = "none";
}
} else {
itemElement.style.display = "block";
}
});
}
});
ModAPI.addEventListener("frame", () => {
document.querySelector(':root').style.setProperty('--scale', "scale("+ ModAPI.ScaledResolution.getScaleFactor()/3 +")");
})
/* Load recipes message css */
addStyle(`
:root {
--hue-rotate: 0deg;
}
advancement {
border-image-slice: 27 27 27 27 fill;
border-image-width: 20px 20px 20px 20px;
border-image-outset: 0px 0px 0px 0px;
border-image-repeat: stretch stretch;
border-image-source: url("data:image/webp;base64,iVBORw0KGgoAAAANSUhEUgAAAtAAAACQCAYAAAAhkFzZAAAABHNCSVQICAgIfAhkiAAAC4xJREFUeJzt3ctuXFW6wPFv7Vu5EoR6gEBCAgkFCZAQEqd5gDwAb9MPQHerdUbnXZhwnoIBEjBhwCiRGBDELTjUvq0elHfFdhzs5Rt2+P0kC7tStWtXYpK/lr9aO8Xp6ojYpJTqM9y3WM75Kg4LAADP00dEFxH/ioh/Hnzen/XB1dWcEwAAvJiaE26rD27PETFHRHutZwQAANdjmbDoDt126kr08YCuI2I6+FiMsY1pAAB4ESxt+9PBfx+XPPhwQC/xfD8iPj44YF1VVfXuu+9WVVXFNE2RUrrg+R512ccDAIBTNKvVKh48ePDxDz/8EBHxt4iY5nmeI+I/sZ3CeP6Dj30+xTae/7Hc2LZtvP/++/Hyyy/HL7/8Ek1z0tTH+QloAACuWX337t0p53z/0aNH95cbU0qRc/7fKAjok5ayu77vY39/vxuHMSIipunwdMfFCWgAAK7TMAwxTVP95MmTKaU05pxTbDfXGOIMo8uHA3op7cPD1F1ExHq9jqqqomma6Psz7/BxJgIaAIDr1HVddF0XdV3X8bR9IyJSnLL6HLEN6OVBbWzfMFjVdb1bab57927knKNpmvj999+jqi535zv7QAMAcJ1SSjGOY1RVFSml44vEbWxXoqt4GtRHojrFNpoX+b333qs++OCDarPZRNd1MQ5j1M22sbuuu/QVaAAAuG5t28b+/v6ud5u2iXEY47P//2wahiFiu53dOuf8SUT8Ow5dbKU5foXBpml2bxTcrmpvV4mrqhLPAADcekvXVmk7opxzjpxztF0bwzAcns6Iqqqq7eYchx5//IDLVnXzPMdms4mmaSKlFJvNJtq2jZTSkY/F8a8BAOAmmud5+/6+tonHj7dbQK9Wq5jn+fCOc897f2B36p50B0vY0bZtDMPw3Ehe4vp4oQMAwE2w2Wyiqqoj78FbwnkYhthsNrvezTnng7Z95mIrl7Kpc0opvvnmm91JAADATTGOY6zX63jllVci4tld4JYNNNq2jQ8//DAeP34cdV03e3t78cMPP3z84MGDiIOLrURcQkBXVRXzPMf3339/6XtEAwDAReWcY71ex2uvvRZ1Xe8mLBZLz1ZVFe+88060bRs557qqqunrr7++//Dhw/uH73/hgE4pxTROsV6vY7PZXPRwAABwqeq6jr7vY+iHmOrpmRXoaZqi67rY39+PnPNui7u9vb368ePHU2x3rds9qHhT52W4epl1HscxqrqKJ0+emH8GAODGyTnvojmlFKvVKnLOu1XnnHMMwxBt2+4uHrho27aOiFUcehNhcUBXVRXDMMQwDNs9og+Kvm1bIxwAANw44zhur2cy9JFSiv3f9mOetgu/8zyfuMPcHyke4ei6Lr799tt4+PBh7O3txWaz2e2+0bZt6eEAAODKpJSirusYxzG++uqrmOc51ut1DMMQr776aty7dy/GcXtdwWV3jmVf6OXjuOKATintNp9eLrqyDF4vK9CXfblvAAA4jyWAl7GMvu9jf39/16vTNJ0YyX+kOKD7vo+qqnb7PkfEbva5ruviEwAAgKuUUtot9C5X2p7nObquO9eFAC0VAwBAAQHNX8QcT6/IeQa52n4AABxzKVcihJuvMIaTLRkhIiLywY82020bzzt8vif9eDY/53aA0wloAJ7v1oXz4rQ4Fs/A+fkZNQAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAECBC+8DnfNt3SMUAIC/gsvuVSvQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAUENAAAFBDQAABQQEADAEABAQ0AAAWaP/sE4DKllI58nXP+k87k/A6/hsPnn3N+5vVd1nPdlt+ni77+017n8359ub2qTl9zmOd5d795nv/wvsePd/z+pz3fRb/fS58PgC0BzR8q/Qe6NBiuW+nruWigXGbwXkVAL54X0qc9320J77O6jNfzZ3+PA3D1/E0Pt4QwA4Cbwb/IAABQwAgHRU77kf5NWyU97XxLRyKuaoTivM932SMU1/37cd0jINf9/Vt6vIs+f+mfx037/xXgtvC3JwAAFBDQAABQQEADAECB4hnolFJsNpvIOccwDFFVVeSco23bU7cw48V33TPCcJn+at+/t22GHeC8jm/X2rZt/PrrrzFN07mOV7wCvTxxXdext7cXERFd10Xf91HX9blOAgAArlJKabfY2/d93L17d9eypYpXoMdxjLfeeiveeOONGMcx2raNzWYTX3755blOAAAArlLOOaZpir//z98jIqKqt2vIdV1Hv+mjbsoWgYsDOs85cs5R13XUdR0557hz505ExLmXwQEA4CpVVRVznqNK1ZERtrqpi6/220REf+jrPM9zU1VVHbEN4qZp4rfffouXXnoppmnaPcmi7/voui6aptnVfemL4eYy4/hiu21/vrftfAG4GeZ5jqqqtou/cz5ye0T5e0KaiOgO39C2bdR1Pa1Wq3q9Xsc4jrFer2MYhmjb9plAzjnHPM/R9/3u5Er4BxEAgKvU9300TRNN00RK6cJTE01K6V8Hn9fzPP/06NGjj7/44ov7wzBM0zTVd+7cibfffjuapolxHJ8p9PV6HXVdx5tvvhnjOBYH9F/tXe8AAFy/eZ5jmqaYp7l45vm4Zp7nfx6+4bvvvotHjx7dn6ZpbJqmXt40WNf1iU+4nMzrr78eXdcZ4QAA4Eap6zr6vo9pmqLtLr718uERji4iHldV9bdxHCMi0uGxjaZpou3aOPi1I+GbUoqUUvT9dpy6ZCzDCjQAAFfpcL+e9IbBlFIM/RBVXUXXdbvrnqxWqxO79vibCCMiliXkannCZWW5qo6+a1H8AgBw2202m6hStRtZjtg28GazOXFa4plb5qdr2kNETCmlaYnnzWazO+iyFA4AALdZ0zTRrZ7uqzHP8+6q23t7e3NEjLFdZJ4iYjppCbk6+MgRMUdEW9f1fs65rus6Ukpx7969+Oijj2IYhiMzJMsStxEOAABuitN68/DK86effhrjOEbOua/rupum6d8R8UlErONgcuOkC6nMBx+LYYnkg4NFVW2XuH/++edYrVa7O54noAEA4M+0BPY8z7vejdhdJPDIdEbE2a5EWMW2ttuDA+TY7t5Rd133hw8EAICbbhlTzjlHznmZUe5ju8nGkfcHRpwtoFNsl6y3X6QUbdvGarWaxnGsm+bpIYxwAABw05zWm23bxmaziWEY4mBsI+LpTnV/Ww6z3P8sAT3nnD+ptm9BrCPipx9//PHjzz///P44jtM8z7uNoQU0AAA3zWm92fd91HUde3t78zRN/4nt1MUU23j+7OBu4+545zyPf6SU/i8iNhGxOu3OAABwC4w55/aE2+t4OspxphXoiBMutnKwymz5GACAF8UyujzEduY5xdMt7HbOGtDPu9gKAAC8SPo4pXWfvbQKAADwXP8FT13puhEpb+wAAAAASUVORK5CYII=");
border-style: solid;
padding: 10px;
color: #fff;
font-family: 'Minecraftia';
position: absolute;
top: -1px;
right: 0px;
height: 72px;
width: 455px;
image-rendering: pixelated;
transform-origin: top right;
font-size: 1.5em;
user-select: none;
z-index: 10000;
transform-origin: top right;
}
advancement {
-webkit-animation-name: slideInDown, slideOutUp;
animation-name: slideInDown, slideOutUp;
-webkit-animation-duration: .5s, .5s;
animation-duration: .5s, .5s;
-webkit-animation-delay: 0s, 5s;
animation-delay: 0s, 5s;
-webkit-animation-fill-mode: both, forwards;
animation-fill-mode: both, forwards;
}
@-webkit-keyframes slideInDown {
0% {
-webkit-transform: translateY(-100%) var(--scale);
transform: translateY(-100%) var(--scale);
visibility: visible;
}
100% {
-webkit-transform: translateY(0) var(--scale);
transform: translateY(0);
}
}
@keyframes slideInDown {
0% {
-webkit-transform: translateY(-100%) var(--scale);
transform: translateY(-100%) var(--scale);
visibility: visible;
}
100% {
-webkit-transform: translateY(0) var(--scale);
transform: translateY(0) var(--scale);
}
}
@-webkit-keyframes slideOutUp {
0% {
-webkit-transform: translateY(0) var(--scale);
transform: translateY(0) var(--scale);
}
100% {
visibility: hidden;
-webkit-transform: translateY(-100%) var(--scale);
transform: translateY(-100%) var(--scale);
}
}
@keyframes slideOutUp {
0% {
-webkit-transform: translateY(0) var(--scale);
transform: translateY(0) var(--scale);
}
100% {
visibility: hidden;
-webkit-transform: translateY(-100%) var(--scale);
transform: translateY(-100%) var(--scale);
}
}
advancement:before {
content: '';
position: absolute;
width: 70px;
height: 70px;
background-image: url('data:;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAACgCAMAAAC8EZcfAAAAKlBMVEUAAABHjkdWrVYbNhswYDCWlpYhFAUVDgU9ej1UVFQcDwC0tLTV1dUMBQA2AfQBAAAAAXRSTlMAQObYZgAAAQhJREFUeF7t17tqBTEMQMHs7n3k+f+/m05qhGJwiiuYUwpjTyf89lpJkvTZBggICAgI+BfmiM4oZ0mdDwQEBAQE3MecRbcoZz11KhAQEBAQcB9zFF1RUpNVoZM6EQgICAgI+IgqTH91T63WX9ZTJwIBAQEBAd+j/uGK1aN7VrUmf6KJQEBAQEDAippdUc9axWRf0Uc0EQgICAgImAd7dFJ7VoW5R8nK2RwgICAgIOAzSsJ3VFH7tdavsJ5VfZpeHQgICAgImOVwlbqKqViJqVgDgYCAgICA69S2/8bMAwICAgICrlPvRTuYWUBAQEBAwH3qDmY+EBAQEBBwn7qMAQQEBAQErJMk6RenVGZExR2o4AAAAABJRU5ErkJggg==');
background-position: center center;
background-size: cover;
left: 20px;
filter: hue-rotate(var(--hue-rotate));
}
message {
margin-left: 100px;
display: block;
margin-top: -2px;
}
`)

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB