mirror of
https://github.com/luanti-org/minetest_game.git
synced 2025-05-21 14:53:16 -04:00
Merge branch 'master' into patch-1
This commit is contained in:
commit
76fe46f3d9
79 changed files with 979 additions and 316 deletions
|
@ -20,5 +20,8 @@ read_globals = {
|
||||||
-- Overwrites minetest.handle_node_drops
|
-- Overwrites minetest.handle_node_drops
|
||||||
files["mods/creative/init.lua"].globals = { "minetest" }
|
files["mods/creative/init.lua"].globals = { "minetest" }
|
||||||
|
|
||||||
|
-- Overwrites minetest.calculate_knockback
|
||||||
|
files["mods/player_api/api.lua"].globals = { "minetest" }
|
||||||
|
|
||||||
-- Don't report on legacy definitions of globals.
|
-- Don't report on legacy definitions of globals.
|
||||||
files["mods/default/legacy.lua"].global = false
|
files["mods/default/legacy.lua"].global = false
|
||||||
|
|
10
game_api.txt
10
game_api.txt
|
@ -424,7 +424,7 @@ Give Initial Stuff API
|
||||||
Players API
|
Players API
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
The player API can register player models and update the player's appearence
|
The player API can register player models and update the player's appearance.
|
||||||
|
|
||||||
* `player_api.register_model(name, def)`
|
* `player_api.register_model(name, def)`
|
||||||
* Register a new model to be used by players
|
* Register a new model to be used by players
|
||||||
|
@ -457,6 +457,12 @@ The player API can register player models and update the player's appearence
|
||||||
* Any of the fields of the returned table may be nil.
|
* Any of the fields of the returned table may be nil.
|
||||||
* player: PlayerRef
|
* player: PlayerRef
|
||||||
|
|
||||||
|
* `player_api.player_attached`
|
||||||
|
* A table that maps a player name to a boolean.
|
||||||
|
* If the value for a given player is set to true, the default player
|
||||||
|
animations (walking, digging, ...) will no longer be updated.
|
||||||
|
Knockback from damage is also prevented for that player.
|
||||||
|
|
||||||
### Model Definition
|
### Model Definition
|
||||||
|
|
||||||
{
|
{
|
||||||
|
@ -467,7 +473,7 @@ The player API can register player models and update the player's appearence
|
||||||
-- <anim_name> = {x = <start_frame>, y = <end_frame>},
|
-- <anim_name> = {x = <start_frame>, y = <end_frame>},
|
||||||
foo = {x = 0, y = 19},
|
foo = {x = 0, y = 19},
|
||||||
bar = {x = 20, y = 39},
|
bar = {x = 20, y = 39},
|
||||||
-- ...
|
-- ...
|
||||||
},
|
},
|
||||||
collisionbox = {-0.3, 0.0, -0.3, 0.3, 1.7, 0.3}, -- In nodes from feet position
|
collisionbox = {-0.3, 0.0, -0.3, 0.3, 1.7, 0.3}, -- In nodes from feet position
|
||||||
stepheight = 0.6, -- In nodes
|
stepheight = 0.6, -- In nodes
|
||||||
|
|
|
@ -79,10 +79,10 @@ beds.register_bed("beds:bed", {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
nodebox = {
|
nodebox = {
|
||||||
bottom = {-0.5, -0.5, -0.5, 0.5, 0.06, 0.5},
|
bottom = {-0.5, -0.5, -0.5, 0.5, 0.0625, 0.5},
|
||||||
top = {-0.5, -0.5, -0.5, 0.5, 0.06, 0.5},
|
top = {-0.5, -0.5, -0.5, 0.5, 0.0625, 0.5},
|
||||||
},
|
},
|
||||||
selectionbox = {-0.5, -0.5, -0.5, 0.5, 0.06, 1.5},
|
selectionbox = {-0.5, -0.5, -0.5, 0.5, 0.0625, 1.5},
|
||||||
recipe = {
|
recipe = {
|
||||||
{"wool:white", "wool:white", "wool:white"},
|
{"wool:white", "wool:white", "wool:white"},
|
||||||
{"group:wood", "group:wood", "group:wood"}
|
{"group:wood", "group:wood", "group:wood"}
|
||||||
|
|
|
@ -90,7 +90,13 @@ local function lay_down(player, pos, bed_pos, state, skip)
|
||||||
local yaw, param2 = get_look_yaw(bed_pos)
|
local yaw, param2 = get_look_yaw(bed_pos)
|
||||||
player:set_look_horizontal(yaw)
|
player:set_look_horizontal(yaw)
|
||||||
local dir = minetest.facedir_to_dir(param2)
|
local dir = minetest.facedir_to_dir(param2)
|
||||||
local p = {x = bed_pos.x + dir.x / 2, y = bed_pos.y, z = bed_pos.z + dir.z / 2}
|
-- p.y is just above the nodebox height of the 'Simple Bed' (the highest bed),
|
||||||
|
-- to avoid sinking down through the bed.
|
||||||
|
local p = {
|
||||||
|
x = bed_pos.x + dir.x / 2,
|
||||||
|
y = bed_pos.y + 0.07,
|
||||||
|
z = bed_pos.z + dir.z / 2
|
||||||
|
}
|
||||||
player:set_physics_override(0, 0, 0)
|
player:set_physics_override(0, 0, 0)
|
||||||
player:set_pos(p)
|
player:set_pos(p)
|
||||||
default.player_attached[name] = true
|
default.player_attached[name] = true
|
||||||
|
|
9
mods/beds/locale/beds.zh_TW.tr
Normal file
9
mods/beds/locale/beds.zh_TW.tr
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
# textdomain: beds
|
||||||
|
Fancy Bed=花式床
|
||||||
|
Simple Bed=簡易床
|
||||||
|
Leave Bed=離開床
|
||||||
|
Good morning.=早安!
|
||||||
|
@1 of @2 players are in bed=@2位玩家中的@1位在床上
|
||||||
|
Force night skip=強制跳過夜晚
|
||||||
|
You can only sleep at night.=你只能在晚上睡覺。
|
||||||
|
|
3
mods/binoculars/locale/binoculars.zh_TW.tr
Normal file
3
mods/binoculars/locale/binoculars.zh_TW.tr
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
# textdomain: binoculars
|
||||||
|
Binoculars=望遠鏡
|
||||||
|
Use with 'Zoom' key=與“縮放”鍵一起使用
|
|
@ -1,4 +1,4 @@
|
||||||
# textdomain: boats
|
# textdomain: boats
|
||||||
Boat cruise mode on=船巡航模式开
|
Boat cruise mode on=巡航模式开启
|
||||||
Boat cruise mode off=船巡航模式关
|
Boat cruise mode off=巡航模式关闭
|
||||||
Boat=船
|
Boat=船
|
||||||
|
|
4
mods/boats/locale/boats.zh_TW.tr
Normal file
4
mods/boats/locale/boats.zh_TW.tr
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
# textdomain: boats
|
||||||
|
Boat cruise mode on=巡航模式開啟
|
||||||
|
Boat cruise mode off=巡航模式關閉
|
||||||
|
Boat=船
|
8
mods/bones/locale/bones.zh_TW.tr
Normal file
8
mods/bones/locale/bones.zh_TW.tr
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
# textdomain: bones
|
||||||
|
Bones=骨骸
|
||||||
|
@1's old bones=@1的舊骨骸
|
||||||
|
@1 died at @2.=@1在@2死亡。
|
||||||
|
@1 died at @2, and dropped their inventory.=@1在@2死亡,丟掉了物品欄。
|
||||||
|
@1 died at @2, and bones were placed.=@1在@2死亡,骨骸被放置。
|
||||||
|
@1's fresh bones=@1的新鮮骨骸
|
||||||
|
@1's bones=@1的骨骸
|
|
@ -225,3 +225,16 @@ minetest.register_craft({
|
||||||
replacements = {{"bucket:bucket_lava", "bucket:bucket_empty"}},
|
replacements = {{"bucket:bucket_lava", "bucket:bucket_empty"}},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
-- Register buckets as dungeon loot
|
||||||
|
if minetest.global_exists("dungeon_loot") then
|
||||||
|
dungeon_loot.register({
|
||||||
|
{name = "bucket:bucket_empty", chance = 0.55},
|
||||||
|
-- water in deserts/ice or above ground, lava otherwise
|
||||||
|
{name = "bucket:bucket_water", chance = 0.45,
|
||||||
|
types = {"sandstone", "desert", "ice"}},
|
||||||
|
{name = "bucket:bucket_water", chance = 0.45, y = {0, 32768},
|
||||||
|
types = {"normal"}},
|
||||||
|
{name = "bucket:bucket_lava", chance = 0.45, y = {-32768, -1},
|
||||||
|
types = {"normal"}},
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
|
@ -2,4 +2,4 @@
|
||||||
Empty Bucket=空桶
|
Empty Bucket=空桶
|
||||||
Water Bucket=水桶
|
Water Bucket=水桶
|
||||||
River Water Bucket=河水桶
|
River Water Bucket=河水桶
|
||||||
Lava Bucket=熔岩桶
|
Lava Bucket=岩浆桶
|
||||||
|
|
5
mods/bucket/locale/bucket.zh_TW.tr
Normal file
5
mods/bucket/locale/bucket.zh_TW.tr
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
# textdomain: bucket
|
||||||
|
Empty Bucket=空桶
|
||||||
|
Water Bucket=水桶
|
||||||
|
River Water Bucket=河水桶
|
||||||
|
Lava Bucket=岩漿桶
|
|
@ -1,3 +1,4 @@
|
||||||
name = bucket
|
name = bucket
|
||||||
description = Minetest Game mod: bucket
|
description = Minetest Game mod: bucket
|
||||||
depends = default
|
depends = default
|
||||||
|
optional_depends = dungeon_loot
|
||||||
|
|
4
mods/butterflies/locale/butterflies.zh_TW.tr
Normal file
4
mods/butterflies/locale/butterflies.zh_TW.tr
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
# textdomain: butterflies
|
||||||
|
White Butterfly=白蝴蝶
|
||||||
|
Red Butterfly=紅蝴蝶
|
||||||
|
Violet Butterfly=紫蝴蝶
|
|
@ -414,7 +414,7 @@ minetest.register_craftitem("carts:cart", {
|
||||||
end
|
end
|
||||||
|
|
||||||
minetest.sound_play({name = "default_place_node_metal", gain = 0.5},
|
minetest.sound_play({name = "default_place_node_metal", gain = 0.5},
|
||||||
{pos = pointed_thing.above})
|
{pos = pointed_thing.above}, true)
|
||||||
|
|
||||||
if not (creative and creative.is_enabled_for
|
if not (creative and creative.is_enabled_for
|
||||||
and creative.is_enabled_for(placer:get_player_name())) then
|
and creative.is_enabled_for(placer:get_player_name())) then
|
||||||
|
|
|
@ -19,3 +19,10 @@ carts.path_distance_max = 3
|
||||||
dofile(carts.modpath.."/functions.lua")
|
dofile(carts.modpath.."/functions.lua")
|
||||||
dofile(carts.modpath.."/rails.lua")
|
dofile(carts.modpath.."/rails.lua")
|
||||||
dofile(carts.modpath.."/cart_entity.lua")
|
dofile(carts.modpath.."/cart_entity.lua")
|
||||||
|
|
||||||
|
-- Register rails as dungeon loot
|
||||||
|
if minetest.global_exists("dungeon_loot") then
|
||||||
|
dungeon_loot.register({
|
||||||
|
name = "carts:rail", chance = 0.35, count = {1, 6}
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# textdomain: carts
|
# textdomain: carts
|
||||||
Cart=矿车
|
Cart=矿车
|
||||||
(Sneak+Click to pick up)=(潜行+单击以捡起)
|
(Sneak+Click to pick up)=(潜行+单击以捡起)
|
||||||
Rail=铁路
|
Rail=铁轨
|
||||||
Powered Rail=动力铁路
|
Powered Rail=动力铁轨
|
||||||
Brake Rail=制动铁路
|
Brake Rail=制动铁轨
|
||||||
|
|
6
mods/carts/locale/carts.zh_TW.tr
Normal file
6
mods/carts/locale/carts.zh_TW.tr
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
# textdomain: carts
|
||||||
|
Cart=礦車
|
||||||
|
(Sneak+Click to pick up)=(潛行+單擊以撿起)
|
||||||
|
Rail=鐵軌
|
||||||
|
Powered Rail=動力鐵軌
|
||||||
|
Brake Rail=制動鐵軌
|
|
@ -1,3 +1,4 @@
|
||||||
name = carts
|
name = carts
|
||||||
description = Carts (formerly boost_cart)
|
description = Carts (formerly boost_cart)
|
||||||
depends = default, player_api
|
depends = default, player_api
|
||||||
|
optional_depends = dungeon_loot
|
||||||
|
|
|
@ -25,7 +25,9 @@ function creative.init_creative_inventory(player)
|
||||||
player_inventory[player_name] = {
|
player_inventory[player_name] = {
|
||||||
size = 0,
|
size = 0,
|
||||||
filter = "",
|
filter = "",
|
||||||
start_i = 0
|
start_i = 0,
|
||||||
|
old_filter = nil, -- use only for caching in update_creative_inventory
|
||||||
|
old_content = nil
|
||||||
}
|
}
|
||||||
|
|
||||||
minetest.create_detached_inventory("creative_" .. player_name, {
|
minetest.create_detached_inventory("creative_" .. player_name, {
|
||||||
|
@ -74,6 +76,12 @@ function creative.update_creative_inventory(player_name, tab_content)
|
||||||
creative.init_creative_inventory(minetest.get_player_by_name(player_name))
|
creative.init_creative_inventory(minetest.get_player_by_name(player_name))
|
||||||
local player_inv = minetest.get_inventory({type = "detached", name = "creative_" .. player_name})
|
local player_inv = minetest.get_inventory({type = "detached", name = "creative_" .. player_name})
|
||||||
|
|
||||||
|
if inv.filter == inv.old_filter and tab_content == inv.old_content then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
inv.old_filter = inv.filter
|
||||||
|
inv.old_content = tab_content
|
||||||
|
|
||||||
local items = inventory_cache[tab_content] or init_creative_cache(tab_content)
|
local items = inventory_cache[tab_content] or init_creative_cache(tab_content)
|
||||||
|
|
||||||
local creative_list = {}
|
local creative_list = {}
|
||||||
|
@ -119,8 +127,7 @@ function creative.register_tab(name, title, items)
|
||||||
local player_name = player:get_player_name()
|
local player_name = player:get_player_name()
|
||||||
creative.update_creative_inventory(player_name, items)
|
creative.update_creative_inventory(player_name, items)
|
||||||
local inv = player_inventory[player_name]
|
local inv = player_inventory[player_name]
|
||||||
local start_i = inv.start_i or 0
|
local pagenum = math.floor(inv.start_i / (4*8) + 1)
|
||||||
local pagenum = math.floor(start_i / (4*8) + 1)
|
|
||||||
local pagemax = math.ceil(inv.size / (4*8))
|
local pagemax = math.ceil(inv.size / (4*8))
|
||||||
local esc = minetest.formspec_escape
|
local esc = minetest.formspec_escape
|
||||||
return sfinv.make_formspec(player, context,
|
return sfinv.make_formspec(player, context,
|
||||||
|
@ -143,7 +150,7 @@ function creative.register_tab(name, title, items)
|
||||||
"field_close_on_enter[creative_filter;false]" ..
|
"field_close_on_enter[creative_filter;false]" ..
|
||||||
"field[0.3,4.2;2.8,1.2;creative_filter;;" .. esc(inv.filter) .. "]" ..
|
"field[0.3,4.2;2.8,1.2;creative_filter;;" .. esc(inv.filter) .. "]" ..
|
||||||
"listring[detached:creative_" .. player_name .. ";main]" ..
|
"listring[detached:creative_" .. player_name .. ";main]" ..
|
||||||
"list[detached:creative_" .. player_name .. ";main;0,0;8,4;" .. tostring(start_i) .. "]" ..
|
"list[detached:creative_" .. player_name .. ";main;0,0;8,4;" .. tostring(inv.start_i) .. "]" ..
|
||||||
creative.formspec_add, true)
|
creative.formspec_add, true)
|
||||||
end,
|
end,
|
||||||
on_enter = function(self, player, context)
|
on_enter = function(self, player, context)
|
||||||
|
@ -161,13 +168,11 @@ function creative.register_tab(name, title, items)
|
||||||
if fields.creative_clear then
|
if fields.creative_clear then
|
||||||
inv.start_i = 0
|
inv.start_i = 0
|
||||||
inv.filter = ""
|
inv.filter = ""
|
||||||
creative.update_creative_inventory(player_name, items)
|
|
||||||
sfinv.set_player_inventory_formspec(player, context)
|
sfinv.set_player_inventory_formspec(player, context)
|
||||||
elseif fields.creative_search or
|
elseif fields.creative_search or
|
||||||
fields.key_enter_field == "creative_filter" then
|
fields.key_enter_field == "creative_filter" then
|
||||||
inv.start_i = 0
|
inv.start_i = 0
|
||||||
inv.filter = fields.creative_filter:lower()
|
inv.filter = fields.creative_filter:lower()
|
||||||
creative.update_creative_inventory(player_name, items)
|
|
||||||
sfinv.set_player_inventory_formspec(player, context)
|
sfinv.set_player_inventory_formspec(player, context)
|
||||||
elseif not fields.quit then
|
elseif not fields.quit then
|
||||||
local start_i = inv.start_i or 0
|
local start_i = inv.start_i or 0
|
||||||
|
|
10
mods/creative/locale/creative.zh_TW.tr
Normal file
10
mods/creative/locale/creative.zh_TW.tr
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
# textdomain: creative
|
||||||
|
Allow player to use creative inventory=允許玩家使用創造模式物品欄
|
||||||
|
Search=搜索
|
||||||
|
Reset=重置
|
||||||
|
Previous page=上一頁
|
||||||
|
Next page=下一頁
|
||||||
|
All=所有
|
||||||
|
Nodes=節點
|
||||||
|
Tools=工具
|
||||||
|
Items=物品
|
|
@ -46,7 +46,8 @@ function default.chest.chest_lid_close(pn)
|
||||||
local node = minetest.get_node(pos)
|
local node = minetest.get_node(pos)
|
||||||
minetest.after(0.2, minetest.swap_node, pos, { name = "default:" .. swap,
|
minetest.after(0.2, minetest.swap_node, pos, { name = "default:" .. swap,
|
||||||
param2 = node.param2 })
|
param2 = node.param2 })
|
||||||
minetest.sound_play(sound, {gain = 0.3, pos = pos, max_hear_distance = 10})
|
minetest.sound_play(sound, {gain = 0.3, pos = pos,
|
||||||
|
max_hear_distance = 10}, true)
|
||||||
end
|
end
|
||||||
|
|
||||||
default.chest.open_chests = {}
|
default.chest.open_chests = {}
|
||||||
|
@ -128,7 +129,7 @@ function default.chest.register_chest(name, d)
|
||||||
end
|
end
|
||||||
|
|
||||||
minetest.sound_play(def.sound_open, {gain = 0.3,
|
minetest.sound_play(def.sound_open, {gain = 0.3,
|
||||||
pos = pos, max_hear_distance = 10})
|
pos = pos, max_hear_distance = 10}, true)
|
||||||
if not default.chest.chest_lid_obstructed(pos) then
|
if not default.chest.chest_lid_obstructed(pos) then
|
||||||
minetest.swap_node(pos,
|
minetest.swap_node(pos,
|
||||||
{ name = "default:" .. name .. "_open",
|
{ name = "default:" .. name .. "_open",
|
||||||
|
@ -199,7 +200,7 @@ function default.chest.register_chest(name, d)
|
||||||
end
|
end
|
||||||
def.on_rightclick = function(pos, node, clicker)
|
def.on_rightclick = function(pos, node, clicker)
|
||||||
minetest.sound_play(def.sound_open, {gain = 0.3, pos = pos,
|
minetest.sound_play(def.sound_open, {gain = 0.3, pos = pos,
|
||||||
max_hear_distance = 10})
|
max_hear_distance = 10}, true)
|
||||||
if not default.chest.chest_lid_obstructed(pos) then
|
if not default.chest.chest_lid_obstructed(pos) then
|
||||||
minetest.swap_node(pos, {
|
minetest.swap_node(pos, {
|
||||||
name = "default:" .. name .. "_open",
|
name = "default:" .. name .. "_open",
|
||||||
|
|
|
@ -141,7 +141,7 @@ default.cool_lava = function(pos, node)
|
||||||
minetest.set_node(pos, {name = "default:stone"})
|
minetest.set_node(pos, {name = "default:stone"})
|
||||||
end
|
end
|
||||||
minetest.sound_play("default_cool_lava",
|
minetest.sound_play("default_cool_lava",
|
||||||
{pos = pos, max_hear_distance = 16, gain = 0.25})
|
{pos = pos, max_hear_distance = 16, gain = 0.25}, true)
|
||||||
end
|
end
|
||||||
|
|
||||||
if minetest.settings:get_bool("enable_lavacooling") ~= false then
|
if minetest.settings:get_bool("enable_lavacooling") ~= false then
|
||||||
|
|
|
@ -20,7 +20,7 @@ local item = {
|
||||||
minetest.sound_play("default_item_smoke", {
|
minetest.sound_play("default_item_smoke", {
|
||||||
pos = p,
|
pos = p,
|
||||||
max_hear_distance = 8,
|
max_hear_distance = 8,
|
||||||
})
|
}, true)
|
||||||
minetest.add_particlespawner({
|
minetest.add_particlespawner({
|
||||||
amount = 3,
|
amount = 3,
|
||||||
time = 0.1,
|
time = 0.1,
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
# textdomain: default
|
# textdomain: default
|
||||||
Locked Chest=锁着的箱子
|
Locked Chest=已上锁的箱子
|
||||||
Locked Chest (owned by @1)=锁着的箱子(由@1拥有)
|
Locked Chest (owned by @1)=已上锁的箱子(属于@1所有)
|
||||||
You do not own this chest.=您不拥有该箱子。
|
You do not own this chest.=这个箱子不属于你所有。
|
||||||
a locked chest=一个锁着的箱子
|
a locked chest=一个已上锁的箱子
|
||||||
Chest=箱子
|
Chest=箱子
|
||||||
Stick=棒
|
Stick=棒
|
||||||
Paper=纸
|
Paper=纸
|
||||||
|
@ -11,20 +11,20 @@ Book=书
|
||||||
Book with Text=带文字的书
|
Book with Text=带文字的书
|
||||||
Skeleton Key=万能钥匙
|
Skeleton Key=万能钥匙
|
||||||
Key to @1's @2=@1的@2的钥匙
|
Key to @1's @2=@1的@2的钥匙
|
||||||
Coal Lump=煤矿
|
Coal Lump=煤块
|
||||||
Iron Lump=铁矿
|
Iron Lump=铁块
|
||||||
Copper Lump=铜矿
|
Copper Lump=铜块
|
||||||
Tin Lump=锡矿
|
Tin Lump=锡块
|
||||||
Mese Crystal=黄石水晶
|
Mese Crystal=黄石晶体
|
||||||
Gold Lump=金矿
|
Gold Lump=金块
|
||||||
Diamond=钻石
|
Diamond=钻石
|
||||||
Clay Lump=粘土矿
|
Clay Lump=粘土块
|
||||||
Steel Ingot=铁锭
|
Steel Ingot=铁锭
|
||||||
Copper Ingot=铜锭
|
Copper Ingot=铜锭
|
||||||
Tin Ingot=锡锭
|
Tin Ingot=锡锭
|
||||||
Bronze Ingot=青铜锭
|
Bronze Ingot=青铜锭
|
||||||
Gold Ingot=金锭
|
Gold Ingot=金锭
|
||||||
Mese Crystal Fragment=黄石水晶碎片
|
Mese Crystal Fragment=黄石晶体碎片
|
||||||
Clay Brick=粘土砖
|
Clay Brick=粘土砖
|
||||||
Obsidian Shard=黑曜石碎片
|
Obsidian Shard=黑曜石碎片
|
||||||
Flint=燧石
|
Flint=燧石
|
||||||
|
@ -34,50 +34,50 @@ Furnace is empty=熔炉是空的
|
||||||
@1%=@1%
|
@1%=@1%
|
||||||
Empty=空
|
Empty=空
|
||||||
Not cookable=不可烹饪
|
Not cookable=不可烹饪
|
||||||
Furnace active=熔炉活跃
|
Furnace active=熔炉正在运转
|
||||||
Furnace inactive=熔炉非活跃
|
Furnace inactive=熔炉未使用
|
||||||
(Item: @1; Fuel: @2)=(项目:@1;燃料:@2)
|
(Item: @1; Fuel: @2)=(项目:@1;燃料:@2)
|
||||||
Furnace=熔炉
|
Furnace=熔炉
|
||||||
Stone=石
|
Stone=石
|
||||||
Cobblestone=鹅卵石
|
Cobblestone=鹅卵石
|
||||||
Stone Brick=石砖
|
Stone Brick=石砖
|
||||||
Stone Block=石块
|
Stone Block=石方块
|
||||||
Mossy Cobblestone=生苔的鹅卵石
|
Mossy Cobblestone=苔藓覆盖的鹅卵石
|
||||||
Desert Stone=沙漠石
|
Desert Stone=沙漠石
|
||||||
Desert Cobblestone=沙漠鹅卵石
|
Desert Cobblestone=沙漠鹅卵石
|
||||||
Desert Stone Brick=沙漠鹅卵石砖
|
Desert Stone Brick=沙漠鹅卵石砖
|
||||||
Desert Stone Block=沙漠鹅卵石块
|
Desert Stone Block=沙漠鹅卵石方块
|
||||||
Sandstone=砂岩
|
Sandstone=砂岩
|
||||||
Sandstone Brick=砂岩砖
|
Sandstone Brick=砂岩砖
|
||||||
Sandstone Block=砂岩块
|
Sandstone Block=砂岩方块
|
||||||
Desert Sandstone=沙漠砂岩
|
Desert Sandstone=沙漠砂岩
|
||||||
Desert Sandstone Brick=沙漠砂岩砖
|
Desert Sandstone Brick=沙漠砂岩砖
|
||||||
Desert Sandstone Block=沙漠砂岩块
|
Desert Sandstone Block=沙漠砂岩方块
|
||||||
Silver Sandstone=银砂岩
|
Silver Sandstone=银砂岩
|
||||||
Silver Sandstone Brick=银砂岩砖
|
Silver Sandstone Brick=银砂岩砖
|
||||||
Silver Sandstone Block=银砂岩块
|
Silver Sandstone Block=银砂岩方块
|
||||||
Obsidian=黑曜石
|
Obsidian=黑曜石
|
||||||
Obsidian Brick=黑曜石砖
|
Obsidian Brick=黑曜石砖
|
||||||
Obsidian Block=黑曜石块
|
Obsidian Block=黑曜石方块
|
||||||
Dirt=土
|
Dirt=土
|
||||||
Dirt with Grass=带草的土
|
Dirt with Grass=带草的土
|
||||||
Dirt with Grass and Footsteps=带草的土及脚印
|
Dirt with Grass and Footsteps=带草的土及脚印
|
||||||
Dirt with Dry Grass=土和干草
|
Dirt with Dry Grass=带干草的土
|
||||||
Dirt with Snow=土和雪
|
Dirt with Snow=带雪的土
|
||||||
Dirt with Rainforest Litter=雨林腐土
|
Dirt with Rainforest Litter=雨林腐土
|
||||||
Dirt with Coniferous Litter=针叶林腐土
|
Dirt with Coniferous Litter=针叶林腐土
|
||||||
Dry Dirt=干土
|
Dry Dirt=干土
|
||||||
Dry Dirt with Dry Grass=干土和干草
|
Dry Dirt with Dry Grass=干土和干草
|
||||||
Permafrost=多年冻土
|
Permafrost=多年冻土
|
||||||
Permafrost with Stones=多年冻土和石头
|
Permafrost with Stones=带石头的多年冻土
|
||||||
Permafrost with Moss=生苔的多年冻土
|
Permafrost with Moss=生苔的多年冻土
|
||||||
Sand=沙
|
Sand=沙
|
||||||
Desert Sand=沙漠沙
|
Desert Sand=沙漠沙
|
||||||
Silver Sand=银沙
|
Silver Sand=银沙
|
||||||
Gravel=砾石
|
Gravel=沙砾
|
||||||
Clay=粘土
|
Clay=粘土
|
||||||
Snow=雪
|
Snow=雪
|
||||||
Snow Block=雪块
|
Snow Block=雪方块
|
||||||
Ice=冰
|
Ice=冰
|
||||||
Cave Ice=洞穴冰
|
Cave Ice=洞穴冰
|
||||||
Apple Tree=苹果树
|
Apple Tree=苹果树
|
||||||
|
@ -103,26 +103,26 @@ Aspen Tree=白杨树
|
||||||
Aspen Wood Planks=白杨树木板
|
Aspen Wood Planks=白杨树木板
|
||||||
Aspen Tree Leaves=白杨树叶
|
Aspen Tree Leaves=白杨树叶
|
||||||
Aspen Tree Sapling=白杨树树苗
|
Aspen Tree Sapling=白杨树树苗
|
||||||
Coal Ore=煤矿石
|
Coal Ore=煤炭矿石
|
||||||
Coal Block=煤块
|
Coal Block=煤炭方块
|
||||||
Iron Ore=铁矿石
|
Iron Ore=铁矿石
|
||||||
Steel Block=钢块
|
Steel Block=钢方块
|
||||||
Copper Ore=铜矿石
|
Copper Ore=铜矿石
|
||||||
Copper Block=铜块
|
Copper Block=铜方块
|
||||||
Tin Ore=锡矿石
|
Tin Ore=锡矿石
|
||||||
Tin Block=锡块
|
Tin Block=锡方块
|
||||||
Bronze Block=青铜块
|
Bronze Block=青铜方块
|
||||||
Mese Ore=黄石矿石
|
Mese Ore=黄石矿石
|
||||||
Mese Block=黄石块
|
Mese Block=黄石方块
|
||||||
Gold Ore=金矿石
|
Gold Ore=金矿石
|
||||||
Gold Block=金块
|
Gold Block=金方块
|
||||||
Diamond Ore=钻石矿石
|
Diamond Ore=钻石矿石
|
||||||
Diamond Block=钻石块
|
Diamond Block=钻石方块
|
||||||
Cactus=仙人掌
|
Cactus=仙人掌
|
||||||
Large Cactus Seedling=大仙人掌苗
|
Large Cactus Seedling=大仙人掌苗
|
||||||
Papyrus=莎草纸
|
Papyrus=莎草纸
|
||||||
Dry Shrub=干灌木
|
Dry Shrub=干灌木
|
||||||
Jungle Grass=莦
|
Jungle Grass=丛林草
|
||||||
Grass=草
|
Grass=草
|
||||||
Dry Grass=干草
|
Dry Grass=干草
|
||||||
Fern=蕨
|
Fern=蕨
|
||||||
|
@ -148,20 +148,20 @@ Orange Coral=橙珊瑚
|
||||||
Coral Skeleton=珊瑚骨架
|
Coral Skeleton=珊瑚骨架
|
||||||
Water Source=水方块
|
Water Source=水方块
|
||||||
Flowing Water=流动的水
|
Flowing Water=流动的水
|
||||||
River Water Source=河流水方块
|
River Water Source=河水方块
|
||||||
Flowing River Water=流动的河流水
|
Flowing River Water=流动的河水
|
||||||
Lava Source=融岩方块
|
Lava Source=岩浆方块
|
||||||
Flowing Lava=流动的融岩
|
Flowing Lava=流动的岩浆
|
||||||
Empty Bookshelf=空书架
|
Empty Bookshelf=空书架
|
||||||
Bookshelf (@1 written, @2 empty books)=书架(@1本有字的书,@2本空书)
|
Bookshelf (@1 written, @2 empty books)=书架(@1本有字的书,@2本空书)
|
||||||
Bookshelf=书架
|
Bookshelf=书架
|
||||||
Text too long=文字太长
|
Text too long=文字太长
|
||||||
Wooden Sign=木牌
|
Wooden Sign=木牌
|
||||||
Steel Sign=铁牌
|
Steel Sign=铁牌
|
||||||
Wooden Ladder=木阶梯
|
Wooden Ladder=木梯子
|
||||||
Steel Ladder=铁阶梯
|
Steel Ladder=铁梯子
|
||||||
Apple Wood Fence=苹果木围栏
|
Apple Wood Fence=苹果木栅栏
|
||||||
Acacia Wood Fence=相思木围栏
|
Acacia Wood Fence=相思木栅栏
|
||||||
Jungle Wood Fence=丛林木栅栏
|
Jungle Wood Fence=丛林木栅栏
|
||||||
Pine Wood Fence=松木栅栏
|
Pine Wood Fence=松木栅栏
|
||||||
Aspen Wood Fence=白杨木栅栏
|
Aspen Wood Fence=白杨木栅栏
|
||||||
|
@ -172,7 +172,7 @@ Pine Wood Fence Rail=松木栏杆
|
||||||
Aspen Wood Fence Rail=白杨木栏杆
|
Aspen Wood Fence Rail=白杨木栏杆
|
||||||
Glass=玻璃
|
Glass=玻璃
|
||||||
Obsidian Glass=黑曜石玻璃
|
Obsidian Glass=黑曜石玻璃
|
||||||
Brick Block=砖块
|
Brick Block=砖方块
|
||||||
Mese Lamp=黄石灯
|
Mese Lamp=黄石灯
|
||||||
Mese Post Light=黄石柱灯
|
Mese Post Light=黄石柱灯
|
||||||
Cloud=云
|
Cloud=云
|
||||||
|
|
211
mods/default/locale/default.zh_TW.tr
Normal file
211
mods/default/locale/default.zh_TW.tr
Normal file
|
@ -0,0 +1,211 @@
|
||||||
|
# textdomain: default
|
||||||
|
Locked Chest=已上鎖的箱子
|
||||||
|
Locked Chest (owned by @1)=已上鎖的箱子(屬於@1所有)
|
||||||
|
You do not own this chest.=這個箱子不屬於你所有。
|
||||||
|
a locked chest=一個已上鎖的箱子
|
||||||
|
Chest=箱子
|
||||||
|
Stick=棒
|
||||||
|
Paper=紙
|
||||||
|
"@1" by @2="@1" by @2
|
||||||
|
Book=書
|
||||||
|
Book with Text=帶文字的書
|
||||||
|
Skeleton Key=萬能鑰匙
|
||||||
|
Key to @1's @2=@1的@2的鑰匙
|
||||||
|
Coal Lump=煤塊
|
||||||
|
Iron Lump=鐵塊
|
||||||
|
Copper Lump=銅塊
|
||||||
|
Tin Lump=錫塊
|
||||||
|
Mese Crystal=黃石晶體
|
||||||
|
Gold Lump=金塊
|
||||||
|
Diamond=鑽石
|
||||||
|
Clay Lump=粘土塊
|
||||||
|
Steel Ingot=鐵錠
|
||||||
|
Copper Ingot=銅錠
|
||||||
|
Tin Ingot=錫錠
|
||||||
|
Bronze Ingot=青銅錠
|
||||||
|
Gold Ingot=金錠
|
||||||
|
Mese Crystal Fragment=黃石晶體碎片
|
||||||
|
Clay Brick=粘土磚
|
||||||
|
Obsidian Shard=黑曜石碎片
|
||||||
|
Flint=燧石
|
||||||
|
Blueberries=藍莓
|
||||||
|
Furnace is empty=熔爐是空的
|
||||||
|
100% (output full)=100%(輸出已滿)
|
||||||
|
@1%=@1%
|
||||||
|
Empty=空
|
||||||
|
Not cookable=不可烹飪
|
||||||
|
Furnace active=熔爐正在運轉
|
||||||
|
Furnace inactive=熔爐未使用
|
||||||
|
(Item: @1; Fuel: @2)=(項目:@1;燃料:@2)
|
||||||
|
Furnace=熔爐
|
||||||
|
Stone=石
|
||||||
|
Cobblestone=鵝卵石
|
||||||
|
Stone Brick=石磚
|
||||||
|
Stone Block=石方塊
|
||||||
|
Mossy Cobblestone=苔蘚覆蓋的鵝卵石
|
||||||
|
Desert Stone=沙漠石
|
||||||
|
Desert Cobblestone=沙漠鵝卵石
|
||||||
|
Desert Stone Brick=沙漠鵝卵石磚
|
||||||
|
Desert Stone Block=沙漠鵝卵石方塊
|
||||||
|
Sandstone=砂岩
|
||||||
|
Sandstone Brick=砂岩磚
|
||||||
|
Sandstone Block=砂岩方塊
|
||||||
|
Desert Sandstone=沙漠砂岩
|
||||||
|
Desert Sandstone Brick=沙漠砂岩磚
|
||||||
|
Desert Sandstone Block=沙漠砂岩方塊
|
||||||
|
Silver Sandstone=銀砂岩
|
||||||
|
Silver Sandstone Brick=銀砂岩磚
|
||||||
|
Silver Sandstone Block=銀砂岩方塊
|
||||||
|
Obsidian=黑曜石
|
||||||
|
Obsidian Brick=黑曜石磚
|
||||||
|
Obsidian Block=黑曜石方塊
|
||||||
|
Dirt=土
|
||||||
|
Dirt with Grass=帶草的土
|
||||||
|
Dirt with Grass and Footsteps=帶草的土及腳印
|
||||||
|
Dirt with Dry Grass=帶乾草的土
|
||||||
|
Dirt with Snow=帶雪的土
|
||||||
|
Dirt with Rainforest Litter=雨林腐土
|
||||||
|
Dirt with Coniferous Litter=針葉林腐土
|
||||||
|
Dry Dirt=乾土
|
||||||
|
Dry Dirt with Dry Grass=乾土和乾草
|
||||||
|
Permafrost=多年凍土
|
||||||
|
Permafrost with Stones=帶石頭的多年凍土
|
||||||
|
Permafrost with Moss=生苔的多年凍土
|
||||||
|
Sand=沙
|
||||||
|
Desert Sand=沙漠沙
|
||||||
|
Silver Sand=銀沙
|
||||||
|
Gravel=沙礫
|
||||||
|
Clay=粘土
|
||||||
|
Snow=雪
|
||||||
|
Snow Block=雪方塊
|
||||||
|
Ice=冰
|
||||||
|
Cave Ice=洞穴冰
|
||||||
|
Apple Tree=蘋果樹
|
||||||
|
Apple Wood Planks=蘋果樹木板
|
||||||
|
Apple Tree Sapling=蘋果樹苗
|
||||||
|
Apple Tree Leaves=蘋果樹葉
|
||||||
|
Apple=蘋果
|
||||||
|
Apple Marker=蘋果標記
|
||||||
|
Jungle Tree=叢林樹
|
||||||
|
Jungle Wood Planks=叢林樹木板
|
||||||
|
Jungle Tree Leaves=叢林樹葉
|
||||||
|
Jungle Tree Sapling=叢林樹苗
|
||||||
|
Emergent Jungle Tree Sapling=應急叢林樹苗
|
||||||
|
Pine Tree=松樹
|
||||||
|
Pine Wood Planks=松樹木板
|
||||||
|
Pine Needles=松針
|
||||||
|
Pine Tree Sapling=松樹樹苗
|
||||||
|
Acacia Tree=相思樹
|
||||||
|
Acacia Wood Planks=相思樹木板
|
||||||
|
Acacia Tree Leaves=相思樹葉
|
||||||
|
Acacia Tree Sapling=相思樹樹苗
|
||||||
|
Aspen Tree=白楊樹
|
||||||
|
Aspen Wood Planks=白楊樹木板
|
||||||
|
Aspen Tree Leaves=白楊樹葉
|
||||||
|
Aspen Tree Sapling=白楊樹樹苗
|
||||||
|
Coal Ore=煤炭礦石
|
||||||
|
Coal Block=煤炭方塊
|
||||||
|
Iron Ore=鐵礦石
|
||||||
|
Steel Block=鋼方塊
|
||||||
|
Copper Ore=銅礦石
|
||||||
|
Copper Block=銅方塊
|
||||||
|
Tin Ore=錫礦石
|
||||||
|
Tin Block=錫方塊
|
||||||
|
Bronze Block=青銅方塊
|
||||||
|
Mese Ore=黃石礦石
|
||||||
|
Mese Block=黃石方塊
|
||||||
|
Gold Ore=金礦石
|
||||||
|
Gold Block=金方塊
|
||||||
|
Diamond Ore=鑽石礦石
|
||||||
|
Diamond Block=鑽石方塊
|
||||||
|
Cactus=仙人掌
|
||||||
|
Large Cactus Seedling=大仙人掌苗
|
||||||
|
Papyrus=莎草紙
|
||||||
|
Dry Shrub=幹灌木
|
||||||
|
Jungle Grass=叢林草
|
||||||
|
Grass=草
|
||||||
|
Dry Grass=乾草
|
||||||
|
Fern=蕨
|
||||||
|
Marram Grass=濱草
|
||||||
|
Bush Stem=灌木
|
||||||
|
Bush Leaves=灌木葉
|
||||||
|
Bush Sapling=灌木苗
|
||||||
|
Blueberry Bush Leaves with Berries=藍莓灌木葉與漿果
|
||||||
|
Blueberry Bush Leaves=藍莓灌木葉
|
||||||
|
Blueberry Bush Sapling=藍莓灌木苗
|
||||||
|
Acacia Bush Stem=相思灌木
|
||||||
|
Acacia Bush Leaves=相思灌木葉
|
||||||
|
Acacia Bush Sapling=相思灌木苗
|
||||||
|
Pine Bush Stem=松樹灌木
|
||||||
|
Pine Bush Needles=松樹灌木針
|
||||||
|
Pine Bush Sapling=松樹灌木苗
|
||||||
|
Kelp=海帶
|
||||||
|
Green Coral=綠珊瑚
|
||||||
|
Pink Coral=淡紅珊瑚
|
||||||
|
Cyan Coral=青珊瑚
|
||||||
|
Brown Coral=棕珊瑚
|
||||||
|
Orange Coral=橙珊瑚
|
||||||
|
Coral Skeleton=珊瑚骨架
|
||||||
|
Water Source=水方塊
|
||||||
|
Flowing Water=流動的水
|
||||||
|
River Water Source=河水方塊
|
||||||
|
Flowing River Water=流動的河水
|
||||||
|
Lava Source=岩漿方塊
|
||||||
|
Flowing Lava=流動的岩漿
|
||||||
|
Empty Bookshelf=空書架
|
||||||
|
Bookshelf (@1 written, @2 empty books)=書架(@1本有字的書,@2本空書)
|
||||||
|
Bookshelf=書架
|
||||||
|
Text too long=文字太長
|
||||||
|
Wooden Sign=木牌
|
||||||
|
Steel Sign=鐵牌
|
||||||
|
Wooden Ladder=木梯子
|
||||||
|
Steel Ladder=鐵梯子
|
||||||
|
Apple Wood Fence=蘋果木柵欄
|
||||||
|
Acacia Wood Fence=相思木柵欄
|
||||||
|
Jungle Wood Fence=叢林木柵欄
|
||||||
|
Pine Wood Fence=松木柵欄
|
||||||
|
Aspen Wood Fence=白楊木柵欄
|
||||||
|
Apple Wood Fence Rail=蘋果木欄杆
|
||||||
|
Acacia Wood Fence Rail=相思木欄杆
|
||||||
|
Jungle Wood Fence Rail=叢林木欄杆
|
||||||
|
Pine Wood Fence Rail=松木欄杆
|
||||||
|
Aspen Wood Fence Rail=白楊木欄杆
|
||||||
|
Glass=玻璃
|
||||||
|
Obsidian Glass=黑曜石玻璃
|
||||||
|
Brick Block=磚方塊
|
||||||
|
Mese Lamp=黃石燈
|
||||||
|
Mese Post Light=黃石柱燈
|
||||||
|
Cloud=雲
|
||||||
|
Wooden Pickaxe=木鎬
|
||||||
|
Stone Pickaxe=石鎬
|
||||||
|
Bronze Pickaxe=青銅鎬
|
||||||
|
Steel Pickaxe=鐵鎬
|
||||||
|
Mese Pickaxe=黃石鎬
|
||||||
|
Diamond Pickaxe=鑽石鎬
|
||||||
|
Wooden Shovel=木鏟
|
||||||
|
Stone Shovel=石鏟
|
||||||
|
Bronze Shovel=青銅鏟
|
||||||
|
Steel Shovel=鐵鏟
|
||||||
|
Mese Shovel=黃石鏟
|
||||||
|
Diamond Shovel=鑽石鏟
|
||||||
|
Wooden Axe=木斧
|
||||||
|
Stone Axe=石斧
|
||||||
|
Bronze Axe=青銅斧
|
||||||
|
Steel Axe=鐵斧
|
||||||
|
Mese Axe=黃石斧
|
||||||
|
Diamond Axe=鑽石斧
|
||||||
|
Wooden Sword=木劍
|
||||||
|
Stone Sword=石劍
|
||||||
|
Bronze Sword=青銅劍
|
||||||
|
Steel Sword=鐵劍
|
||||||
|
Mese Sword=黃石劍
|
||||||
|
Diamond Sword=鑽石劍
|
||||||
|
Key=鑰匙
|
||||||
|
Torch=火把
|
||||||
|
@1 will intersect protection on growth.=@1將與增長的保護相交。
|
||||||
|
Title:=標題:
|
||||||
|
Contents:=內容:
|
||||||
|
Save=保存
|
||||||
|
by @1=由@1
|
||||||
|
Page @1 of @2=第@1頁,共@2頁。
|
||||||
|
"@1"="@1"
|
|
@ -2143,8 +2143,10 @@ function default.register_decorations()
|
||||||
|
|
||||||
-- Papyrus
|
-- Papyrus
|
||||||
|
|
||||||
|
-- Dirt version for rainforest swamp
|
||||||
|
|
||||||
minetest.register_decoration({
|
minetest.register_decoration({
|
||||||
name = "default:papyrus",
|
name = "default:papyrus_on_dirt",
|
||||||
deco_type = "schematic",
|
deco_type = "schematic",
|
||||||
place_on = {"default:dirt"},
|
place_on = {"default:dirt"},
|
||||||
sidelen = 16,
|
sidelen = 16,
|
||||||
|
@ -2156,10 +2158,32 @@ function default.register_decorations()
|
||||||
octaves = 3,
|
octaves = 3,
|
||||||
persist = 0.7
|
persist = 0.7
|
||||||
},
|
},
|
||||||
biomes = {"savanna_shore", "rainforest_swamp"},
|
biomes = {"rainforest_swamp"},
|
||||||
y_max = 0,
|
y_max = 0,
|
||||||
y_min = 0,
|
y_min = 0,
|
||||||
schematic = minetest.get_modpath("default") .. "/schematics/papyrus.mts",
|
schematic = minetest.get_modpath("default") .. "/schematics/papyrus_on_dirt.mts",
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Dry dirt version for savanna shore
|
||||||
|
|
||||||
|
minetest.register_decoration({
|
||||||
|
name = "default:papyrus_on_dry_dirt",
|
||||||
|
deco_type = "schematic",
|
||||||
|
place_on = {"default:dry_dirt"},
|
||||||
|
sidelen = 16,
|
||||||
|
noise_params = {
|
||||||
|
offset = -0.3,
|
||||||
|
scale = 0.7,
|
||||||
|
spread = {x = 200, y = 200, z = 200},
|
||||||
|
seed = 354,
|
||||||
|
octaves = 3,
|
||||||
|
persist = 0.7
|
||||||
|
},
|
||||||
|
biomes = {"savanna_shore"},
|
||||||
|
y_max = 0,
|
||||||
|
y_min = 0,
|
||||||
|
schematic = minetest.get_modpath("default") ..
|
||||||
|
"/schematics/papyrus_on_dry_dirt.mts",
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Bush
|
-- Bush
|
||||||
|
|
|
@ -2234,7 +2234,7 @@ minetest.register_node("default:water_flowing", {
|
||||||
type = "vertical_frames",
|
type = "vertical_frames",
|
||||||
aspect_w = 16,
|
aspect_w = 16,
|
||||||
aspect_h = 16,
|
aspect_h = 16,
|
||||||
length = 0.8,
|
length = 0.5,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -2244,7 +2244,7 @@ minetest.register_node("default:water_flowing", {
|
||||||
type = "vertical_frames",
|
type = "vertical_frames",
|
||||||
aspect_w = 16,
|
aspect_w = 16,
|
||||||
aspect_h = 16,
|
aspect_h = 16,
|
||||||
length = 0.8,
|
length = 0.5,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -2330,7 +2330,7 @@ minetest.register_node("default:river_water_flowing", {
|
||||||
type = "vertical_frames",
|
type = "vertical_frames",
|
||||||
aspect_w = 16,
|
aspect_w = 16,
|
||||||
aspect_h = 16,
|
aspect_h = 16,
|
||||||
length = 0.8,
|
length = 0.5,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -2340,7 +2340,7 @@ minetest.register_node("default:river_water_flowing", {
|
||||||
type = "vertical_frames",
|
type = "vertical_frames",
|
||||||
aspect_w = 16,
|
aspect_w = 16,
|
||||||
aspect_h = 16,
|
aspect_h = 16,
|
||||||
length = 0.8,
|
length = 0.5,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
BIN
mods/default/schematics/papyrus_on_dry_dirt.mts
Normal file
BIN
mods/default/schematics/papyrus_on_dry_dirt.mts
Normal file
Binary file not shown.
|
@ -11,7 +11,8 @@ local function on_flood(pos, oldnode, newnode)
|
||||||
nodedef.groups.igniter and nodedef.groups.igniter > 0) then
|
nodedef.groups.igniter and nodedef.groups.igniter > 0) then
|
||||||
minetest.sound_play(
|
minetest.sound_play(
|
||||||
"default_cool_lava",
|
"default_cool_lava",
|
||||||
{pos = pos, max_hear_distance = 16, gain = 0.1}
|
{pos = pos, max_hear_distance = 16, gain = 0.1},
|
||||||
|
true
|
||||||
)
|
)
|
||||||
end
|
end
|
||||||
-- Remove the torch node
|
-- Remove the torch node
|
||||||
|
@ -70,6 +71,7 @@ minetest.register_node("default:torch", {
|
||||||
end,
|
end,
|
||||||
floodable = true,
|
floodable = true,
|
||||||
on_flood = on_flood,
|
on_flood = on_flood,
|
||||||
|
on_rotate = false
|
||||||
})
|
})
|
||||||
|
|
||||||
minetest.register_node("default:torch_wall", {
|
minetest.register_node("default:torch_wall", {
|
||||||
|
@ -93,6 +95,7 @@ minetest.register_node("default:torch_wall", {
|
||||||
sounds = default.node_sound_wood_defaults(),
|
sounds = default.node_sound_wood_defaults(),
|
||||||
floodable = true,
|
floodable = true,
|
||||||
on_flood = on_flood,
|
on_flood = on_flood,
|
||||||
|
on_rotate = false
|
||||||
})
|
})
|
||||||
|
|
||||||
minetest.register_node("default:torch_ceiling", {
|
minetest.register_node("default:torch_ceiling", {
|
||||||
|
@ -116,6 +119,7 @@ minetest.register_node("default:torch_ceiling", {
|
||||||
sounds = default.node_sound_wood_defaults(),
|
sounds = default.node_sound_wood_defaults(),
|
||||||
floodable = true,
|
floodable = true,
|
||||||
on_flood = on_flood,
|
on_flood = on_flood,
|
||||||
|
on_rotate = false
|
||||||
})
|
})
|
||||||
|
|
||||||
minetest.register_lbm({
|
minetest.register_lbm({
|
||||||
|
|
|
@ -176,10 +176,10 @@ function doors.door_toggle(pos, node, clicker)
|
||||||
|
|
||||||
if state % 2 == 0 then
|
if state % 2 == 0 then
|
||||||
minetest.sound_play(def.door.sounds[1],
|
minetest.sound_play(def.door.sounds[1],
|
||||||
{pos = pos, gain = 0.3, max_hear_distance = 10})
|
{pos = pos, gain = 0.3, max_hear_distance = 10}, true)
|
||||||
else
|
else
|
||||||
minetest.sound_play(def.door.sounds[2],
|
minetest.sound_play(def.door.sounds[2],
|
||||||
{pos = pos, gain = 0.3, max_hear_distance = 10})
|
{pos = pos, gain = 0.3, max_hear_distance = 10}, true)
|
||||||
end
|
end
|
||||||
|
|
||||||
minetest.swap_node(pos, {
|
minetest.swap_node(pos, {
|
||||||
|
@ -340,7 +340,7 @@ function doors.register(name, def)
|
||||||
itemstack:take_item()
|
itemstack:take_item()
|
||||||
end
|
end
|
||||||
|
|
||||||
minetest.sound_play(def.sounds.place, {pos = pos})
|
minetest.sound_play(def.sounds.place, {pos = pos}, true)
|
||||||
|
|
||||||
on_place_node(pos, minetest.get_node(pos),
|
on_place_node(pos, minetest.get_node(pos),
|
||||||
placer, node, itemstack, pointed_thing)
|
placer, node, itemstack, pointed_thing)
|
||||||
|
@ -550,12 +550,12 @@ function doors.trapdoor_toggle(pos, node, clicker)
|
||||||
|
|
||||||
if string.sub(node.name, -5) == "_open" then
|
if string.sub(node.name, -5) == "_open" then
|
||||||
minetest.sound_play(def.sound_close,
|
minetest.sound_play(def.sound_close,
|
||||||
{pos = pos, gain = 0.3, max_hear_distance = 10})
|
{pos = pos, gain = 0.3, max_hear_distance = 10}, true)
|
||||||
minetest.swap_node(pos, {name = string.sub(node.name, 1,
|
minetest.swap_node(pos, {name = string.sub(node.name, 1,
|
||||||
string.len(node.name) - 5), param1 = node.param1, param2 = node.param2})
|
string.len(node.name) - 5), param1 = node.param1, param2 = node.param2})
|
||||||
else
|
else
|
||||||
minetest.sound_play(def.sound_open,
|
minetest.sound_play(def.sound_open,
|
||||||
{pos = pos, gain = 0.3, max_hear_distance = 10})
|
{pos = pos, gain = 0.3, max_hear_distance = 10}, true)
|
||||||
minetest.swap_node(pos, {name = node.name .. "_open",
|
minetest.swap_node(pos, {name = node.name .. "_open",
|
||||||
param1 = node.param1, param2 = node.param2})
|
param1 = node.param1, param2 = node.param2})
|
||||||
end
|
end
|
||||||
|
@ -744,7 +744,7 @@ function doors.register_fencegate(name, def)
|
||||||
local node_def = minetest.registered_nodes[node.name]
|
local node_def = minetest.registered_nodes[node.name]
|
||||||
minetest.swap_node(pos, {name = node_def.gate, param2 = node.param2})
|
minetest.swap_node(pos, {name = node_def.gate, param2 = node.param2})
|
||||||
minetest.sound_play(node_def.sound, {pos = pos, gain = 0.3,
|
minetest.sound_play(node_def.sound, {pos = pos, gain = 0.3,
|
||||||
max_hear_distance = 8})
|
max_hear_distance = 8}, true)
|
||||||
return itemstack
|
return itemstack
|
||||||
end,
|
end,
|
||||||
selection_box = {
|
selection_box = {
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
# textdomain: doors
|
# textdomain: doors
|
||||||
Hidden Door Segment=隐藏门段
|
Hidden Door Segment=隐藏门段
|
||||||
Owned by @1=由@1拥有
|
Owned by @1=由@1拥有
|
||||||
You do not own this locked door.=您不拥有此锁着的门。
|
You do not own this locked door.=这个门不属于你所有。
|
||||||
a locked door=一扇锁着的门
|
a locked door=一扇已上锁的门
|
||||||
Wooden Door=木门
|
Wooden Door=木门
|
||||||
Steel Door=铁门
|
Steel Door=铁门
|
||||||
Glass Door=玻璃门
|
Glass Door=玻璃门
|
||||||
Obsidian Glass Door=黑曜石玻璃门
|
Obsidian Glass Door=黑曜石玻璃门
|
||||||
You do not own this trapdoor.=您不拥有此活板门。
|
You do not own this trapdoor.=这个活板门不属于你所有。
|
||||||
a locked trapdoor=一扇上锁的活板门
|
a locked trapdoor=一扇已上锁的活板门
|
||||||
Wooden Trapdoor=木活板门
|
Wooden Trapdoor=木活板门
|
||||||
Steel Trapdoor=铁活板门
|
Steel Trapdoor=铁活板门
|
||||||
Apple Wood Fence Gate=用苹果树做的木栅栏门
|
Apple Wood Fence Gate=用苹果树做的木栅栏门
|
||||||
|
|
18
mods/doors/locale/doors.zh_TW.tr
Normal file
18
mods/doors/locale/doors.zh_TW.tr
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
# textdomain: doors
|
||||||
|
Hidden Door Segment=隱藏門段
|
||||||
|
Owned by @1=由@1擁有
|
||||||
|
You do not own this locked door.=這個門不屬於你所有。
|
||||||
|
a locked door=一扇已上鎖的門
|
||||||
|
Wooden Door=木門
|
||||||
|
Steel Door=鐵門
|
||||||
|
Glass Door=玻璃門
|
||||||
|
Obsidian Glass Door=黑曜石玻璃門
|
||||||
|
You do not own this trapdoor.=這個活板門不屬於你所有。
|
||||||
|
a locked trapdoor=一扇已上鎖的活板門
|
||||||
|
Wooden Trapdoor=木活板門
|
||||||
|
Steel Trapdoor=鐵活板門
|
||||||
|
Apple Wood Fence Gate=用蘋果樹做的木柵欄門
|
||||||
|
Acacia Wood Fence Gate=相思木柵欄門
|
||||||
|
Jungle Wood Fence Gate=叢林木柵欄門
|
||||||
|
Pine Wood Fence Gate=松木柵欄門
|
||||||
|
Aspen Wood Fence Gate=白楊木柵欄門
|
|
@ -1,26 +1,13 @@
|
||||||
dungeon_loot.registered_loot = {
|
-- Loot from the `default` mod is registered here,
|
||||||
-- buckets
|
-- with the rest being registered in the respective mods
|
||||||
{name = "bucket:bucket_empty", chance = 0.55},
|
|
||||||
-- water in deserts/ice or above ground, lava otherwise
|
|
||||||
{name = "bucket:bucket_water", chance = 0.45,
|
|
||||||
types = {"sandstone", "desert", "ice"}},
|
|
||||||
{name = "bucket:bucket_water", chance = 0.45, y = {0, 32768},
|
|
||||||
types = {"normal"}},
|
|
||||||
{name = "bucket:bucket_lava", chance = 0.45, y = {-32768, -1},
|
|
||||||
types = {"normal"}},
|
|
||||||
|
|
||||||
|
dungeon_loot.registered_loot = {
|
||||||
-- various items
|
-- various items
|
||||||
{name = "default:stick", chance = 0.6, count = {3, 6}},
|
{name = "default:stick", chance = 0.6, count = {3, 6}},
|
||||||
{name = "default:flint", chance = 0.4, count = {1, 3}},
|
{name = "default:flint", chance = 0.4, count = {1, 3}},
|
||||||
{name = "vessels:glass_fragments", chance = 0.35, count = {1, 4}},
|
|
||||||
{name = "carts:rail", chance = 0.35, count = {1, 6}},
|
|
||||||
|
|
||||||
-- farming / consumable
|
-- farming / consumable
|
||||||
{name = "farming:string", chance = 0.5, count = {1, 8}},
|
|
||||||
{name = "farming:wheat", chance = 0.5, count = {2, 5}},
|
|
||||||
{name = "default:apple", chance = 0.4, count = {1, 4}},
|
{name = "default:apple", chance = 0.4, count = {1, 4}},
|
||||||
{name = "farming:seed_cotton", chance = 0.4, count = {1, 4},
|
|
||||||
types = {"normal"}},
|
|
||||||
{name = "default:cactus", chance = 0.4, count = {1, 4},
|
{name = "default:cactus", chance = 0.4, count = {1, 4},
|
||||||
types = {"sandstone", "desert"}},
|
types = {"sandstone", "desert"}},
|
||||||
|
|
||||||
|
|
|
@ -89,20 +89,20 @@ local function populate_chest(pos, rand, dungeontype)
|
||||||
amount = rand:next(loot.count[1], loot.count[2])
|
amount = rand:next(loot.count[1], loot.count[2])
|
||||||
end
|
end
|
||||||
|
|
||||||
if itemdef then
|
if not itemdef then
|
||||||
if itemdef.tool_capabilities then
|
minetest.log("warning", "Registered loot item " .. loot.name .. " does not exist")
|
||||||
for n = 1, amount do
|
elseif itemdef.tool_capabilities then
|
||||||
local wear = rand:next(0.20 * 65535, 0.75 * 65535) -- 20% to 75% wear
|
for n = 1, amount do
|
||||||
table.insert(items, ItemStack({name = loot.name, wear = wear}))
|
local wear = rand:next(0.20 * 65535, 0.75 * 65535) -- 20% to 75% wear
|
||||||
end
|
table.insert(items, ItemStack({name = loot.name, wear = wear}))
|
||||||
elseif itemdef.stack_max == 1 then
|
|
||||||
-- not stackable, add separately
|
|
||||||
for n = 1, amount do
|
|
||||||
table.insert(items, loot.name)
|
|
||||||
end
|
|
||||||
else
|
|
||||||
table.insert(items, ItemStack({name = loot.name, count = amount}))
|
|
||||||
end
|
end
|
||||||
|
elseif itemdef.stack_max == 1 then
|
||||||
|
-- not stackable, add separately
|
||||||
|
for n = 1, amount do
|
||||||
|
table.insert(items, loot.name)
|
||||||
|
end
|
||||||
|
else
|
||||||
|
table.insert(items, ItemStack({name = loot.name, count = amount}))
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -2,8 +2,8 @@
|
||||||
White Dye=白染料
|
White Dye=白染料
|
||||||
Grey Dye=灰染料
|
Grey Dye=灰染料
|
||||||
Dark Grey Dye=暗灰染料
|
Dark Grey Dye=暗灰染料
|
||||||
Black Dye=染料
|
Black Dye=黑染料
|
||||||
Violet Dye=染料
|
Violet Dye=紫染料
|
||||||
Blue Dye=蓝染料
|
Blue Dye=蓝染料
|
||||||
Cyan Dye=青染料
|
Cyan Dye=青染料
|
||||||
Dark Green Dye=暗绿染料
|
Dark Green Dye=暗绿染料
|
||||||
|
@ -13,4 +13,4 @@ Brown Dye=棕染料
|
||||||
Orange Dye=橙染料
|
Orange Dye=橙染料
|
||||||
Red Dye=红染料
|
Red Dye=红染料
|
||||||
Magenta Dye=品红染料
|
Magenta Dye=品红染料
|
||||||
Pink Dye=淡红染料
|
Pink Dye=粉红染料
|
||||||
|
|
16
mods/dye/locale/dye.zh_TW.tr
Normal file
16
mods/dye/locale/dye.zh_TW.tr
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
# textdomain: dye
|
||||||
|
White Dye=白染料
|
||||||
|
Grey Dye=灰染料
|
||||||
|
Dark Grey Dye=暗灰染料
|
||||||
|
Black Dye=黑染料
|
||||||
|
Violet Dye=紫染料
|
||||||
|
Blue Dye=藍染料
|
||||||
|
Cyan Dye=青染料
|
||||||
|
Dark Green Dye=暗綠染料
|
||||||
|
Green Dye=綠染料
|
||||||
|
Yellow Dye=黃染料
|
||||||
|
Brown Dye=棕染料
|
||||||
|
Orange Dye=橙染料
|
||||||
|
Red Dye=紅染料
|
||||||
|
Magenta Dye=品紅染料
|
||||||
|
Pink Dye=粉紅染料
|
|
@ -59,7 +59,7 @@ farming.hoe_on_use = function(itemstack, user, pointed_thing, uses)
|
||||||
minetest.sound_play("default_dig_crumbly", {
|
minetest.sound_play("default_dig_crumbly", {
|
||||||
pos = pt.under,
|
pos = pt.under,
|
||||||
gain = 0.5,
|
gain = 0.5,
|
||||||
})
|
}, true)
|
||||||
|
|
||||||
if not (creative and creative.is_enabled_for
|
if not (creative and creative.is_enabled_for
|
||||||
and creative.is_enabled_for(user:get_player_name())) then
|
and creative.is_enabled_for(user:get_player_name())) then
|
||||||
|
@ -68,7 +68,8 @@ farming.hoe_on_use = function(itemstack, user, pointed_thing, uses)
|
||||||
itemstack:add_wear(65535/(uses-1))
|
itemstack:add_wear(65535/(uses-1))
|
||||||
-- tool break sound
|
-- tool break sound
|
||||||
if itemstack:get_count() == 0 and wdef.sound and wdef.sound.breaks then
|
if itemstack:get_count() == 0 and wdef.sound and wdef.sound.breaks then
|
||||||
minetest.sound_play(wdef.sound.breaks, {pos = pt.above, gain = 0.5})
|
minetest.sound_play(wdef.sound.breaks, {pos = pt.above,
|
||||||
|
gain = 0.5}, true)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
return itemstack
|
return itemstack
|
||||||
|
@ -176,6 +177,8 @@ farming.place_seed = function(itemstack, placer, pointed_thing, plantname)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- add the node and remove 1 item from the itemstack
|
-- add the node and remove 1 item from the itemstack
|
||||||
|
minetest.log("action", player_name .. " places node " .. plantname .. " at " ..
|
||||||
|
minetest.pos_to_string(pt.above))
|
||||||
minetest.add_node(pt.above, {name = plantname, param2 = 1})
|
minetest.add_node(pt.above, {name = plantname, param2 = 1})
|
||||||
tick(pt.above)
|
tick(pt.above)
|
||||||
if not (creative and creative.is_enabled_for
|
if not (creative and creative.is_enabled_for
|
||||||
|
|
|
@ -144,3 +144,13 @@ minetest.register_craft({
|
||||||
recipe = "farming:hoe_wood",
|
recipe = "farming:hoe_wood",
|
||||||
burntime = 5,
|
burntime = 5,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
-- Register farming items as dungeon loot
|
||||||
|
if minetest.global_exists("dungeon_loot") then
|
||||||
|
dungeon_loot.register({
|
||||||
|
{name = "farming:string", chance = 0.5, count = {1, 8}},
|
||||||
|
{name = "farming:wheat", chance = 0.5, count = {2, 5}},
|
||||||
|
{name = "farming:seed_cotton", chance = 0.4, count = {1, 4},
|
||||||
|
types = {"normal"}},
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
# textdomain: farming
|
# textdomain: farming
|
||||||
Wooden Hoe=木锄
|
Wooden Hoe=木锄头
|
||||||
Stone Hoe=石锄
|
Stone Hoe=石锄头
|
||||||
Steel Hoe=铁锄
|
Steel Hoe=铁锄头
|
||||||
Bronze Hoe=青铜锄
|
Bronze Hoe=青铜锄头
|
||||||
Mese Hoe=Mese锄
|
Mese Hoe=黄石锄头
|
||||||
Diamond Hoe=钻石锄
|
Diamond Hoe=钻石锄头
|
||||||
Wheat Seed=小麦种子
|
Wheat Seed=小麦种子
|
||||||
Flour=面粉
|
Flour=面粉
|
||||||
Bread=面包
|
Bread=面包
|
||||||
|
|
25
mods/farming/locale/farming.zh_TW.tr
Normal file
25
mods/farming/locale/farming.zh_TW.tr
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
# textdomain: farming
|
||||||
|
Wooden Hoe=木鋤頭
|
||||||
|
Stone Hoe=石鋤頭
|
||||||
|
Steel Hoe=鐵鋤頭
|
||||||
|
Bronze Hoe=青銅鋤頭
|
||||||
|
Mese Hoe=黃石鋤頭
|
||||||
|
Diamond Hoe=鑽石鋤頭
|
||||||
|
Wheat Seed=小麥種子
|
||||||
|
Flour=麵粉
|
||||||
|
Bread=麵包
|
||||||
|
Cotton Seed=棉花種子
|
||||||
|
String=線
|
||||||
|
Soil=土
|
||||||
|
Wet Soil=溼土
|
||||||
|
Dry Soil=乾土
|
||||||
|
Wet Dry Soil=溼乾土
|
||||||
|
Desert Sand Soil=沙漠沙土
|
||||||
|
Wet Desert Sand Soil=溼沙漠沙土
|
||||||
|
Straw=稻草
|
||||||
|
Straw Stair=稻草臺階
|
||||||
|
Inner Straw Stair=稻草內樓梯
|
||||||
|
Outer Straw Stair=稻草外樓梯
|
||||||
|
Straw Slab=稻草板
|
||||||
|
Wheat=小麥
|
||||||
|
Cotton=棉
|
|
@ -1,3 +1,4 @@
|
||||||
name = farming
|
name = farming
|
||||||
description = Minetest Game mod: farming
|
description = Minetest Game mod: farming
|
||||||
depends = default, wool, stairs
|
depends = default, wool, stairs
|
||||||
|
optional_depends = dungeon_loot
|
||||||
|
|
|
@ -34,7 +34,7 @@ local function flood_flame(pos, oldnode, newnode)
|
||||||
if not (nodedef and nodedef.groups and
|
if not (nodedef and nodedef.groups and
|
||||||
nodedef.groups.igniter and nodedef.groups.igniter > 0) then
|
nodedef.groups.igniter and nodedef.groups.igniter > 0) then
|
||||||
minetest.sound_play("fire_extinguish_flame",
|
minetest.sound_play("fire_extinguish_flame",
|
||||||
{pos = pos, max_hear_distance = 16, gain = 0.15})
|
{pos = pos, max_hear_distance = 16, gain = 0.15}, true)
|
||||||
end
|
end
|
||||||
-- Remove the flame
|
-- Remove the flame
|
||||||
return false
|
return false
|
||||||
|
@ -128,7 +128,8 @@ minetest.register_tool("fire:flint_and_steel", {
|
||||||
local sound_pos = pointed_thing.above or user:get_pos()
|
local sound_pos = pointed_thing.above or user:get_pos()
|
||||||
minetest.sound_play(
|
minetest.sound_play(
|
||||||
"fire_flint_and_steel",
|
"fire_flint_and_steel",
|
||||||
{pos = sound_pos, gain = 0.5, max_hear_distance = 8}
|
{pos = sound_pos, gain = 0.5, max_hear_distance = 8},
|
||||||
|
true
|
||||||
)
|
)
|
||||||
local player_name = user:get_player_name()
|
local player_name = user:get_player_name()
|
||||||
if pointed_thing.type == "node" then
|
if pointed_thing.type == "node" then
|
||||||
|
@ -155,7 +156,8 @@ minetest.register_tool("fire:flint_and_steel", {
|
||||||
itemstack:add_wear(1000)
|
itemstack:add_wear(1000)
|
||||||
-- Tool break sound
|
-- Tool break sound
|
||||||
if itemstack:get_count() == 0 and wdef.sound and wdef.sound.breaks then
|
if itemstack:get_count() == 0 and wdef.sound and wdef.sound.breaks then
|
||||||
minetest.sound_play(wdef.sound.breaks, {pos = sound_pos, gain = 0.5})
|
minetest.sound_play(wdef.sound.breaks, {pos = sound_pos,
|
||||||
|
gain = 0.5}, true)
|
||||||
end
|
end
|
||||||
return itemstack
|
return itemstack
|
||||||
end
|
end
|
||||||
|
|
|
@ -2,4 +2,4 @@
|
||||||
Firefly=萤火虫
|
Firefly=萤火虫
|
||||||
Hidden Firefly=隐藏的萤火虫
|
Hidden Firefly=隐藏的萤火虫
|
||||||
Bug Net=虫网
|
Bug Net=虫网
|
||||||
Firefly in a Bottle=瓶中的萤火虫
|
Firefly in a Bottle=放在瓶子里的萤火虫
|
||||||
|
|
5
mods/fireflies/locale/fireflies.zh_TW.tr
Normal file
5
mods/fireflies/locale/fireflies.zh_TW.tr
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
# textdomain: fireflies
|
||||||
|
Firefly=螢火蟲
|
||||||
|
Hidden Firefly=隱藏的螢火蟲
|
||||||
|
Bug Net=蟲網
|
||||||
|
Firefly in a Bottle=放在瓶子裡的螢火蟲
|
|
@ -4,9 +4,9 @@ Orange Tulip=橙郁金香
|
||||||
Yellow Dandelion=黄蒲公英
|
Yellow Dandelion=黄蒲公英
|
||||||
Green Chrysanthemum=绿菊花
|
Green Chrysanthemum=绿菊花
|
||||||
Blue Geranium=蓝天竺葵
|
Blue Geranium=蓝天竺葵
|
||||||
Viola=堇菜
|
Viola=三色堇
|
||||||
White Dandelion=白蒲公英
|
White Dandelion=白蒲公英
|
||||||
Black Tulip=黑郁金香
|
Black Tulip=黑郁金香
|
||||||
Red Mushroom=红蘑菇
|
Red Mushroom=红蘑菇
|
||||||
Brown Mushroom=棕蘑菇
|
Brown Mushroom=棕蘑菇
|
||||||
Waterlily=荷花
|
Waterlily=睡莲
|
||||||
|
|
12
mods/flowers/locale/flowers.zh_TW.tr
Normal file
12
mods/flowers/locale/flowers.zh_TW.tr
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
# textdomain: flowers
|
||||||
|
Red Rose=紅玫瑰
|
||||||
|
Orange Tulip=橙鬱金香
|
||||||
|
Yellow Dandelion=黃蒲公英
|
||||||
|
Green Chrysanthemum=綠菊花
|
||||||
|
Blue Geranium=藍天竺葵
|
||||||
|
Viola=三色堇
|
||||||
|
White Dandelion=白蒲公英
|
||||||
|
Black Tulip=黑鬱金香
|
||||||
|
Red Mushroom=紅蘑菇
|
||||||
|
Brown Mushroom=棕蘑菇
|
||||||
|
Waterlily=睡蓮
|
|
@ -1,4 +1,4 @@
|
||||||
# textdomain: game_commands
|
# textdomain: game_commands
|
||||||
Kill yourself to respawn=杀死自己并重生
|
Kill yourself to respawn=杀死自己并重生
|
||||||
No static_spawnpoint defined=static_spawnpoint未定义
|
No static_spawnpoint defined=static_spawnpoint 未定义
|
||||||
You need to be online to be killed!=您需要在线才能被杀死!
|
You need to be online to be killed!=您需要在线才能被杀死!
|
||||||
|
|
4
mods/game_commands/locale/game_commands.zh_TW.tr
Normal file
4
mods/game_commands/locale/game_commands.zh_TW.tr
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
# textdomain: game_commands
|
||||||
|
Kill yourself to respawn=殺死自己並重生
|
||||||
|
No static_spawnpoint defined=static_spawnpoint 未定義
|
||||||
|
You need to be online to be killed!=您需要在線才能被殺死!
|
|
@ -1,3 +1,3 @@
|
||||||
# textdomain: map
|
# textdomain: map
|
||||||
Mapping Kit=制地图套件
|
Mapping Kit=地图绘制工具包
|
||||||
Use with 'Minimap' key=与“小地图”键一起使用
|
Use with 'Minimap' key=与“迷你地图”键一起使用
|
||||||
|
|
3
mods/map/locale/map.zh_TW.tr
Normal file
3
mods/map/locale/map.zh_TW.tr
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
# textdomain: map
|
||||||
|
Mapping Kit=地圖繪製工具包
|
||||||
|
Use with 'Minimap' key=與“迷你地圖”鍵一起使用
|
|
@ -96,6 +96,15 @@ end)
|
||||||
local player_set_animation = player_api.set_animation
|
local player_set_animation = player_api.set_animation
|
||||||
local player_attached = player_api.player_attached
|
local player_attached = player_api.player_attached
|
||||||
|
|
||||||
|
-- Prevent knockback for attached players
|
||||||
|
local old_calculate_knockback = minetest.calculate_knockback
|
||||||
|
function minetest.calculate_knockback(player, ...)
|
||||||
|
if player_attached[player:get_player_name()] then
|
||||||
|
return 0
|
||||||
|
end
|
||||||
|
return old_calculate_knockback(player, ...)
|
||||||
|
end
|
||||||
|
|
||||||
-- Check each player and apply animations
|
-- Check each player and apply animations
|
||||||
minetest.register_globalstep(function(dtime)
|
minetest.register_globalstep(function(dtime)
|
||||||
for _, player in pairs(minetest.get_connected_players()) do
|
for _, player in pairs(minetest.get_connected_players()) do
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
# textdomain: screwdriver
|
# textdomain: screwdriver
|
||||||
Screwdriver=Screwdriver
|
Screwdriver=螺丝刀
|
||||||
(left-click rotates face, right-click rotates axis)=(左键单击旋转面,右键单击旋转轴)
|
(left-click rotates face, right-click rotates axis)=(左键单击旋转面,右键单击旋转轴)
|
||||||
|
|
3
mods/screwdriver/locale/screwdriver.zh_TW.tr
Normal file
3
mods/screwdriver/locale/screwdriver.zh_TW.tr
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
# textdomain: screwdriver
|
||||||
|
Screwdriver=螺絲刀
|
||||||
|
(left-click rotates face, right-click rotates axis)=(左鍵單擊旋轉面,右鍵單擊旋轉軸)
|
|
@ -1,8 +1,8 @@
|
||||||
# textdomain: sethome
|
# textdomain: sethome
|
||||||
Can use /sethome and /home=可以使用/sethome和/home
|
Can use /sethome and /home=可以使用/sethome和/home
|
||||||
Teleport you to your home point=传送您到您的家
|
Teleport you to your home point=传送您到您家的地点
|
||||||
Teleported to home!=传送到家了!
|
Teleported to home!=已传送到家!
|
||||||
Set a home using /sethome=使用/sethome设定家
|
Set a home using /sethome=使用/sethome设定家
|
||||||
Set your home point=设定您的家
|
Set your home point=设定您家的地点
|
||||||
Home set!=家设定了!
|
Home set!=已设定家!
|
||||||
Player not found!=找不到玩家!
|
Player not found!=未找到玩家!
|
||||||
|
|
8
mods/sethome/locale/sethome.zh_TW.tr
Normal file
8
mods/sethome/locale/sethome.zh_TW.tr
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
# textdomain: sethome
|
||||||
|
Can use /sethome and /home=可以使用/sethome和/home
|
||||||
|
Teleport you to your home point=傳送您到您家的地點
|
||||||
|
Teleported to home!=已傳送到家!
|
||||||
|
Set a home using /sethome=使用/sethome設定家
|
||||||
|
Set your home point=設定您家的地點
|
||||||
|
Home set!=已設定家!
|
||||||
|
Player not found!=未找到玩家!
|
2
mods/sfinv/locale/sfinv.zh_TW.tr
Normal file
2
mods/sfinv/locale/sfinv.zh_TW.tr
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
# textdomain:sfinv
|
||||||
|
Crafting=合成
|
|
@ -142,4 +142,4 @@ Ice Slab=Dalle de glace
|
||||||
Snow Block Stair=Escalier en bloc de neige
|
Snow Block Stair=Escalier en bloc de neige
|
||||||
Inner Snow Block Stair=Escalier intérieur en bloc de neige
|
Inner Snow Block Stair=Escalier intérieur en bloc de neige
|
||||||
Outer Snow Block Stair=Escalier extérieur en bloc de neige
|
Outer Snow Block Stair=Escalier extérieur en bloc de neige
|
||||||
Snow Block Slab=Escalier en bloc de neige
|
Snow Block Slab=Dalle en bloc de neige
|
||||||
|
|
|
@ -1,145 +1,149 @@
|
||||||
# textdomain: stairs
|
# textdomain: stairs
|
||||||
Glass Stair=玻璃楼梯
|
Glass Stair=玻璃楼梯
|
||||||
Glass Slab=玻璃平板
|
Glass Slab=玻璃台阶
|
||||||
Inner Glass Stair=内玻璃楼梯
|
Inner Glass Stair=玻璃楼梯(内)
|
||||||
Outer Glass Stair=外玻璃楼梯
|
Outer Glass Stair=玻璃楼梯(外)
|
||||||
Obsidian Glass Stair=黑曜石玻璃楼梯
|
Obsidian Glass Stair=黑曜石玻璃楼梯
|
||||||
Obsidian Glass Slab=黑曜石玻璃平板
|
Obsidian Glass Slab=黑曜石玻璃台阶
|
||||||
Inner Obsidian Glass Stair=内黑曜石玻璃楼梯
|
Inner Obsidian Glass Stair=黑曜石玻璃楼梯(内)
|
||||||
Outer Obsidian Glass Stair=外黑曜石玻璃楼梯
|
Outer Obsidian Glass Stair=黑曜石玻璃楼梯(外)
|
||||||
Wooden Stair=木楼梯
|
Wooden Stair=木制楼梯
|
||||||
Inner Wooden Stair=内木楼梯
|
Inner Wooden Stair=木楼梯(内)
|
||||||
Outer Wooden Stair=外木楼梯
|
Outer Wooden Stair=木楼梯(外)
|
||||||
Wooden Slab=木平板
|
Wooden Slab=木制台阶
|
||||||
Jungle Wood Stair=丛林木楼梯
|
Jungle Wood Stair=丛林木楼梯
|
||||||
Inner Jungle Wood Stair=内丛林木楼梯
|
Inner Jungle Wood Stair=丛林木楼梯(内)
|
||||||
Outer Jungle Wood Stair=外丛林木楼梯
|
Outer Jungle Wood Stair=丛林木楼梯(外)
|
||||||
Jungle Wood Slab=丛林木平板
|
Jungle Wood Slab=丛林木台阶
|
||||||
Pine Wood Stair=松木楼梯
|
Pine Wood Stair=松木楼梯
|
||||||
Inner Pine Wood Stair=内松木楼梯
|
Inner Pine Wood Stair=松木楼梯(内)
|
||||||
Outer Pine Wood Stair=外松木楼梯
|
Outer Pine Wood Stair=松木楼梯(外)
|
||||||
Pine Wood Slab=松木平板
|
Pine Wood Slab=松木台阶
|
||||||
Acacia Wood Stair=相思木楼梯
|
Acacia Wood Stair=金合欢木楼梯
|
||||||
Inner Acacia Wood Stair=内相思木楼梯
|
Inner Acacia Wood Stair=金合欢木楼梯(内)
|
||||||
Outer Acacia Wood Stair=外相思木楼梯
|
Outer Acacia Wood Stair=金合欢木楼梯(外)
|
||||||
Acacia Wood Slab=相思木平板
|
Acacia Wood Slab=金合欢木台阶
|
||||||
Aspen Wood Stair=白杨木楼梯
|
Aspen Wood Stair=白杨木楼梯
|
||||||
Inner Aspen Wood Stair=内白杨木楼梯
|
Inner Aspen Wood Stair=白杨木楼梯(内)
|
||||||
Outer Aspen Wood Stair=外白杨木楼梯
|
Outer Aspen Wood Stair=白杨木楼梯(外)
|
||||||
Aspen Wood Slab=白杨木平板
|
Aspen Wood Slab=白杨木台阶
|
||||||
|
Blue Stained Stair=蓝木楼梯
|
||||||
|
Inner Blue Stained Stair=蓝木楼梯(内)
|
||||||
|
Outer Blue Stained Stair=蓝木楼梯(外)
|
||||||
|
Blue Stained Slab=蓝木台阶
|
||||||
Stone Stair=石楼梯
|
Stone Stair=石楼梯
|
||||||
Inner Stone Stair=内石楼梯
|
Inner Stone Stair=石楼梯(内)
|
||||||
Outer Stone Stair=外石楼梯
|
Outer Stone Stair=石楼梯(外)
|
||||||
Stone Slab=石平板
|
Stone Slab=石台阶
|
||||||
Cobblestone Stair=鹅卵石楼梯
|
Cobblestone Stair=圆石楼梯
|
||||||
Inner Cobblestone Stair=内鹅卵石楼梯
|
Inner Cobblestone Stair=圆石楼梯(内)
|
||||||
Outer Cobblestone Stair=外鹅卵石楼梯
|
Outer Cobblestone Stair=圆石楼梯(外)
|
||||||
Cobblestone Slab=鹅卵石平板
|
Cobblestone Slab=圆石台阶
|
||||||
Mossy Cobblestone Stair=生苔的鹅卵石楼梯
|
Mossy Cobblestone Stair=苔石楼梯
|
||||||
Inner Mossy Cobblestone Stair=内生苔的鹅卵石楼梯
|
Inner Mossy Cobblestone Stair=苔石楼梯(内)
|
||||||
Outer Mossy Cobblestone Stair=外生苔的鹅卵石楼梯
|
Outer Mossy Cobblestone Stair=苔石楼梯(外)
|
||||||
Mossy Cobblestone Slab=生苔的鹅卵石平板
|
Mossy Cobblestone Slab=苔石台阶
|
||||||
Stone Brick Stair=石砖楼梯
|
Stone Brick Stair=石砖楼梯
|
||||||
Inner Stone Brick Stair=内石砖楼梯
|
Inner Stone Brick Stair=石砖楼梯(内)
|
||||||
Outer Stone Brick Stair=外石砖楼梯
|
Outer Stone Brick Stair=石砖楼梯(外)
|
||||||
Stone Brick Slab=石砖平板
|
Stone Brick Slab=石砖台阶
|
||||||
Stone Block Stair=石块楼梯
|
Stone Block Stair=石块楼梯
|
||||||
Inner Stone Block Stair=内石块楼梯
|
Inner Stone Block Stair=石块楼梯(内)
|
||||||
Outer Stone Block Stair=外石块楼梯
|
Outer Stone Block Stair=石块楼梯(外)
|
||||||
Stone Block Slab=石块平板
|
Stone Block Slab=石块台阶
|
||||||
Desert Stone Stair=沙漠石楼梯
|
Desert Stone Stair=沙漠石楼梯
|
||||||
Inner Desert Stone Stair=内沙漠石楼梯
|
Inner Desert Stone Stair=沙漠石楼梯(内)
|
||||||
Outer Desert Stone Stair=外沙漠石楼梯
|
Outer Desert Stone Stair=沙漠石楼梯(外)
|
||||||
Desert Stone Slab=沙漠石平板
|
Desert Stone Slab=沙漠石台阶
|
||||||
Desert Cobblestone Stair=沙漠鹅卵石楼梯
|
Desert Cobblestone Stair=沙漠圆石楼梯
|
||||||
Inner Desert Cobblestone Stair=内沙漠鹅卵石
|
Inner Desert Cobblestone Stair=沙漠圆石楼梯(内)
|
||||||
Outer Desert Cobblestone Stair=外沙漠鹅卵石
|
Outer Desert Cobblestone Stair=沙漠圆石楼梯(外)
|
||||||
Desert Cobblestone Slab=沙漠鹅卵石平板
|
Desert Cobblestone Slab=沙漠圆石台阶
|
||||||
Desert Stone Brick Stair=沙漠石砖楼梯
|
Desert Stone Brick Stair=沙漠石砖楼梯
|
||||||
Inner Desert Stone Brick Stair=内沙漠石砖楼梯
|
Inner Desert Stone Brick Stair=沙漠石砖楼梯(内)
|
||||||
Outer Desert Stone Brick Stair=外沙漠石砖楼梯
|
Outer Desert Stone Brick Stair=沙漠石砖楼梯(外)
|
||||||
Desert Stone Brick Slab=沙漠石砖平板
|
Desert Stone Brick Slab=沙漠石砖台阶
|
||||||
Desert Stone Block Stair=沙漠石块楼梯
|
Desert Stone Block Stair=沙漠石块楼梯
|
||||||
Inner Desert Stone Block Stair=内沙漠石块楼梯
|
Inner Desert Stone Block Stair=沙漠石块楼梯(内)
|
||||||
Outer Desert Stone Block Stair=外沙漠石块楼梯
|
Outer Desert Stone Block Stair=沙漠石块楼梯(外)
|
||||||
Desert Stone Block Slab=沙漠石块平板
|
Desert Stone Block Slab=沙漠石块台阶
|
||||||
Sandstone Stair=砂岩楼梯
|
Sandstone Stair=沙石楼梯
|
||||||
Inner Sandstone Stair=内砂岩楼梯
|
Inner Sandstone Stair=沙石楼梯(内)
|
||||||
Outer Sandstone Stair=外砂岩楼梯
|
Outer Sandstone Stair=沙石楼梯(外)
|
||||||
Sandstone Slab=砂岩平板
|
Sandstone Slab=沙石台阶
|
||||||
Sandstone Brick Stair=砂岩砖楼梯
|
Sandstone Brick Stair=沙石砖楼梯
|
||||||
Inner Sandstone Brick Stair=内砂岩砖楼梯
|
Inner Sandstone Brick Stair=沙石砖楼梯(内)
|
||||||
Outer Sandstone Brick Stair=外砂岩砖楼梯
|
Outer Sandstone Brick Stair=沙石砖楼梯(外)
|
||||||
Sandstone Brick Slab=砂岩砖平板
|
Sandstone Brick Slab=沙石砖台阶
|
||||||
Sandstone Block Stair=砂岩块楼梯
|
Sandstone Block Stair=沙石块楼梯
|
||||||
Inner Sandstone Block Stair=内砂岩块楼梯
|
Inner Sandstone Block Stair=沙石块楼梯(内)
|
||||||
Outer Sandstone Block Stair=外砂岩块楼梯
|
Outer Sandstone Block Stair=沙石块楼梯(外)
|
||||||
Sandstone Block Slab=砂岩块平板
|
Sandstone Block Slab=沙石块台阶
|
||||||
Desert Sandstone Stair=沙漠砂岩楼梯
|
Desert Sandstone Stair=沙漠沙石楼梯
|
||||||
Inner Desert Sandstone Stair=内沙漠砂岩楼梯
|
Inner Desert Sandstone Stair=沙漠沙石楼梯(内)
|
||||||
Outer Desert Sandstone Stair=外沙漠砂岩楼梯
|
Outer Desert Sandstone Stair=沙漠沙石楼梯(外)
|
||||||
Desert Sandstone Slab=沙漠砂岩平板
|
Desert Sandstone Slab=沙漠沙石台阶
|
||||||
Desert Sandstone Brick Stair=沙漠砂岩砖楼梯
|
Desert Sandstone Brick Stair=沙漠沙石砖楼梯
|
||||||
Inner Desert Sandstone Brick Stair=内沙漠砂岩砖楼梯
|
Inner Desert Sandstone Brick Stair=沙漠沙石砖楼梯(内)
|
||||||
Outer Desert Sandstone Brick Stair=外沙漠砂岩砖楼梯
|
Outer Desert Sandstone Brick Stair=沙漠沙石砖楼梯(外)
|
||||||
Desert Sandstone Brick Slab=沙漠砂岩砖平板
|
Desert Sandstone Brick Slab=沙漠沙石砖台阶
|
||||||
Desert Sandstone Block Stair=沙漠砂岩块楼梯
|
Desert Sandstone Block Stair=沙漠沙石块楼梯
|
||||||
Inner Desert Sandstone Block Stair=内沙漠砂岩块楼梯
|
Inner Desert Sandstone Block Stair=沙漠沙石块楼梯(内)
|
||||||
Outer Desert Sandstone Block Stair=外沙漠砂岩块楼梯
|
Outer Desert Sandstone Block Stair=沙漠沙石块楼梯(外)
|
||||||
Desert Sandstone Block Slab=沙漠砂岩块平板
|
Desert Sandstone Block Slab=沙漠沙石块台阶
|
||||||
Silver Sandstone Stair=银砂岩楼梯
|
Silver Sandstone Stair=银沙石楼梯
|
||||||
Inner Silver Sandstone Stair=内银砂岩楼梯
|
Inner Silver Sandstone Stair=银沙石楼梯(内)
|
||||||
Outer Silver Sandstone Stair=外银砂岩楼梯
|
Outer Silver Sandstone Stair=银沙石楼梯(外)
|
||||||
Silver Sandstone Slab=银砂岩平板
|
Silver Sandstone Slab=银沙石台阶
|
||||||
Silver Sandstone Brick Stair=银砂岩砖楼梯
|
Silver Sandstone Brick Stair=银沙石砖楼梯
|
||||||
Inner Silver Sandstone Brick Stair=内银砂岩砖楼梯
|
Inner Silver Sandstone Brick Stair=银沙石砖楼梯(内)
|
||||||
Outer Silver Sandstone Brick Stair=外银砂岩砖楼梯
|
Outer Silver Sandstone Brick Stair=银沙石砖楼梯(外)
|
||||||
Silver Sandstone Brick Slab=银砂岩砖平板
|
Silver Sandstone Brick Slab=银沙石砖台阶
|
||||||
Silver Sandstone Block Stair=银砂岩块楼梯
|
Silver Sandstone Block Stair=银沙石块楼梯
|
||||||
Inner Silver Sandstone Block Stair=内银砂岩块楼梯
|
Inner Silver Sandstone Block Stair=银沙石块楼梯(内)
|
||||||
Outer Silver Sandstone Block Stair=外银砂岩块楼梯
|
Outer Silver Sandstone Block Stair=银沙石块楼梯(外)
|
||||||
Silver Sandstone Block Slab=银砂岩块平板
|
Silver Sandstone Block Slab=银沙石块台阶
|
||||||
Obsidian Stair=黑曜石楼梯
|
Obsidian Stair=黑曜石楼梯
|
||||||
Inner Obsidian Stair=内黑曜石楼梯
|
Inner Obsidian Stair=黑曜石楼梯(内)
|
||||||
Outer Obsidian Stair=外黑曜石楼梯
|
Outer Obsidian Stair=黑曜石楼梯(外)
|
||||||
Obsidian Slab=黑曜石平板
|
Obsidian Slab=黑曜石台阶
|
||||||
Obsidian Brick Stair=黑曜石砖楼梯
|
Obsidian Brick Stair=黑曜石砖楼梯
|
||||||
Inner Obsidian Brick Stair=内黑曜石砖楼梯
|
Inner Obsidian Brick Stair=黑曜石砖楼梯(内)
|
||||||
Outer Obsidian Brick Stair=外黑曜石砖楼梯
|
Outer Obsidian Brick Stair=黑曜石砖楼梯(外)
|
||||||
Obsidian Brick Slab=黑曜石砖平板
|
Obsidian Brick Slab=黑曜石砖台阶
|
||||||
Obsidian Block Stair=黑曜石块楼梯
|
Obsidian Block Stair=黑曜石块楼梯
|
||||||
Inner Obsidian Block Stair=内黑曜石块楼梯
|
Inner Obsidian Block Stair=黑曜石块楼梯(内)
|
||||||
Outer Obsidian Block Stair=外黑曜石块楼梯
|
Outer Obsidian Block Stair=黑曜石块楼梯(外)
|
||||||
Obsidian Block Slab=黑曜石块平板
|
Obsidian Block Slab=黑曜石块台阶
|
||||||
Brick Stair=砖楼梯
|
Brick Stair=砖楼梯
|
||||||
Inner Brick Stair=内砖楼梯
|
Inner Brick Stair=砖楼梯(内)
|
||||||
Outer Brick Stair=外砖楼梯
|
Outer Brick Stair=砖楼梯(外)
|
||||||
Brick Slab=砖平板
|
Brick Slab=砖制台阶
|
||||||
Steel Block Stair=钢楼梯
|
Steel Block Stair=铁块楼梯
|
||||||
Inner Steel Block Stair=内钢楼梯
|
Inner Steel Block Stair=铁块楼梯(内)
|
||||||
Outer Steel Block Stair=外钢楼梯
|
Outer Steel Block Stair=铁块楼梯(外)
|
||||||
Steel Block Slab=钢平板
|
Steel Block Slab=铁块台阶
|
||||||
Tin Block Stair=锡楼梯
|
Tin Block Stair=锡块楼梯
|
||||||
Inner Tin Block Stair=内锡楼梯
|
Inner Tin Block Stair=锡块楼梯(内)
|
||||||
Outer Tin Block Stair=外锡楼梯
|
Outer Tin Block Stair=锡块楼梯(外)
|
||||||
Tin Block Slab=锡平板
|
Tin Block Slab=锡块台阶
|
||||||
Copper Block Stair=铜楼梯
|
Copper Block Stair=铜块楼梯
|
||||||
Inner Copper Block Stair=内铜楼梯
|
Inner Copper Block Stair=铜块楼梯(内)
|
||||||
Outer Copper Block Stair=外铜楼梯
|
Outer Copper Block Stair=铜块楼梯(外)
|
||||||
Copper Block Slab=铜平板
|
Copper Block Slab=铜块台阶
|
||||||
Bronze Block Stair=青铜楼梯
|
Bronze Block Stair=青铜块楼梯
|
||||||
Inner Bronze Block Stair=内青铜楼梯
|
Inner Bronze Block Stair=青铜块楼梯(内)
|
||||||
Outer Bronze Block Stair=外青铜楼梯
|
Outer Bronze Block Stair=青铜块楼梯(外)
|
||||||
Bronze Block Slab=青铜平板
|
Bronze Block Slab=青铜块台阶
|
||||||
Gold Block Stair=金楼梯
|
Gold Block Stair=金块楼梯
|
||||||
Inner Gold Block Stair=内金楼梯
|
Inner Gold Block Stair=金块楼梯(内)
|
||||||
Outer Gold Block Stair=外金楼梯
|
Outer Gold Block Stair=金块楼梯(外)
|
||||||
Gold Block Slab=金平板
|
Gold Block Slab=金块台阶
|
||||||
Ice Stair=冰楼梯
|
Ice Stair=冰阶梯
|
||||||
Inner Ice Stair=内冰楼梯
|
Inner Ice Stair=冰块楼梯(内)
|
||||||
Outer Ice Stair=外冰楼梯
|
Outer Ice Stair=冰块楼梯(外)
|
||||||
Ice Slab=冰平板
|
Ice Slab=冰台阶
|
||||||
Snow Block Stair=雪块楼梯
|
Snow Block Stair=雪块楼梯
|
||||||
Inner Snow Block Stair=内雪块楼梯
|
Inner Snow Block Stair=雪块楼梯(内)
|
||||||
Outer Snow Block Stair=外雪块楼梯
|
Outer Snow Block Stair=雪块楼梯(外)
|
||||||
Snow Block Slab=雪块平板
|
Snow Block Slab=雪块台阶
|
||||||
|
|
149
mods/stairs/locale/stairs.zh_TW.tr
Normal file
149
mods/stairs/locale/stairs.zh_TW.tr
Normal file
|
@ -0,0 +1,149 @@
|
||||||
|
# textdomain: stairs
|
||||||
|
Glass Stair=玻璃樓梯
|
||||||
|
Glass Slab=玻璃臺階
|
||||||
|
Inner Glass Stair=玻璃樓梯(內)
|
||||||
|
Outer Glass Stair=玻璃樓梯(外)
|
||||||
|
Obsidian Glass Stair=黑曜石玻璃樓梯
|
||||||
|
Obsidian Glass Slab=黑曜石玻璃臺階
|
||||||
|
Inner Obsidian Glass Stair=黑曜石玻璃樓梯(內)
|
||||||
|
Outer Obsidian Glass Stair=黑曜石玻璃樓梯(外)
|
||||||
|
Wooden Stair=木製樓梯
|
||||||
|
Inner Wooden Stair=木樓梯(內)
|
||||||
|
Outer Wooden Stair=木樓梯(外)
|
||||||
|
Wooden Slab=木製臺階
|
||||||
|
Jungle Wood Stair=叢林木樓梯
|
||||||
|
Inner Jungle Wood Stair=叢林木樓梯(內)
|
||||||
|
Outer Jungle Wood Stair=叢林木樓梯(外)
|
||||||
|
Jungle Wood Slab=叢林木臺階
|
||||||
|
Pine Wood Stair=松木樓梯
|
||||||
|
Inner Pine Wood Stair=松木樓梯(內)
|
||||||
|
Outer Pine Wood Stair=松木樓梯(外)
|
||||||
|
Pine Wood Slab=松木臺階
|
||||||
|
Acacia Wood Stair=金合歡木樓梯
|
||||||
|
Inner Acacia Wood Stair=金合歡木樓梯(內)
|
||||||
|
Outer Acacia Wood Stair=金合歡木樓梯(外)
|
||||||
|
Acacia Wood Slab=金合歡木臺階
|
||||||
|
Aspen Wood Stair=白楊木樓梯
|
||||||
|
Inner Aspen Wood Stair=白楊木樓梯(內)
|
||||||
|
Outer Aspen Wood Stair=白楊木樓梯(外)
|
||||||
|
Aspen Wood Slab=白楊木臺階
|
||||||
|
Blue Stained Stair=藍木樓梯
|
||||||
|
Inner Blue Stained Stair=藍木樓梯(內)
|
||||||
|
Outer Blue Stained Stair=藍木樓梯(外)
|
||||||
|
Blue Stained Slab=藍木臺階
|
||||||
|
Stone Stair=石樓梯
|
||||||
|
Inner Stone Stair=石樓梯(內)
|
||||||
|
Outer Stone Stair=石樓梯(外)
|
||||||
|
Stone Slab=石臺階
|
||||||
|
Cobblestone Stair=圓石樓梯
|
||||||
|
Inner Cobblestone Stair=圓石樓梯(內)
|
||||||
|
Outer Cobblestone Stair=圓石樓梯(外)
|
||||||
|
Cobblestone Slab=圓石臺階
|
||||||
|
Mossy Cobblestone Stair=苔石樓梯
|
||||||
|
Inner Mossy Cobblestone Stair=苔石樓梯(內)
|
||||||
|
Outer Mossy Cobblestone Stair=苔石樓梯(外)
|
||||||
|
Mossy Cobblestone Slab=苔石臺階
|
||||||
|
Stone Brick Stair=石磚樓梯
|
||||||
|
Inner Stone Brick Stair=石磚樓梯(內)
|
||||||
|
Outer Stone Brick Stair=石磚樓梯(外)
|
||||||
|
Stone Brick Slab=石磚臺階
|
||||||
|
Stone Block Stair=石塊樓梯
|
||||||
|
Inner Stone Block Stair=石塊樓梯(內)
|
||||||
|
Outer Stone Block Stair=石塊樓梯(外)
|
||||||
|
Stone Block Slab=石塊臺階
|
||||||
|
Desert Stone Stair=沙漠石樓梯
|
||||||
|
Inner Desert Stone Stair=沙漠石樓梯(內)
|
||||||
|
Outer Desert Stone Stair=沙漠石樓梯(外)
|
||||||
|
Desert Stone Slab=沙漠石臺階
|
||||||
|
Desert Cobblestone Stair=沙漠圓石樓梯
|
||||||
|
Inner Desert Cobblestone Stair=沙漠圓石樓梯(內)
|
||||||
|
Outer Desert Cobblestone Stair=沙漠圓石樓梯(外)
|
||||||
|
Desert Cobblestone Slab=沙漠圓石臺階
|
||||||
|
Desert Stone Brick Stair=沙漠石磚樓梯
|
||||||
|
Inner Desert Stone Brick Stair=沙漠石磚樓梯(內)
|
||||||
|
Outer Desert Stone Brick Stair=沙漠石磚樓梯(外)
|
||||||
|
Desert Stone Brick Slab=沙漠石磚臺階
|
||||||
|
Desert Stone Block Stair=沙漠石塊樓梯
|
||||||
|
Inner Desert Stone Block Stair=沙漠石塊樓梯(內)
|
||||||
|
Outer Desert Stone Block Stair=沙漠石塊樓梯(外)
|
||||||
|
Desert Stone Block Slab=沙漠石塊臺階
|
||||||
|
Sandstone Stair=沙石樓梯
|
||||||
|
Inner Sandstone Stair=沙石樓梯(內)
|
||||||
|
Outer Sandstone Stair=沙石樓梯(外)
|
||||||
|
Sandstone Slab=沙石臺階
|
||||||
|
Sandstone Brick Stair=沙石磚樓梯
|
||||||
|
Inner Sandstone Brick Stair=沙石磚樓梯(內)
|
||||||
|
Outer Sandstone Brick Stair=沙石磚樓梯(外)
|
||||||
|
Sandstone Brick Slab=沙石磚臺階
|
||||||
|
Sandstone Block Stair=沙石塊樓梯
|
||||||
|
Inner Sandstone Block Stair=沙石塊樓梯(內)
|
||||||
|
Outer Sandstone Block Stair=沙石塊樓梯(外)
|
||||||
|
Sandstone Block Slab=沙石塊臺階
|
||||||
|
Desert Sandstone Stair=沙漠沙石樓梯
|
||||||
|
Inner Desert Sandstone Stair=沙漠沙石樓梯(內)
|
||||||
|
Outer Desert Sandstone Stair=沙漠沙石樓梯(外)
|
||||||
|
Desert Sandstone Slab=沙漠沙石臺階
|
||||||
|
Desert Sandstone Brick Stair=沙漠沙石磚樓梯
|
||||||
|
Inner Desert Sandstone Brick Stair=沙漠沙石磚樓梯(內)
|
||||||
|
Outer Desert Sandstone Brick Stair=沙漠沙石磚樓梯(外)
|
||||||
|
Desert Sandstone Brick Slab=沙漠沙石磚臺階
|
||||||
|
Desert Sandstone Block Stair=沙漠沙石塊樓梯
|
||||||
|
Inner Desert Sandstone Block Stair=沙漠沙石塊樓梯(內)
|
||||||
|
Outer Desert Sandstone Block Stair=沙漠沙石塊樓梯(外)
|
||||||
|
Desert Sandstone Block Slab=沙漠沙石塊臺階
|
||||||
|
Silver Sandstone Stair=銀沙石樓梯
|
||||||
|
Inner Silver Sandstone Stair=銀沙石樓梯(內)
|
||||||
|
Outer Silver Sandstone Stair=銀沙石樓梯(外)
|
||||||
|
Silver Sandstone Slab=銀沙石臺階
|
||||||
|
Silver Sandstone Brick Stair=銀沙石磚樓梯
|
||||||
|
Inner Silver Sandstone Brick Stair=銀沙石磚樓梯(內)
|
||||||
|
Outer Silver Sandstone Brick Stair=銀沙石磚樓梯(外)
|
||||||
|
Silver Sandstone Brick Slab=銀沙石磚臺階
|
||||||
|
Silver Sandstone Block Stair=銀沙石塊樓梯
|
||||||
|
Inner Silver Sandstone Block Stair=銀沙石塊樓梯(內)
|
||||||
|
Outer Silver Sandstone Block Stair=銀沙石塊樓梯(外)
|
||||||
|
Silver Sandstone Block Slab=銀沙石塊臺階
|
||||||
|
Obsidian Stair=黑曜石樓梯
|
||||||
|
Inner Obsidian Stair=黑曜石樓梯(內)
|
||||||
|
Outer Obsidian Stair=黑曜石樓梯(外)
|
||||||
|
Obsidian Slab=黑曜石臺階
|
||||||
|
Obsidian Brick Stair=黑曜石磚樓梯
|
||||||
|
Inner Obsidian Brick Stair=黑曜石磚樓梯(內)
|
||||||
|
Outer Obsidian Brick Stair=黑曜石磚樓梯(外)
|
||||||
|
Obsidian Brick Slab=黑曜石磚臺階
|
||||||
|
Obsidian Block Stair=黑曜石塊樓梯
|
||||||
|
Inner Obsidian Block Stair=黑曜石塊樓梯(內)
|
||||||
|
Outer Obsidian Block Stair=黑曜石塊樓梯(外)
|
||||||
|
Obsidian Block Slab=黑曜石塊臺階
|
||||||
|
Brick Stair=磚樓梯
|
||||||
|
Inner Brick Stair=磚樓梯(內)
|
||||||
|
Outer Brick Stair=磚樓梯(外)
|
||||||
|
Brick Slab=磚制臺階
|
||||||
|
Steel Block Stair=鐵塊樓梯
|
||||||
|
Inner Steel Block Stair=鐵塊樓梯(內)
|
||||||
|
Outer Steel Block Stair=鐵塊樓梯(外)
|
||||||
|
Steel Block Slab=鐵塊臺階
|
||||||
|
Tin Block Stair=錫塊樓梯
|
||||||
|
Inner Tin Block Stair=錫塊樓梯(內)
|
||||||
|
Outer Tin Block Stair=錫塊樓梯(外)
|
||||||
|
Tin Block Slab=錫塊臺階
|
||||||
|
Copper Block Stair=銅塊樓梯
|
||||||
|
Inner Copper Block Stair=銅塊樓梯(內)
|
||||||
|
Outer Copper Block Stair=銅塊樓梯(外)
|
||||||
|
Copper Block Slab=銅塊臺階
|
||||||
|
Bronze Block Stair=青銅塊樓梯
|
||||||
|
Inner Bronze Block Stair=青銅塊樓梯(內)
|
||||||
|
Outer Bronze Block Stair=青銅塊樓梯(外)
|
||||||
|
Bronze Block Slab=青銅塊臺階
|
||||||
|
Gold Block Stair=金塊樓梯
|
||||||
|
Inner Gold Block Stair=金塊樓梯(內)
|
||||||
|
Outer Gold Block Stair=金塊樓梯(外)
|
||||||
|
Gold Block Slab=金塊臺階
|
||||||
|
Ice Stair=冰階梯
|
||||||
|
Inner Ice Stair=冰塊樓梯(內)
|
||||||
|
Outer Ice Stair=冰塊樓梯(外)
|
||||||
|
Ice Slab=冰臺階
|
||||||
|
Snow Block Stair=雪塊樓梯
|
||||||
|
Inner Snow Block Stair=雪塊樓梯(內)
|
||||||
|
Outer Snow Block Stair=雪塊樓梯(外)
|
||||||
|
Snow Block Slab=雪塊臺階
|
|
@ -163,9 +163,8 @@ local function entity_physics(pos, radius, drops)
|
||||||
|
|
||||||
local damage = (4 / dist) * radius
|
local damage = (4 / dist) * radius
|
||||||
if obj:is_player() then
|
if obj:is_player() then
|
||||||
-- currently the engine has no method to set
|
-- we knock the player back 1.0 node, and slightly upwards
|
||||||
-- player velocity. See #2960
|
-- TODO: switch to add_player_velocity() introduced in 5.1
|
||||||
-- instead, we knock the player back 1.0 node, and slightly upwards
|
|
||||||
local dir = vector.normalize(vector.subtract(obj_pos, pos))
|
local dir = vector.normalize(vector.subtract(obj_pos, pos))
|
||||||
local moveoff = vector.multiply(dir, dist + 1.0)
|
local moveoff = vector.multiply(dir, dist + 1.0)
|
||||||
local newpos = vector.add(pos, moveoff)
|
local newpos = vector.add(pos, moveoff)
|
||||||
|
@ -174,31 +173,35 @@ local function entity_physics(pos, radius, drops)
|
||||||
|
|
||||||
obj:set_hp(obj:get_hp() - damage)
|
obj:set_hp(obj:get_hp() - damage)
|
||||||
else
|
else
|
||||||
local do_damage = true
|
|
||||||
local do_knockback = true
|
|
||||||
local entity_drops = {}
|
|
||||||
local luaobj = obj:get_luaentity()
|
local luaobj = obj:get_luaentity()
|
||||||
local objdef = minetest.registered_entities[luaobj.name]
|
|
||||||
|
|
||||||
if objdef and objdef.on_blast then
|
-- object might have disappeared somehow
|
||||||
do_damage, do_knockback, entity_drops = objdef.on_blast(luaobj, damage)
|
if luaobj then
|
||||||
end
|
local do_damage = true
|
||||||
|
local do_knockback = true
|
||||||
|
local entity_drops = {}
|
||||||
|
local objdef = minetest.registered_entities[luaobj.name]
|
||||||
|
|
||||||
if do_knockback then
|
if objdef and objdef.on_blast then
|
||||||
local obj_vel = obj:get_velocity()
|
do_damage, do_knockback, entity_drops = objdef.on_blast(luaobj, damage)
|
||||||
obj:set_velocity(calc_velocity(pos, obj_pos,
|
end
|
||||||
obj_vel, radius * 10))
|
|
||||||
end
|
if do_knockback then
|
||||||
if do_damage then
|
local obj_vel = obj:get_velocity()
|
||||||
if not obj:get_armor_groups().immortal then
|
obj:set_velocity(calc_velocity(pos, obj_pos,
|
||||||
obj:punch(obj, 1.0, {
|
obj_vel, radius * 10))
|
||||||
full_punch_interval = 1.0,
|
end
|
||||||
damage_groups = {fleshy = damage},
|
if do_damage then
|
||||||
}, nil)
|
if not obj:get_armor_groups().immortal then
|
||||||
|
obj:punch(obj, 1.0, {
|
||||||
|
full_punch_interval = 1.0,
|
||||||
|
damage_groups = {fleshy = damage},
|
||||||
|
}, nil)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
for _, item in pairs(entity_drops) do
|
||||||
|
add_drop(drops, item)
|
||||||
end
|
end
|
||||||
end
|
|
||||||
for _, item in pairs(entity_drops) do
|
|
||||||
add_drop(drops, item)
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -274,7 +277,7 @@ function tnt.burn(pos, nodename)
|
||||||
def.on_ignite(pos)
|
def.on_ignite(pos)
|
||||||
elseif minetest.get_item_group(name, "tnt") > 0 then
|
elseif minetest.get_item_group(name, "tnt") > 0 then
|
||||||
minetest.swap_node(pos, {name = name .. "_burning"})
|
minetest.swap_node(pos, {name = name .. "_burning"})
|
||||||
minetest.sound_play("tnt_ignite", {pos = pos})
|
minetest.sound_play("tnt_ignite", {pos = pos}, true)
|
||||||
minetest.get_node_timer(pos):start(1)
|
minetest.get_node_timer(pos):start(1)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -403,7 +406,7 @@ function tnt.boom(pos, def)
|
||||||
end
|
end
|
||||||
local sound = def.sound or "tnt_explode"
|
local sound = def.sound or "tnt_explode"
|
||||||
minetest.sound_play(sound, {pos = pos, gain = 2.5,
|
minetest.sound_play(sound, {pos = pos, gain = 2.5,
|
||||||
max_hear_distance = math.min(def.radius * 20, 128)})
|
max_hear_distance = math.min(def.radius * 20, 128)}, true)
|
||||||
local drops, radius = tnt_explode(pos, def.radius, def.ignore_protection,
|
local drops, radius = tnt_explode(pos, def.radius, def.ignore_protection,
|
||||||
def.ignore_on_blast, owner, def.explode_center)
|
def.ignore_on_blast, owner, def.explode_center)
|
||||||
-- append entity drops
|
-- append entity drops
|
||||||
|
@ -541,7 +544,8 @@ minetest.register_node("tnt:gunpowder_burning", {
|
||||||
-- unaffected by explosions
|
-- unaffected by explosions
|
||||||
on_blast = function() end,
|
on_blast = function() end,
|
||||||
on_construct = function(pos)
|
on_construct = function(pos)
|
||||||
minetest.sound_play("tnt_gunpowder_burning", {pos = pos, gain = 2})
|
minetest.sound_play("tnt_gunpowder_burning", {pos = pos,
|
||||||
|
gain = 2}, true)
|
||||||
minetest.get_node_timer(pos):start(1)
|
minetest.get_node_timer(pos):start(1)
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
@ -672,7 +676,7 @@ function tnt.register_tnt(def)
|
||||||
-- unaffected by explosions
|
-- unaffected by explosions
|
||||||
on_blast = function() end,
|
on_blast = function() end,
|
||||||
on_construct = function(pos)
|
on_construct = function(pos)
|
||||||
minetest.sound_play("tnt_ignite", {pos = pos})
|
minetest.sound_play("tnt_ignite", {pos = pos}, true)
|
||||||
minetest.get_node_timer(pos):start(4)
|
minetest.get_node_timer(pos):start(4)
|
||||||
minetest.check_for_falling(pos)
|
minetest.check_for_falling(pos)
|
||||||
end,
|
end,
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# textdomain: tnt
|
# textdomain: tnt
|
||||||
Gun Powder=火药粉
|
Gun Powder=火药粉
|
||||||
TNT Stick=炸药棒
|
TNT Stick=炸药棒
|
||||||
TNT=炸药
|
TNT=炸药包
|
||||||
|
|
4
mods/tnt/locale/tnt.zh_TW.tr
Normal file
4
mods/tnt/locale/tnt.zh_TW.tr
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
# textdomain: tnt
|
||||||
|
Gun Powder=火藥粉
|
||||||
|
TNT Stick=炸藥棒
|
||||||
|
TNT=炸藥包
|
|
@ -228,3 +228,10 @@ minetest.register_craft({
|
||||||
recipe = "vessels:shelf",
|
recipe = "vessels:shelf",
|
||||||
burntime = 30,
|
burntime = 30,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
-- Register glass fragments as dungeon loot
|
||||||
|
if minetest.global_exists("dungeon_loot") then
|
||||||
|
dungeon_loot.register({
|
||||||
|
name = "vessels:glass_fragments", chance = 0.35, count = {1, 4}
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
Vessels Shelf=容器架
|
Vessels Shelf=容器架
|
||||||
Empty Glass Bottle=空玻璃瓶
|
Empty Glass Bottle=空玻璃瓶
|
||||||
Empty Drinking Glass=空水杯
|
Empty Drinking Glass=空水杯
|
||||||
Empty Heavy Steel Bottle=空重钢瓶
|
Empty Heavy Steel Bottle=空重型钢瓶
|
||||||
Glass Fragments=玻璃碎片
|
Glass Fragments=玻璃碎片
|
||||||
Empty Vessels Shelf=空容器架
|
Empty Vessels Shelf=空容器架
|
||||||
Vessels Shelf (@1 items)=容器架(@1项)
|
Vessels Shelf (@1 items)=容器架(@1项)
|
||||||
|
|
8
mods/vessels/locale/vessels.zh_TW.tr
Normal file
8
mods/vessels/locale/vessels.zh_TW.tr
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
# textdomain: vessels
|
||||||
|
Vessels Shelf=容器架
|
||||||
|
Empty Glass Bottle=空玻璃瓶
|
||||||
|
Empty Drinking Glass=空水杯
|
||||||
|
Empty Heavy Steel Bottle=空重型鋼瓶
|
||||||
|
Glass Fragments=玻璃碎片
|
||||||
|
Empty Vessels Shelf=空容器架
|
||||||
|
Vessels Shelf (@1 items)=容器架(@1項)
|
|
@ -1,3 +1,4 @@
|
||||||
name = vessels
|
name = vessels
|
||||||
description = Minetest Game mod: vessels
|
description = Minetest Game mod: vessels
|
||||||
depends = default
|
depends = default
|
||||||
|
optional_depends = dungeon_loot
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# textdomain: walls
|
# textdomain: walls
|
||||||
Cobblestone Wall=鹅卵石墙
|
Cobblestone Wall=鹅卵石墙
|
||||||
Mossy Cobblestone Wall=生苔的鹅卵石墙
|
Mossy Cobblestone Wall=苔藓覆盖的鹅卵石墙
|
||||||
Desert Cobblestone Wall=沙漠鹅卵石墙
|
Desert Cobblestone Wall=沙漠鹅卵石墙
|
||||||
|
|
4
mods/walls/locale/walls.zh_TW.tr
Normal file
4
mods/walls/locale/walls.zh_TW.tr
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
# textdomain: walls
|
||||||
|
Cobblestone Wall=鵝卵石牆
|
||||||
|
Mossy Cobblestone Wall=苔蘚覆蓋的鵝卵石牆
|
||||||
|
Desert Cobblestone Wall=沙漠鵝卵石牆
|
|
@ -13,4 +13,4 @@ Brown Wool=棕羊毛
|
||||||
Orange Wool=橙羊毛
|
Orange Wool=橙羊毛
|
||||||
Red Wool=红羊毛
|
Red Wool=红羊毛
|
||||||
Magenta Wool=品红羊毛
|
Magenta Wool=品红羊毛
|
||||||
Pink Wool=淡红羊毛
|
Pink Wool=粉红羊毛
|
||||||
|
|
16
mods/wool/locale/wool.zh_TW.tr
Normal file
16
mods/wool/locale/wool.zh_TW.tr
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
# textdomain: wool
|
||||||
|
White Wool=白羊毛
|
||||||
|
Grey Wool=灰羊毛
|
||||||
|
Dark Grey Wool=暗灰羊毛
|
||||||
|
Black Wool=黑羊毛
|
||||||
|
Violet Wool=紫羊毛
|
||||||
|
Blue Wool=藍羊毛
|
||||||
|
Cyan Wool=青羊毛
|
||||||
|
Dark Green Wool=暗綠羊毛
|
||||||
|
Green Wool=綠羊毛
|
||||||
|
Yellow Wool=黃羊毛
|
||||||
|
Brown Wool=棕羊毛
|
||||||
|
Orange Wool=橙羊毛
|
||||||
|
Red Wool=紅羊毛
|
||||||
|
Magenta Wool=品紅羊毛
|
||||||
|
Pink Wool=粉紅羊毛
|
|
@ -106,12 +106,12 @@ function xpanes.register_pane(name, def)
|
||||||
wield_image = def.wield_image,
|
wield_image = def.wield_image,
|
||||||
paramtype2 = "facedir",
|
paramtype2 = "facedir",
|
||||||
tiles = {
|
tiles = {
|
||||||
def.textures[3],
|
def.textures[3],
|
||||||
def.textures[3],
|
def.textures[3],
|
||||||
def.textures[3],
|
def.textures[3],
|
||||||
def.textures[3],
|
def.textures[3],
|
||||||
def.textures[1],
|
def.textures[1],
|
||||||
def.textures[1]
|
def.textures[1]
|
||||||
},
|
},
|
||||||
groups = flatgroups,
|
groups = flatgroups,
|
||||||
drop = "xpanes:" .. name .. "_flat",
|
drop = "xpanes:" .. name .. "_flat",
|
||||||
|
@ -137,7 +137,11 @@ function xpanes.register_pane(name, def)
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
description = def.description,
|
description = def.description,
|
||||||
tiles = {def.textures[3], def.textures[3], def.textures[1]},
|
tiles = {
|
||||||
|
def.textures[3],
|
||||||
|
def.textures[3],
|
||||||
|
def.textures[1]
|
||||||
|
},
|
||||||
groups = groups,
|
groups = groups,
|
||||||
drop = "xpanes:" .. name .. "_flat",
|
drop = "xpanes:" .. name .. "_flat",
|
||||||
sounds = def.sounds,
|
sounds = def.sounds,
|
||||||
|
@ -161,7 +165,7 @@ end
|
||||||
|
|
||||||
xpanes.register_pane("pane", {
|
xpanes.register_pane("pane", {
|
||||||
description = S("Glass Pane"),
|
description = S("Glass Pane"),
|
||||||
textures = {"default_glass.png","xpanes_pane_half.png","xpanes_edge.png"},
|
textures = {"default_glass.png", "", "xpanes_edge.png"},
|
||||||
inventory_image = "default_glass.png",
|
inventory_image = "default_glass.png",
|
||||||
wield_image = "default_glass.png",
|
wield_image = "default_glass.png",
|
||||||
sounds = default.node_sound_glass_defaults(),
|
sounds = default.node_sound_glass_defaults(),
|
||||||
|
@ -174,7 +178,7 @@ xpanes.register_pane("pane", {
|
||||||
|
|
||||||
xpanes.register_pane("obsidian_pane", {
|
xpanes.register_pane("obsidian_pane", {
|
||||||
description = S("Obsidian Glass Pane"),
|
description = S("Obsidian Glass Pane"),
|
||||||
textures = {"default_obsidian_glass.png","xpanes_pane_half.png","xpanes_edge_obsidian.png"},
|
textures = {"default_obsidian_glass.png", "", "xpanes_edge_obsidian.png"},
|
||||||
inventory_image = "default_obsidian_glass.png",
|
inventory_image = "default_obsidian_glass.png",
|
||||||
wield_image = "default_obsidian_glass.png",
|
wield_image = "default_obsidian_glass.png",
|
||||||
sounds = default.node_sound_glass_defaults(),
|
sounds = default.node_sound_glass_defaults(),
|
||||||
|
@ -187,7 +191,7 @@ xpanes.register_pane("obsidian_pane", {
|
||||||
|
|
||||||
xpanes.register_pane("bar", {
|
xpanes.register_pane("bar", {
|
||||||
description = S("Steel Bars"),
|
description = S("Steel Bars"),
|
||||||
textures = {"xpanes_bar.png","xpanes_bar.png","xpanes_bar_top.png"},
|
textures = {"xpanes_bar.png", "", "xpanes_bar_top.png"},
|
||||||
inventory_image = "xpanes_bar.png",
|
inventory_image = "xpanes_bar.png",
|
||||||
wield_image = "xpanes_bar.png",
|
wield_image = "xpanes_bar.png",
|
||||||
groups = {cracky=2},
|
groups = {cracky=2},
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# textdomain: xpanes
|
# textdomain: xpanes
|
||||||
Glass Pane=玻璃板
|
Glass Pane=玻璃窗
|
||||||
Obsidian Glass Pane=黑曜石玻璃板
|
Obsidian Glass Pane=黑曜石玻璃窗
|
||||||
Steel Bars=钢筋
|
Steel Bars=钢筋
|
||||||
Steel Bar Door=钢筋门
|
Steel Bar Door=钢筋门
|
||||||
Steel Bar Trapdoor=钢筋活板门
|
Steel Bar Trapdoor=钢筋活板门
|
||||||
|
|
6
mods/xpanes/locale/xpanes.zh_TW.tr
Normal file
6
mods/xpanes/locale/xpanes.zh_TW.tr
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
# textdomain: xpanes
|
||||||
|
Glass Pane=玻璃窗
|
||||||
|
Obsidian Glass Pane=黑曜石玻璃窗
|
||||||
|
Steel Bars=鋼筋
|
||||||
|
Steel Bar Door=鋼筋門
|
||||||
|
Steel Bar Trapdoor=鋼筋活板門
|
Binary file not shown.
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 101 B |
Binary file not shown.
Before Width: | Height: | Size: 83 B |
Binary file not shown.
Before Width: | Height: | Size: 149 B |
|
@ -2100,7 +2100,7 @@ mts_save("large_cactus", {
|
||||||
|
|
||||||
-- Papyrus
|
-- Papyrus
|
||||||
|
|
||||||
mts_save("papyrus", {
|
mts_save("papyrus_on_dirt", {
|
||||||
size = {x = 1, y = 7, z = 1},
|
size = {x = 1, y = 7, z = 1},
|
||||||
data = {
|
data = {
|
||||||
{name = "default:dirt", prob = 255, force_place = true},
|
{name = "default:dirt", prob = 255, force_place = true},
|
||||||
|
@ -2117,6 +2117,23 @@ mts_save("papyrus", {
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
mts_save("papyrus_on_dry_dirt", {
|
||||||
|
size = {x = 1, y = 7, z = 1},
|
||||||
|
data = {
|
||||||
|
{name = "default:dry_dirt", prob = 255, force_place = true},
|
||||||
|
{name = "default:dry_dirt", prob = 255, force_place = true},
|
||||||
|
{name = "default:papyrus", prob = 255},
|
||||||
|
{name = "default:papyrus", prob = 255},
|
||||||
|
{name = "default:papyrus", prob = 255},
|
||||||
|
{name = "default:papyrus", prob = 255},
|
||||||
|
{name = "default:papyrus", prob = 255},
|
||||||
|
},
|
||||||
|
yslice_prob = {
|
||||||
|
{ypos = 2, prob = 127},
|
||||||
|
{ypos = 3, prob = 127},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
-- Bush
|
-- Bush
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue