Refactor tt snipper color
This commit is contained in:
parent
57c8b310f6
commit
c4b26d120b
|
@ -205,7 +205,7 @@ for a=1, #amendments do
|
|||
desc = get_stat(amendments[a][2], stat, parent, jewel.stats)
|
||||
end
|
||||
if desc ~= nil then
|
||||
desc = minetest.colorize("#4CFFFD", desc)
|
||||
return desc, "#4CFFFD"
|
||||
end
|
||||
|
||||
return desc
|
||||
|
|
|
@ -16,7 +16,9 @@ Once this mod had overwritten the `description` field of an item was overwritten
|
|||
## `tt.register_snippet(func)`
|
||||
|
||||
Register a custom snippet function.
|
||||
`func` is a function of the form `func(itemstring)`. It will be called for (nearly) every itemstring and it must return a string you want to append to this item or `nil` if nothing shall be appended.
|
||||
`func` is a function of the form `func(itemstring)`.
|
||||
It will be called for (nearly) every itemstring and it must return a string you want to append to this item or `nil` if nothing shall be appended.
|
||||
You can optionally return the text color in `"#RRGGBB"` format as the second return value.
|
||||
|
||||
Example:
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
local S = minetest.get_translator("tt")
|
||||
local color = "#d0ffd0"
|
||||
local color_danger = "#ffff00"
|
||||
local color_good = "#00ff00"
|
||||
local COLOR_DEFAULT = "#d0ffd0"
|
||||
local COLOR_DANGER = "#ffff00"
|
||||
local COLOR_GOOD = "#00ff00"
|
||||
|
||||
tt = {}
|
||||
tt.registered_snippets = {}
|
||||
|
@ -13,7 +13,7 @@ local function append_descs()
|
|||
local orig_desc = desc
|
||||
-- Custom text
|
||||
if def._tt_help then
|
||||
desc = desc .. "\n" .. minetest.colorize(color, def._tt_help)
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DEFAULT, def._tt_help)
|
||||
end
|
||||
-- Tool info
|
||||
if def.tool_capabilities then
|
||||
|
@ -24,30 +24,30 @@ local function append_descs()
|
|||
--for group, caps in pairs(def.tool_capabilities.groupcaps) do
|
||||
-- table.insert(groups, group)
|
||||
--end
|
||||
--desc = desc .. "\n" .. minetest.colorize(color, S("Digs: @1", table.concat(groups, ", ")))
|
||||
--desc = desc .. "\n" .. minetest.colorize(COLOR_DEFAULT, S("Digs: @1", table.concat(groups, ", ")))
|
||||
end
|
||||
-- Weapon stats
|
||||
if def.tool_capabilities.damage_groups then
|
||||
for group, damage in pairs(def.tool_capabilities.damage_groups) do
|
||||
if group == "fleshy" then
|
||||
desc = desc .. "\n" .. minetest.colorize(color, S("Damage: @1", damage))
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DEFAULT, S("Damage: @1", damage))
|
||||
else
|
||||
desc = desc .. "\n" .. minetest.colorize(color, S("Damage (@1): @2", group, damage))
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DEFAULT, S("Damage (@1): @2", group, damage))
|
||||
end
|
||||
end
|
||||
local full_punch_interval = def.tool_capabilities.full_punch_interval
|
||||
if not full_punch_interval then
|
||||
full_punch_interval = 1
|
||||
end
|
||||
desc = desc .. "\n" .. minetest.colorize(color, S("Full punch interval: @1s", full_punch_interval))
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DEFAULT, S("Full punch interval: @1s", full_punch_interval))
|
||||
end
|
||||
end
|
||||
-- Food
|
||||
if def._tt_food then
|
||||
desc = desc .. "\n" .. minetest.colorize(color, S("Food item"))
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DEFAULT, S("Food item"))
|
||||
if def._tt_food_hp then
|
||||
msg = S("+@1 food points", def._tt_food_hp)
|
||||
desc = desc .. "\n" .. minetest.colorize(color, msg)
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DEFAULT, msg)
|
||||
end
|
||||
-- NOTE: This is unused atm
|
||||
--[[if def._tt_food_satiation then
|
||||
|
@ -56,59 +56,62 @@ local function append_descs()
|
|||
else
|
||||
msg = S("@1 satiation", def._tt_food_satiation)
|
||||
end
|
||||
desc = desc .. "\n" .. minetest.colorize(color, msg)
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DEFAULT, msg)
|
||||
end]]
|
||||
end
|
||||
-- Node info
|
||||
-- Damage-related
|
||||
do
|
||||
if def.damage_per_second and def.damage_per_second > 0 then
|
||||
desc = desc .. "\n" .. minetest.colorize(color_danger, S("Contact damage: @1 per second", def.damage_per_second))
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DANGER, S("Contact damage: @1 per second", def.damage_per_second))
|
||||
end
|
||||
if def.drowning and def.drowning > 0 then
|
||||
desc = desc .. "\n" .. minetest.colorize(color_danger, S("Drowning damage: @1", def.drowning))
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DANGER, S("Drowning damage: @1", def.drowning))
|
||||
end
|
||||
local tmp = minetest.get_item_group(itemstring, "fall_damage_add_percent")
|
||||
if tmp > 0 then
|
||||
desc = desc .. "\n" .. minetest.colorize(color_danger, S("Fall damage: +@1%", tmp))
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DANGER, S("Fall damage: +@1%", tmp))
|
||||
elseif tmp == -100 then
|
||||
desc = desc .. "\n" .. minetest.colorize(color_good, S("No fall damage"))
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_GOOD, S("No fall damage"))
|
||||
elseif tmp < 0 then
|
||||
desc = desc .. "\n" .. minetest.colorize(color, S("Fall damage: @1%", tmp))
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DEFAULT, S("Fall damage: @1%", tmp))
|
||||
end
|
||||
end
|
||||
-- Movement-related node facts
|
||||
if minetest.get_item_group(itemstring, "disable_jump") == 1 and not def.climbable then
|
||||
if def.liquidtype == "none" then
|
||||
desc = desc .. "\n" .. minetest.colorize(color, S("No jumping"))
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DEFAULT, S("No jumping"))
|
||||
else
|
||||
desc = desc .. "\n" .. minetest.colorize(color, S("No swimming upwards"))
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DEFAULT, S("No swimming upwards"))
|
||||
end
|
||||
end
|
||||
if def.climbable then
|
||||
if minetest.get_item_group(itemstring, "disable_jump") == 1 then
|
||||
desc = desc .. "\n" .. minetest.colorize(color, S("Climbable (only downwards)"))
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DEFAULT, S("Climbable (only downwards)"))
|
||||
else
|
||||
desc = desc .. "\n" .. minetest.colorize(color, S("Climbable"))
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DEFAULT, S("Climbable"))
|
||||
end
|
||||
end
|
||||
if minetest.get_item_group(itemstring, "slippery") >= 1 then
|
||||
desc = desc .. "\n" .. minetest.colorize(color, S("Slippery"))
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DEFAULT, S("Slippery"))
|
||||
end
|
||||
tmp = minetest.get_item_group(itemstring, "bouncy")
|
||||
if tmp >= 1 then
|
||||
desc = desc .. "\n" .. minetest.colorize(color, S("Bouncy (@1%)", tmp))
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DEFAULT, S("Bouncy (@1%)", tmp))
|
||||
end
|
||||
-- Node appearance
|
||||
tmp = def.light_source
|
||||
if tmp and tmp >= 1 then
|
||||
desc = desc .. "\n" .. minetest.colorize(color, S("Luminance: @1", tmp))
|
||||
desc = desc .. "\n" .. minetest.colorize(COLOR_DEFAULT, S("Luminance: @1", tmp))
|
||||
end
|
||||
-- Custom functions
|
||||
for s=1, #tt.registered_snippets do
|
||||
local str = tt.registered_snippets[s](itemstring)
|
||||
local str, snippet_color = tt.registered_snippets[s](itemstring)
|
||||
if not snippet_color then
|
||||
snippet_color = COLOR_DEFAULT
|
||||
end
|
||||
if str then
|
||||
desc = desc .. "\n" .. minetest.colorize(color, str)
|
||||
desc = desc .. "\n" .. minetest.colorize(snippet_color, str)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in New Issue