Make compatible with invisibility mod...
https://content.minetest.net/packages/TenPlus1/invisibility/master
parent
80195385a3
commit
37584b0d46
1
TODO.txt
1
TODO.txt
|
@ -1,3 +1,2 @@
|
|||
|
||||
TODO:
|
||||
- make compatible with "invisible" mod /vanish command & "invisibility" mod
|
||||
|
|
27
api.lua
27
api.lua
|
@ -14,15 +14,25 @@
|
|||
local S = core.get_translator(hidename.modname)
|
||||
|
||||
|
||||
-- compatibility with "invisibility" mod
|
||||
local invisibility = invisibility
|
||||
|
||||
|
||||
--- Checks if player's nametag is hidden.
|
||||
--
|
||||
-- @tparam table nametag_data Nametag data retrieved by *player:get_nametag_attributes()*.
|
||||
-- @tparam[opt] string pname Player name.
|
||||
-- @treturn bool `true` if player's nametag is hidden
|
||||
function hidename.hidden(nametag_data)
|
||||
function hidename.hidden(nametag_data, pname)
|
||||
if hidename.use_alpha then
|
||||
return nametag_data.color.a == 0
|
||||
end
|
||||
|
||||
-- check "invisibility" mod
|
||||
if invisibility and invisibility[pname] then
|
||||
return true
|
||||
end
|
||||
|
||||
if nametag_data.text then
|
||||
return nametag_data.text:len() > 0 and nametag_data.text:trim() == ""
|
||||
end
|
||||
|
@ -39,7 +49,7 @@ function hidename.tellStatus(name)
|
|||
local nametag = player:get_nametag_attributes()
|
||||
|
||||
local status = "Status: @1"
|
||||
if hidename.hidden(nametag) then
|
||||
if hidename.hidden(nametag, name) then
|
||||
status = S(status, S("hidden"))
|
||||
else
|
||||
status = S(status, S("visible"))
|
||||
|
@ -66,7 +76,7 @@ function hidename.hide(name)
|
|||
local player = core.get_player_by_name(name)
|
||||
local nametag = player:get_nametag_attributes()
|
||||
|
||||
if hidename.hidden(nametag) then
|
||||
if hidename.hidden(nametag, name) then
|
||||
core.chat_send_player(name, S("Nametag is already hidden"))
|
||||
return true
|
||||
end
|
||||
|
@ -93,7 +103,7 @@ function hidename.hide(name)
|
|||
player:set_nametag_attributes(nametag)
|
||||
end
|
||||
|
||||
if hidename.hidden(player:get_nametag_attributes()) then
|
||||
if hidename.hidden(player:get_nametag_attributes(), name) then
|
||||
core.chat_send_player(name, S("Nametag is now hidden"))
|
||||
else
|
||||
core.chat_send_player(name, S("ERROR: Could not hide nametag"))
|
||||
|
@ -108,10 +118,15 @@ end
|
|||
-- @tparam string name Name of player whose nametag should be made visible
|
||||
-- @treturn bool `true` if player's nametag is visible
|
||||
function hidename.show(name)
|
||||
if invisibility and invisibility[name] then
|
||||
core.chat_send_player(name, S("Cannot make nametag visible while you are invisible"))
|
||||
return false
|
||||
end
|
||||
|
||||
local player = core.get_player_by_name(name)
|
||||
local nametag = player:get_nametag_attributes()
|
||||
|
||||
if not hidename.hidden(nametag) then
|
||||
if not hidename.hidden(nametag, name) then
|
||||
core.chat_send_player(name, S("Nametag is already visible"))
|
||||
return true
|
||||
end
|
||||
|
@ -139,7 +154,7 @@ function hidename.show(name)
|
|||
pmeta:set_string("nametag_stored_bgcolor", nil)
|
||||
end
|
||||
|
||||
if not hidename.hidden(player:get_nametag_attributes()) then
|
||||
if not hidename.hidden(player:get_nametag_attributes(), name) then
|
||||
core.chat_send_player(name, S("Nametag is now visible"))
|
||||
else
|
||||
core.chat_send_player(name, S("ERROR: Could not show nametag"))
|
||||
|
|
|
@ -4,6 +4,7 @@ next
|
|||
- added missing "textdomain" line to localization template
|
||||
- added Spanish translation
|
||||
- fixed status not retrieving custom nametag text when hidden
|
||||
- compatible with invisibility mod ( https://content.minetest.net/packages/TenPlus1/invisibility/ )
|
||||
|
||||
|
||||
v1.1
|
||||
|
|
|
@ -15,6 +15,7 @@ Make nametag visible=Hacer visible nombre
|
|||
Get nametag info or set visibility=Obtener el estado de placa de nombre o establecer visibilidad
|
||||
Parameter options:=Opciones de parámetro:
|
||||
Display nametag text & visible state (default)=Mostrar texto del nombre y estado de visibilidad (defecto)
|
||||
Cannot make nametag visible while you are invisible=No se puede hacer visible nombre mientras estés invisible
|
||||
|
||||
ERROR: Unknown parameter: @1=ERROR: Parámetro desconocido: @1
|
||||
ERROR: Could not hide nametag=ERROR: No se pudo esconder nombre
|
||||
|
|
|
@ -16,6 +16,7 @@ Make nametag visible=
|
|||
Get nametag info or set visibility=
|
||||
Parameter options:=
|
||||
Display nametag text & visible state (default)=
|
||||
Cannot make nametag visible while you are invisible=
|
||||
|
||||
ERROR: Unknown parameter: @1=
|
||||
ERROR: Could not hide nametag=
|
||||
|
|
Loading…
Reference in New Issue