Merge pull request 'More New Advancements' (#2382) from PrairieWind_advancements into master

Reviewed-on: https://git.minetest.land/MineClone2/MineClone2/pulls/2382
Reviewed-by: cora <cora@noreply.git.minetest.land>
This commit is contained in:
cora 2022-07-01 23:18:11 +00:00
commit 12e6c0e661
7 changed files with 83 additions and 7 deletions

View file

@ -59,6 +59,8 @@ mcl_item_entity.register_pickup_achievement("tree", "mcl:mineWood")
mcl_item_entity.register_pickup_achievement("mcl_mobitems:blaze_rod", "mcl:blazeRod") mcl_item_entity.register_pickup_achievement("mcl_mobitems:blaze_rod", "mcl:blazeRod")
mcl_item_entity.register_pickup_achievement("mcl_mobitems:leather", "mcl:killCow") mcl_item_entity.register_pickup_achievement("mcl_mobitems:leather", "mcl:killCow")
mcl_item_entity.register_pickup_achievement("mcl_core:diamond", "mcl:diamonds") mcl_item_entity.register_pickup_achievement("mcl_core:diamond", "mcl:diamonds")
mcl_item_entity.register_pickup_achievement("mcl_core:crying_obsidian", "mcl:whosCuttingOnions")
mcl_item_entity.register_pickup_achievement("mcl_nether:ancient_debris", "mcl:hiddenInTheDepths")
local function check_pickup_achievements(object, player) local function check_pickup_achievements(object, player)
if has_awards then if has_awards then

View file

@ -136,6 +136,18 @@ awards.register_achievement("mcl:mineWood", {
icon = "default_tree.png", icon = "default_tree.png",
}) })
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",
})
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",
})
-- Smelting achivements: These are awarded when picking up an item from a furnace -- Smelting achivements: These are awarded when picking up an item from a furnace
-- output. They are given in mcl_furnaces. -- output. They are given in mcl_furnaces.
awards.register_achievement("mcl:acquireIron", { awards.register_achievement("mcl:acquireIron", {
@ -169,9 +181,9 @@ awards.register_achievement("mcl:snipeSkeleton", {
-- Triggered in mcl_portals -- Triggered in mcl_portals
awards.register_achievement("mcl:buildNetherPortal", { awards.register_achievement("mcl:buildNetherPortal", {
title = S("Into the Nether"), title = S("We Need to Go Deeper"),
description = S("Use obsidian and a fire starter to construct a Nether portal."), description = S("Use obsidian and a fire starter to construct a Nether portal."),
icon = "default_obsidian.png", icon = "mcl_fire_flint_and_steel.png",
}) })
awards.register_achievement("mcl:enterEndPortal", { awards.register_achievement("mcl:enterEndPortal", {
@ -180,6 +192,12 @@ awards.register_achievement("mcl:enterEndPortal", {
icon = "mcl_end_end_stone.png", icon = "mcl_end_end_stone.png",
}) })
awards.register_achievement("mcl:theNether", {
title = S("The Nether"),
description = S("Bring summer clothes.\nHint: Enter the Nether."),
icon = "mcl_nether_netherrack.png",
})
-- Triggered in mcl_totems -- Triggered in mcl_totems
awards.register_achievement("mcl:postMortal", { awards.register_achievement("mcl:postMortal", {
title = S("Postmortal"), title = S("Postmortal"),
@ -194,6 +212,12 @@ awards.register_achievement("mcl:sweetDreams", {
icon = "mcl_beds_bed_red.png", icon = "mcl_beds_bed_red.png",
}) })
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",
})
-- Triggered in mobs_mc -- Triggered in mobs_mc
awards.register_achievement("mcl:whatAdeal", { awards.register_achievement("mcl:whatAdeal", {
title = S("What A Deal!"), title = S("What A Deal!"),
@ -218,10 +242,24 @@ awards.register_achievement("mcl:countryLode", {
-- Triggered in mcl_smithing_table -- Triggered in mcl_smithing_table
awards.register_achievement("mcl:seriousDedication", { awards.register_achievement("mcl:seriousDedication", {
title = S("Serious Dedication"), title = S("Serious Dedication"),
description = S("Use a Netherite Ingot to upgrade a hoe, and then completely reevaluate your life choices"), description = S("Use a Netherite Ingot to upgrade a hoe, and then completely reevaluate your life choices."),
icon = "farming_tool_netheritehoe.png", icon = "farming_tool_netheritehoe.png",
}) })
-- Triggered in mcl_brewing
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",
})
-- Triggered in mcl_enchanting
awards.register_achievement("mcl:enchanter", {
title = S("Enchanter"),
description = S("Enchant an item using an Enchantment Table."),
icon = "mcl_enchanting_book_enchanted.png",
})
-- NON-PC ACHIEVEMENTS (XBox, Pocket Edition, etc.) -- NON-PC ACHIEVEMENTS (XBox, Pocket Edition, etc.)
if non_pc_achievements then if non_pc_achievements then

View file

@ -19,7 +19,7 @@ Getting an Upgrade=
Hit a skeleton, wither skeleton or stray by bow and arrow from a distance of at least 20 meters.= Hit a skeleton, wither skeleton or stray by bow and arrow from a distance of at least 20 meters.=
Hot Topic= Hot Topic=
Into Fire= Into Fire=
Into the Nether= We Need to Go Deeper=
Iron Belly= Iron Belly=
Librarian= Librarian=
Mine emerald ore.= Mine emerald ore.=
@ -47,3 +47,29 @@ Use a crafting table to craft a wooden hoe from wooden planks and sticks.=
Use a crafting table to craft a wooden pickaxe from wooden planks and sticks.= Use a crafting table to craft a wooden pickaxe from wooden planks and sticks.=
Use obsidian and a fire starter to construct a Nether portal.= Use obsidian and a fire starter to construct a Nether portal.=
Use wheat to craft a bread.= Use wheat to craft a bread.=
Who is Cutting Onions?=
Pick up a crying obsidian from the floor.=
Hidden in the Depths=
Pick up an Ancient Debris from the floor.=
The Nether=
Bring summer clothes.@nHint: Enter the Nether.=
Isn't It Iron Pick=
Craft a iron pickaxe using sticks and iron.=
Postmortal=
Use a Totem of Undying to cheat death.=
Sweet Dreams=
Sleep in a bed to change your respawn point.=
Not Quite "Nine" Lives=
Charge a Respawn Anchor to the maximum.=
What A Deal!=
Successfully trade with a Villager.=
Fishy Business=
Catch a fish.@nHint: Catch a fish, salmon, clownfish, or pufferfish.=
Country Lode,@nTake Me Home=
Use a compass on a Lodestone.=
Serious Dedication=
Use a Netherite Ingot to upgrade a hoe, and then completely reevaluate your life choices.=
Local Brewery=
Brew a Potion.@nHint: Take a potion or glass bottle out of the brewing stand.=
Enchanter=
Enchant an item using an Enchantment Table.=

View file

@ -39,6 +39,9 @@ for i=0,4 do
elseif string.match(node.name, "mcl_beds:respawn_anchor_charged_") then elseif string.match(node.name, "mcl_beds:respawn_anchor_charged_") then
minetest.chat_send_player(player.get_player_name(player), S"New respawn position set!") minetest.chat_send_player(player.get_player_name(player), S"New respawn position set!")
mcl_spawn.set_spawn_pos(player, pos, nil) mcl_spawn.set_spawn_pos(player, pos, nil)
if i == 4 then
awards.unlock(player:get_player_name(), "mcl:notQuiteNineLives")
end
end end
end end

View file

@ -369,6 +369,9 @@ local function allow_take(pos, listname, index, stack, player)
minetest.record_protection_violation(pos, name) minetest.record_protection_violation(pos, name)
return 0 return 0
else else
if listname == "stand" then
awards.unlock(name, "mcl:localBrewery")
end
return stack:get_count() return stack:get_count()
end end
end end

View file

@ -576,6 +576,7 @@ function mcl_enchanting.handle_formspec_fields(player, formname, fields)
minetest.sound_play("mcl_enchanting_enchant", {to_player = name, gain = 5.0}) minetest.sound_play("mcl_enchanting_enchant", {to_player = name, gain = 5.0})
mcl_enchanting.reset_table_slots(player) mcl_enchanting.reset_table_slots(player)
mcl_enchanting.show_enchanting_formspec(player) mcl_enchanting.show_enchanting_formspec(player)
awards.unlock(player:get_player_name(), "mcl:enchanter")
end end
end end

View file

@ -427,6 +427,9 @@ local function finalize_teleport(obj, exit)
mcl_worlds.dimension_change(obj, dim) mcl_worlds.dimension_change(obj, dim)
minetest.sound_play("mcl_portals_teleport", {pos=exit, gain=0.5, max_hear_distance = 16}, true) minetest.sound_play("mcl_portals_teleport", {pos=exit, gain=0.5, max_hear_distance = 16}, true)
log("action", "[mcl_portals] player "..name.." teleported to Nether portal at "..pos_to_string(exit)..".") log("action", "[mcl_portals] player "..name.." teleported to Nether portal at "..pos_to_string(exit)..".")
if dim == "nether" then
awards.unlock(obj:get_player_name(), "mcl:theNether")
end
else else
log("action", "[mcl_portals] entity teleported to Nether portal at "..pos_to_string(exit)..".") log("action", "[mcl_portals] entity teleported to Nether portal at "..pos_to_string(exit)..".")
end end