123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259 |
- event.load("entity_click");
- event.load("inv_click");
- items_list = list.new(); //Array-List: Alle Items mit Rezepten
- recipe_site_map = map.new();
- air = "minecraft:air";
- air_item = read.item("air");
- leather = "minecraft:leather";
- string = "minecraft:string";
- bronze_ingot = "km:bronze_ingot";
- copper_ingot = "km:copper_ingot";
- tin_ingot = "km:tin_ingot";
- silver_ingot = "km:silver_ingot";
- stick = "minecraft:stick";
- planks = "minecraft:oak_planks";
- cobblestone = "minecraft:cobblestone";
- iron_ingot = "minecraft:iron_ingot";
- gold_ingot = "minecraft:gold_ingot";
- diamond = "minecraft:diamond";
- book = "minecraft:book";
- birch_planks = "minecraft:birch_planks";
- dark_oak_planks = "minecraft:dark_oak_planks";
- jungle_planks = "minecraft:jungle_planks";
- spruce_planks = "minecraft:spruce_planks";
- acacia_planks = "minecraft:acacia_planks";
- coarse_dirt = "minecraft:coarse_dirt";
- gravel = "minecraft:gravel";
- wheat = "minecraft:wheat";
- grass = "minecraft:grass";
- iron_nugget = "minecraft:iron_nugget";
- hay_bundle = "km:hay_bundle";
- real_hay_block = "km:real_hay_block";
- cloth = "km:cloth";
- recipe.add(1, "minecraft:saddle", leather, leather, leather, leather, string, leather, air, iron_ingot, air);
- recipe.add(1, "km:bronze_helmet", bronze_ingot, bronze_ingot, bronze_ingot, bronze_ingot, air, bronze_ingot, air, air, air);
- recipe.add(1, "km:bronze_chestplate", bronze_ingot, air, bronze_ingot, bronze_ingot, bronze_ingot, bronze_ingot, bronze_ingot, bronze_ingot, bronze_ingot);
- recipe.add(1, "km:bronze_leggings", bronze_ingot, bronze_ingot, bronze_ingot, bronze_ingot, air, bronze_ingot, bronze_ingot, air, bronze_ingot);
- recipe.add(1, "km:bronze_boots", bronze_ingot, air, bronze_ingot, bronze_ingot, air, bronze_ingot, air, air, air);
- recipe.add(1, "km:copper_helmet", copper_ingot, copper_ingot, copper_ingot, copper_ingot, air, copper_ingot, air, air, air);
- recipe.add(1, "km:copper_chestplate", copper_ingot, air, copper_ingot, copper_ingot, copper_ingot, copper_ingot, copper_ingot, copper_ingot, copper_ingot);
- recipe.add(1, "km:copper_leggings", copper_ingot, copper_ingot, copper_ingot, copper_ingot, air, copper_ingot, copper_ingot, air, copper_ingot);
- recipe.add(1, "km:copper_boots", copper_ingot, air, copper_ingot, copper_ingot, air, copper_ingot, air, air, air);
- recipe.add(1, "km:bookshelf_acacia", acacia_planks, acacia_planks, acacia_planks, book, book, book, acacia_planks, acacia_planks, acacia_planks);
- recipe.add(1, "km:bookshelf_birch", birch_planks, birch_planks, birch_planks, book, book, book, birch_planks, birch_planks, birch_planks);
- recipe.add(1, "km:bookshelf_dark_oak", dark_oak_planks, dark_oak_planks, dark_oak_planks, book, book, book, dark_oak_planks, dark_oak_planks, dark_oak_planks);
- recipe.add(1, "km:bookshelf_jungle", jungle_planks, jungle_planks, jungle_planks, book, book, book, jungle_planks, jungle_planks, jungle_planks);
- recipe.add(1, "km:bookshelf_spruce", spruce_planks, spruce_planks, spruce_planks, book, book, book, spruce_planks, spruce_planks, spruce_planks);
- recipe.add(1, "km:copper_block", copper_ingot, copper_ingot, copper_ingot, copper_ingot, copper_ingot, copper_ingot, copper_ingot, copper_ingot, copper_ingot);
- recipe.add(1, "km:bronze_block", bronze_ingot, bronze_ingot, bronze_ingot, bronze_ingot, bronze_ingot, bronze_ingot, bronze_ingot, bronze_ingot, bronze_ingot);
- recipe.add(1, "km:tin_block", tin_ingot, tin_ingot, tin_ingot, tin_ingot, tin_ingot, tin_ingot, tin_ingot, tin_ingot, tin_ingot);
- recipe.add(1, "km:silver_block", silver_ingot, silver_ingot, silver_ingot, silver_ingot, silver_ingot, silver_ingot, silver_ingot, silver_ingot, silver_ingot);
- recipe.add(1, "km:cooking_pot_copper", copper_ingot, air, copper_ingot, copper_ingot, air, copper_ingot, copper_ingot, copper_ingot, copper_ingot);
- recipe.add(1, bronze_ingot, tin_ingot, copper_ingot, copper_ingot, copper_ingot, copper_ingot, copper_ingot, copper_ingot, copper_ingot, copper_ingot);
- recipe.add(1, copper_ingot, air, air, air, air, "km:copper_ore", air, air, air, air);
- recipe.add(1, tin_ingot, air, air, air, air, "km:tin_ore", air, air, air, air);
- recipe.add(1, silver_ingot, air, air, air, air, "km:silver_ore", air, air, air, air);
- recipe.add(1, "km:spikes_bronze", air, bronze_ingot, air, bronze_ingot, bronze_ingot, bronze_ingot, air, air, air);
- recipe.add(1, "km:spikes_copper", air, copper_ingot, air, copper_ingot, copper_ingot, copper_ingot, air, air, air);
- recipe.add(1, "km:spikes_gold", air, gold_ingot, air, gold_ingot, gold_ingot, gold_ingot, air, air, air);
- recipe.add(1, "km:spikes_iron", air, iron_ingot, air, iron_ingot, iron_ingot, iron_ingot, air, air, air);
- recipe.add(1, "km:wooden_battleaxe", air, planks, planks, air, stick, planks, stick, air, air);
- recipe.add(1, "km:stone_battleaxe", air, cobblestone, cobblestone, air, stick, cobblestone, stick, air, air);
- recipe.add(1, "km:iron_battleaxe", air, iron_ingot, iron_ingot, air, stick, iron_ingot, stick, air, air);
- recipe.add(1, "km:golden_battleaxe", air, gold_ingot, gold_ingot, air, stick, gold_ingot, stick, air, air);
- recipe.add(1, "km:diamond_battleaxe", air, diamond, diamond, air, stick, diamond, stick, air, air);
- recipe.add(1, "km:copper_battleaxe", air, copper_ingot, copper_ingot, air, stick, copper_ingot, stick, air, air);
- recipe.add(1, "km:bronze_battleaxe", air, bronze_ingot, bronze_ingot, air, stick, bronze_ingot, stick, air, air);
- recipe.add(1, "km:copper_axe", air, copper_ingot, copper_ingot, air, copper_ingot, stick, air, air, stick);
- recipe.add(1, "km:bronze_axe", air, bronze_ingot, bronze_ingot, air, bronze_ingot, stick, air, air, stick);
- recipe.add(1, "km:wooden_dagger", air, air, planks, air, stick, air, air, air, air);
- recipe.add(1, "km:stone_dagger", air, air, cobblestone, air, stick, air, air, air, air);
- recipe.add(1, "km:iron_dagger", air, air, iron_ingot, air, stick, air, air, air, air);
- recipe.add(1, "km:golden_dagger", air, air, gold_ingot, air, stick, air, air, air, air);
- recipe.add(1, "km:diamond_dagger", air, air, diamond, air, stick, air, air, air, air);
- recipe.add(1, "km:copper_dagger", air, air, copper_ingot, air, stick, air, air, air, air);
- recipe.add(1, "km:bronze_dagger", air, air, bronze_ingot, air, stick, air, air, air, air);
- recipe.add(1, "km:copper_hoe", air, copper_ingot, copper_ingot, air, air, stick, air, air, stick);
- recipe.add(1, "km:bronze_hoe", air, bronze_ingot, bronze_ingot, air, air, stick, air, air, stick);
- recipe.add(1, "km:wooden_hammer", planks, planks, planks, planks, stick, planks, air, stick, air);
- recipe.add(1, "km:stone_hammer", cobblestone, cobblestone, cobblestone, cobblestone, stick, cobblestone, air, stick, air);
- recipe.add(1, "km:iron_hammer", iron_ingot, iron_ingot, iron_ingot, iron_ingot, stick, iron_ingot, air, stick, air);
- recipe.add(1, "km:golden_hammer", gold_ingot, gold_ingot, gold_ingot, gold_ingot, stick, gold_ingot, air, stick, air);
- recipe.add(1, "km:diamond_hammer", diamond, diamond, diamond, diamond, stick, diamond, air, stick, air);
- recipe.add(1, "km:copper_hammer", copper_ingot, copper_ingot, copper_ingot, copper_ingot, stick, copper_ingot, air, stick, air);
- recipe.add(1, "km:bronze_hammer", bronze_ingot, bronze_ingot, bronze_ingot, bronze_ingot, stick, bronze_ingot, air, stick, air);
- recipe.add(1, "km:copper_shovel", air, copper_ingot, air, air, stick, air, air, stick, air);
- recipe.add(1, "km:bronze_shovel", air, bronze_ingot, air, air, stick, air, air, stick, air);
- recipe.add(1, "km:wooden_scepter", air, stick, planks, air, stick, stick, stick, air, air);
- recipe.add(1, "km:stone_scepter", air, stick, cobblestone, air, stick, stick, stick, air, air);
- recipe.add(1, "km:iron_scepter", air, stick, iron_ingot, air, stick, stick, stick, air, air);
- recipe.add(1, "km:golden_scepter", air, stick, gold_ingot, air, stick, stick, stick, air, air);
- recipe.add(1, "km:diamond_scepter", air, stick, diamond, air, stick, stick, stick, air, air);
- recipe.add(1, "km:copper_scepter", air, stick, copper_ingot, air, stick, stick, stick, air, air);
- recipe.add(1, "km:bronze_scepter", air, stick, bronze_ingot, air, stick, stick, stick, air, air);
- recipe.add(1, "km:copper_pickaxe", copper_ingot, copper_ingot, copper_ingot, air, stick, air, air, stick, air);
- recipe.add(1, "km:bronze_pickaxe", bronze_ingot, bronze_ingot, bronze_ingot, air, stick, air, air, stick, air);
- recipe.add(1, "km:wooden_stick", air, air, planks, air, stick, air, planks, air, air);
- recipe.add(1, "km:stone_stick", air, air, cobblestone, air, stick, air, cobblestone, air, air);
- recipe.add(1, "km:iron_stick", air, air, iron_ingot, air, stick, air, iron_ingot, air, air);
- recipe.add(1, "km:golden_stick", air, air, gold_ingot, air, stick, air, gold_ingot, air, air);
- recipe.add(1, "km:diamond_stick", air, air, diamond, air, stick, air, diamond, air, air);
- recipe.add(1, "km:copper_stick", air, air, copper_ingot, air, stick, air, copper_ingot, air, air);
- recipe.add(1, "km:bronze_stick", air, air, bronze_ingot, air, stick, air, bronze_ingot, air, air);
- recipe.add(1, "km:copper_sword", air, copper_ingot, air, air, copper_ingot, air, air, stick, air);
- recipe.add(1, "km:bronze_sword", air, bronze_ingot, air, air, bronze_ingot, air, air, stick, air);
- recipe.add(1, "km:mushroom_stick_raw", air, "minecraft:brown_mushroom", "minecraft:brown_mushroom", air, stick, "minecraft:red_mushroom", air, air, air);
- recipe.add(1, "km:mushroom_stick_cooked", air, air, air, air, "km:mushroom_stick_raw", air, air, air, air);
- recipe.add(1, "km:fried_egg", air, air, air, air, "minecraft:egg", air, air, air, air);
- recipe.add(1, "km:crate_acacia", acacia_planks, acacia_planks, acacia_planks, acacia_planks, acacia_planks, acacia_planks, acacia_planks, acacia_planks, acacia_planks);
- recipe.add(1, "km:crate_birch", birch_planks, birch_planks, birch_planks, birch_planks, birch_planks, birch_planks, birch_planks, birch_planks, birch_planks);
- recipe.add(1, "km:crate_big_oak", dark_oak_planks, dark_oak_planks, dark_oak_planks, dark_oak_planks, dark_oak_planks, dark_oak_planks, dark_oak_planks, dark_oak_planks, dark_oak_planks);
- recipe.add(1, "km:crate_oak", planks, planks, planks, planks, planks, planks, planks, planks, planks);
- recipe.add(1, "km:crate_jungle", jungle_planks, jungle_planks, jungle_planks, jungle_planks, jungle_planks, jungle_planks, jungle_planks, jungle_planks, jungle_planks);
- recipe.add(1, "km:crate_spruce", spruce_planks, spruce_planks, spruce_planks, spruce_planks, spruce_planks, spruce_planks, spruce_planks, spruce_planks, spruce_planks);
- recipe.add(1, "km:coarse_dirt_slab", air, air, air, coarse_dirt, coarse_dirt, coarse_dirt, air, air, air);
- recipe.add(1, "km:gravel_slab", air, air, air, gravel, gravel, gravel, air, air, air);
- recipe.add(1, "km:straw_hat", air, wheat, air, wheat, wheat, wheat, air, air, air);
- recipe.add(1, hay_bundle, grass, grass, grass, grass, grass, grass, grass, grass, grass);
- recipe.add(1, real_hay_block, hay_bundle, hay_bundle, hay_bundle, hay_bundle, hay_bundle, hay_bundle, hay_bundle, hay_bundle, hay_bundle);
- recipe.add(1, "km:real_hay_bed", air, air, air, real_hay_block, real_hay_block, real_hay_block, air, air, air);
- recipe.add(1, "km:lantern", iron_nugget, iron_nugget, iron_nugget, "minecraft:glass_pane", "minecraft:torch", "minecraft:glass_pane", iron_nugget, iron_nugget, iron_nugget);
- recipe.add(1, "km:sling", stick, string, stick, stick, air, stick, air, stick, air);
- recipe.add(4, "minecraft:string", air, air, air, air, "minecraft:white_wool", air, air, air, air);
- recipe.add(4, "km:cloth_helmet", cloth, cloth, cloth, cloth, air, cloth, air, air, air);
- recipe.add(4, "km:cloth_chestplate", cloth, air, cloth, cloth, cloth, cloth, cloth, cloth, cloth);
- recipe.add(4, "km:cloth_leggings", cloth, cloth, cloth, cloth, air, cloth, cloth, air, cloth);
- recipe.add(4, "km:cloth_boots", cloth, air, cloth, cloth, air, cloth, air, air, air);
- msg("dev", "§bRecipes §rloaded.");
- @wait
- wait();
- if(event == "entity_click") {
- if(hand == "OFF_HAND") {
- goto("wait");
- }
- if(entity.getType(entity) != "human") {
- goto("wait");
- }
- if(entity.getName(entity) == "Recipes") {
- recipe_menu = inv.new("333333333333333333333333333333333333333333333200000022");
- recipe.setPage(player, recipe_menu, 1);
- inv.open(recipe_menu, player, "Recipes");
- }
- goto("wait");
- }
- if(event == "inv_click") {
- if(inv_name == "Recipes") {
- item_type = item.getType(item);
- if(item_type == "minecraft:air") {
- goto("wait");
- }
- if(item_type == "km:return_red") {
- page = map.getOrDefault($recipe_site_map, player.getUuid(player), 1);
- recipe.setPage(player, inv, page);
- goto("wait");
- }
- if(item_type == "minecraft:paper") {
- name = item.getName(item);
- if(text.contains(name, "<<") || text.contains(name, ">>")) {
- page = removeFormat(name);
- page = text.replace(page, "<<", "");
- page = text.replace(page, ">>", "");
- page = read.number(page);
- if(inv_slot == 46) {
- recipe.setPage(player, inv, page);
- }
- if(inv_slot == 47) {
- recipe.setPage(player, inv, page);
- }
- goto("wait");
- }
- }
- index = recipe.getIndexFromItemType(item_type);
- if(index == null) {
- goto("wait");
- }
- recipe.showRecipe(player, inv, index);
- }
- }
- goto("wait");
- function recipe.add(result_amount, result_item, item1, item2, item3, item4, item5, item6, item7, item8, item9) {
- array = array.new(11);
- array[0] = result_amount;
- array[1] = result_item;
- array[2] = item1;
- array[3] = item2;
- array[4] = item3;
- array[5] = item4;
- array[6] = item5;
- array[7] = item6;
- array[8] = item7;
- array[9] = item8;
- array[10] = item9;
- list.add($items_list, array);
- }
- function recipe.getIndexFromItemType(item_type) {
- for(i = 0; i < list.getSize($items_list); i++) {
- array = list.getIndex($items_list, i);
- if(array[1] == item_type) {
- return i;
- }
- }
- return null;
- }
- function recipe.showRecipe(player, menu, index) {
- for(i = 0; i < 48; i++) {
- inv.setItem(menu, i, $air_item);
- }
- array = list.getIndex($items_list, index);
- inv.setItem(menu, 23, read.item("km:arrow_right"));
- inv.setItem(menu, 45, read.item("km:return_red", 1, "§fReturn to overview"));
- inv.setItem(menu, 10, read.item(array[2]));
- inv.setItem(menu, 11, read.item(array[3]));
- inv.setItem(menu, 12, read.item(array[4]));
- inv.setItem(menu, 19, read.item(array[5]));
- inv.setItem(menu, 20, read.item(array[6]));
- inv.setItem(menu, 21, read.item(array[7]));
- inv.setItem(menu, 28, read.item(array[8]));
- inv.setItem(menu, 29, read.item(array[9]));
- inv.setItem(menu, 30, read.item(array[10]));
- inv.setItem(menu, 25, read.item(array[1], array[0]));
- inv.update(player);
- }
- function recipe.setPage(player, menu, page) {
- map.add($recipe_site_map, player.getUuid(player), page);
- size = list.getSize($items_list);
- max_page = math.roundUp(size / 45);
- if(page > max_page) {
- return;
- }
- inv.setItem(menu, 45, $air_item);
- if(page > 1) {
- inv.setItem(menu, 46, read.item("minecraft:paper", 1, concat("§e", text.number(page - 1), " <<")));
- } else {
- inv.setItem(menu, 46, $air_item);
- }
- if(page < max_page) {
- inv.setItem(menu, 47, read.item("minecraft:paper", 1, concat("§e>> ", text.number(page + 1))));
- } else {
- inv.setItem(menu, 47, $air_item);
- }
- max_index = size - 1;
- for(i = 0; i < 45; i++) {
- list_index = i + 45 * (page - 1);
- if(list_index > max_index) {
- inv.setItem(menu, i, $air_item);
- } else {
- array = list.getIndex($items_list, list_index);
- inv.setItem(menu, i, read.item(array[1]));
- }
- }
- inv.update(player);
- }
|