From f9f74d2af7b0f8391c53f8dde5af2de0a47933b2 Mon Sep 17 00:00:00 2001 From: PrairieWind Date: Fri, 23 Sep 2022 09:24:31 -0600 Subject: [PATCH 1/3] Changed Achievements to Advancements in player visible text. --- mods/HUD/awards/api.lua | 20 +++++++-------- mods/HUD/awards/chat_commands.lua | 20 +++++++-------- mods/HUD/awards/locale/template.txt | 30 +++++++++++----------- mods/HUD/mcl_inventory/creative.lua | 2 +- mods/HUD/mcl_inventory/init.lua | 2 +- mods/HUD/mcl_inventory/locale/template.txt | 2 +- 6 files changed, 38 insertions(+), 38 deletions(-) diff --git a/mods/HUD/awards/api.lua b/mods/HUD/awards/api.lua index 49b11a6cf..fbfe7eb5c 100644 --- a/mods/HUD/awards/api.lua +++ b/mods/HUD/awards/api.lua @@ -217,7 +217,7 @@ function awards.unlock(name, award) -- Get award minetest.log("action", name.." has gotten award "..award) - minetest.chat_send_all(S("@1 has made the achievement @2", name, minetest.colorize(mcl_colors.GREEN, "[" .. (awdef.title or award) .. "]"))) + minetest.chat_send_all(S("@1 has made the advancement @2", name, minetest.colorize(mcl_colors.GREEN, "[" .. (awdef.title or award) .. "]"))) data.unlocked[award] = award awards.save() @@ -257,9 +257,9 @@ function awards.unlock(name, award) local custom_announce = awdef.custom_announce if not custom_announce then if awdef.secret then - custom_announce = S("Secret achievement gotten:") + custom_announce = S("Secret Advancement Made:") else - custom_announce = S("Achievement gotten:") + custom_announce = S("Advancement Made:") end end @@ -283,9 +283,9 @@ function awards.unlock(name, award) elseif awards.show_mode == "chat" then local chat_announce if awdef.secret == true then - chat_announce = S("Secret achievement gotten: @1") + chat_announce = S("Secret Advancement Made: @1") else - chat_announce = S("Achievement gotten: @1") + chat_announce = S("Advancement Made: @1") end -- use the chat console to send it minetest.chat_send_player(name, string.format(chat_announce, title)) @@ -306,9 +306,9 @@ function awards.unlock(name, award) }) local hud_announce if awdef.secret == true then - hud_announce = S("Secret achievement gotten!") + hud_announce = S("Secret Advancement Made!") else - hud_announce = S("Achievement gotten!") + hud_announce = S("Advancement Made!") end local two = player:hud_add({ hud_elem_type = "text", @@ -389,10 +389,10 @@ function awards.getFormspec(name, to, sid) local def = awards.def[item.name] if def and def.secret and not item.got then - formspec = formspec .. "label[1,2.75;"..minetest.formspec_escape(S("(Secret achievement)")).."]".. + formspec = formspec .. "label[1,2.75;"..minetest.formspec_escape(S("(Secret Advancement)")).."]".. "image[1,0;3,3;awards_unknown.png]" if def and def.description then - formspec = formspec .. "textarea[0.25,3.25;4.8,1.7;;"..minetest.formspec_escape(S("Get this achievement to find out what it is."))..";]" + formspec = formspec .. "textarea[0.25,3.25;4.8,1.7;;"..minetest.formspec_escape(S("Make this advancement to find out what it is."))..";]" end else local title = item.name @@ -450,7 +450,7 @@ function awards.getFormspec(name, to, sid) first = false if def.secret and not award.got then - formspec = formspec .. "#707070" .. minetest.formspec_escape(S("(Secret Award)")) + formspec = formspec .. "#707070" .. minetest.formspec_escape(S("(Secret Advancement)")) else local title = award.name if def and def.title then diff --git a/mods/HUD/awards/chat_commands.lua b/mods/HUD/awards/chat_commands.lua index 9b990fd0c..7ae15755e 100644 --- a/mods/HUD/awards/chat_commands.lua +++ b/mods/HUD/awards/chat_commands.lua @@ -18,7 +18,7 @@ local S = minetest.get_translator(minetest.get_current_modname()) minetest.register_chatcommand("awards", { params = S("[c|clear|disable|enable]"), - description = S("Show, clear, disable or enable your achievements"), + description = S("Show, clear, disable or enable your advancements."), func = function(name, param) if param == "clear" then if awards.player(name).disabled ~= nil then @@ -30,10 +30,10 @@ minetest.register_chatcommand("awards", { end elseif param == "disable" then awards.disable(name) - minetest.chat_send_player(name, S("You have disabled your achievements.")) + minetest.chat_send_player(name, S("You have disabled your advancements.")) elseif param == "enable" then awards.enable(name) - minetest.chat_send_player(name, S("You have enabled your achievements.")) + minetest.chat_send_player(name, S("You have enabled your advancements.")) elseif param == "c" then if awards.player(name).disabled ~= nil then minetest.chat_send_player(name, S("Awards are disabled, enable them first by using /awards enable!")) @@ -50,16 +50,16 @@ minetest.register_chatcommand("awards", { end }) -minetest.register_privilege("achievements", { - description = S("Can give achievements to any player"), +minetest.register_privilege("advancements", { + description = S("Can give advancements to any player"), give_to_singleplayer = false, give_to_admin = false, }) -minetest.register_chatcommand("achievement", { - params = S("(grant ( | all)) | list"), - privs = { achievements = true }, - description = S("Give achievement to player or list all achievements"), +minetest.register_chatcommand("advancement", { + params = S("(grant ( | all)) | list"), + privs = { advancements = true }, + description = S("Give advancement to player or list all advancements"), func = function(name, param) if param == "list" then local list = {} @@ -92,7 +92,7 @@ minetest.register_chatcommand("achievement", { awards.unlock(playername, achievement) return true, S("Done.") else - return false, S("Achievement “@1” does not exist.", achievement) + return false, S("Advancement “@1” does not exist.", achievement) end end }) diff --git a/mods/HUD/awards/locale/template.txt b/mods/HUD/awards/locale/template.txt index fa05b22b3..69e8fc47c 100644 --- a/mods/HUD/awards/locale/template.txt +++ b/mods/HUD/awards/locale/template.txt @@ -11,9 +11,9 @@ (Secret Award)= = = -Achievement gotten!= -Achievement gotten:= -Achievement gotten: @1= +Advancement Made!= +Advancement Made:= +Advancement: @1= Achievement not found.= All your awards and statistics have been cleared. You can now start again.= Awards= @@ -27,16 +27,16 @@ Join the game.= List awards in chat (deprecated)= Place a block: @1= Place blocks: @1×@2= -Secret achievement gotten!= -Secret achievement gotten:= -Secret achievement gotten: @1= +Secret Advancement Made!= +Secret Advancement Made:= +Secret Advancement Made: @1= Show details of an achievement= -Show, clear, disable or enable your achievements= -Get this achievement to find out what it is.= +Show, clear, disable or enable your advancements.= +Make this advancement to find out what it is.= Write @1 chat messages.= Write something in chat.= -You have disabled your achievements.= -You have enabled your achievements.= +You have disabled your advancements.= +You have enabled your advancements.= You have not gotten any awards.= You've disabled awards. Type /awards enable to reenable.= [c|clear|disable|enable]= @@ -49,16 +49,16 @@ Place @1 block(s).= Dig @1 block(s).= Eat @1 item(s).= Craft @1 item(s).= -Can give achievements to any player= -(grant ( | all)) | list= -Give achievement to player or list all achievements= +Can give advancements to any player= +(grant ( | all)) | list= +Give advancement to player or list all advancements= @1 (@2)= Invalid syntax.= Invalid action.= Player is not online.= Done.= -Achievement “@1” does not exist.= -@1 has made the achievement @2= +Advancement “@1” does not exist.= +@1 has made the advancement @2= Mine a block: @1= Mine blocks: @1×@2= Awards are disabled, enable them first by using /awards enable!= diff --git a/mods/HUD/mcl_inventory/creative.lua b/mods/HUD/mcl_inventory/creative.lua index 278ca87b1..704641d89 100644 --- a/mods/HUD/mcl_inventory/creative.lua +++ b/mods/HUD/mcl_inventory/creative.lua @@ -392,7 +392,7 @@ function mcl_inventory.set_creative_formspec(player, start_i, pagenum, inv_size, -- Achievements button "image_button[9,3;1,1;mcl_achievements_button.png;__mcl_achievements;]" .. --"style_type[image_button;border=;bgimg=;bgimg_pressed=]" .. - "tooltip[__mcl_achievements;"..F(S("Achievements")) .. "]" .. + "tooltip[__mcl_achievements;"..F(S("Advancements")) .. "]" .. -- Switch stack size button "image_button[9,4;1,1;default_apple.png;__switch_stack;]" .. diff --git a/mods/HUD/mcl_inventory/init.lua b/mods/HUD/mcl_inventory/init.lua index 419407b7e..61d52eb2a 100644 --- a/mods/HUD/mcl_inventory/init.lua +++ b/mods/HUD/mcl_inventory/init.lua @@ -119,7 +119,7 @@ local function set_inventory(player, armor_change_only) form = form .. -- Achievements button "image_button[7,3;1,1;mcl_achievements_button.png;__mcl_achievements;]" .. - "tooltip[__mcl_achievements;" .. F(S("Achievements")) .. "]" .. + "tooltip[__mcl_achievements;" .. F(S("Advancements")) .. "]" .. -- For shortcuts "listring[current_player;main]" .. diff --git a/mods/HUD/mcl_inventory/locale/template.txt b/mods/HUD/mcl_inventory/locale/template.txt index 7f1c9769d..fcbe68580 100644 --- a/mods/HUD/mcl_inventory/locale/template.txt +++ b/mods/HUD/mcl_inventory/locale/template.txt @@ -2,7 +2,7 @@ Recipe book= Help= Select player skin= -Achievements= +Advancements= Building Blocks= Decoration Blocks= Redstone= From 0a33c5b5dfc04d229a318c88535fbeabd68533f1 Mon Sep 17 00:00:00 2001 From: PrairieWind Date: Mon, 3 Oct 2022 16:55:26 -0600 Subject: [PATCH 2/3] Added Types of Advancements (Advancements, Goals, and Challenges) --- mods/HUD/awards/api.lua | 12 ++++++ mods/HUD/awards/locale/template.txt | 6 +++ mods/HUD/mcl_achievements/init.lua | 63 ++++++++++++++++++++++++----- 3 files changed, 71 insertions(+), 10 deletions(-) diff --git a/mods/HUD/awards/api.lua b/mods/HUD/awards/api.lua index fbfe7eb5c..059f6b287 100644 --- a/mods/HUD/awards/api.lua +++ b/mods/HUD/awards/api.lua @@ -258,6 +258,10 @@ function awards.unlock(name, award) if not custom_announce then if awdef.secret then custom_announce = S("Secret Advancement Made:") + elseif awdef.type == "Goal" then + custom_announce = S("Goal Completed:") + elseif awdef.type == "Challenge" then + custom_announce = S("Challenge Completed:") else custom_announce = S("Advancement Made:") end @@ -284,6 +288,10 @@ function awards.unlock(name, award) local chat_announce if awdef.secret == true then chat_announce = S("Secret Advancement Made: @1") + elseif awdef.type == "Goal" then + chat_announce = S("Goal Completed: @1") + elseif awdef.type == "Challenge" then + chat_announce = S("Challenge Completed: @1") else chat_announce = S("Advancement Made: @1") end @@ -307,6 +315,10 @@ function awards.unlock(name, award) local hud_announce if awdef.secret == true then hud_announce = S("Secret Advancement Made!") + elseif awdef.type == "Goal" then + hud_announce = S("Goal Completed!") + elseif awdef.type == "Challenge" then + hud_announce = S("Challenge Completed!") else hud_announce = S("Advancement Made!") end diff --git a/mods/HUD/awards/locale/template.txt b/mods/HUD/awards/locale/template.txt index 69e8fc47c..5312c2ba7 100644 --- a/mods/HUD/awards/locale/template.txt +++ b/mods/HUD/awards/locale/template.txt @@ -62,3 +62,9 @@ Advancement “@1” does not exist.= Mine a block: @1= Mine blocks: @1×@2= Awards are disabled, enable them first by using /awards enable!= +Goal Completed:= +Goal Completed!= +Goal Completed: @1= +Challenge Completed:= +Challenge Completed!= +Challenge Completed: @1= diff --git a/mods/HUD/mcl_achievements/init.lua b/mods/HUD/mcl_achievements/init.lua index 60507bd17..152306abc 100644 --- a/mods/HUD/mcl_achievements/init.lua +++ b/mods/HUD/mcl_achievements/init.lua @@ -15,7 +15,8 @@ awards.register_achievement("mcl_buildWorkBench", { type = "craft", item = "mcl_crafting_table:crafting_table", target = 1 - } + }, + type = "Advancement", }) awards.register_achievement("mcl:buildPickaxe", { title = S("Time to Mine!"), @@ -25,7 +26,8 @@ awards.register_achievement("mcl:buildPickaxe", { type = "craft", item = "mcl_tools:pick_wood", target = 1 - } + }, + type = "Advancement", }) awards.register_achievement("mcl:buildFurnace", { title = S("Hot Topic"), @@ -35,7 +37,8 @@ awards.register_achievement("mcl:buildFurnace", { type = "craft", item = "mcl_furnaces:furnace", target = 1 - } + }, + type = "Advancement" }) awards.register_achievement("mcl:buildHoe", { title = S("Time to Farm!"), @@ -45,7 +48,8 @@ awards.register_achievement("mcl:buildHoe", { type = "craft", item = "mcl_farming:hoe_wood", target = 1 - } + }, + type = "Advancement", }) awards.register_achievement("mcl:makeBread", { title = S("Bake Bread"), @@ -55,7 +59,8 @@ awards.register_achievement("mcl:makeBread", { type = "craft", item = "mcl_farming:bread", target = 1 - } + }, + type = "Advancement", }) awards.register_achievement("mcl:bakeCake", { @@ -66,7 +71,8 @@ awards.register_achievement("mcl:bakeCake", { type = "craft", item = "mcl_cake:cake", target = 1 - } + }, + type = "Advancement", }) awards.register_achievement("mcl:buildBetterPickaxe", { title = S("Getting an Upgrade"), @@ -77,7 +83,8 @@ awards.register_achievement("mcl:buildBetterPickaxe", { type = "craft", item = "mcl_tools:pick_stone", target = 1 - } + }, + type = "Advancement", }) awards.register_achievement("mcl:buildSword", { title = S("Time to Strike!"), @@ -87,7 +94,8 @@ awards.register_achievement("mcl:buildSword", { type = "craft", item = "mcl_tools:sword_wood", target = 1 - } + }, + type = "Advancement", }) awards.register_achievement("mcl:bookcase", { @@ -98,7 +106,8 @@ awards.register_achievement("mcl:bookcase", { type = "craft", item = "mcl_books:bookshelf", target = 1 - } + }, + type = "Advancement", }) awards.register_achievement("mcl:buildIronPickaxe", { @@ -109,7 +118,8 @@ awards.register_achievement("mcl:buildIronPickaxe", { type = "craft", item = "mcl_tools:pick_iron", target = 1 - } + }, + type = "Advancement", }) -- Item pickup achievements: These are awarded when picking up a certain item. @@ -118,46 +128,54 @@ awards.register_achievement("mcl:diamonds", { title = S("DIAMONDS!"), description = S("Pick up a diamond from the floor."), icon = "mcl_core_diamond_ore.png", + type = "Advancement", }) awards.register_achievement("mcl:blazeRod", { title = S("Into Fire"), description = S("Pick up a blaze rod from the floor."), icon = "mcl_mobitems_blaze_rod.png", + type = "Advancement", }) awards.register_achievement("mcl:killCow", { title = S("Cow Tipper"), description = S("Pick up leather from the floor.\nHint: Cows and some other animals have a chance to drop leather, when killed."), icon = "mcl_mobitems_leather.png", + type = "Advancement", }) awards.register_achievement("mcl:mineWood", { title = S("Getting Wood"), description = S("Pick up a wood item from the ground.\nHint: Punch a tree trunk until it pops out as an item."), icon = "default_tree.png", + type = "Advancement", }) awards.register_achievement("mcl:whosCuttingOnions", { title = S("Who is Cutting Onions?"), description = S("Pick up a crying obsidian from the floor."), icon = "default_obsidian.png^mcl_core_crying_obsidian.png", + type = "Advancement", }) awards.register_achievement("mcl:hiddenInTheDepths", { title = S("Hidden in the Depths"), description = S("Pick up an Ancient Debris from the floor."), icon = "mcl_nether_ancient_debris_side.png", + type = "Advancement", }) awards.register_achievement("mcl:PickUpDragonEgg", { title = S("The Next Generation"), description = S("Hold the Dragon Egg.\nHint: Pick up the egg from the ground and have it in your inventory."), icon = "mcl_end_dragon_egg.png", + type = "Goal", }) awards.register_achievement("mcl:skysTheLimit", { title = S("Sky's the Limit"), description = S("Find the elytra and prepare to fly above and beyond!"), icon = "mcl_armor_inv_elytra.png", + type = "Goal", }) -- TODO: Make also unlock when moved to inventory, not just picking up from ground -- Smelting achivements: These are awarded when picking up an item from a furnace @@ -166,11 +184,13 @@ awards.register_achievement("mcl:acquireIron", { title = S("Aquire Hardware"), description = S("Take an iron ingot from a furnace's output slot.\nHint: To smelt an iron ingot, put a fuel (like coal) and iron ore into a furnace."), icon = "default_steel_ingot.png", + type = "Advancement", }) awards.register_achievement("mcl:cookFish", { title = S("Delicious Fish"), description = S("Take a cooked fish from a furnace.\nHint: Use a fishing rod to catch a fish and cook it in a furnace."), icon = "mcl_fishing_fish_cooked.png", + type = "Advancement", }) -- Other achievements triggered outside of mcl_achievements @@ -180,6 +200,7 @@ awards.register_achievement("mcl:onARail", { title = S("On A Rail"), description = S("Travel by minecart for at least 1000 meters from your starting point in a single ride."), icon = "default_rail.png", + type = "Challenge", }) -- Triggered in mcl_bows @@ -189,6 +210,7 @@ awards.register_achievement("mcl:snipeSkeleton", { -- TODO: The range should be 50, not 20. Nerfed because of reduced bow range description = S("Hit a skeleton, wither skeleton or stray by bow and arrow from a distance of at least 20 meters."), icon = "mcl_bows_bow.png", + type = "Challenge", }) -- Triggered in mcl_portals @@ -196,18 +218,21 @@ awards.register_achievement("mcl:buildNetherPortal", { title = S("We Need to Go Deeper"), description = S("Use obsidian and a fire starter to construct a Nether portal."), icon = "mcl_fire_flint_and_steel.png", + type = "Advancement", }) awards.register_achievement("mcl:enterEndPortal", { title = S("The End?"), description = S("Or the beginning?\nHint: Enter an end portal."), icon = "mcl_end_end_stone.png", + type = "Advancement", }) awards.register_achievement("mcl:theNether", { title = S("The Nether"), description = S("Bring summer clothes.\nHint: Enter the Nether."), icon = "mcl_nether_netherrack.png", + type = "Advancement", }) -- Triggered in mcl_totems @@ -215,6 +240,7 @@ awards.register_achievement("mcl:postMortal", { title = S("Postmortal"), description = S("Use a Totem of Undying to cheat death."), icon = "mcl_totems_totem.png", + type = "Goal", }) -- Triggered in mcl_beds @@ -222,12 +248,14 @@ awards.register_achievement("mcl:sweetDreams", { title = S("Sweet Dreams"), description = S("Sleep in a bed to change your respawn point."), icon = "mcl_beds_bed_red_inv.png", + type = "Advancement", }) awards.register_achievement("mcl:notQuiteNineLives", { title = S('Not Quite "Nine" Lives'), description = S("Charge a Respawn Anchor to the maximum."), icon = "respawn_anchor_side4.png", + type = "Advancement", }) -- Triggered in mobs_mc @@ -235,24 +263,28 @@ awards.register_achievement("mcl:whatAdeal", { title = S("What A Deal!"), description = S("Successfully trade with a Villager."), icon = "mcl_core_emerald.png", + type = "Advancement", }) awards.register_achievement("mcl:tacticalFishing", { title = S("Tactical Fishing"), description = S("Catch a fish... without a fishing rod!"), icon = "pufferfish_bucket.png", + type = "Advancement", }) awards.register_achievement("mcl:witheringHeights", { title = S("Withering Heights"), description = S("Summon the wither from the dead."), icon = "mcl_mobitems_nether_star.png", + type = "Advancement", }) awards.register_achievement("mcl:freeTheEnd", { title = S("Free the End"), description = S("Kill the ender dragon. Good Luck!"), icon = "(spawn_egg.png^[multiply:#252525)^(spawn_egg_overlay.png^[multiply:#b313c9)", -- TODO: Dragon Head Icon + type = "Advancement", }) -- Triggered in mcl_fishing @@ -260,6 +292,7 @@ awards.register_achievement("mcl:fishyBusiness", { title = S("Fishy Business"), description = S("Catch a fish.\nHint: Catch a fish, salmon, clownfish, or pufferfish."), icon = "mcl_fishing_fishing_rod.png", + type = "Advancement", }) -- Triggered in mcl_compass @@ -267,6 +300,7 @@ awards.register_achievement("mcl:countryLode", { title = S("Country Lode,\nTake Me Home"), description = S("Use a compass on a Lodestone."), icon = "lodestone_side4.png", + type = "Advancement", }) -- Triggered in mcl_smithing_table @@ -274,6 +308,7 @@ awards.register_achievement("mcl:seriousDedication", { title = S("Serious Dedication"), description = S("Use a Netherite Ingot to upgrade a hoe, and then completely reevaluate your life choices."), icon = "farming_tool_netheritehoe.png", + type = "Challenge", }) -- Triggered in mcl_brewing @@ -281,6 +316,7 @@ awards.register_achievement("mcl:localBrewery", { title = S("Local Brewery"), description = S("Brew a Potion.\nHint: Take a potion or glass bottle out of the brewing stand."), icon = "mcl_potions_potion_overlay.png^[colorize:#F82423:"..tostring(127).."^mcl_potions_potion_bottle.png", + type = "Advancement", }) -- Triggered in mcl_enchanting @@ -288,6 +324,7 @@ awards.register_achievement("mcl:enchanter", { title = S("Enchanter"), description = S("Enchant an item using an Enchantment Table."), icon = "mcl_enchanting_book_enchanted.png", + type = "Advancement", }) --Triggered in mcl_beacons @@ -295,12 +332,14 @@ awards.register_achievement("mcl:beacon", { title = S("Bring Home the Beacon"), description = S("Use a beacon."), icon = "beacon_achievement_icon.png", + type = "Advancement", }) awards.register_achievement("mcl:maxed_beacon", { title = S("Beaconator"), description = S("Use a fully powered beacon."), icon = "beacon_achievement_icon.png", + type = "Goal", }) -- Triggered in mcl_end @@ -308,6 +347,7 @@ awards.register_achievement("mcl:theEndAgain", { title = S("The End... Again..."), description = S("Respawn the Ender Dragon."), icon = "mcl_end_crystal_item.png", + type = "Goal", }) -- NON-PC ACHIEVEMENTS (XBox, Pocket Edition, etc.) @@ -391,14 +431,17 @@ awards.register_achievement("mcl:stoneAge", { title = S("Stone Age"), description = S("Mine a stone with new pickaxe."), icon = "default_cobble.png", + type = "Advancement", }) awards.register_achievement("mcl:hotStuff", { title = S("Hot Stuff"), description = S("Put lava in a bucket."), icon = "bucket_lava.png", + type = "Advancement", }) awards.register_achievement("mcl:obsidian", { title = S("Ice Bucket Challenge"), description = S("Obtain an obsidian block."), icon = "default_obsidian.png", + type = "Advancement", }) From 78f1a81d1ffa657f0aa24ed569719c7bfb3328e2 Mon Sep 17 00:00:00 2001 From: PrairieWind Date: Mon, 3 Oct 2022 17:17:03 -0600 Subject: [PATCH 3/3] Add Advancement Groups (Overworld, Nether, End, Adventure, Husbandry) --- mods/HUD/mcl_achievements/init.lua | 44 +++++++++++++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) diff --git a/mods/HUD/mcl_achievements/init.lua b/mods/HUD/mcl_achievements/init.lua index 152306abc..f76662fce 100644 --- a/mods/HUD/mcl_achievements/init.lua +++ b/mods/HUD/mcl_achievements/init.lua @@ -17,6 +17,7 @@ awards.register_achievement("mcl_buildWorkBench", { target = 1 }, type = "Advancement", + group = "Overworld", }) awards.register_achievement("mcl:buildPickaxe", { title = S("Time to Mine!"), @@ -28,6 +29,7 @@ awards.register_achievement("mcl:buildPickaxe", { target = 1 }, type = "Advancement", + group = "Overworld", }) awards.register_achievement("mcl:buildFurnace", { title = S("Hot Topic"), @@ -38,7 +40,8 @@ awards.register_achievement("mcl:buildFurnace", { item = "mcl_furnaces:furnace", target = 1 }, - type = "Advancement" + type = "Advancement", + group = "Overworld", }) awards.register_achievement("mcl:buildHoe", { title = S("Time to Farm!"), @@ -50,6 +53,7 @@ awards.register_achievement("mcl:buildHoe", { target = 1 }, type = "Advancement", + group = "Husbandry", }) awards.register_achievement("mcl:makeBread", { title = S("Bake Bread"), @@ -61,6 +65,7 @@ awards.register_achievement("mcl:makeBread", { target = 1 }, type = "Advancement", + group = "Husbandry", }) awards.register_achievement("mcl:bakeCake", { @@ -73,6 +78,7 @@ awards.register_achievement("mcl:bakeCake", { target = 1 }, type = "Advancement", + group = "Husbandry", }) awards.register_achievement("mcl:buildBetterPickaxe", { title = S("Getting an Upgrade"), @@ -85,6 +91,7 @@ awards.register_achievement("mcl:buildBetterPickaxe", { target = 1 }, type = "Advancement", + group = "Overworld", }) awards.register_achievement("mcl:buildSword", { title = S("Time to Strike!"), @@ -96,6 +103,7 @@ awards.register_achievement("mcl:buildSword", { target = 1 }, type = "Advancement", + group = "Adventure", }) awards.register_achievement("mcl:bookcase", { @@ -108,6 +116,7 @@ awards.register_achievement("mcl:bookcase", { target = 1 }, type = "Advancement", + group = "Overworld", }) awards.register_achievement("mcl:buildIronPickaxe", { @@ -120,6 +129,7 @@ awards.register_achievement("mcl:buildIronPickaxe", { target = 1 }, type = "Advancement", + group = "Overworld", }) -- Item pickup achievements: These are awarded when picking up a certain item. @@ -135,6 +145,7 @@ awards.register_achievement("mcl:blazeRod", { description = S("Pick up a blaze rod from the floor."), icon = "mcl_mobitems_blaze_rod.png", type = "Advancement", + group = "Nether", }) awards.register_achievement("mcl:killCow", { @@ -142,12 +153,14 @@ awards.register_achievement("mcl:killCow", { description = S("Pick up leather from the floor.\nHint: Cows and some other animals have a chance to drop leather, when killed."), icon = "mcl_mobitems_leather.png", type = "Advancement", + group = "Adventure", }) awards.register_achievement("mcl:mineWood", { title = S("Getting Wood"), description = S("Pick up a wood item from the ground.\nHint: Punch a tree trunk until it pops out as an item."), icon = "default_tree.png", type = "Advancement", + group = "Overworld", }) awards.register_achievement("mcl:whosCuttingOnions", { @@ -155,6 +168,7 @@ awards.register_achievement("mcl:whosCuttingOnions", { description = S("Pick up a crying obsidian from the floor."), icon = "default_obsidian.png^mcl_core_crying_obsidian.png", type = "Advancement", + group = "Nether", }) awards.register_achievement("mcl:hiddenInTheDepths", { @@ -162,6 +176,7 @@ awards.register_achievement("mcl:hiddenInTheDepths", { description = S("Pick up an Ancient Debris from the floor."), icon = "mcl_nether_ancient_debris_side.png", type = "Advancement", + group = "Nether", }) awards.register_achievement("mcl:PickUpDragonEgg", { @@ -169,6 +184,7 @@ awards.register_achievement("mcl:PickUpDragonEgg", { description = S("Hold the Dragon Egg.\nHint: Pick up the egg from the ground and have it in your inventory."), icon = "mcl_end_dragon_egg.png", type = "Goal", + group = "End", }) awards.register_achievement("mcl:skysTheLimit", { @@ -176,6 +192,7 @@ awards.register_achievement("mcl:skysTheLimit", { description = S("Find the elytra and prepare to fly above and beyond!"), icon = "mcl_armor_inv_elytra.png", type = "Goal", + group = "End", }) -- TODO: Make also unlock when moved to inventory, not just picking up from ground -- Smelting achivements: These are awarded when picking up an item from a furnace @@ -185,12 +202,14 @@ awards.register_achievement("mcl:acquireIron", { description = S("Take an iron ingot from a furnace's output slot.\nHint: To smelt an iron ingot, put a fuel (like coal) and iron ore into a furnace."), icon = "default_steel_ingot.png", type = "Advancement", + group = "Overworld", }) awards.register_achievement("mcl:cookFish", { title = S("Delicious Fish"), description = S("Take a cooked fish from a furnace.\nHint: Use a fishing rod to catch a fish and cook it in a furnace."), icon = "mcl_fishing_fish_cooked.png", type = "Advancement", + group = "Husbandry", }) -- Other achievements triggered outside of mcl_achievements @@ -201,6 +220,7 @@ awards.register_achievement("mcl:onARail", { description = S("Travel by minecart for at least 1000 meters from your starting point in a single ride."), icon = "default_rail.png", type = "Challenge", + group = "Adventure", }) -- Triggered in mcl_bows @@ -211,6 +231,7 @@ awards.register_achievement("mcl:snipeSkeleton", { description = S("Hit a skeleton, wither skeleton or stray by bow and arrow from a distance of at least 20 meters."), icon = "mcl_bows_bow.png", type = "Challenge", + group = "Adventure", }) -- Triggered in mcl_portals @@ -219,6 +240,7 @@ awards.register_achievement("mcl:buildNetherPortal", { description = S("Use obsidian and a fire starter to construct a Nether portal."), icon = "mcl_fire_flint_and_steel.png", type = "Advancement", + group = "Overworld", }) awards.register_achievement("mcl:enterEndPortal", { @@ -226,6 +248,7 @@ awards.register_achievement("mcl:enterEndPortal", { description = S("Or the beginning?\nHint: Enter an end portal."), icon = "mcl_end_end_stone.png", type = "Advancement", + group = "Overworld", }) awards.register_achievement("mcl:theNether", { @@ -233,6 +256,7 @@ awards.register_achievement("mcl:theNether", { description = S("Bring summer clothes.\nHint: Enter the Nether."), icon = "mcl_nether_netherrack.png", type = "Advancement", + group = "Nether", }) -- Triggered in mcl_totems @@ -241,6 +265,7 @@ awards.register_achievement("mcl:postMortal", { description = S("Use a Totem of Undying to cheat death."), icon = "mcl_totems_totem.png", type = "Goal", + group = "Adventure", }) -- Triggered in mcl_beds @@ -249,6 +274,7 @@ awards.register_achievement("mcl:sweetDreams", { description = S("Sleep in a bed to change your respawn point."), icon = "mcl_beds_bed_red_inv.png", type = "Advancement", + group = "Adventure", }) awards.register_achievement("mcl:notQuiteNineLives", { @@ -256,6 +282,7 @@ awards.register_achievement("mcl:notQuiteNineLives", { description = S("Charge a Respawn Anchor to the maximum."), icon = "respawn_anchor_side4.png", type = "Advancement", + group = "Nether", }) -- Triggered in mobs_mc @@ -264,6 +291,7 @@ awards.register_achievement("mcl:whatAdeal", { description = S("Successfully trade with a Villager."), icon = "mcl_core_emerald.png", type = "Advancement", + group = "Adventure", }) awards.register_achievement("mcl:tacticalFishing", { @@ -271,6 +299,7 @@ awards.register_achievement("mcl:tacticalFishing", { description = S("Catch a fish... without a fishing rod!"), icon = "pufferfish_bucket.png", type = "Advancement", + group = "Husbandry", }) awards.register_achievement("mcl:witheringHeights", { @@ -278,6 +307,7 @@ awards.register_achievement("mcl:witheringHeights", { description = S("Summon the wither from the dead."), icon = "mcl_mobitems_nether_star.png", type = "Advancement", + group = "Nether", }) awards.register_achievement("mcl:freeTheEnd", { @@ -285,6 +315,7 @@ awards.register_achievement("mcl:freeTheEnd", { description = S("Kill the ender dragon. Good Luck!"), icon = "(spawn_egg.png^[multiply:#252525)^(spawn_egg_overlay.png^[multiply:#b313c9)", -- TODO: Dragon Head Icon type = "Advancement", + group = "End", }) -- Triggered in mcl_fishing @@ -293,6 +324,7 @@ awards.register_achievement("mcl:fishyBusiness", { description = S("Catch a fish.\nHint: Catch a fish, salmon, clownfish, or pufferfish."), icon = "mcl_fishing_fishing_rod.png", type = "Advancement", + group = "Husbandry", }) -- Triggered in mcl_compass @@ -301,6 +333,7 @@ awards.register_achievement("mcl:countryLode", { description = S("Use a compass on a Lodestone."), icon = "lodestone_side4.png", type = "Advancement", + group = "Nether", }) -- Triggered in mcl_smithing_table @@ -309,6 +342,7 @@ awards.register_achievement("mcl:seriousDedication", { description = S("Use a Netherite Ingot to upgrade a hoe, and then completely reevaluate your life choices."), icon = "farming_tool_netheritehoe.png", type = "Challenge", + group = "Husbandry", }) -- Triggered in mcl_brewing @@ -317,6 +351,7 @@ awards.register_achievement("mcl:localBrewery", { description = S("Brew a Potion.\nHint: Take a potion or glass bottle out of the brewing stand."), icon = "mcl_potions_potion_overlay.png^[colorize:#F82423:"..tostring(127).."^mcl_potions_potion_bottle.png", type = "Advancement", + group = "Nether", }) -- Triggered in mcl_enchanting @@ -325,6 +360,7 @@ awards.register_achievement("mcl:enchanter", { description = S("Enchant an item using an Enchantment Table."), icon = "mcl_enchanting_book_enchanted.png", type = "Advancement", + group = "Overworld", }) --Triggered in mcl_beacons @@ -333,6 +369,7 @@ awards.register_achievement("mcl:beacon", { description = S("Use a beacon."), icon = "beacon_achievement_icon.png", type = "Advancement", + group = "Nether", }) awards.register_achievement("mcl:maxed_beacon", { @@ -340,6 +377,7 @@ awards.register_achievement("mcl:maxed_beacon", { description = S("Use a fully powered beacon."), icon = "beacon_achievement_icon.png", type = "Goal", + group = "Nether", }) -- Triggered in mcl_end @@ -348,6 +386,7 @@ awards.register_achievement("mcl:theEndAgain", { description = S("Respawn the Ender Dragon."), icon = "mcl_end_crystal_item.png", type = "Goal", + group = "End", }) -- NON-PC ACHIEVEMENTS (XBox, Pocket Edition, etc.) @@ -432,16 +471,19 @@ awards.register_achievement("mcl:stoneAge", { description = S("Mine a stone with new pickaxe."), icon = "default_cobble.png", type = "Advancement", + group = "Overworld", }) awards.register_achievement("mcl:hotStuff", { title = S("Hot Stuff"), description = S("Put lava in a bucket."), icon = "bucket_lava.png", type = "Advancement", + group = "Overworld", }) awards.register_achievement("mcl:obsidian", { title = S("Ice Bucket Challenge"), description = S("Obtain an obsidian block."), icon = "default_obsidian.png", type = "Advancement", + group = "Overworld", })