Undo translating some really dangerous stuff that crashes the server.

Tooltips likely need formspec escapes or something else. Revert this
to try and avoid crashing the server.
This commit is contained in:
Auke Kok 2019-09-12 15:49:23 -07:00
parent 7ed72218e0
commit 0dbff53e74

View File

@ -305,15 +305,15 @@ local function mech_connect(itemstack, placer, pointed_thing, rightclick)
m2:set_string("roffsets", minetest.serialize(roffsets))
m2:mark_as_private("roffsets")
minetest.chat_send_player(placer:get_player_name(), S("Connection removed from \"@1\" at @2.",
minetest.get_node(pos2).name,
minetest.pos_to_string(pos2)))
minetest.chat_send_player(placer:get_player_name(), S("Connection removed from \"@1\" at ",
minetest.get_node(pos2).name) ..
minetest.pos_to_string(pos2) .. ".")
minetest.sound_play("button_untrigger", {pos = pointed_thing.under})
else
if mech.link(pos1, pos2) then
minetest.chat_send_player(placer:get_player_name(), S("Connection completed with \"@1\" at @2.",
minetest.get_node(pos2).name,
minetest.pos_to_string(pos2)))
minetest.chat_send_player(placer:get_player_name(), S("Connection completed with \"@1\" at ",
minetest.get_node(pos2).name) ..
minetest.pos_to_string(pos2) .. ".")
minetest.sound_play("button_untrigger", {pos = pointed_thing.under})
else
minetest.chat_send_player(placer:get_player_name(), S("Connection failed. Too many connections."))
@ -321,17 +321,18 @@ local function mech_connect(itemstack, placer, pointed_thing, rightclick)
end
else -- left click
itemstack:set_metadata(hash_vector(pointed_thing.under))
minetest.chat_send_player(placer:get_player_name(), S("Connection started with \"@1\" at @2.",
minetest.get_node(pointed_thing.under).name,
minetest.pos_to_string(pointed_thing.under)))
minetest.chat_send_player(placer:get_player_name(), S("Connection started with \"@1\" at ",
minetest.get_node(pointed_thing.under).name) ..
minetest.pos_to_string(pointed_thing.under) .. ".")
minetest.sound_play("button_trigger", {pos = pointed_thing.under})
local meta = itemstack:get_meta()
meta:set_string("description", S("Connector tool").."\n" ..
S("Right-click creates a connection from \"@1\" at @2", minetest.get_node(pointed_thing.under).name,
minetest.pos_to_string(pointed_thing.under)) .. "\n" ..
S("Right click + Shift to remove the connection from \"@1\" at @2",
minetest.get_node(pointed_thing.under).name,
minetest.pos_to_string(pointed_thing.under)))
S("Right-click creates a connection from \"@1\" at ",
minetest.get_node(pointed_thing.under).name) ..
minetest.pos_to_string(pointed_thing.under) .. "\n" ..
S("Right click + Shift to remove the connection from \"@1\" at ",
minetest.get_node(pointed_thing.under).name) ..
minetest.pos_to_string(pointed_thing.under) .. ".")
end
return itemstack
end
@ -1022,8 +1023,8 @@ minetest.register_node("mech:node_detector", {
s = s .. ", " .. k
end
end
minetest.chat_send_player(user:get_player_name(), S("This detector will detect: @1", s))
meta:set_string("description", S("Detector node").."\n"..S("Detects: @1", s))
minetest.chat_send_player(user:get_player_name(), S("This detector will detect: ") .. s)
meta:set_string("description", S("Detector node").."\n"..S("Detects: ") .. s)
return itemstack
end,
on_place = function(itemstack, placer, pointed_thing)
@ -1109,7 +1110,7 @@ minetest.register_node("mech:node_detector", {
for k, _ in pairs(nodes) do
local def = minetest.registered_nodes[k]
minetest.chat_send_player(name, minetest.colorize(
"#88ff44", S("> Detects @1", def.description:gsub("\n.*", ""))))
"#88ff44", S("> Detects ") .. def.description:gsub("\n.*", "")))
end
else
minetest.chat_send_player(name, minetest.colorize(
@ -1118,7 +1119,7 @@ minetest.register_node("mech:node_detector", {
local dist = meta:get_int("distance") or 0
minetest.chat_send_player(name, minetest.colorize(
"#4444ff", S("> distance = @1", dist)
"#4444ff", "> distance = " ..dist
))
end,
})
@ -1164,15 +1165,15 @@ minetest.register_node("mech:node_creator", {
t = {fields = { ["placeable"] = minetest.write_json({[node.name] = true})}, inventory = {}}
minetest.chat_send_player(user:get_player_name(), S("This creator node will place: a placeholder for @1", node.name))
meta:set_string("description", S("Creator node").."\n"..S("Creates: a placeholder for @1", node.name))
meta:set_string("description", S("Creator node").."\n"..S("Creates: a placeholder for ") ..node.name)
else
local ofp = minetest.parse_json(ot.fields.placeable)
ofp[node.name] = true
t = {fields = { ["placeable"] = minetest.write_json(ofp)}, inventory = {}}
local odesc = meta:get_string("description")
minetest.chat_send_player(user:get_player_name(), S("This creator node will also place: a placeholder for @1", node.name))
meta:set_string("description", S("@1, @2", odesc, node.name))
minetest.chat_send_player(user:get_player_name(), S("This creator node will also place: a placeholder for ") ..node.name)
meta:set_string("description", odesc .. ", " .. node.name)
end
meta:set_string("meta", minetest.serialize(t))
return itemstack
@ -1180,8 +1181,8 @@ minetest.register_node("mech:node_creator", {
-- create the node
meta:set_string("node", minetest.serialize(node))
meta:set_string("meta", minetest.serialize(minetest.get_meta(pos):to_table()))
minetest.chat_send_player(user:get_player_name(), S("This creator node will place: @1", node.name))
meta:set_string("description", S("Creator node").."\n"..S("Creates: @1", node.name))
minetest.chat_send_player(user:get_player_name(), S("This creator node will place: ") .. node.name)
meta:set_string("description", S("Creator node").."\n"..S("Creates: ") .. node.name)
return itemstack
end
end,
@ -1289,7 +1290,7 @@ minetest.register_node("mech:node_creator", {
local def = minetest.registered_nodes[n.name]
if def then
minetest.chat_send_player(name, minetest.colorize(
"#88ff44", S("> Creates @1", def.description:gsub("[(\n].*", ""))))
"#88ff44", S("> Creates ") .. def.description:gsub("[(\n].*", "")))
end
else
minetest.chat_send_player(name, minetest.colorize(
@ -1298,7 +1299,7 @@ minetest.register_node("mech:node_creator", {
local dist = meta:get_int("distance") or 0
minetest.chat_send_player(name, minetest.colorize(
"#4444ff", S("> distance = @1", dist)))
"#4444ff", S("> distance ") .. dist))
end,
})