From db87273effa36617440d57cc7044cb3288cd8a1e Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Fri, 26 Sep 2014 20:20:44 +0100 Subject: [PATCH] Back port awards from Carbone/awards by Calinou --- init.lua | 309 ++++++++++++++++++++++++++++++++++++++++++++++-------- readme.md | 5 +- 2 files changed, 271 insertions(+), 43 deletions(-) diff --git a/init.lua b/init.lua index 9a967a4..29dbe92 100644 --- a/init.lua +++ b/init.lua @@ -17,7 +17,7 @@ dofile(minetest.get_modpath("awards").."/api.lua") -- Light it up awards.register_achievement("award_lightitup",{ title = S("Light It Up"), - description = S("Place 100 torches"), + description = S("Place 100 torches."), icon = "novicebuilder.png", trigger = { type = "place", @@ -26,10 +26,87 @@ awards.register_achievement("award_lightitup",{ } }) --- Lumber Jack +-- Light ALL the things! +awards.register_achievement("award_light_all_the_things",{ + title = S("Light ALL The Things!"), + description = S("Place 1,000 torches."), + icon = "novicebuilder.png", + trigger = { + type = "place", + node = "default:torch", + target = 1000 + } +}) + + +-- Saint-Maclou +if minetest.get_modpath("moreblocks") then + awards.register_achievement("award_saint_maclou",{ + title = S("Saint-Maclou"), + description = S("Place 20 coal checkers."), + icon = "novicebuilder.png", + trigger = { + type = "place", + node = "moreblocks:coal_checker", + target = 20 + } + }) + + -- Castorama + awards.register_achievement("award_castorama",{ + title = S("Castorama"), + description = S("Place 20 iron checkers."), + icon = "novicebuilder.png", + trigger = { + type = "place", + node = "moreblocks:iron_checker", + target = 20 + } + }) + + -- Sam the Trapper + awards.register_achievement("award_sam_the_trapper",{ + title = S("Sam the Trapper"), + description = S("Place 2 trap stones."), + icon = "novicebuilder.png", + trigger = { + type = "place", + node = "moreblocks:trap_stone", + target = 2 + } + }) +end + +-- Obsessed with Obsidian +awards.register_achievement("award_obsessed_with_obsidian",{ + title = S("Obsessed with Obsidian"), + description = S("Mine 50 obsidian."), + icon = "miniminer.png", + background = "bg_mining.png", + trigger = { + type = "dig", + node = "default:obsidian", + target = 50 + } +}) + +-- On the way +awards.register_achievement("award_on_the_way",{ + title = S("On The Way"), + description = S("Place 100 rails."), + icon = "novicebuilder.png", + trigger = { + type = "place", + node = "default:rail", + target = 100 + } +}) + +-- Lumberjack awards.register_achievement("award_lumberjack",{ - title = S("Lumber Jack"), - description = S("Dig 100 tree blocks"), + title = S("Lumberjack"), + description = S("Dig 100 tree blocks."), + icon = "default_tree.png", trigger = { type = "dig", node = "default:tree", @@ -37,11 +114,71 @@ awards.register_achievement("award_lumberjack",{ } }) +-- Semi-pro Lumberjack +awards.register_achievement("award_lumberjack_semipro",{ + title = S("Semi-pro Lumberjack"), + description = S("Dig 1,000 tree blocks."), + icon = "default_tree.png", + trigger = { + type = "dig", + node = "default:tree", + target = 1000 + } +}) + +-- Professional Lumberjack +awards.register_achievement("award_lumberjack_professional",{ + title = S("Professional Lumberjack"), + description = S("Dig 10,000 tree blocks."), + icon = "default_tree.png", + trigger = { + type = "dig", + node = "default:tree", + target = 10000 + } +}) + +-- L33T Lumberjack +awards.register_achievement("award_lumberjack_leet",{ + title = S("L33T Lumberjack"), + description = S("Dig 100,000 tree blocks."), + icon = "default_tree.png", + trigger = { + type = "dig", + node = "default:tree", + target = 100000 + } +}) + +-- Junglebaby +awards.register_achievement("award_junglebaby",{ + title = S("Junglebaby"), + description = S("Dig 100 jungle tree blocks."), + icon = "default_jungletree.png", + trigger = { + type = "dig", + node = "default:jungletree", + target = 100 + } +}) + +-- Jungleman +awards.register_achievement("award_jungleman",{ + title = S("Jungleman"), + description = S("Dig 1,000 jungle tree blocks."), + icon = "default_jungletree.png", + trigger = { + type = "dig", + node = "default:jungletree", + target = 1000 + } +}) + -- Found some Mese! awards.register_achievement("award_mesefind",{ title = S("First Mese Find"), - description = S("Found my first mese block"), - icon = "mese.png", + description = S("Find some Mese."), + icon = "default_mese_block.png", background = "bg_mining.png", trigger = { type = "dig", @@ -50,10 +187,37 @@ awards.register_achievement("award_mesefind",{ } }) +-- You're a copper +awards.register_achievement("award_youre_a_copper",{ + title = S("You're a copper"), + description = S("Dig 1,000 copper ores."), + icon = "miniminer.png", + background = "bg_mining.png", + trigger = { + type = "dig", + node = "default:stone_with_copper", + target = 1000 + } +}) + +-- You're winner +awards.register_achievement("award_youre_winner",{ + title = S("YOU'RE A WINNER!"), + description = S("Dig 1 mossy cobblestone."), + icon = "miniminer.png", + background = "bg_mining.png", + trigger = { + type = "dig", + node = "default:mossycobble", + target = 1 + }, + secret = true, +}) + -- Found a Nyan cat! awards.register_achievement("award_nyanfind",{ title = S("OMG, Nyan Cat!"), - description = S("I found a nyan cat"), + description = S("Find a nyan cat."), icon = "default_nc_rb.png", trigger = { type = "dig", @@ -65,7 +229,7 @@ awards.register_achievement("award_nyanfind",{ -- Mini Miner awards.register_achievement("award_mine2",{ title = S("Mini Miner"), - description = S("You have dug 100 stone blocks"), + description = S("Dig 100 stone blocks."), icon = "miniminer.png", background = "bg_mining.png", trigger = { @@ -78,7 +242,7 @@ awards.register_achievement("award_mine2",{ -- Hardened Miner awards.register_achievement("award_mine3",{ title = S("Hardened Miner"), - description = S("You have dug 1000 stone blocks"), + description = S("Dig 1,000 stone blocks"), icon = "miniminer.png", background = "bg_mining.png", trigger = { @@ -91,7 +255,7 @@ awards.register_achievement("award_mine3",{ -- Master Miner awards.register_achievement("award_mine4",{ title = S("Master Miner"), - description = S("You have dug 10000 stone blocks"), + description = S("Dig 10,000 stone blocks."), icon = "miniminer.png", background = "bg_mining.png", trigger = { @@ -101,48 +265,109 @@ awards.register_achievement("award_mine4",{ } }) --- First Death -awards.register_achievement("award_death1",{ - title = S("Dies a lot"), - description = S("The game isn't that hard, is it?"), +-- Marchand de sable +awards.register_achievement("award_marchand_de_sable",{ + title = S("Marchand De Sable"), + description = S("Dig 1,000 sand."), + background = "bg_mining.png", trigger = { - type = "death", - target = 100 + type = "dig", + node = "default:sand", + target = 1000 } }) --- Burned to death -awards.register_achievement("award_burn",{ - title = S("You're a witch!"), - description = S("Burn to death in a fire") -}) -awards.register_onDeath(function(player,data) - local pos = player:getpos() - if pos and minetest.find_node_near(pos, 1, "fire:basic_flame") ~= nil then - return "award_burn" - end - return nil -end) - --- Chat -awards.register_achievement("award_chat2",{ - title = S("Chatter Box"), - description = S("Speak over one hundred times"), - trigger = { - type = "chat", - target = 100 - }, - secret = true -}) - - -- Join awards.register_achievement("award_join2",{ title = S("Frequent Visitor"), - description = S("Connect to the server 50 times"), + description = S("Connect to the server 50 times."), trigger = { type = "join", target = 50 }, secret = true }) + +-- Dying Spree +awards.register_achievement("award_dying_spree",{ + title = S("Dying Spree"), + description = S("Die 5 times."), + trigger = { + type = "death", + target = 5 + } +}) + +-- Bot-like +awards.register_achievement("award_bot_like",{ + title = S("Bot-like"), + description = S("Die 10 times."), + trigger = { + type = "death", + target = 10 + } +}) + +-- You Suck! +awards.register_achievement("award_you_suck",{ + title = S("You Suck!"), + description = S("Die 100 times."), + trigger = { + type = "death", + target = 100 + }, + secret = true +}) + +-- Burned to death +awards.register_achievement("award_burn",{ + title = S("You're a witch!"), + description = S("Burn to death in a fire.") +}) +awards.register_onDeath(function(player,data) + local pos = player:getpos() + if pos and minetest.find_node_near(pos, 2, "fire:basic_flame") ~= nil then + return "award_burn" + end + return nil +end) + +-- Died in flowing lava +awards.register_achievement("award_in_the_flow",{ + title = S("In the Flow"), + description = S("Die in flowing lava.") +}) +awards.register_onDeath(function(player,data) + local pos = player:getpos() + if pos and minetest.find_node_near(pos, 2, "default:lava_flowing") ~= nil then + return "award_in_the_flow" + end + return nil +end) + +-- Die near diamond ore +awards.register_achievement("award_this_is_sad",{ + title = S("This is Sad"), + description = S("Die near diamond ore.") +}) +awards.register_onDeath(function(player,data) + local pos = player:getpos() + if pos and minetest.find_node_near(pos, 5, "default:stone_with_diamond") ~= nil then + return "award_this_is_sad" + end + return nil +end) + +-- Die near diamond ore +awards.register_achievement("award_the_stack",{ + title = S("The Stack"), + description = S("Die near bones.") +}) +awards.register_onDeath(function(player,data) + local pos = player:getpos() + if pos and minetest.find_node_near(pos, 5, "bones:bones") ~= nil then + return "award_the_stack" + end + return nil +end) + diff --git a/readme.md b/readme.md index f8cab88..4a01137 100644 --- a/readme.md +++ b/readme.md @@ -5,6 +5,9 @@ by Andrew "Rubenwardy" Ward, CC-BY-SA. This mod adds achievements to Minetest. +Majority of awards are back ported from Calinou's +old fork in Carbone, under same license. + Code Reference -------------- @@ -49,4 +52,4 @@ A list of data referenced/hashed by the player's name. * itemname [int] * deaths * chats - * joins \ No newline at end of file + * joins