Add _tt_help to many more items

This commit is contained in:
Wuzzy 2020-03-08 03:18:47 +01:00
parent ba74546d48
commit cbda2ef326
19 changed files with 88 additions and 34 deletions

View File

@ -87,7 +87,7 @@ mesecon.register_node("mcl_observers:observer",
},
{
description = S("Observer"),
_tt_help = S("Observes block in front of it and sends a brief redstone pulse when it changes"),
_tt_help = S("Emits redstone pulse when block in front changes"),
_doc_items_longdesc = S("An observer is a redstone component which observes the block in front of it and sends a very short redstone pulse whenever this block changes."),
_doc_items_usagehelp = S("Place the observer directly in front of the block you want to observe with the “face” looking at the block. The arrow points to the side of the output, which is at the opposite side of the “face”. You can place your redstone dust or any other component here."),

View File

@ -186,7 +186,8 @@ mcl_torches.register_torch("mesecon_torch_on", S("Redstone Torch"),
rules = torch_get_input_rules,
action_on = torch_action_on,
},
}
},
_tt_help = S("Provides redstone power when it's not powered itself"),
}
)

View File

@ -89,7 +89,7 @@ end
-- TODO: The armor stand should be an entity
minetest.register_node("mcl_armor_stand:armor_stand", {
description = S("Armor Stand"),
_tt_help = S("Display pieces of armor"),
_tt_help = S("Displays pieces of armor"),
_doc_items_longdesc = S("An armor stand is a decorative object which can display different pieces of armor. Anything which players can wear as armor can also be put on an armor stand."),
_doc_items_usagehelp = S("Just place an armor item on the armor stand. To take the top piece of armor from the armor stand, select your hand and use the place key on the armor stand."),
drawtype = "mesh",

View File

@ -195,8 +195,7 @@ end
-- Standing banner node
-- This one is also used for the help entry to avoid spamming the help with 16 entries.
minetest.register_node("mcl_banners:standing_banner", {
_tt_help = S("Paintable"),
_doc_items_entry_name = "Banner",
_doc_items_entry_name = S("Banner"),
_doc_items_image = "mcl_banners_item_base.png^mcl_banners_item_overlay.png",
_doc_items_longdesc = S("Banners are tall colorful decorative blocks. They can be placed on the floor and at walls. Banners can be emblazoned with a variety of patterns using a lot of dye in crafting."),
_doc_items_usagehelp = S("Use crafting to draw a pattern on top of the banner. Emblazoned banners can be emblazoned again to combine various patterns. You can draw up to 12 layers on a banner that way. If the banner includes a gradient, only 3 layers are possible.").."\n"..
@ -321,6 +320,7 @@ for colorid, colortab in pairs(mcl_banners.colors) do
-- TODO: Combine the items into only 1 item.
minetest.register_craftitem(itemstring, {
description = desc,
_tt_help = S("Paintable decoration"),
_doc_items_create_entry = false,
inventory_image = inv,
wield_image = inv,

View File

@ -55,12 +55,13 @@ end
-- name = user-visible bucket description
-- longdesc = long explanatory description (for help)
-- usagehelp = short usage explanation (for help)
-- tt_help = very short tooltip help
-- extra_check(pos, placer) = optional function(pos) which can returns false to avoid placing the liquid.
-- placer is object/player who is placing the liquid, can be nil
-- groups = optional list of item groups
--
-- This function can be called from any mod (which depends on this one)
function mcl_buckets.register_liquid(source_place, source_take, itemname, inventory_image, name, longdesc, usagehelp, extra_check, groups)
function mcl_buckets.register_liquid(source_place, source_take, itemname, inventory_image, name, longdesc, usagehelp, tt_help, extra_check, groups)
for i=1, #source_take do
mcl_buckets.liquids[source_take[i]] = {
source_place = source_place,
@ -77,6 +78,7 @@ function mcl_buckets.register_liquid(source_place, source_take, itemname, invent
description = name,
_doc_items_longdesc = longdesc,
_doc_items_usagehelp = usagehelp,
_tt_help = tt_help,
inventory_image = inventory_image,
stack_max = 16,
liquids_pointable = true,
@ -187,6 +189,7 @@ minetest.register_craftitem("mcl_buckets:bucket_empty", {
description = S("Empty Bucket"),
_doc_items_longdesc = S("A bucket can be used to collect and release liquids."),
_doc_items_usagehelp = S("Punch a liquid source to collect it. You can then use the filled bucket to place the liquid somewhere else."),
_tt_help = S("Collects liquids"),
inventory_image = "bucket.png",
stack_max = 16,
@ -306,7 +309,8 @@ if mod_mcl_core then
"bucket_lava.png",
S("Lava Bucket"),
S("A bucket can be used to collect and release liquids. This one is filled with hot lava, safely contained inside. Use with caution."),
S("Get in a safe distance and place the bucket to empty it and create a lava source at this spot. Don't burn yourself!")
S("Get in a safe distance and place the bucket to empty it and create a lava source at this spot. Don't burn yourself!"),
S("Places a lava source")
)
-- Water bucket
@ -318,6 +322,7 @@ if mod_mcl_core then
S("Water Bucket"),
S("A bucket can be used to collect and release liquids. This one is filled with water."),
S("Place it to empty the bucket and create a water source."),
S("Places a water source"),
function(pos, placer)
-- Check protection
local placer_name = ""
@ -360,6 +365,7 @@ if mod_mclx_core then
S("River Water Bucket"),
S("A bucket can be used to collect and release liquids. This one is filled with river water."),
S("Place it to empty the bucket and create a river water source."),
S("Places a river water source"),
function(pos, placer)
-- Check protection
local placer_name = ""

View File

@ -862,10 +862,11 @@ for i=0,3 do
end
for i=1,8 do
local id, desc, longdesc, usagehelp, help, walkable, drawtype, node_box
local id, desc, longdesc, usagehelp, tt_help, help, walkable, drawtype, node_box
if i == 1 then
id = "mcl_core:snow"
desc = S("Top Snow")
tt_help = S("Stackable")
longdesc = S("Top snow is a layer of snow. It melts near light sources other than the sun with a light level of 12 or higher.").."\n"..S("Top snow can be stacked and has one of 8 different height levels. At levels 2-8, top snow is collidable. Top snow drops 2-9 snowballs, depending on its height.")
usagehelp = S("This block can only be placed on full solid blocks and on another top snow (which increases its height).")
walkable = false
@ -940,6 +941,7 @@ for i=1,8 do
minetest.register_node(id, {
description = desc,
_tt_help = tt_help,
_doc_items_longdesc = longdesc,
_doc_items_usagehelp = usagehelp,
_doc_items_create_entry = help,

View File

@ -113,9 +113,10 @@ local register_leaves = function(subname, description, longdesc, tiles, drop1, d
})
end
local register_sapling = function(subname, description, longdesc, texture, selbox)
local register_sapling = function(subname, description, longdesc, tt_help, texture, selbox)
minetest.register_node("mcl_core:"..subname, {
description = description,
_tt_help = tt_help,
_doc_items_longdesc = longdesc,
_doc_items_hidden = false,
drawtype = "plantlike",
@ -169,12 +170,30 @@ register_wooden_planks("acaciawood", S("Acacia Wood Planks"), {"default_acacia_w
register_wooden_planks("birchwood", S("Birch Wood Planks"), {"mcl_core_planks_birch.png"})
register_sapling("sapling", S("Oak Sapling"), S("When placed on soil (such as dirt) and exposed to light, an oak sapling will grow into an oak after some time."), "default_sapling.png", {-5/16, -0.5, -5/16, 5/16, 0.5, 5/16})
register_sapling("darksapling", S("Dark Oak Sapling"), S("Dark oak saplings can grow into dark oaks, but only in groups. A lonely dark oak sapling won't grow. A group of four dark oak saplings grows into a dark oak after some time when they are placed on soil (such as dirt) in a 2×2 square and exposed to light."), "mcl_core_sapling_big_oak.png", {-5/16, -0.5, -5/16, 5/16, 7/16, 5/16})
register_sapling("junglesapling", S("Jungle Sapling"), S("When placed on soil (such as dirt) and exposed to light, a jungle sapling will grow into a jungle tree after some time. When there are 4 jungle saplings in a 2×2 square, they will grow to a huge jungle tree."), "default_junglesapling.png", {-5/16, -0.5, -5/16, 5/16, 0.5, 5/16})
register_sapling("acaciasapling", S("Acacia Sapling"), S("When placed on soil (such as dirt) and exposed to light, an acacia sapling will grow into an acacia after some time."), "default_acacia_sapling.png", {-5/16, -0.5, -5/16, 5/16, 4/16, 5/16})
register_sapling("sprucesapling", S("Spruce Sapling"), S("When placed on soil (such as dirt) and exposed to light, a spruce sapling will grow into a spruce after some time. When there are 4 spruce saplings in a 2×2 square, they will grow to a huge spruce."), "mcl_core_sapling_spruce.png", {-4/16, -0.5, -4/16, 4/16, 0.5, 4/16})
register_sapling("birchsapling", S("Birch Sapling"), S("When placed on soil (such as dirt) and exposed to light, a birch sapling will grow into a birch after some time."), "mcl_core_sapling_birch.png", {-4/16, -0.5, -4/16, 4/16, 0.5, 4/16})
register_sapling("sapling", S("Oak Sapling"),
S("When placed on soil (such as dirt) and exposed to light, an oak sapling will grow into an oak after some time."),
S("Needs soil and light to grow"),
"default_sapling.png", {-5/16, -0.5, -5/16, 5/16, 0.5, 5/16})
register_sapling("darksapling", S("Dark Oak Sapling"),
S("Dark oak saplings can grow into dark oaks, but only in groups. A lonely dark oak sapling won't grow. A group of four dark oak saplings grows into a dark oak after some time when they are placed on soil (such as dirt) in a 2×2 square and exposed to light."),
S("Needs soil and light to grow") .. "\n" .. S("2×2 saplings required"),
"mcl_core_sapling_big_oak.png", {-5/16, -0.5, -5/16, 5/16, 7/16, 5/16})
register_sapling("junglesapling", S("Jungle Sapling"),
S("When placed on soil (such as dirt) and exposed to light, a jungle sapling will grow into a jungle tree after some time. When there are 4 jungle saplings in a 2×2 square, they will grow to a huge jungle tree."),
S("Needs soil and light to grow") .. "\n" .. S("2×2 saplings = large tree"),
"default_junglesapling.png", {-5/16, -0.5, -5/16, 5/16, 0.5, 5/16})
register_sapling("acaciasapling", S("Acacia Sapling"),
S("When placed on soil (such as dirt) and exposed to light, an acacia sapling will grow into an acacia after some time."),
S("Needs soil and light to grow"),
"default_acacia_sapling.png", {-5/16, -0.5, -5/16, 5/16, 4/16, 5/16})
register_sapling("sprucesapling", S("Spruce Sapling"),
S("When placed on soil (such as dirt) and exposed to light, a spruce sapling will grow into a spruce after some time. When there are 4 spruce saplings in a 2×2 square, they will grow to a huge spruce."),
S("Needs soil and light to grow") .. "\n" .. S("2×2 saplings = large tree"),
"mcl_core_sapling_spruce.png", {-4/16, -0.5, -4/16, 4/16, 0.5, 4/16})
register_sapling("birchsapling", S("Birch Sapling"),
S("When placed on soil (such as dirt) and exposed to light, a birch sapling will grow into a birch after some time."),
S("Needs soil and light to grow"),
"mcl_core_sapling_birch.png", {-4/16, -0.5, -4/16, 4/16, 0.5, 4/16})
register_leaves("leaves", S("Oak Leaves"), S("Oak leaves are grown from oak trees."), {"default_leaves.png"}, "mcl_core:sapling", 20, "mcl_core:apple", 200)

View File

@ -1,3 +1,5 @@
local S = minetest.get_translator("mcl_doors")
-- This helper function calls on_place_node callbacks.
local function on_place_node(place_to, newnode,
placer, oldnode, itemstack, pointed_thing)
@ -66,26 +68,35 @@ function mcl_doors:register_door(name, def)
def.selection_box_top = box
end
local longdesc, usagehelp
local longdesc, usagehelp, tt_help
tt_help = def._tt_help
longdesc = def._doc_items_longdesc
if not longdesc then
if def.only_redstone_can_open then
longdesc = "This door is a 2-block high barrier which can be opened or closed by hand or by redstone power."
longdesc = S("This door is a 2-block high barrier which can be opened or closed by hand or by redstone power.")
else
longdesc = "This door is a 2-block high barrier which can only be opened by redstone power, not by hand."
longdesc = S("This door is a 2-block high barrier which can only be opened by redstone power, not by hand.")
end
end
usagehelp = def._doc_items_usagehelp
if not usagehelp then
if def.only_redstone_can_open then
usagehelp = "To open or close this door, send a redstone signal to its bottom half."
usagehelp = S("To open or close this door, send a redstone signal to its bottom half.")
else
usagehelp = "To open or close this door, rightclick it or send a redstone signal to its bottom half."
usagehelp = S("To open or close this door, rightclick it or send a redstone signal to its bottom half.")
end
end
if not tt_help then
if def.only_redstone_can_open then
tt_help = S("Opened or closed by redstone power")
else
tt_help = S("Use to open or close")
end
end
minetest.register_craftitem(name, {
description = def.description,
_tt_help = tt_help,
_doc_items_longdesc = longdesc,
_doc_items_usagehelp = usagehelp,
inventory_image = def.inventory_image,

View File

@ -1,3 +1,5 @@
local S = minetest.get_translator("mcl_doors")
-- Wrapper around mintest.pointed_thing_to_face_pos.
local function get_fpos(placer, pointed_thing)
local fpos
@ -83,18 +85,25 @@ function mcl_doors:register_trapdoor(name, def)
end
-- Default help texts
local longdesc, usagehelp
local longdesc, usagehelp, tt_help
longdesc = def._doc_items_longdesc
if not longdesc then
if def.only_redstone_can_open then
longdesc = "Trapdoors are horizontal barriers which can be opened or closed and climbed like a ladder when open. They occupy the upper or lower part of a block, depending on how they have been placed. This trapdoor can only be opened or closed by redstone power."
longdesc = S("Trapdoors are horizontal barriers which can be opened or closed and climbed like a ladder when open. They occupy the upper or lower part of a block, depending on how they have been placed. This trapdoor can only be opened or closed by redstone power.")
else
longdesc = "Trapdoors are horizontal barriers which can be opened or closed and climbed like a ladder when open. They occupy the upper or lower part of a block, depending on how they have been placed. This trapdoor can be opened or closed by hand or redstone power."
longdesc = S("Trapdoors are horizontal barriers which can be opened or closed and climbed like a ladder when open. They occupy the upper or lower part of a block, depending on how they have been placed. This trapdoor can be opened or closed by hand or redstone power.")
end
end
usagehelp = def._doc_items_usagehelp
if not usagehelp and not def.only_redstone_can_open then
usagehelp = "To open or close this trapdoor, rightclick it or send a redstone signal to it."
usagehelp = S("To open or close this trapdoor, rightclick it or send a redstone signal to it.")
end
if not tt_help then
if def.only_redstone_can_open then
tt_help = S("Opened or closed by redstone power")
else
tt_help = S("Use to opened or close")
end
end
-- Closed trapdoor
@ -116,6 +125,7 @@ function mcl_doors:register_trapdoor(name, def)
groups_closed.deco_block = 1
minetest.register_node(name, {
description = def.description,
_tt_help = tt_help,
_doc_items_longdesc = longdesc,
_doc_items_usagehelp = usagehelp,
drawtype = "nodebox",

View File

@ -74,7 +74,7 @@ minetest.register_entity("mcl_end:ender_eye", {
minetest.register_craftitem("mcl_end:ender_eye", {
description = S("Eye of Ender"),
_tt_help = S("Guides you to an End portal shrine"),
_tt_help = S("Guides you to the End dimension"),
_doc_items_longdesc = S("This item is used to locate End portal shrines in the Overworld and to activate End portals.") .. "\n" .. S("NOTE: The End dimension is currently incomplete and might change in future versions."),
_doc_items_usagehelp = S("Use the attack key to release the eye of ender. It will rise and fly in the horizontal direction of the closest end portal shrine. If you're very close, the eye of ender will take the direct path to the End portal shrine instead. After a few seconds, it stops. It may drop as an item, but there's a 20% chance it shatters.") .. "\n" .. S("To activate an End portal, eyes of ender need to be placed into each block of an intact End portal frame."),
wield_image = "mcl_end_ender_eye.png",

View File

@ -118,6 +118,7 @@ minetest.register_craftitem("mcl_farming:potato_item_baked", {
minetest.register_craftitem("mcl_farming:potato_item_poison", {
description = S("Poisonous Potato"),
_tt_help = S("60% chance of poisoning"),
_doc_items_longdesc = S("This potato doesn't look too healthy. You can eat it to restore hunger points, but there's a 60% chance it will poison you briefly."),
stack_max = 64,
inventory_image = "farming_potato_poison.png",

View File

@ -174,6 +174,7 @@ mcl_fences.register_fence_gate = function(id, fence_gate_name, texture, groups,
cgroups_closed.mesecon_effector_off = nil
minetest.register_node(gate_id, {
description = fence_gate_name,
_tt_help = S("Use to open or close"),
_doc_items_longdesc = S("Fence gates can be opened or closed and can't be jumped over. Fences will connect nicely to fence gates."),
_doc_items_usagehelp = S("Right-click the fence gate to open or close it."),
tiles = {texture},
@ -306,7 +307,7 @@ minetest.register_craft({
burntime = 15,
})
local time_to_load= os.clock() - init
print(string.format("[MOD] "..minetest.get_current_modname().." loaded in %.4f s", time_to_load))
local time_to_load = os.clock() - init
minetest.log("action", string.format("[MOD] "..minetest.get_current_modname().." loaded in %.4f s", time_to_load))

View File

@ -418,6 +418,7 @@ minetest.register_craftitem("mcl_fishing:clownfish_raw", {
-- TODO: Add real status effect
minetest.register_craftitem("mcl_fishing:pufferfish_raw", {
description = S("Pufferfish"),
_tt_help = S("Very poisonous"),
_doc_items_longdesc = S("Pufferfish are a common species of fish and can be obtained by fishing. They can technically be eaten, but they are very bad for humans. Eating a pufferfish only restores 1 hunger point and will poison you very badly (which drains your health non-fatally) and causes serious food poisoning (which increases your hunger)."),
inventory_image = "mcl_fishing_pufferfish_raw.png",
on_place = minetest.item_eat(1),

View File

@ -4,6 +4,7 @@ local S = minetest.get_translator("mcl_mobitems")
minetest.register_craftitem("mcl_mobitems:rotten_flesh", {
description = S("Rotten Flesh"),
_tt_help = S("80% chance of food poisoning"),
_doc_items_longdesc = S("Yuck! This piece of flesh clearly has seen better days. If you're really desperate, you can eat it to restore a few hunger points, but there's a 80% chance it causes food poisoning, which increases your hunger for a while."),
inventory_image = "mcl_mobitems_rotten_flesh.png",
wield_image = "mcl_mobitems_rotten_flesh.png",
@ -64,6 +65,7 @@ minetest.register_craftitem("mcl_mobitems:cooked_beef", {
minetest.register_craftitem("mcl_mobitems:chicken", {
description = S("Raw Chicken"),
_tt_help = S("30% chance of food poisoning"),
_doc_items_longdesc = S("Raw chicken is a food item which is not safe to consume. You can eat it to restore a few hunger points, but there's a 30% chance to suffer from food poisoning, which increases your hunger rate for a while. Cooking raw chicken will make it safe to eat and increases its nutritional value."),
inventory_image = "mcl_mobitems_chicken_raw.png",
wield_image = "mcl_mobitems_chicken_raw.png",
@ -160,6 +162,7 @@ minetest.register_craftitem("mcl_mobitems:milk_bucket", {
minetest.register_craftitem("mcl_mobitems:spider_eye", {
description = S("Spider Eye"),
_tt_help = S("Poisonous"),
_doc_items_longdesc = S("Spider eyes are used mainly in crafting. If you're really desperate, you can eat a spider eye, but it will poison you briefly."),
inventory_image = "mcl_mobitems_spider_eye.png",
wield_image = "mcl_mobitems_spider_eye.png",

View File

@ -78,7 +78,7 @@ for c=1, #corals do
local doc_desc_fan = S("Corals fans grow on top of coral blocks and need to be inside a water source to survive. Without water, it will die off, as well as the coral block below.")
local tt_block = S("Needs water to live")
local tt_coral_dead = S("Grows on coral block of same species")
local tt_coral = tt_coral_dead .. S("Needs water to live")
local tt_coral = tt_coral_dead .. "\n" .. S("Needs water to live")
-- Coral Block
minetest.register_node("mcl_ocean:"..id.."_coral_block", {

View File

@ -132,6 +132,7 @@ end
minetest.register_craftitem("mcl_ocean:kelp", {
description = S("Kelp"),
_tt_help = S("Grows in water on dirt, sand, gravel"),
_doc_items_create_entry = false,
inventory_image = "mcl_ocean_kelp_item.png",
wield_image = "mcl_ocean_kelp_item.png",
@ -155,7 +156,6 @@ for s=1, #surfaces do
local tt_help, doc_longdesc, doc_img, desc
if surfaces[s][1] == "dirt" then
doc_longdesc = S("Kelp grows inside water on top of dirt, sand or gravel.")
tt_help = S("Grows in water on dirt, sand, gravel")
desc = S("Kelp")
doc_create = true
doc_img = "mcl_ocean_kelp_item.png"
@ -163,7 +163,6 @@ for s=1, #surfaces do
doc_create = false
end
minetest.register_node("mcl_ocean:kelp_"..surfaces[s][1], {
_tt_help = tt_help,
_doc_items_entry_name = desc,
_doc_items_longdesc = doc_longdesc,
_doc_items_create_entry = doc_create,

View File

@ -72,7 +72,7 @@ for s=1,4 do
desc = S("Sea Pickle")
doc_desc = S("Sea pickles grow on dead brain coral blocks and provide light when underwater. They come in 4 sizes that vary in brightness.")
doc_use = S("It can only be placed on top of dead brain coral blocks. Placing a sea pickle on another sea pickle will make it grow and brighter.")
tt_help = S("Glows when underwater").."\n"..S("4 possible sizes").."\n"..S("Grows on dead brain coral block")
tt_help = S("Glows in the water").."\n"..S("4 possible sizes").."\n"..S("Grows on dead brain coral block")
img = "mcl_ocean_sea_pickle_item.png"
on_place = sea_pickle_on_place
else

View File

@ -79,6 +79,7 @@ end
minetest.register_craftitem("mcl_ocean:seagrass", {
description = S("Seagrass"),
_tt_help = S("Grows in water on dirt, sand, gravel"),
_doc_items_create_entry = false,
inventory_image = "mcl_ocean_seagrass.png^[verticalframe:12:0",
wield_image = "mcl_ocean_seagrass.png^[verticalframe:12:0",
@ -99,10 +100,9 @@ for s=1, #surfaces do
sounds.dig = leaf_sounds.dig
sounds.dug = leaf_sounds.dug
sounds.place = leaf_sounds.place
local tt_help, doc_longdesc, doc_img, desc
local doc_longdesc, doc_img, desc
if surfaces[s][1] == "dirt" then
doc_longdesc = S("Seagrass grows inside water on top of dirt, sand or gravel.")
tt_help = S("Grows in water on dirt, sand, gravel")
desc = S("Seagrass")
doc_create = true
doc_img = "mcl_ocean_seagrass.png"
@ -110,7 +110,6 @@ for s=1, #surfaces do
doc_create = false
end
minetest.register_node("mcl_ocean:seagrass_"..surfaces[s][1], {
_tt_help = tt_help,
_doc_items_entry_name = desc,
_doc_items_longdesc = doc_longdesc,
_doc_items_create_entry = doc_create,

View File

@ -335,6 +335,7 @@ minetest.register_node("mcl_portals:end_portal_frame", {
minetest.register_node("mcl_portals:end_portal_frame_eye", {
description = S("End Portal Frame with Eye of Ender"),
_tt_help = S("Used to construct end portals"),
_doc_items_create_entry = false,
groups = { creative_breakable = 1, deco_block = 1, comparator_signal = 15, end_portal_frame = 2 },
tiles = { "mcl_portals_endframe_top.png^[lowpart:75:mcl_portals_endframe_eye.png", "mcl_portals_endframe_bottom.png", "mcl_portals_endframe_eye.png^mcl_portals_endframe_side.png" },