1
0
mirror of https://github.com/minetest/minetest_game.git synced 2025-06-28 20:56:02 +02:00

Compare commits

..

76 Commits

Author SHA1 Message Date
72da1cde3a Merge remote-tracking branch 'upstream/master' into experimental 2022-09-25 22:52:29 +02:00
75858968ab Merge remote-tracking branch 'upstream/master' into experimental 2022-08-25 19:44:23 +02:00
93c1287cf1 Merge remote-tracking branch 'upstream/stable-5' into experimental 2022-05-27 18:12:56 +02:00
e86d0dff94 TNT node drop particles: Only pick string tiles as fallback 2022-05-13 17:35:16 +02:00
5549b9585d Fix incorrectly negated comparisons 2022-05-13 17:35:07 +02:00
d294ef757e player_api: Fix crash for players without model 2022-05-13 17:34:58 +02:00
0ad8222b97 player_api - fix compatibility code
get_animation does not return the data if called from outside without this change
2022-05-13 17:34:49 +02:00
2d6d4adfd7 Merge remote-tracking branch 'upstream/master' into experimental 2022-03-05 10:43:35 +01:00
a23819f4fe Merge remote-tracking branch 'origin/stable-5' into HEAD 2022-01-30 21:54:41 +01:00
bb2876eebf Merge remote-tracking branch 'upstream/master' into experimental 2021-04-08 22:50:46 +02:00
41c2045fb0 Remove some obsolete sounds 2021-04-04 15:06:10 +02:00
250ef99721 Merge tag '5.4.0' into nalc-dev
5.4.0
2021-02-25 22:19:07 +01:00
dd7eed952e Merge remote-tracking branch 'origin/stable-5' into HEAD 2021-02-23 20:21:20 +01:00
5e35fdc2a9 Ajoute paramètres dans minetest.conf 2020-11-14 17:00:32 +01:00
3f064d5ed4 Merge remote-tracking branch 'upstream/stable-5' into nalc-dev 2020-07-18 11:48:46 +02:00
b3e660e897 Merge tag '5.3.0' into nalc-dev
5.3.0
2020-07-12 13:11:07 +02:00
cb2c416b51 Merge remote-tracking branch 'origin/stable-5' into HEAD 2020-07-09 22:15:23 +02:00
2fc9a68aa6 Merge remote-tracking branch 'upstream/stable-5' into nalc-dev 2020-05-09 01:07:25 +02:00
dcb3df0a38 Merge remote-tracking branch 'origin/stable-5' into HEAD 2020-04-05 18:48:33 +02:00
19d903e8b3 Met à jour les sons des pas dans la neige 2019-12-23 19:32:05 +01:00
721c598fbd Merge branch 'stable-5' of yunohost.local:minetest/minetest_game into nalc-dev 2019-12-23 19:08:11 +01:00
0a9e24622f Merge branch 'master' of https://github.com/minetest/minetest_game into stable-5 2019-10-12 15:53:20 +02:00
a0c658f4d1 Merge branch 'stable-5' into nalc-dev 2019-04-07 17:57:18 +02:00
9585eef042 Merge branch 'stable-5' of https://github.com/minetest/minetest_game into stable-5 2019-04-07 17:38:55 +02:00
8678265125 Dungeon loot: Avoid empty 'if' branch to satisfy lua check 2019-03-31 22:26:33 +02:00
df387e2394 Dungeon loot: Don't crash on unknown items
fixes #2228
2019-03-31 22:26:32 +02:00
2db0287652 Merge remote-tracking branch 'github/stable-5' into nalc-1.1-dev 2019-03-24 15:53:23 +01:00
806b29c2a1 Add food groups to blueberries (#2335) 2019-03-22 19:20:36 +00:00
3aa1117f4a Changements des bruitages du mod default par ceux de MFF. 2018-09-21 22:17:19 +02:00
630f24e747 Remplacement du nom du jeux. 2018-09-21 20:27:20 +02:00
d6a66860af Prevent divide by zero (#2106)
This forces all explosions to damage entities within the 1 node
range. If that needs to be disabled, the damage_radius needs to
be set to 0.
2018-05-18 12:50:47 +02:00
6d850f23a5 Flower spread ABM: Optimise
Match maximum spread density to maximum mapgen density for flowers.
Place 3 flora nodes at once instead of 1.
Change ABM chance value to 300 to match previous spread rate.
ABM becomes 3 times less intensive.
2018-05-18 12:50:47 +02:00
2c1af0861f Doors: Avoid crash on nil player in 'can dig door' 2018-05-18 12:50:47 +02:00
d2ae721235 Stairs: unbind table groups (#2036)
Unbind table groups for base block, stairs, slabs.
2018-05-18 12:50:18 +02:00
01db55cee5 default:dirt_with_snow: Re-add to soil group
Previously, saplings were not growing if the dirt they are on turned to
'dirt with snow' before growth.
Also for consistency with other dirt nodes.
2018-05-06 20:44:30 +02:00
4ba2b5179e Furnace: Fix being able to cook items without enough fuel
This was triggered when too much time had elapsed when timer was called.
Also, fix timer resolution giving free fuel time.
2018-05-06 20:44:30 +02:00
a5092c0df6 creative: Add missing tooltips. 2018-05-06 20:44:30 +02:00
575c098bae Book textures: Reset colour profiles to remove warnings 2018-05-06 20:44:22 +02:00
cddd59b578 Book textures: Replace with more original textures 2018-05-06 20:40:45 +02:00
7a4b1e0ce1 Default: Make burntimes more rational and consistent 2017-12-05 21:24:02 +01:00
0216fa08ec Add nil checks for placer 2017-11-19 23:03:38 +01:00
ca3e807d35 Creative: Make the placenode registration check for non-player placers 2017-11-19 23:03:38 +01:00
ca38bb2390 Creative: Make handle_node_drops override work for non-player diggers 2017-11-19 23:03:38 +01:00
7d07c52d09 Books: Convert \r to \n
Some files or editors may use \r instand of \n like notepad++. If you copy
text written in notepad++ and pasted into the book. The book will only have
one page.
2017-11-19 23:03:38 +01:00
532013a032 Creative: Cache inventory items on load 2017-11-19 23:03:38 +01:00
a52622669f TNT: Add tnt.boom defaults
This adds def, def.radius and def.damage_radius defaults to the
tnt.boom() function if they aren't specified on call.
2017-11-19 23:03:38 +01:00
ce5e668681 Bones: Return bones when taking the last ItemStack 2017-11-19 23:03:38 +01:00
6530fa914b Flowers: Add waterlily right-click checks
Check for on_rightclick functions of nodes when holding a waterlily.
2017-11-19 23:03:38 +01:00
86eb0e1617 Sfinv: Remove possibility of infinite loop when homepage doesn't exist 2017-11-19 23:03:38 +01:00
93fb9b36ce Sfinv: Rename navigation tabs to reduce chance of a conflict 2017-11-19 23:03:38 +01:00
09e3505ea1 Chests: Fix locked chest protection against explosions (#1886)
Fixes #1885
2017-11-19 23:03:38 +01:00
cecbfc1676 Chests: Fix open chest after player leave (#1884)
This should fix the chest staying open when a player disconnects while inside.
2017-11-19 23:03:38 +01:00
fba6f6a4cf TNT: Add explode_center flag
Add 'explode_centre' flag which when false explodes as normal and when true runs on_blast on centre node as well as dropping items.
2017-11-19 23:03:38 +01:00
6053456af1 Mushroom spread: Optimise and make overridable
Move mushroom spread ABM action into a global and overridable function.
Optimise spread code.
Reduce spread range to reduce spread through walls.
2017-11-19 23:03:38 +01:00
cc2f75b2f9 Register fence: Allow setting nodedefs to 'false' 2017-11-19 23:03:38 +01:00
b6ef71c92e TNT's tnt:boom cleanup (#1868)
The tnt:boom node doesn't actually need the on_construct and on_timer functions to remove the node after 0.4 seconds as the tnt_explode function already does this beforehand.
2017-11-19 23:03:38 +01:00
876da2fbc6 Beds: Do not crash when placing in an unknown node 2017-11-19 23:03:38 +01:00
ea45ca57a5 Lava cooling: Increase interval to 2
An excessive load has been reported caused by the node searching, so even
when no lava is present.
2017-11-19 23:03:34 +01:00
6fa3ebfa75 Carts: Check for last pathfinder predition too Minor fix to reduce cart jitter slightly 2017-11-19 22:57:28 +01:00
efe6fb6dfb TNT: Only burn visually connected powder (#1857) 2017-11-19 22:57:28 +01:00
1aeb2baa91 Creative: Prevent unauthorized item access (#1840) 2017-11-19 22:57:28 +01:00
e4d6425846 Correct farming/stairs dependency (#1838) 2017-11-19 22:57:28 +01:00
81f885795d Crafting: Remove duplicate reversed recipes (#1777)
For axes and hoes only use one recipe that matches the appearance of the texture and in inventory.
2017-11-19 22:53:53 +01:00
f3e29bc2cc Saplings: Reduce grow time to ABM equivalent
Previous times were chosen using statistical maths, but reports suggested
this was too long.
I tested by timing an ABM acting on 100 nodes, with interval and chance equal
to the old sapling ABM.
50 at 4m59s.
99 at 24m58s.
100 at 26m58s.
So choose a grow time between 5 and 25 min for tree and bush saplings.
If 'can grow' is false at grow time the timer is reset to 5 min.
2017-11-19 22:53:53 +01:00
3a72f7b84b Add backface_culling to open chests and fencegates 2017-11-19 22:53:53 +01:00
Foz
20bd4560f8 TNT: Track TNT owner in metadata for protection mods
It is useful for protection mods to know who owns an exploding
TNT block. This allows the blocks destroyed by the TNT to be
limited to the same ones the owner could destroy without using
TNT.

TNT placed within a protected area by the area owner, and later
ignited by another player will destroy within the protected area
nodes the igniter may not otherwise be able to interact with. Any
player could significantly increase the size of an explosion by
placing more TNT in an adjacent unprotected area if the original
TNT block was placed withing 1 node of such a boundary. This
feature sounds dangerous, but we are talking about TNT. Players
should use it carefully.
2017-11-19 22:53:53 +01:00
8991b9fe54 Carts: Do not connect rails with gunpowder (#1812) 2017-11-19 22:53:53 +01:00
aea6c5dd1d Stairs: Add backface culling to stair meshes
If backface culling is not specified for a tile in 'images' it is set to true.
Slabs already have backface culling due to being defined as nodeboxes (which
are then converted to meshnodes).
2017-11-19 22:53:53 +01:00
da41caca66 Chests: Check 'def' of node above chest to avoid crash
In 'chest_lid_obstructed(pos)' check for nil 'def' to avoid a crash caused by
an unknown node above the chest.
2017-11-19 22:53:14 +01:00
103af98864 Books: Also limit the max size of the title
This limits the max size of the full title of the book to `80` letters and
the size of the part thats displayed in the tooltip to `35` letters.
2017-11-19 22:53:14 +01:00
26606b0520 Books: Limit the size of books
Really large books just waste hard drive space and the engine is not designed to
handle that much data in item metadata, this can cause strange things to happen.
2017-11-19 22:52:00 +01:00
706844e8bf Books: Add nil value checks to the book formspec handler 2017-11-19 22:52:00 +01:00
a56274c230 Stairs: Use one recipe matching inventory appearence
No longer have 2 recipes for stairs, choose the one that matches the appearence
in inventory (stair rising toward the right).
Helps to reduce recipe count now that an increasing number of stairs are
being registered.
2017-11-19 22:52:00 +01:00
3512226867 Default: Revert "Default: Shorter and better ABMs"
This reverts commit e523c3a296 to re-enable
the overriding and redefinition of these global functions.
2017-11-19 17:16:32 +01:00
d5b9fee6fe Merge 0.4.16 into stable-0.4 2017-06-03 17:22:59 -04:00
437860feff Merge tag '0.4.15' into stable-0.4
0.4.15
2016-12-22 23:00:57 +01:00
194 changed files with 1159 additions and 1313 deletions

View File

@ -1,10 +1,6 @@
unused_args = false unused_args = false
allow_defined_top = true allow_defined_top = true
globals = {
"default"
}
read_globals = { read_globals = {
"DIR_DELIM", "DIR_DELIM",
"minetest", "minetest",

View File

@ -1,27 +1,13 @@
# Minetest Game # Minetest Game
[![ContentDB](https://content.minetest.net/packages/Minetest/minetest_game/shields/title/)](https://content.minetest.net/packages/Minetest/minetest_game/) The default game bundled in the Minetest engine.
Minetest Game (abbreviated MTG) is a simple and peaceful sandbox game, with no For further information, check [this forum topic](https://forum.minetest.net/viewtopic.php?f=15&t=9724).
real goals or built-in enemy mobs.
While it provides a basic gameplay experience out of the box, it is best played Also see the [Minetest Wiki](https://wiki.minetest.net/Subgames/Minetest_Game) for more information.
with mods.
Minetest Game is currently in maintenance-only mode, meaning it will not see new
gameplay features or anything else that breaks compatibility (See
[#2710](https://github.com/minetest/minetest_game/issues/2710)).
## Installation ## Installation
### ContentDB
* Content > Browse Online Content
* Search for Minetest Game
* Click Install
### Manually
- Unzip the archive, rename the folder to `minetest_game` and - Unzip the archive, rename the folder to `minetest_game` and
place it in .. `minetest/games/` place it in .. `minetest/games/`
@ -39,7 +25,7 @@ The Minetest Game GitHub `master` `HEAD` is generally compatible with the GitHub
Additionally, when the Minetest engine is tagged to be a certain version (e.g. Additionally, when the Minetest engine is tagged to be a certain version (e.g.
`0.4.10`), Minetest Game is tagged with the version, too. `0.4.10`), Minetest Game is tagged with the version, too.
When stable releases are made, Minetest Game and the Minetest engine is packaged When stable releases are made, Minetest Game and the Minetest engine is packaged
and made available at [www.minetest.net](https://www.minetest.net/downloads/). and made available at [www.minetest.net](https://www.minetest.net/downloads/).
## Licensing ## Licensing

View File

@ -1,4 +1,3 @@
title = Minetest Game title = Notre Ami Le Cube 1.6
author = Minetest author = Minetest and Sys4
description = A basic exploration, mining, crafting, and building, sandbox game with no NPCs, monsters, or animals. Minetest Game is usually used with mods added, and many mods are available for this game. Reliably maintained by Minetest Engine core developers. description = Minetest game slightly modified by Sys4
min_minetest_version = 5.8

View File

@ -49,8 +49,6 @@ Beds API
* `beds.read_spawns() ` Returns a table containing players respawn positions * `beds.read_spawns() ` Returns a table containing players respawn positions
* `beds.kick_players()` Forces all players to leave bed * `beds.kick_players()` Forces all players to leave bed
* `beds.skip_night()` Sets world time to morning and saves respawn position of all players currently sleeping * `beds.skip_night()` Sets world time to morning and saves respawn position of all players currently sleeping
* `beds.day_interval` Is a table with keys "start" and "finish". Allows you
to set the period of the day (timeofday format). Default: `{ start = 0.2, finish = 0.805 }`.
### Bed definition ### Bed definition
@ -1028,27 +1026,6 @@ Trees
* `default.grow_blueberry_bush(pos)` * `default.grow_blueberry_bush(pos)`
* Grows a blueberry bush at pos * Grows a blueberry bush at pos
* `default.on_grow_failed(pos)`
* Reset the node timer to 300 seconds, used as default callback when the growth of a sapling fails
* `default.sapling_growth_defs`
* Table that contains all the definitions for the growable saplings, see `default.register_sapling_growth`
* `default.register_sapling_growth(name, def)`
* Register a new sapling growth configuration. Useful to add custom sapling and trees to the game in a compact way.
default.register_sapling_growth(
"default:sapling", -- Name of the sapling
{
can_grow = default.can_grow, -- Function called to determine whether the sapling can grow, should return a boolean
on_grow_failed = default.on_grow_failed, -- Function called when the growth fails
grow = function(pos) -- Function called when the growth has success. This should replace the sapling with a tree.
}
)
* `default.grow_sapling(pos)`
* Attempt to grow a sapling at the given position. Useful as on_timer callback.
Carts Carts
----- -----
@ -1163,9 +1140,8 @@ the log.
`default.set_inventory_action_loggers(def, name)` `default.set_inventory_action_loggers(def, name)`
* hooks the callbacks `on_metadata_inventory_move`, * sets the callbacks `on_metadata_inventory_move`,
`on_metadata_inventory_put` and `on_metadata_inventory_take` `on_metadata_inventory_put` and `on_metadata_inventory_take`
that log corresponding actions that log corresponding actions
* after logging the action, the original callback (if any) is called
* `def` See [Node definition] * `def` See [Node definition]
* `name` Description of the node in the log message * `name` Description of the node in the log message

View File

@ -0,0 +1,76 @@
# This file contains settings of Minetest Game that can be changed in
# minetest.conf.
# By default, all the settings are commented and not functional.
# Uncomment settings by removing the preceding #.
# Whether creative mode (fast digging of all blocks, unlimited resources) should
# be enabled.
creative_mode = false
# Sets the behaviour of the inventory items when a player dies.
# bones: Store items in a bone node but drop items if inside protected area.
# drop: Drop items on the ground.
# keep: Player keeps items.
bones_mode = bones
# The time in seconds after which the bones of a dead player can be looted by
# everyone.
# 0 to disable.
share_bones_time = 1200
# How much earlier the bones of a dead player can be looted by
# everyone if the player dies in a protected area they don't own.
# 0 to disable. By default it is "share_bones_time" divide by four.
share_bones_time_early = 300
# Inform player of condition and location of new bones.
bones_position_message = true
# Whether fire should be enabled. If disabled, 'basic_flame' nodes will
# disappear.
# 'permanent_flame' nodes will remain with either setting.
enable_fire = false
# Enable flame sound.
flame_sound = true
# Whether lavacooling should be enabled.
enable_lavacooling = true
# Whether the stuff in initial_stuff should be given to new players.
give_initial_stuff = true
initial_stuff = default:axe_wood,default:torch 9,default:sapling 2,default:apple 5
# Whether the TNT mod should be enabled.
enable_tnt = true
# The radius of a TNT explosion.
tnt_radius = 3
# Enable the stairs mod ABM that replaces the old 'upside down'
# stair and slab nodes in old maps with the new param2 versions.
enable_stairs_replace_abm = false
# Whether to allow respawning in beds.
# Default value is true.
enable_bed_respawn = true
# Whether players can skip night by sleeping.
# Default value is true.
enable_bed_night_skip = true
# If enabled, fences and walls cannot be jumped over.
enable_fence_tall = true
# Whether the engine's spawn search, which does not check for a suitable
# starting biome, is used.
# Default value is false.
engine_spawn = false
# Whether river water source nodes create flowing sounds.
# Helps rivers create more sound, especially on level sections.
river_source_sounds = true
# Enable cloud variation by the 'weather' mod.
# Non-functional in V6 or Singlenode mapgens.
enable_weather = true

View File

@ -115,8 +115,8 @@ function beds.register_bed(name, def)
local dir = minetest.facedir_to_dir(node.param2) local dir = minetest.facedir_to_dir(node.param2)
local p = vector.add(pos, dir) local p = vector.add(pos, dir)
local node2 = minetest.get_node_or_nil(p) local node2 = minetest.get_node_or_nil(p)
if not node2 or minetest.get_item_group(node2.name, "bed") ~= 2 or if not node2 or not minetest.get_item_group(node2.name, "bed") == 2 or
node.param2 ~= node2.param2 then not node.param2 == node2.param2 then
return false return false
end end
if minetest.is_protected(p, user:get_player_name()) then if minetest.is_protected(p, user:get_player_name()) then

View File

@ -65,7 +65,7 @@ beds.register_bed("beds:bed", {
"beds_bed_top_bottom.png^[transformR90", "beds_bed_top_bottom.png^[transformR90",
"beds_bed_under.png", "beds_bed_under.png",
"beds_bed_side_bottom_r.png", "beds_bed_side_bottom_r.png",
"beds_bed_side_bottom_r.png^[transformFX", "beds_bed_side_bottom_r.png^[transformfx",
"beds_transparent.png", "beds_transparent.png",
"beds_bed_side_bottom.png" "beds_bed_side_bottom.png"
}, },
@ -73,7 +73,7 @@ beds.register_bed("beds:bed", {
"beds_bed_top_top.png^[transformR90", "beds_bed_top_top.png^[transformR90",
"beds_bed_under.png", "beds_bed_under.png",
"beds_bed_side_top_r.png", "beds_bed_side_top_r.png",
"beds_bed_side_top_r.png^[transformFX", "beds_bed_side_top_r.png^[transformfx",
"beds_bed_side_top.png", "beds_bed_side_top.png",
"beds_transparent.png", "beds_transparent.png",
} }

View File

@ -181,32 +181,12 @@ function beds.skip_night()
minetest.set_timeofday(0.23) minetest.set_timeofday(0.23)
end end
local update_scheduled = false
local function schedule_update()
if update_scheduled then
-- there already is an update scheduled; don't schedule more to prevent races
return
end
update_scheduled = true
minetest.after(2, function()
update_scheduled = false
if not is_sp then
update_formspecs(is_night_skip_enabled())
end
if is_night_skip_enabled() then
-- skip the night and let all players stand up
beds.skip_night()
beds.kick_players()
end
end)
end
function beds.on_rightclick(pos, player) function beds.on_rightclick(pos, player)
local name = player:get_player_name() local name = player:get_player_name()
local ppos = player:get_pos() local ppos = player:get_pos()
local tod = minetest.get_timeofday() local tod = minetest.get_timeofday()
if tod > beds.day_interval.start and tod < beds.day_interval.finish then if tod > 0.2 and tod < 0.805 then
if beds.player[name] then if beds.player[name] then
lay_down(player, nil, nil, false) lay_down(player, nil, nil, false)
end end
@ -226,8 +206,17 @@ function beds.on_rightclick(pos, player)
update_formspecs(false) update_formspecs(false)
end end
-- skip the night and let all players stand up
if check_in_beds() then if check_in_beds() then
schedule_update() minetest.after(2, function()
if not is_sp then
update_formspecs(is_night_skip_enabled())
end
if is_night_skip_enabled() then
beds.skip_night()
beds.kick_players()
end
end)
end end
end end
@ -260,7 +249,13 @@ minetest.register_on_leaveplayer(function(player)
lay_down(player, nil, nil, false, true) lay_down(player, nil, nil, false, true)
beds.player[name] = nil beds.player[name] = nil
if check_in_beds() then if check_in_beds() then
schedule_update() minetest.after(2, function()
update_formspecs(is_night_skip_enabled())
if is_night_skip_enabled() then
beds.skip_night()
beds.kick_players()
end
end)
end end
end) end)

View File

@ -16,11 +16,6 @@ beds.formspec = "size[8,11;true]" ..
"bgcolor[#080808BB;true]" .. "bgcolor[#080808BB;true]" ..
"button_exit[2,10;4,0.75;leave;" .. esc(S("Leave Bed")) .. "]" "button_exit[2,10;4,0.75;leave;" .. esc(S("Leave Bed")) .. "]"
beds.day_interval = {
start = 0.2,
finish = 0.805,
}
local modpath = minetest.get_modpath("beds") local modpath = minetest.get_modpath("beds")
-- Load files -- Load files

View File

@ -1,10 +1,10 @@
# textdomain: beds # textdomain: beds
Fancy Bed=Ranjang Mewah Fancy Bed=Ranjang Mewah
Simple Bed=Ranjang Sederhana Simple Bed=Ranjang Sederhana
This bed is already occupied!=Ranjang telah terisi! This bed is already occupied!=
You have to stop moving before going to bed!=Anda harus diam untuk tidur! You have to stop moving before going to bed!=
Good morning.=Selamat pagi. Good morning.=Selamat pagi.
@1 of @2 players are in bed=@1 dari @2 pemain sedang tidur @1 of @2 players are in bed=@1 dari @2 pemain sedang tidur
Force night skip=Paksa lewati malam Force night skip=Paksa lewati malam
You can only sleep at night.=Anda hanya bisa tidur pada waktu malam. You can only sleep at night.=Anda hanya dapat tidur pada waktu malam.
Leave Bed=Tinggalkan Ranjang Leave Bed=Tinggalkan Ranjang

View File

@ -1,10 +1,10 @@
# textdomain: beds # textdomain: beds
Fancy Bed=Katil Beragam Fancy Bed=Katil Beragam
Simple Bed=Katil Biasa Simple Bed=Katil Biasa
This bed is already occupied!=Katil ini sudah diduduki! This bed is already occupied!=
You have to stop moving before going to bed!=Anda perlu berhenti bergerak sebelum tidur! You have to stop moving before going to bed!=
Good morning.=Selamat pagi. Good morning.=Selamat pagi.
@1 of @2 players are in bed=@1 daripada @2 pemain sedang tidur @1 of @2 players are in bed=@1 daripada @2 pemain sedang tidur
Force night skip=Paksa langkau malam Force night skip=Paksa langkau malam
You can only sleep at night.=Anda hanya boleh tidur pada waktu malam. You can only sleep at night.=Anda hanya boleh tidur pada waktu malam.
Leave Bed=Tinggalkan Katil Leave Bed=Bangun

View File

@ -1,10 +1,10 @@
# textdomain: beds # textdomain: beds
Fancy Bed=Гарне ліжко Fancy Bed=Деталізована Постіль
Simple Bed=Просте ліжко Simple Bed=Звичайна Постіль
This bed is already occupied!=Це ліжко вже зайняте! This bed is already occupied!=Ця постіль вже зайнята!
You have to stop moving before going to bed!=Зупиніться перед тим як лягти! You have to stop moving before going to bed!=Не можна скористатись постіллю на ходу!
Good morning.=Доброго ранку. Good morning.=Доброго ранку.
@1 of @2 players are in bed=@1 з @2 гравців(-я) у ліжку @1 of @2 players are in bed=@1 з @2 гравців в ліжку
Force night skip=Пропустити ніч Force night skip=Пропустити ніч
You can only sleep at night.=Ви можете спати лише вночі. You can only sleep at night.=Ви можете спати тільки вночі.
Leave Bed=Встати з ліжка Leave Bed=Встати з ліжка

View File

@ -1,8 +1,8 @@
# textdomain: beds # textdomain: beds
Fancy Bed=花式床 Fancy Bed=花式床
Simple Bed=簡易床 Simple Bed=簡易床
This bed is already occupied!=這個床已經被占據了! This bed is already occupied!=
You have to stop moving before going to bed!=你必須在上床前停止移動! You have to stop moving before going to bed!=
Good morning.=早安! Good morning.=早安!
@1 of @2 players are in bed=@2位玩家中的@1位在床上 @1 of @2 players are in bed=@2位玩家中的@1位在床上
Force night skip=強制跳過夜晚 Force night skip=強制跳過夜晚

View File

@ -1,3 +1,3 @@
# textdomain: binoculars # textdomain: binoculars
Binoculars=Teropong Binoculars=Teropong
Use with 'Zoom' key=Gunakan dengan tombol 'Zum' Use with 'Zoom' key=Pakai dengan tombol 'Zoom'

View File

@ -1,3 +1,3 @@
# textdomain: binoculars # textdomain: binoculars
Binoculars=Бінокль Binoculars=Бінокль
Use with 'Zoom' key=Використовується клавішею 'Наближення' Use with 'Zoom' key=Використовується з правами 'Zoom'

View File

@ -1,4 +1,4 @@
# textdomain: boats # textdomain: boats
Boat cruise mode on=Mod jelajah bot dihidupkan Boat cruise mode on=Mod bot layar makan angin dibolehkan
Boat cruise mode off=Mod jelajah bot dimatikan Boat cruise mode off=Mod bot layar makan angin dilumpuhkan
Boat=Bot Boat=Bot

View File

@ -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=Лодка

View File

@ -28,7 +28,7 @@ local bones_formspec =
local share_bones_time = tonumber(minetest.settings:get("share_bones_time")) or 1200 local share_bones_time = tonumber(minetest.settings:get("share_bones_time")) or 1200
local share_bones_time_early = tonumber(minetest.settings:get("share_bones_time_early")) or share_bones_time / 4 local share_bones_time_early = tonumber(minetest.settings:get("share_bones_time_early")) or share_bones_time / 4
local bones_def = { minetest.register_node("bones:bones", {
description = S("Bones"), description = S("Bones"),
tiles = { tiles = {
"bones_top.png^[transform2", "bones_top.png^[transform2",
@ -130,11 +130,7 @@ local bones_def = {
end, end,
on_blast = function(pos) on_blast = function(pos)
end, end,
} })
default.set_inventory_action_loggers(bones_def, "bones")
minetest.register_node("bones:bones", bones_def)
local function may_replace(pos, player) local function may_replace(pos, player)
local node_name = minetest.get_node(pos).name local node_name = minetest.get_node(pos).name
@ -228,7 +224,7 @@ minetest.register_on_dieplayer(function(player)
-- check if it's possible to place bones, if not find space near player -- check if it's possible to place bones, if not find space near player
if bones_mode == "bones" and not may_replace(pos, player) then if bones_mode == "bones" and not may_replace(pos, player) then
local air = minetest.find_node_near(pos, 1, {"air"}) local air = minetest.find_node_near(pos, 1, {"air"})
if air then if air and not minetest.is_protected(air, player_name) then
pos = air pos = air
else else
bones_mode = "drop" bones_mode = "drop"

View File

@ -1,8 +1,8 @@
# textdomain: bones # textdomain: bones
Bones=Ben Bones=Ben
@1's old bones=@1s Gamla ben @1's old bones=@1s Gamla ben
@1 died at @2.=@1 dog på @2. @1 died at @2.=@1 dog på @a.
@1 died at @2, and dropped their inventory.=@1 dog på @2, och tappade deras saker. @1 died at @2, and dropped their inventory.=@1 dog på @a, och tappade deras saker.
@1 died at @2, and bones were placed.=@1 dog på @2, och deras ben var placerade. @1 died at @2, and bones were placed.=@1 dog på @2, och deras ben var placerade.
@1's fresh bones=@1s färska ben @1's fresh bones=@1s färska ben
@1's bones=@1s ben @1's bones=@1s ben

View File

@ -1,8 +1,8 @@
# textdomain: bones # textdomain: bones
Bones=Кістки Bones=Кістки
@1's old bones=Старі кістки @1 @1's old bones=старі кістки @1
@1 died at @2.=@1 загинув на координатах @2. @1 died at @2.=@1 помер в @2.
@1 died at @2, and dropped their inventory.=@1 загинув на координатах @2 та втратив вміст свого інвентарю. @1 died at @2, and dropped their inventory.=@1 помер в @2, та загубив вміст свого інвентарю.
@1 died at @2, and bones were placed.=@1 загинув на координатах @2, було розміщено кістки. @1 died at @2, and bones were placed.=@1 помер в @2, розміщені кістки.
@1's fresh bones=Свіжі кістки @1 @1's fresh bones=нові кістки @1
@1's bones=Кістки @1 @1's bones=кістки @1

View File

@ -1,5 +1,5 @@
# textdomain: bucket # textdomain: bucket
Empty Bucket=空のバケツ Empty Bucket=空のバケツ
Water Bucket=水入りバケツ Water Bucket=水入りバケツ
River Water Bucket=川水入りバケツ River Water Bucket=川水入りバケツ
Lava Bucket=溶岩入りバケツ Lava Bucket=溶岩入りバケツ

View File

@ -1,5 +1,5 @@
# textdomain: bucket # textdomain: bucket
Empty Bucket=Порожнє відро Empty Bucket=Пусте Відро
Water Bucket=Відро з водою Water Bucket=Відро З Водою
River Water Bucket=Відро з річковою водою River Water Bucket=Відро З Річною Водою
Lava Bucket=Відро з лавою Lava Bucket=Відро З Лавою

View File

@ -1,4 +1,4 @@
# textdomain: butterflies # textdomain: butterflies
White Butterfly=Білий метелик White Butterfly=Білий Метелик
Red Butterfly=Червоний метелик Red Butterfly=Червоний Метелик
Violet Butterfly=Фіолетовий метелик Violet Butterfly=Фіолетовий Метелик

View File

@ -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=Гальмівні Рейки

View File

@ -46,36 +46,34 @@ end
dofile(minetest.get_modpath("creative") .. "/inventory.lua") dofile(minetest.get_modpath("creative") .. "/inventory.lua")
if minetest.is_creative_enabled("") then if minetest.is_creative_enabled("") then
minetest.register_on_mods_loaded(function() -- Dig time is modified according to difference (leveldiff) between tool
-- Dig time is modified according to difference (leveldiff) between tool -- 'maxlevel' and node 'level'. Digtime is divided by the larger of
-- 'maxlevel' and node 'level'. Digtime is divided by the larger of -- leveldiff and 1.
-- leveldiff and 1. -- To speed up digging in creative, hand 'maxlevel' and 'digtime' have been
-- To speed up digging in creative, hand 'maxlevel' and 'digtime' have been -- increased such that nodes of differing levels have an insignificant
-- increased such that nodes of differing levels have an insignificant -- effect on digtime.
-- effect on digtime. local digtime = 42
local digtime = 42 local caps = {times = {digtime, digtime, digtime}, uses = 0, maxlevel = 256}
local caps = {times = {digtime, digtime, digtime}, uses = 0, maxlevel = 256}
-- Override the hand tool -- Override the hand tool
minetest.override_item("", { minetest.override_item("", {
range = 10, range = 10,
tool_capabilities = { tool_capabilities = {
full_punch_interval = 0.5, full_punch_interval = 0.5,
max_drop_level = 3, max_drop_level = 3,
groupcaps = { groupcaps = {
crumbly = caps, crumbly = caps,
cracky = caps, cracky = caps,
snappy = caps, snappy = caps,
choppy = caps, choppy = caps,
oddly_breakable_by_hand = caps, oddly_breakable_by_hand = caps,
-- dig_immediate group doesn't use value 1. Value 3 is instant dig -- dig_immediate group doesn't use value 1. Value 3 is instant dig
dig_immediate = dig_immediate =
{times = {[2] = digtime, [3] = 0}, uses = 0, maxlevel = 256}, {times = {[2] = digtime, [3] = 0}, uses = 0, maxlevel = 256},
}, },
damage_groups = {fleshy = 10}, damage_groups = {fleshy = 10},
} }
}) })
end)
end end
-- Unlimited node placement -- Unlimited node placement

View File

@ -150,10 +150,9 @@ function creative.register_tab(name, title, items)
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 pagenum = math.floor(inv.start_i / (4*8) + 1) local pagenum = math.floor(inv.start_i / (4*8) + 1)
local pagemax = math.max(math.ceil(inv.size / (4*8)), 1) 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,
(inv.size == 0 and ("label[3,2;"..esc(S("No items to show.")).."]") or "") ..
"label[5.8,4.15;" .. minetest.colorize("#FFFF00", tostring(pagenum)) .. " / " .. tostring(pagemax) .. "]" .. "label[5.8,4.15;" .. minetest.colorize("#FFFF00", tostring(pagenum)) .. " / " .. tostring(pagemax) .. "]" ..
[[ [[
image[4.08,4.2;0.8,0.8;creative_trash_icon.png] image[4.08,4.2;0.8,0.8;creative_trash_icon.png]
@ -161,7 +160,7 @@ function creative.register_tab(name, title, items)
list[detached:trash;main;4.02,4.1;1,1;] list[detached:trash;main;4.02,4.1;1,1;]
listring[] listring[]
image_button[5,4.05;0.8,0.8;creative_prev_icon.png;creative_prev;] image_button[5,4.05;0.8,0.8;creative_prev_icon.png;creative_prev;]
image_button[7.25,4.05;0.8,0.8;creative_next_icon.png;creative_next;] image_button[7.2,4.05;0.8,0.8;creative_next_icon.png;creative_next;]
image_button[2.63,4.05;0.8,0.8;creative_search_icon.png;creative_search;] image_button[2.63,4.05;0.8,0.8;creative_search_icon.png;creative_search;]
image_button[3.25,4.05;0.8,0.8;creative_clear_icon.png;creative_clear;] image_button[3.25,4.05;0.8,0.8;creative_clear_icon.png;creative_clear;]
]] .. ]] ..
@ -192,13 +191,10 @@ function creative.register_tab(name, title, items)
inv.start_i = 0 inv.start_i = 0
inv.filter = "" inv.filter = ""
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") fields.key_enter_field == "creative_filter" then
and fields.creative_filter then
inv.start_i = 0 inv.start_i = 0
inv.filter = fields.creative_filter:sub(1, 128) -- truncate to a sane length inv.filter = fields.creative_filter:lower()
:gsub("[%z\1-\8\11-\31\127]", "") -- strip naughty control characters (keeps \t and \n)
:lower() -- search is case insensitive
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

View File

@ -1,6 +1,5 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory=Spieler erlauben, das Kreativinventar zu benutzen Allow player to use creative inventory=Spieler erlauben, das Kreativinventar zu benutzen
No items to show.=Keine Gegenstände vorhanden.
Search=Suchen Search=Suchen
Reset=Zurücksetzen Reset=Zurücksetzen
Previous page=Vorherige Seite Previous page=Vorherige Seite

View File

@ -1,6 +1,5 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory=Permesi ke la ludanto uzu la kreeman stokon Allow player to use creative inventory=Permesi ke la ludanto uzu la kreeman stokon
No items to show.=
Search=Serĉi Search=Serĉi
Reset=Rekomencigi Reset=Rekomencigi
Previous page=Antaŭa paĝo Previous page=Antaŭa paĝo

View File

@ -1,8 +1,7 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory=Permitir al jugador usar el inventario creativo Allow player to use creative inventory=Permitir al jugador usar el inventario creativo
No items to show.=Sin artículos que mostrar.
Search=Buscar Search=Buscar
Reset=Reiniciar Reset=Resetear
Previous page=Pág. siguiente Previous page=Pág. siguiente
Next page=Pág. anterior Next page=Pág. anterior
All=Todos All=Todos

View File

@ -1,6 +1,5 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory=Permettre aux joueurs d'utiliser l'inventaire du mode créatif Allow player to use creative inventory=Permettre aux joueurs d'utiliser l'inventaire du mode créatif
No items to show.=
Search=Rechercher Search=Rechercher
Reset=Réinitialiser Reset=Réinitialiser
Previous page=Page précédente Previous page=Page précédente

View File

@ -1,6 +1,5 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory=Bolehkan pemain menggunakan inventaris kreatif Allow player to use creative inventory=Bolehkan pemain memakai inventaris kreatif
No items to show.=Tiada barang untuk ditampilkan.
Search=Cari Search=Cari
Reset=Atur ulang Reset=Atur ulang
Previous page=Halaman sebelumnya Previous page=Halaman sebelumnya

View File

@ -1,6 +1,5 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory=Permette al giocatore di usare l'inventario creativo Allow player to use creative inventory=Permette al giocatore di usare l'inventario creativo
No items to show.=
Search=Cerca Search=Cerca
Reset=Azzera Reset=Azzera
Previous page=Pagina precedente Previous page=Pagina precedente

View File

@ -1,6 +1,5 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory=プレーヤーにクリエイティブ インベントリーの使用を許可する Allow player to use creative inventory=プレーヤーにクリエイティブ インベントリーの使用を許可する
No items to show.=
Search=検索 Search=検索
Reset=リセット Reset=リセット
Previous page=前のページ Previous page=前のページ

View File

@ -1,6 +1,5 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory=zifre le ka pilno le finti ke dacti liste Allow player to use creative inventory=zifre le ka pilno le finti ke dacti liste
No items to show.=
Search=sisku Search=sisku
Reset=kraga'igau Reset=kraga'igau
Previous page=lidne Previous page=lidne

View File

@ -1,8 +1,7 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory=Benarkan pemain menggunakan inventori kreatif Allow player to use creative inventory=Benarkan pemain menggunakan inventori kreatif
No items to show.=Tiada item untuk ditunjukkan.
Search=Cari Search=Cari
Reset=Tetap semula Reset=Set semula
Previous page=Halaman sebelumnya Previous page=Halaman sebelumnya
Next page=Halaman seterusnya Next page=Halaman seterusnya
All=Semua All=Semua

View File

@ -1,6 +1,5 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory=Zezwól graczom na używanie kreatywnego ekwipunku Allow player to use creative inventory=Zezwól graczom na używanie kreatywnego ekwipunku
No items to show.=
Search=Wyszukaj Search=Wyszukaj
Reset=Zresetuj Reset=Zresetuj
Previous page=Poprzednia strona Previous page=Poprzednia strona

View File

@ -1,6 +1,5 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory=Permitir o jogador usar o inventário criativo Allow player to use creative inventory=Permitir o jogador usar o inventário criativo
No items to show.=
Search=Pesquisar Search=Pesquisar
Reset=Redefinir Reset=Redefinir
Previous page=Página anterior Previous page=Página anterior

View File

@ -1,6 +1,5 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory=Разрешить игроку использовать творческий инвентарь Allow player to use creative inventory=Разрешить игроку использовать творческий инвентарь
No items to show.=
Search=Поиск Search=Поиск
Reset=Сброс Reset=Сброс
Previous page=Предыдущая страница Previous page=Предыдущая страница

View File

@ -1,6 +1,5 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory=Povolí hráčovi použivať kreatívny inventár Allow player to use creative inventory=Povolí hráčovi použivať kreatívny inventár
No items to show.=
Search=Hľadaj Search=Hľadaj
Reset=Vrátiť späť Reset=Vrátiť späť
Previous page=Predchádzajúca stránka Previous page=Predchádzajúca stránka

View File

@ -1,6 +1,5 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory=Tillåt spelare att använda kreativa saker Allow player to use creative inventory=Tillåt spelare att använda kreativa saker
No items to show.=
Search=Sök Search=Sök
Reset=Återställ Reset=Återställ
Previous page=Förra sida Previous page=Förra sida

View File

@ -1,6 +1,5 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory=Дозволити гравцю використовувати творчий інвентар Allow player to use creative inventory=Дозволити гравцеві використати творчий інвентар
No items to show.=Немає результатів.
Search=Пошук Search=Пошук
Reset=Скинути Reset=Скинути
Previous page=Попередня сторінка Previous page=Попередня сторінка

View File

@ -1,6 +1,5 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory=允许玩家使用创造模式物品栏 Allow player to use creative inventory=允许玩家使用创造模式物品栏
No items to show.=
Search=搜索 Search=搜索
Reset=重置 Reset=重置
Previous page=上一页 Previous page=上一页

View File

@ -1,6 +1,5 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory=允許玩家使用創造模式物品欄 Allow player to use creative inventory=允許玩家使用創造模式物品欄
No items to show.=
Search=搜索 Search=搜索
Reset=重置 Reset=重置
Previous page=上一頁 Previous page=上一頁

View File

@ -1,6 +1,5 @@
# textdomain: creative # textdomain: creative
Allow player to use creative inventory= Allow player to use creative inventory=
No items to show.=
Search= Search=
Reset= Reset=
Previous page= Previous page=

View File

@ -1,3 +1,4 @@
name = creative name = creative
description = Minetest Game mod: creative description = Minetest Game mod: creative
depends = sfinv depends = sfinv
optional_depends = default

View File

@ -38,44 +38,34 @@ function default.chest.chest_lid_close(pn)
default.chest.open_chests[pn] = nil default.chest.open_chests[pn] = nil
for k, v in pairs(default.chest.open_chests) do for k, v in pairs(default.chest.open_chests) do
if vector.equals(v.pos, pos) then if v.pos.x == pos.x and v.pos.y == pos.y and v.pos.z == pos.z then
-- another player is also looking at the chest
return true return true
end end
end end
local node = minetest.get_node(pos) local node = minetest.get_node(pos)
minetest.after(0.2, function() minetest.after(0.2, minetest.swap_node, pos, { name = swap,
local current_node = minetest.get_node(pos) param2 = node.param2 })
if current_node.name ~= swap .. "_open" then minetest.sound_play(sound, {gain = 0.3, pos = pos,
-- the chest has already been replaced, don't try to replace what's there. max_hear_distance = 10}, true)
return
end
minetest.swap_node(pos, {name = swap, param2 = node.param2})
minetest.sound_play(sound, {gain = 0.3, pos = pos,
max_hear_distance = 10}, true)
end)
end end
default.chest.open_chests = {} default.chest.open_chests = {}
minetest.register_on_player_receive_fields(function(player, formname, fields) minetest.register_on_player_receive_fields(function(player, formname, fields)
local pn = player:get_player_name()
if formname ~= "default:chest" then if formname ~= "default:chest" then
if default.chest.open_chests[pn] then
default.chest.chest_lid_close(pn)
end
return return
end end
if not player or not fields.quit then
return
end
local pn = player:get_player_name()
if not (fields.quit and default.chest.open_chests[pn]) then if not default.chest.open_chests[pn] then
return return
end end
default.chest.chest_lid_close(pn) default.chest.chest_lid_close(pn)
return true return true
end) end)
@ -139,12 +129,6 @@ function default.chest.register_chest(prefixed_name, d)
return itemstack return itemstack
end end
local cn = clicker:get_player_name()
if default.chest.open_chests[cn] then
default.chest.chest_lid_close(cn)
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}, true) 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
@ -152,9 +136,10 @@ function default.chest.register_chest(prefixed_name, d)
{ name = name .. "_open", { name = name .. "_open",
param2 = node.param2 }) param2 = node.param2 })
end end
minetest.after(0.2, minetest.show_formspec, cn, minetest.after(0.2, minetest.show_formspec,
clicker:get_player_name(),
"default:chest", default.chest.get_chest_formspec(pos)) "default:chest", default.chest.get_chest_formspec(pos))
default.chest.open_chests[cn] = { pos = pos, default.chest.open_chests[clicker:get_player_name()] = { pos = pos,
sound = def.sound_close, swap = name } sound = def.sound_close, swap = name }
end end
def.on_blast = function() end def.on_blast = function() end
@ -215,12 +200,6 @@ function default.chest.register_chest(prefixed_name, d)
return inv:is_empty("main") return inv:is_empty("main")
end end
def.on_rightclick = function(pos, node, clicker) def.on_rightclick = function(pos, node, clicker)
local cn = clicker:get_player_name()
if default.chest.open_chests[cn] then
default.chest.chest_lid_close(cn)
end
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}, true) max_hear_distance = 10}, true)
if not default.chest.chest_lid_obstructed(pos) then if not default.chest.chest_lid_obstructed(pos) then
@ -229,9 +208,9 @@ function default.chest.register_chest(prefixed_name, d)
param2 = node.param2 }) param2 = node.param2 })
end end
minetest.after(0.2, minetest.show_formspec, minetest.after(0.2, minetest.show_formspec,
cn, clicker:get_player_name(),
"default:chest", default.chest.get_chest_formspec(pos)) "default:chest", default.chest.get_chest_formspec(pos))
default.chest.open_chests[cn] = { pos = pos, default.chest.open_chests[clicker:get_player_name()] = { pos = pos,
sound = def.sound_close, swap = name } sound = def.sound_close, swap = name }
end end
def.on_blast = function(pos) def.on_blast = function(pos)
@ -295,18 +274,6 @@ function default.chest.register_chest(prefixed_name, d)
end end
}) })
end end
-- close opened chests on load
minetest.register_lbm({
label = "close opened chests on load",
name = "default:close_" .. prefixed_name:gsub(":", "_") .. "_open",
nodenames = {prefixed_name .. "_open"},
run_at_every_load = true,
action = function(pos, node)
node.name = prefixed_name
minetest.swap_node(pos, node)
end
})
end end
default.chest.register_chest("default:chest", { default.chest.register_chest("default:chest", {

View File

@ -148,7 +148,7 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
return return
end end
if fields.quit then if fields.close then
book_writers[player_name] = nil book_writers[player_name] = nil
end end
@ -179,7 +179,6 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
data.description = S("\"@1\" by @2", short_title, data.owner) data.description = S("\"@1\" by @2", short_title, data.owner)
data.text = fields.text:sub(1, max_text_size) data.text = fields.text:sub(1, max_text_size)
data.text = data.text:gsub("\r\n", "\n"):gsub("\r", "\n") data.text = data.text:gsub("\r\n", "\n"):gsub("\r", "\n")
data.text = data.text:gsub("[%z\1-\8\11-\31\127]", "") -- strip naughty control characters (keeps \t and \n)
data.page = 1 data.page = 1
data.page_max = math.ceil((#data.text:gsub("[^\n]", "") + 1) / lpp) data.page_max = math.ceil((#data.text:gsub("[^\n]", "") + 1) / lpp)

View File

@ -744,23 +744,16 @@ function default.log_player_action(player, ...)
minetest.log("action", msg) minetest.log("action", msg)
end end
local nop = function() end
function default.set_inventory_action_loggers(def, name) function default.set_inventory_action_loggers(def, name)
local on_move = def.on_metadata_inventory_move or nop
def.on_metadata_inventory_move = function(pos, from_list, from_index, def.on_metadata_inventory_move = function(pos, from_list, from_index,
to_list, to_index, count, player) to_list, to_index, count, player)
default.log_player_action(player, "moves stuff in", name, "at", pos) default.log_player_action(player, "moves stuff in", name, "at", pos)
return on_move(pos, from_list, from_index, to_list, to_index, count, player)
end end
local on_put = def.on_metadata_inventory_put or nop
def.on_metadata_inventory_put = function(pos, listname, index, stack, player) def.on_metadata_inventory_put = function(pos, listname, index, stack, player)
default.log_player_action(player, "moves", stack:get_name(), stack:get_count(), "to", name, "at", pos) default.log_player_action(player, "moves", stack:get_name(), "to", name, "at", pos)
return on_put(pos, listname, index, stack, player)
end end
local on_take = def.on_metadata_inventory_take or nop
def.on_metadata_inventory_take = function(pos, listname, index, stack, player) def.on_metadata_inventory_take = function(pos, listname, index, stack, player)
default.log_player_action(player, "takes", stack:get_name(), stack:get_count(), "from", name, "at", pos) default.log_player_action(player, "takes", stack:get_name(), "from", name, "at", pos)
return on_take(pos, listname, index, stack, player)
end end
end end

View File

@ -19,7 +19,7 @@ Licenses of media (textures, models and sounds)
----------------------------------------------- -----------------------------------------------
Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0)
Copyright (C) 2010-2023: Copyright (C) 2010-2018:
celeron55, Perttu Ahola <celeron55@gmail.com> celeron55, Perttu Ahola <celeron55@gmail.com>
Cisoun Cisoun
@ -52,7 +52,6 @@ Copyright (C) 2010-2023:
random-geek random-geek
Extex101 Extex101
An0n3m0us An0n3m0us
Lopano
You are free to: You are free to:
Share — copy and redistribute the material in any medium or format. Share — copy and redistribute the material in any medium or format.

View File

@ -108,7 +108,7 @@ Acacia Tree Sapling=Akazienbaumsetzling
Aspen Tree=Espenbaum Aspen Tree=Espenbaum
Aspen Wood Planks=Espenholzplanken Aspen Wood Planks=Espenholzplanken
Aspen Tree Leaves=Espenbaumblätter Aspen Tree Leaves=Espenbaumblätter
Aspen Tree Sapling=Espenbaumsetzling Aspen Tree Sapling=Esepenbaumsetzling
Coal Ore=Kohleerz Coal Ore=Kohleerz
Coal Block=Kohleblock Coal Block=Kohleblock
Iron Ore=Eisenerz Iron Ore=Eisenerz

View File

@ -162,7 +162,6 @@ Empty Bookshelf=Malplena Librobreto
Bookshelf (@1 written, @2 empty books)=Librobreto (@1 skriba(j), @2 malplena(j) libro(j)) Bookshelf (@1 written, @2 empty books)=Librobreto (@1 skriba(j), @2 malplena(j) libro(j))
Bookshelf=Librobreto Bookshelf=Librobreto
Text too long=Tro longa teksto Text too long=Tro longa teksto
"@1"=
Wooden Sign=Ligna Signo Wooden Sign=Ligna Signo
Steel Sign=Ŝtala Signo Steel Sign=Ŝtala Signo
Wooden Ladder=Ligna Ŝtupetaro Wooden Ladder=Ligna Ŝtupetaro
@ -218,3 +217,4 @@ Torch=Torĉo
##### not used anymore ##### ##### not used anymore #####
Mese Post Light=Mesea Fosta Lampo Mese Post Light=Mesea Fosta Lampo

View File

@ -111,7 +111,7 @@ Aspen Tree Leaves=Feuilles de tremble
Aspen Tree Sapling=Pousse de tremble Aspen Tree Sapling=Pousse de tremble
Coal Ore=Minerai de charbon Coal Ore=Minerai de charbon
Coal Block=Bloc de charbon Coal Block=Bloc de charbon
Iron Ore=Minerai de fer Iron Ore=Bloc de fer
Steel Block=Bloc d'acier Steel Block=Bloc d'acier
Copper Ore=Minerai de cuivre Copper Ore=Minerai de cuivre
Copper Block=Bloc de cuivre Copper Block=Bloc de cuivre

View File

@ -4,16 +4,16 @@ Locked Chest (owned by @1)=Peti Terkunci (milik @1)
You do not own this chest.=Anda bukan pemilik peti ini. You do not own this chest.=Anda bukan pemilik peti ini.
a locked chest=peti terkunci a locked chest=peti terkunci
Chest=Peti Chest=Peti
Write=Tulis Write=
Read=Baca Read=
Title:=Judul: Title:=Judul:
Contents:=Isi: Contents:=Isi:
Save=Simpan Save=Simpan
by @1=oleh @1 by @1=oleh @1
Page @1 of @2=Halaman @1 dari @2 Page @1 of @2=Halaman @1 dari @2
The book you were writing to mysteriously disappeared.=Buku yang Anda tulis menghilang secara misterius. The book you were writing to mysteriously disappeared.=
"@1" by @2="@1" oleh @2 "@1" by @2="@1" oleh @2
Blueberries=Bluberi Blueberries=Blueberry
Book=Buku Book=Buku
Book with Text=Buku Tertulis Book with Text=Buku Tertulis
Bronze Ingot=Perunggu Batangan Bronze Ingot=Perunggu Batangan
@ -38,7 +38,7 @@ Tin Lump=Bongkahan Timah
Furnace is empty=Tungku kosong Furnace is empty=Tungku kosong
100% (output full)=100% (keluaran penuh) 100% (output full)=100% (keluaran penuh)
@1%=@1% @1%=@1%
Not cookable=Tidak bisa dimasak Not cookable=Tidak dapat dimasak
Empty=Kosong Empty=Kosong
Furnace active=Tungku nyala Furnace active=Tungku nyala
Furnace inactive=Tungku mati Furnace inactive=Tungku mati
@ -85,7 +85,7 @@ Clay=Tanah Liat
Snow=Salju Snow=Salju
Snow Block=Balok Salju Snow Block=Balok Salju
Ice=Es Ice=Es
Cave Ice=Es Gua Cave Ice=Gua Es
Apple Tree=Pohon Apel Apple Tree=Pohon Apel
Apple Wood Planks=Papan Kayu Pohon Apel Apple Wood Planks=Papan Kayu Pohon Apel
Apple Tree Sapling=Anak Pohon Apel Apple Tree Sapling=Anak Pohon Apel
@ -132,13 +132,13 @@ Jungle Grass=Rumput Rimba
Grass=Rumput Grass=Rumput
Savanna Grass=Rumput Sabana Savanna Grass=Rumput Sabana
Fern=Pakis Fern=Pakis
Marram Grass=Rumput Pantai Marram Grass=Rumput Maram
Bush Stem=Batang Semak Bush Stem=Batang Semak
Bush Leaves=Daun Semak Bush Leaves=Daun Semak
Bush Sapling=Anak Semak Bush Sapling=Anak Semak
Blueberry Bush Leaves with Berries=Daun Semak Bluberi Berbuah Blueberry Bush Leaves with Berries=Daun Semak Blueberry Berbuah
Blueberry Bush Leaves=Daun Semak Bluberi Blueberry Bush Leaves=Daun Semak Blueberry
Blueberry Bush Sapling=Anak Semak Bluberi Blueberry Bush Sapling=Anak Semak Blueberry
Acacia Bush Stem=Batang Semak Akasia Acacia Bush Stem=Batang Semak Akasia
Acacia Bush Leaves=Daun Semak Akasia Acacia Bush Leaves=Daun Semak Akasia
Acacia Bush Sapling=Bibit Semak Akasia Acacia Bush Sapling=Bibit Semak Akasia
@ -147,7 +147,7 @@ Pine Bush Needles=Daun Semak Pinus
Pine Bush Sapling=Bibit Semak Pinus Pine Bush Sapling=Bibit Semak Pinus
Kelp=Kelp Kelp=Kelp
Green Coral=Koral Hijau Green Coral=Koral Hijau
Pink Coral=Koral Merah Muda Pink Coral=Koral Jambon
Cyan Coral=Koral Sian Cyan Coral=Koral Sian
Brown Coral=Koral Cokelat Brown Coral=Koral Cokelat
Orange Coral=Koral Oranye Orange Coral=Koral Oranye
@ -181,18 +181,18 @@ Glass=Kaca
Obsidian Glass=Kaca Obsidian Obsidian Glass=Kaca Obsidian
Brick Block=Balok Bata Brick Block=Balok Bata
Mese Lamp=Lampu Mese Mese Lamp=Lampu Mese
Apple Wood Mese Post Light=Lampu Taman Mese Kayu Apel Apple Wood Mese Post Light=
Acacia Wood Mese Post Light=Lampu Taman Mese Kayu Akasia Acacia Wood Mese Post Light=
Jungle Wood Mese Post Light=Lampu Taman Mese Kayu Rimba Jungle Wood Mese Post Light=
Pine Wood Mese Post Light=Lampu Taman Mese Kayu Pinus Pine Wood Mese Post Light=
Aspen Wood Mese Post Light=Lampu Taman Mese Kayu Aspen Aspen Wood Mese Post Light=
Cloud=Awan Cloud=Awan
Wooden Pickaxe=Belencong Kayu Wooden Pickaxe=Gancu Kayu
Stone Pickaxe=Belencong Batu Stone Pickaxe=Gancu Batu
Bronze Pickaxe=Belencong Perunggu Bronze Pickaxe=Gancu Perunggu
Steel Pickaxe=Belencong Baja Steel Pickaxe=Gancu Baja
Mese Pickaxe=Belencong Mese Mese Pickaxe=Gancu Mese
Diamond Pickaxe=Belencong Berlian Diamond Pickaxe=Gancu Berlian
Wooden Shovel=Sekop Kayu Wooden Shovel=Sekop Kayu
Stone Shovel=Sekop Batu Stone Shovel=Sekop Batu
Bronze Shovel=Sekop Perunggu Bronze Shovel=Sekop Perunggu

View File

@ -4,37 +4,37 @@ 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=チェスト
Write=書き込む Write=
Read=読む Read=
Title:=題名 Title:=題名
Contents:=内容 Contents:=内容
Save=保存 Save=保存
by @1=@1著 by @1=@1著
Page @1 of @2=@1 / @2 ページ Page @1 of @2=@1 / @2 ページ
The book you were writing to mysteriously disappeared.=あなたが書いていた本が、不思議なことに消えました。 The book you were writing to mysteriously disappeared.=
"@1" by @2=@2著「@1」 "@1" by @2=@2著「@1」
Blueberries=ブルーベリー Blueberries=ブルーベリー
Book=本 Book=本
Book with Text=記入済みの Book with Text=テキストが書かれた
Bronze Ingot=青銅インゴット Bronze Ingot=青銅インゴット
Clay Brick=粘土レンガ Clay Brick=粘土レンガ
Clay Lump=粘土 Clay Lump=粘土の塊
Coal Lump=石炭 Coal Lump=石炭
Copper Ingot=銅インゴット Copper Ingot=銅インゴット
Copper Lump=銅の粗鉱 Copper Lump=銅の
Diamond=ダイヤモンド Diamond=ダイヤモンド
Flint=火打ち石 Flint=火打ち石
Gold Ingot=金インゴット Gold Ingot=金インゴット
Gold Lump=金の粗鉱 Gold Lump=金の
Iron Lump=鉄の粗鉱 Iron Lump=鉄の
Mese Crystal=メセクリスタル Mese Crystal=メセクリスタル
Mese Crystal Fragment=メセクリスタルの破片 Mese Crystal Fragment=メセクリスタルの破片
Obsidian Shard=黒曜石の Obsidian Shard=黒曜石の
Paper=紙 Paper=紙
Steel Ingot=鉄インゴット Steel Ingot=鉄インゴット
Stick=棒 Stick=棒
Tin Ingot=スズインゴット Tin Ingot=スズインゴット
Tin Lump=スズの粗鉱 Tin Lump=スズの
Furnace is empty=かまどは空です Furnace is empty=かまどは空です
100% (output full)=100%(フル出力) 100% (output full)=100%(フル出力)
@1%=@1% @1%=@1%
@ -59,70 +59,70 @@ 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 Savanna Grass=サバンナの草に覆われた土 Dirt with Savanna Grass=サバンナの草のついた土
Dirt with Snow=雪に覆われた土 Dirt with Snow=雪のついた土
Dirt with Rainforest Litter=熱帯雨林の落葉に覆われた土 Dirt with Rainforest Litter=熱帯雨林のよごれた土
Dirt with Coniferous Litter=針葉樹の落葉に覆われた土 Dirt with Coniferous Litter=針葉樹のよごれた土
Savanna Dirt=サバンナの土 Savanna Dirt=サバンナの土
Savanna Dirt with Savanna Grass=サバンナの草に覆われたサバンナの土 Savanna Dirt with Savanna 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=リンゴの木
Apple Wood Planks=リンゴの木の板材 Apple Wood Planks=リンゴの板材
Apple Tree Sapling=リンゴの木の苗木 Apple Tree Sapling=リンゴの苗木
Apple Tree Leaves=リンゴの木の Apple Tree Leaves=リンゴの葉
Apple=リンゴ Apple=リンゴ
Apple Marker=リンゴのマーカー Apple Marker=リンゴのマーカー
Jungle Tree=ジャングルの Jungle Tree=ジャングルの木
Jungle Wood Planks=ジャングルの木の板材 Jungle Wood Planks=ジャングルの板材
Jungle Tree Leaves=ジャングルの木の葉 Jungle Tree Leaves=ジャングルの木の葉
Jungle Tree Sapling=ジャングルの木の苗木 Jungle Tree Sapling=ジャングルの木の苗木
Emergent Jungle Tree Sapling=ジャングルの超高木の苗木 Emergent Jungle Tree Sapling=新芽のジャングルの木の苗木
Pine Tree=マツの Pine Tree=マツの木
Pine Wood Planks=マツの木の板材 Pine Wood Planks=マツの板材
Pine Needles=マツの木の Pine Needles=マツの葉
Pine Tree Sapling=マツの木の苗木 Pine Tree Sapling=マツの苗木
Acacia Tree=アカシアの Acacia Tree=アカシアの木
Acacia Wood Planks=アカシアの木の板材 Acacia Wood Planks=アカシアの板材
Acacia Tree Leaves=アカシアの木の Acacia Tree Leaves=アカシアの葉
Acacia Tree Sapling=アカシアの木の苗木 Acacia Tree Sapling=アカシアの苗木
Aspen Tree=ポプラの 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=大きなサボテンの苗
@ -136,7 +136,7 @@ Marram Grass=マラムの草
Bush Stem=低木の幹 Bush Stem=低木の幹
Bush Leaves=低木の葉 Bush Leaves=低木の葉
Bush Sapling=低木の苗木 Bush Sapling=低木の苗木
Blueberry Bush Leaves with Berries=ブルーベリーの実った低木 Blueberry Bush Leaves with Berries=ブルーベリーの低木と実
Blueberry Bush Leaves=ブルーベリーの低木の葉 Blueberry Bush Leaves=ブルーベリーの低木の葉
Blueberry Bush Sapling=ブルーベリーの低木の苗木 Blueberry Bush Sapling=ブルーベリーの低木の苗木
Acacia Bush Stem=アカシアの低木の幹 Acacia Bush Stem=アカシアの低木の幹
@ -153,9 +153,9 @@ Brown Coral=茶色のサンゴ
Orange Coral=橙色のサンゴ 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=空の本棚
@ -163,49 +163,49 @@ Bookshelf (@1 written, @2 empty books)=本棚(記述済み @1 冊, 未記述 @2
Bookshelf=本棚 Bookshelf=本棚
Text too long=テキストが長すぎます Text too long=テキストが長すぎます
"@1"=「@1」 "@1"=「@1」
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=ポプラのフェンス
Apple Wood Fence Rail=リンゴのフェンスレール Apple Wood Fence Rail=リンゴのフェンスレール
Acacia Wood Fence Rail=アカシアのフェンスレール Acacia Wood Fence Rail=アカシアのフェンスレール
Jungle Wood Fence Rail=ジャングルのフェンスレール Jungle Wood Fence Rail=ジャングルのフェンスレール
Pine Wood Fence Rail=マツのフェンスレール 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=メセの
Apple Wood Mese Post Light=リンゴのメセ灯柱 Apple Wood Mese Post Light=リンゴのメセ灯柱
Acacia Wood Mese Post Light=アカシアのメセ灯柱 Acacia Wood Mese Post Light=アカシアのメセ灯柱
Jungle Wood Mese Post Light=ジャングルのメセ灯柱 Jungle Wood Mese Post Light=ジャングルのメセ灯柱
Pine Wood Mese Post Light=マツのメセ灯柱 Pine Wood Mese Post Light=マツのメセ灯柱
Aspen Wood Mese Post Light=ポプラのメセ灯柱 Aspen Wood Mese Post Light=ポプラのメセ灯柱
Cloud=雲 Cloud=雲
Wooden Pickaxe=木製のツルハシ Wooden Pickaxe=木のつるはし
Stone Pickaxe=石のツルハシ Stone Pickaxe=石のつるはし
Bronze Pickaxe=青銅のツルハシ Bronze Pickaxe=青銅のつるはし
Steel Pickaxe=鉄のツルハシ Steel Pickaxe=鉄のつるはし
Mese Pickaxe=メセのツルハシ Mese Pickaxe=メセのつるはし
Diamond Pickaxe=ダイヤモンドのツルハシ Diamond Pickaxe=ダイヤモンドのつるはし
Wooden Shovel=木のシャベル Wooden Shovel=木のシャベル
Stone Shovel=石のシャベル Stone Shovel=石のシャベル
Bronze Shovel=青銅のシャベル Bronze Shovel=青銅のシャベル
Steel Shovel=鉄のシャベル Steel Shovel=鉄のシャベル
Mese Shovel=メセのシャベル Mese Shovel=メセのシャベル
Diamond Shovel=ダイヤモンドのシャベル Diamond Shovel=ダイヤモンドのシャベル
Wooden Axe=木の斧 Wooden Axe=木の斧
Stone Axe=石の斧 Stone Axe=石の斧
Bronze Axe=青銅の斧 Bronze Axe=青銅の斧
Steel Axe=鉄の斧 Steel Axe=鉄の斧
Mese Axe=メセの斧 Mese Axe=メセの斧
Diamond Axe=ダイヤモンドの斧 Diamond Axe=ダイヤモンドの斧
Wooden Sword=木の剣 Wooden Sword=木の剣
Stone Sword=石の剣 Stone Sword=石の剣
Bronze Sword=青銅の剣 Bronze Sword=青銅の剣
Steel Sword=鉄の剣 Steel Sword=鉄の剣

View File

@ -4,14 +4,14 @@ Locked Chest (owned by @1)=Peti Berkunci (milik @1)
You do not own this chest.=Ini bukan peti milik anda. You do not own this chest.=Ini bukan peti milik anda.
a locked chest=peti berkunci a locked chest=peti berkunci
Chest=Peti Chest=Peti
Write=Tulis Write=
Read=Baca Read=
Title:=Tajuk: Title:=Tajuk:
Contents:=Kandungan: Contents:=Kandungan:
Save=Simpan Save=Simpan
by @1=oleh @1 by @1=oleh @1
Page @1 of @2=Halaman @1 daripada @2 Page @1 of @2=Ms. @1 / @2
The book you were writing to mysteriously disappeared.=Buku yang anda tulis hilang secara misterinya. The book you were writing to mysteriously disappeared.=
"@1" by @2="@1" oleh @2 "@1" by @2="@1" oleh @2
Blueberries=Beri Biru Blueberries=Beri Biru
Book=Buku Book=Buku
@ -28,7 +28,7 @@ Gold Ingot=Jongkong Emas
Gold Lump=Longgokan Emas Gold Lump=Longgokan Emas
Iron Lump=Longgokan Besi Iron Lump=Longgokan Besi
Mese Crystal=Kristal Mese Mese Crystal=Kristal Mese
Mese Crystal Fragment=Serpihan Kristal Mese Mese Crystal Fragment=Serpihan Mese
Obsidian Shard=Serpihan Obsidia Obsidian Shard=Serpihan Obsidia
Paper=Kertas Paper=Kertas
Steel Ingot=Jongkong Keluli Steel Ingot=Jongkong Keluli
@ -68,12 +68,12 @@ Obsidian Block=Bongkah Obsidia
Dirt=Tanah Dirt=Tanah
Dirt with Grass=Tanah Berumput Dirt with Grass=Tanah Berumput
Dirt with Grass and Footsteps=Tanah Berumput dan Tapak Kaki Dirt with Grass and Footsteps=Tanah Berumput dan Tapak Kaki
Dirt with Savanna Grass=Tanah Berumput Savana Dirt with Savanna Grass=
Dirt with Snow=Tanah Bersalji Dirt with Snow=Tanah Bersalji
Dirt with Rainforest Litter=Tanah Bersarap Hutan Hujan Dirt with Rainforest Litter=Tanah Bersarap Hutan Hujan
Dirt with Coniferous Litter=Tanah Bersarap Hutan Konifer Dirt with Coniferous Litter=Tanah Bersarap Hutan Konifer
Savanna Dirt=Tanah Savana Savanna Dirt=
Savanna Dirt with Savanna Grass=Tanah Savana Berumput Savana Savanna Dirt with Savanna Grass=
Permafrost=Ibun Abadi Permafrost=Ibun Abadi
Permafrost with Stones=Ibun Abadi Berbatu Permafrost with Stones=Ibun Abadi Berbatu
Permafrost with Moss=Ibun Abadi Berlumut Permafrost with Moss=Ibun Abadi Berlumut
@ -130,7 +130,7 @@ Papyrus=Papirus
Dry Shrub=Pokok Renek Kering Dry Shrub=Pokok Renek Kering
Jungle Grass=Rumput Hutan Jungle Grass=Rumput Hutan
Grass=Rumput Grass=Rumput
Savanna Grass=Rumput Savana Savanna Grass=
Fern=Paku Pakis Fern=Paku Pakis
Marram Grass=Rumput Maram Marram Grass=Rumput Maram
Bush Stem=Batang Belukar Bush Stem=Batang Belukar
@ -181,11 +181,11 @@ Glass=Kaca
Obsidian Glass=Kaca Obsidia Obsidian Glass=Kaca Obsidia
Brick Block=Bongkah Bata Brick Block=Bongkah Bata
Mese Lamp=Lampu Mese Mese Lamp=Lampu Mese
Apple Wood Mese Post Light=Lampu Tiang Mese Kayu Epal Apple Wood Mese Post Light=
Acacia Wood Mese Post Light=Lampu Tiang Mese Kayu Akasia Acacia Wood Mese Post Light=
Jungle Wood Mese Post Light=Lampu Tiang Mese Kayu Hutan Jungle Wood Mese Post Light=
Pine Wood Mese Post Light=Lampu Tiang Mese Kayu Pain Pine Wood Mese Post Light=
Aspen Wood Mese Post Light=Lampu Tiang Mese Kayu Aspen Aspen Wood Mese Post Light=
Cloud=Awan Cloud=Awan
Wooden Pickaxe=Beliung Kayu Wooden Pickaxe=Beliung Kayu
Stone Pickaxe=Beliung Batu Stone Pickaxe=Beliung Batu

View File

@ -1,44 +1,44 @@
# 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=Скриня
Write=Писати Write=Писати
Read=Читати Read=Читати
Title:=Заголовок: Title:=Заголовок:
Contents:=Вміст: Contents:=Вміст:
Save=Зберегти Save=Зберегти
by @1=Автор: @1 by @1=@1
Page @1 of @2=Сторінка @1 з @2 Page @1 of @2=Сторінка @1 з @2
The book you were writing to mysteriously disappeared.=Книга, в яку ви писали, загадковим чином зникла. The book you were writing to mysteriously disappeared.=
"@1" by @2=@2 — "@1" "@1" by @2="@1" @2
Blueberries=Чорниці Blueberries=Чорниці
Book=Книга Book=Книга
Book with Text=Книга з текстом Book with Text=Книга З Текстом
Bronze Ingot=Бронзовий злиток Bronze Ingot=Бронзовий Злиток
Clay Brick=Глиняна цегла Clay Brick=Глиняна Цегла
Clay Lump=Шматок глини Clay Lump=Шматок Глини
Coal Lump=Шматок вугілля Coal Lump=Шматок Вугілля
Copper Ingot=Мідний злиток Copper Ingot=Мідний Злиток
Copper Lump=Шматок міді Copper Lump=Шматок Меді
Diamond=Діамант Diamond=Алмаз
Flint=Кремінь Flint=Кремінь
Gold Ingot=Золотий злиток Gold Ingot=Золотий Злиток
Gold Lump=Шматок золота Gold Lump=Шматок Золота
Iron Lump=Шматок заліза Iron Lump=Шматок Заліза
Mese Crystal=Кристал Месе Mese Crystal=Кристал Месе
Mese Crystal Fragment=Уламок кристалу Месе Mese Crystal Fragment=Уламок Кристалу Месе
Obsidian Shard=Обсидіановий уламок Obsidian Shard=Обсидіановий Уламок
Paper=Папір Paper=Папір
Steel Ingot=Сталевий злиток Steel Ingot=Залізний Злиток
Stick=Палиця Stick=Палка
Tin Ingot=Олов'яний злиток Tin Ingot=Шматок Олова
Tin Lump=Шматок олова Tin Lump=Уламок Олова
Furnace is empty=Піч порожня Furnace is empty=Пічка Порожня
100% (output full)=100% (піч переповнена) 100% (output full)=100% (повне приготування)
@1%=@1% @1%=@1%
Not cookable=Не може бути приготовано Not cookable=Не може бути приготовлено
Empty=Порожньо Empty=Порожньо
Furnace active=Піч запалена Furnace active=Піч запалена
Furnace inactive=Піч не запалена Furnace inactive=Піч не запалена
@ -46,170 +46,170 @@ Furnace inactive=Піч не запалена
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 Savanna Grass=Земля із саванною травою Dirt with Savanna Grass=Земля Із Саванною Травою
Dirt with Snow=Земля зі снігом Dirt with Snow=Земля Зі Снігом
Dirt with Rainforest Litter=Земля з тропічно-лісовою підстилкою Dirt with Rainforest Litter=Земля Із Тропічною Підстилкою
Dirt with Coniferous Litter=Земля з хвойно-лісовою підстилкою Dirt with Coniferous Litter=Земля Із Сосновою Підстилкою
Savanna Dirt=Саванна земля Savanna Dirt=Саваннова Земля
Savanna Dirt with Savanna Grass=Саванна земля із саванною травою Savanna Dirt with Savanna 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=Стовбур Яблуні
Apple Wood Planks=Яблуневі дошки Apple Wood Planks=Яблуневі Дошки
Apple Tree Sapling=Саджанець яблуні Apple Tree Sapling=Саджанець Яблуні
Apple Tree Leaves=Яблуневе листя Apple Tree Leaves=Яблуневе Листя
Apple=Яблуко Apple=Яблуко
Apple Marker=Мітка яблука Apple Marker=Яблучна Мітка
Jungle Tree=Стовбур тропічного дерева Jungle Tree=Стовбур Тропічного Дерева
Jungle Wood Planks=Дошки з тропічного дерева Jungle Wood Planks=Дошки З Тропічного Дерева
Jungle Tree Leaves=Листя тропічного дерева Jungle Tree Leaves=Листя Тропічного Дерева
Jungle Tree Sapling=Саджанець тропічного дерева Jungle Tree Sapling=Саджанець Тропічного Дерева
Emergent Jungle Tree Sapling=Молодий саджанець тропічного дерева Emergent Jungle Tree Sapling=Саджанець Тропічного Дерева, Що Виріс
Pine Tree=Сосновий стовбур Pine Tree=Сосновий Стовбур
Pine Wood Planks=Соснові дошки Pine Wood Planks=Соснові Дошки
Pine Needles=Соснова хвоя Pine Needles=Соснова Хвоя
Pine Tree Sapling=Саджанець сосни Pine Tree Sapling=Саджанець Сосни
Acacia Tree=Акацієвий стовбур Acacia Tree=Стовбур Акації
Acacia Wood Planks=Акацієві дошки Acacia Wood Planks=Дошки Акації
Acacia Tree Leaves=Акацієве листя Acacia Tree Leaves=Листя Акації
Acacia Tree Sapling=Саджанець акації Acacia Tree Sapling=Саджанець Акації
Aspen Tree=Осиковий стовбур 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=Трава
Savanna Grass=Саванна трава Savanna Grass=Саваннова Трава
Fern=Папороть Fern=Папороть
Marram Grass=Пляжна трава Marram Grass=Пісколюб
Bush Stem=Стебла куща Bush Stem=Стебла Куща
Bush Leaves=Листя куща Bush Leaves=Листя Куща
Bush Sapling=Саджанець куща Bush Sapling=Саджанець Куща
Blueberry Bush Leaves with Berries=Кущ чорниці з ягодами Blueberry Bush Leaves with Berries=Кущ Чорниці З Ягодами
Blueberry Bush Leaves=Кущ чорниці Blueberry Bush Leaves=Кущ Чорниці
Blueberry Bush Sapling=Саджанець куща чорниці Blueberry Bush Sapling=Саджанець Куща Чорниці
Acacia Bush Stem=Стебла акацієвого куща Acacia Bush Stem=Стебла Куща Акації
Acacia Bush Leaves=Листя акацієвого куща Acacia Bush Leaves=Листя Куща Акації
Acacia Bush Sapling=Саджанець акацієвого куща Acacia Bush Sapling=Саджанець Куща Акації
Pine Bush Stem=Стебла соснового куща Pine Bush Stem=Стебла Хвойного Куща
Pine Bush Needles=Хвоя соснового куща Pine Bush Needles=Хвоя Куща
Pine Bush Sapling=Саджанець соснового куща Pine Bush Sapling=Саджанець Хвойного Куща
Kelp=Ламінарія Kelp=Ламінарія
Green Coral=Зелений корал Green Coral=Зелений Корал
Pink Coral=Рожевий корал Pink Coral=Рожевий Корал
Cyan Coral=Блакитний корал Cyan Coral=Блакитний Корал
Brown Coral=Коричневий корал Brown Coral=Коричневий Корал
Orange Coral=Помаранчевий корал 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=Текст надто довгий
"@1"="@1" "@1"="@1"
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=Осиковий Дерев'яний Паркан
Apple Wood Fence Rail=Яблуневий рейковий паркан Apple Wood Fence Rail=Яблуневий Дерев'яний Рейковий Паркан
Acacia Wood Fence Rail=Акацієвий рейковий паркан Acacia Wood Fence Rail=Дерев'яний Рейковий Паркан З Акації
Jungle Wood Fence Rail=Рейковий паркан з тропічного дерева Jungle Wood Fence Rail=Дерев'яний Рейковий Паркан З Тропічного Дерева
Pine Wood Fence Rail=Сосновий рейковий паркан 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=Месе Лампа
Apple Wood Mese Post Light=Яблуневий стовповий Месе-світильник Apple Wood Mese Post Light=Стовповий Месе Світильник З Яблуні
Acacia Wood Mese Post Light=Акацієвий стовповий Месе-світильник Acacia Wood Mese Post Light=Стовповий Месе Світильник З Акації
Jungle Wood Mese Post Light=Стовповий Месе-світильник із тропічного дерева Jungle Wood Mese Post Light=Стовповий Месе Світильник Із Тропічного Дерева
Pine Wood Mese Post Light=Сосновий стовповий Месе-світильник Pine Wood Mese Post Light=Стовповий Месе Світильник Із Сосни
Aspen Wood Mese Post Light=Осиковий стовповий Месе-світильник Aspen Wood Mese Post Light=Стовповий Месе Світильник З Осики
Cloud=Хмара Cloud=Хмара
Wooden Pickaxe=Дерев'яне кайло Wooden Pickaxe=Дерев'яна Кірка
Stone Pickaxe=Кам'яне кайло Stone Pickaxe=Кам'яна Кірка
Bronze Pickaxe=Бронзове кайло Bronze Pickaxe=Бронзова Кірка
Steel Pickaxe=Сталеве кайло Steel Pickaxe=Сталева Кірка
Mese Pickaxe=Месе-кайло Mese Pickaxe=Месе Кірка
Diamond Pickaxe=Діамантове кайло Diamond Pickaxe=Алмазна Кірка
Wooden Shovel=Дерев'яна лопата Wooden Shovel=Дерев'янна Лопата
Stone Shovel=Кам'яна лопата Stone Shovel=Кам'яна Лопата
Bronze Shovel=Бронзова лопата Bronze Shovel=Бронзова Лопата
Steel Shovel=Сталева лопата Steel Shovel=Сталева Лопата
Mese Shovel=Месеопата Mese Shovel=Месе Лопата
Diamond Shovel=Діамантова лопата Diamond Shovel=Алмазна Лопата
Wooden Axe=Дерев'яна сокира Wooden Axe=Дерев'яна Сокира
Stone Axe=Кам'яна сокира Stone Axe=Кам'яна Сокира
Bronze Axe=Бронзова сокира Bronze Axe=Бронзова Сокира
Steel Axe=Сталева сокира Steel Axe=Сталева Сокира
Mese Axe=Месе-сокира Mese Axe=Месе Сокира
Diamond Axe=Діамантова сокира Diamond Axe=Алмазна Сокира
Wooden Sword=Дерев'яний меч Wooden Sword=Дерев'яний Меч
Stone Sword=Кам'яний меч Stone Sword=Кам'яний Меч
Bronze Sword=Бронзовий меч Bronze Sword=Бронзовий Меч
Steel Sword=Сталевий меч Steel Sword=Сталевий Меч
Mese Sword=Месееч Mese Sword=Месе Меч
Diamond Sword=Діамантовий меч Diamond Sword=Алмазний Меч
Torch=Смолоскип Torch=Факел
@1 will intersect protection on growth.=@1 перетне захист коли виросте. @1 will intersect protection on growth.=@1 перетне захист за зростанням.

View File

@ -4,14 +4,14 @@ 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=箱子
Write= Write=
Read= Read=
Title:=标题: Title:=标题:
Contents:=内容: Contents:=内容:
Save=保存 Save=保存
by @1=由@1 by @1=由@1
Page @1 of @2=第@1页共@2页。 Page @1 of @2=第@1页共@2页。
The book you were writing to mysteriously disappeared.=你正在写的书不知为何消失了。 The book you were writing to mysteriously disappeared.=
"@1" by @2="@1" by @2 "@1" by @2="@1" by @2
Blueberries=蓝莓 Blueberries=蓝莓
Book=书 Book=书

View File

@ -4,14 +4,14 @@ 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=箱子
Write= Write=
Read= Read=
Title:=標題: Title:=標題:
Contents:=內容: Contents:=內容:
Save=保存 Save=保存
by @1=由@1 by @1=由@1
Page @1 of @2=第@1頁共@2頁。 Page @1 of @2=第@1頁共@2頁。
The book you were writing to mysteriously disappeared.=你正在寫的書神秘消失了。 The book you were writing to mysteriously disappeared.=
"@1" by @2="@1" by @2 "@1" by @2="@1" by @2
Blueberries=藍莓 Blueberries=藍莓
Book=書 Book=書

View File

@ -2476,6 +2476,9 @@ end
-- Detect mapgen to select functions -- Detect mapgen to select functions
-- --
minetest.clear_registered_biomes()
minetest.clear_registered_ores()
minetest.clear_registered_decorations()
local mg_name = minetest.get_mapgen_setting("mg_name") local mg_name = minetest.get_mapgen_setting("mg_name")

View File

@ -2024,7 +2024,7 @@ minetest.register_node("default:sand_with_kelp", {
return itemstack return itemstack
end, end,
after_dig_node = function(pos, oldnode, oldmetadata, digger) after_destruct = function(pos, oldnode)
minetest.set_node(pos, {name = "default:sand"}) minetest.set_node(pos, {name = "default:sand"})
end end
}) })
@ -2099,7 +2099,7 @@ minetest.register_node("default:coral_green", {
on_place = coral_on_place, on_place = coral_on_place,
after_dig_node = function(pos, oldnode, oldmetadata, digger) after_destruct = function(pos, oldnode)
minetest.set_node(pos, {name = "default:coral_skeleton"}) minetest.set_node(pos, {name = "default:coral_skeleton"})
end, end,
}) })
@ -2130,7 +2130,7 @@ minetest.register_node("default:coral_pink", {
on_place = coral_on_place, on_place = coral_on_place,
after_dig_node = function(pos, oldnode, oldmetadata, digger) after_destruct = function(pos, oldnode)
minetest.set_node(pos, {name = "default:coral_skeleton"}) minetest.set_node(pos, {name = "default:coral_skeleton"})
end, end,
}) })
@ -2161,7 +2161,7 @@ minetest.register_node("default:coral_cyan", {
on_place = coral_on_place, on_place = coral_on_place,
after_dig_node = function(pos, oldnode, oldmetadata, digger) after_destruct = function(pos, oldnode)
minetest.set_node(pos, {name = "default:coral_skeleton"}) minetest.set_node(pos, {name = "default:coral_skeleton"})
end, end,
}) })
@ -2549,15 +2549,6 @@ local default_bookshelf_def = {
end end
return 0 return 0
end, end,
on_metadata_inventory_put = function(pos)
update_bookshelf(pos)
end,
on_metadata_inventory_take = function(pos)
update_bookshelf(pos)
end,
on_metadata_inventory_move = function(pos)
update_bookshelf(pos)
end,
on_blast = function(pos) on_blast = function(pos)
local drops = {} local drops = {}
default.get_inventory_drops(pos, "books", drops) default.get_inventory_drops(pos, "books", drops)
@ -2606,12 +2597,12 @@ local function register_sign(material, desc, def)
if not text then if not text then
return return
end end
if #text > 512 then if string.len(text) > 512 then
minetest.chat_send_player(player_name, S("Text too long")) minetest.chat_send_player(player_name, S("Text too long"))
return return
end end
text = text:gsub("[%z-\8\11-\31\127]", "") -- strip naughty control characters (keeps \t and \n) default.log_player_action(sender, "wrote \"" .. text ..
default.log_player_action(sender, ("wrote %q to the sign at"):format(text), pos) "\" to the sign at", pos)
local meta = minetest.get_meta(pos) local meta = minetest.get_meta(pos)
meta:set_string("text", text) meta:set_string("text", text)

BIN
mods/default/sounds/default_break_glass.1.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_break_glass.2.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_break_glass.3.ogg Normal file → Executable file

Binary file not shown.

Binary file not shown.

BIN
mods/default/sounds/default_cool_lava.1.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_cool_lava.2.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_cool_lava.3.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_dig_crumbly.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_dig_dig_immediate.ogg Normal file → Executable file

Binary file not shown.

Binary file not shown.

BIN
mods/default/sounds/default_dirt_footstep.1.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_dirt_footstep.2.ogg Normal file → Executable file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
mods/default/sounds/default_dug_node.1.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_dug_node.2.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_glass_footstep.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_grass_footstep.1.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_grass_footstep.2.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_grass_footstep.3.ogg Normal file → Executable file

Binary file not shown.

Binary file not shown.

BIN
mods/default/sounds/default_gravel_footstep.1.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_gravel_footstep.2.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_gravel_footstep.3.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_gravel_footstep.4.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_place_node.1.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_place_node.2.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_place_node.3.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_place_node_hard.1.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_place_node_hard.2.ogg Normal file → Executable file

Binary file not shown.

0
mods/default/sounds/default_snow_footstep.1.ogg Normal file → Executable file
View File

0
mods/default/sounds/default_snow_footstep.2.ogg Normal file → Executable file
View File

0
mods/default/sounds/default_snow_footstep.3.ogg Normal file → Executable file
View File

0
mods/default/sounds/default_snow_footstep.4.ogg Normal file → Executable file
View File

BIN
mods/default/sounds/default_wood_footstep.1.ogg Normal file → Executable file

Binary file not shown.

BIN
mods/default/sounds/default_wood_footstep.2.ogg Normal file → Executable file

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More