Compare commits
90 Commits
Author | SHA1 | Date | |
---|---|---|---|
90e786e65b | |||
|
b23c44d980 | ||
|
7967f77f3b | ||
|
2ce8ff3306 | ||
|
4e402ec39f | ||
|
d89170c129 | ||
|
9bd1f24d36 | ||
|
88ecab34d9 | ||
|
9cb57ae5f2 | ||
|
77bbcee0cd | ||
|
da0509c5bd | ||
|
599dedd927 | ||
|
061f4e76dd | ||
|
f03c992864 | ||
|
91f6e5faec | ||
|
82b017af6b | ||
|
511619253f | ||
|
3ad8a6a473 | ||
|
1ce48351ea | ||
|
c60d8e4da0 | ||
|
d1ba7c3db3 | ||
|
31133a371e | ||
|
0639681f9b | ||
|
a43a6bcdef | ||
df3c01a605 | |||
|
16c663f87e | ||
|
316c0c7224 | ||
|
ef788d0307 | ||
|
5a80084800 | ||
|
10799db4cf | ||
|
222afb0cf0 | ||
|
472997b4aa | ||
|
70cf7a26fd | ||
|
a3b171e317 | ||
|
e9676fa632 | ||
|
c0200b0a01 | ||
|
43185f19e3 | ||
|
ff755eed9c | ||
|
9875ef6240 | ||
|
b9c089474c | ||
280c8dcc8d | |||
|
05367552d1 | ||
|
33d90c2c45 | ||
|
4bb4a2a818 | ||
127629a029 | |||
|
829eb92ccf | ||
|
bff7596364 | ||
|
601ec6cd94 | ||
|
b58991d4f3 | ||
|
34942339c7 | ||
|
eba9012d05 | ||
|
59da46c80b | ||
|
03177f1584 | ||
|
a132872ad8 | ||
|
bbc70c95ef | ||
|
9e77e00c65 | ||
|
b26a787eb3 | ||
|
08e057bf1c | ||
|
83c10f59e1 | ||
|
960aff2f63 | ||
|
110c23560e | ||
|
d86435d86c | ||
|
16bf166902 | ||
|
cd6ea53a52 | ||
|
16b6bdde0a | ||
671e289256 | |||
|
996fea7cd0 | ||
|
9a9df3a42e | ||
|
1e237b8d18 | ||
|
9050150464 | ||
|
833ed77620 | ||
|
4c6e19968a | ||
|
446e56a879 | ||
|
34c1d3242d | ||
|
f49707c973 | ||
|
8dee348d97 | ||
|
aeb27c4db6 | ||
|
6921c9bbd1 | ||
|
8d60e85dfc | ||
|
2c1d9e1330 | ||
|
ec2f57db0e | ||
|
fdcf458b56 | ||
|
97130f4c1c | ||
|
26b2da2c08 | ||
|
8eb4437ac8 | ||
|
792bc6f6e5 | ||
|
c4cf1a6004 | ||
|
99a7193095 | ||
|
2e8ac46120 | ||
|
508a9070a0 |
16
.github/workflows/build.yml
vendored
|
@ -1,16 +0,0 @@
|
||||||
name: build
|
|
||||||
on: [push, pull_request]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
luacheck:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v2
|
|
||||||
- name: Install Luarocks
|
|
||||||
run: |
|
|
||||||
sudo apt-get update -qyy
|
|
||||||
sudo apt-get install luarocks -qyy
|
|
||||||
- name: Install Luacheck
|
|
||||||
run: luarocks install --local luacheck
|
|
||||||
- name: Run Luacheck
|
|
||||||
run: $HOME/.luarocks/bin/luacheck mods
|
|
13
.github/workflows/luacheck.yml
vendored
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
name: luacheck
|
||||||
|
on: [push, pull_request]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
luacheck:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
- name: Luacheck
|
||||||
|
uses: lunarmodules/luacheck@master
|
||||||
|
with:
|
||||||
|
args: mods
|
11
.github/workflows/test.yml
vendored
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
name: test
|
||||||
|
on: [push, pull_request]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
test:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
timeout-minutes: 5
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- run: ./utils/test/run.sh
|
|
@ -1,6 +1,10 @@
|
||||||
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",
|
||||||
|
|
33
README.md
|
@ -1,15 +1,29 @@
|
||||||
# Minetest Game
|
# Minetest Game
|
||||||
|
|
||||||
The default game bundled in the Minetest engine.
|
[![ContentDB](https://content.minetest.net/packages/Minetest/minetest_game/shields/title/)](https://content.minetest.net/packages/Minetest/minetest_game/)
|
||||||
|
|
||||||
For further information, check [this forum topic](https://forum.minetest.net/viewtopic.php?f=15&t=9724).
|
Minetest Game (abbreviated MTG) is a simple and peaceful sandbox game, with no
|
||||||
|
real goals or built-in enemy mobs.
|
||||||
|
|
||||||
Also see the [Minetest Wiki](https://wiki.minetest.net/Subgames/Minetest_Game) for more information.
|
While it provides a basic gameplay experience out of the box, it is best played
|
||||||
|
with mods.
|
||||||
|
|
||||||
|
Minetest Game is in perpetual 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](https://content.minetest.net/packages/Minetest/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/`
|
||||||
|
|
||||||
- GNU/Linux: If you use a system-wide installation place it in `~/.minetest/games/`.
|
- GNU/Linux: If you use a system-wide installation place it in `~/.minetest/games/`.
|
||||||
|
|
||||||
|
@ -19,14 +33,13 @@ For further information or help, see: [Installing Mods](https://wiki.minetest.ne
|
||||||
|
|
||||||
## Compatibility
|
## Compatibility
|
||||||
|
|
||||||
The Minetest Game GitHub `master` `HEAD` is generally compatible with the GitHub
|
As of January 2024 Minetest Game follows a **rolling release** model with new changes being automatically
|
||||||
`master` `HEAD` of the Minetest engine.
|
published on ContentDB every day.
|
||||||
|
|
||||||
Additionally, when the Minetest engine is tagged to be a certain version (e.g.
|
There are no stable releases or tags, all existing ones are considered legacy.
|
||||||
`0.4.10`), Minetest Game is tagged with the version, too.
|
|
||||||
|
|
||||||
When stable releases are made, Minetest Game and the Minetest engine is packaged
|
Minetest Game is always compatible to the latest stable release of the engine.
|
||||||
and made available at [www.minetest.net](https://www.minetest.net/downloads/).
|
Older releases may be supported too depending on circumstances.
|
||||||
|
|
||||||
## Licensing
|
## Licensing
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
title = Notre Ami Le Cube 1.6
|
title = Notre Ami Le Cube 1.6
|
||||||
author = Minetest and Sys4
|
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 = 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.
|
||||||
|
min_minetest_version = 5.8
|
||||||
|
|
84
game_api.txt
|
@ -49,6 +49,8 @@ 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
|
||||||
|
|
||||||
|
@ -322,7 +324,7 @@ Allows creation of new fences with "fencelike" drawtype.
|
||||||
name = "default:fence_wood",
|
name = "default:fence_wood",
|
||||||
description = "Wooden Fence",
|
description = "Wooden Fence",
|
||||||
texture = "default_wood.png",
|
texture = "default_wood.png",
|
||||||
material = "default:wood",
|
material = "default:wood", -- `nil` if you don't want the recipe
|
||||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||||
sounds = default.node_sound_wood_defaults(),
|
sounds = default.node_sound_wood_defaults(),
|
||||||
|
|
||||||
|
@ -380,6 +382,8 @@ The farming API allows you to easily register plants and hoes.
|
||||||
-- ^ Always provide a plant texture for each step, format: modname_plantname_i.png (i = stepnumber)
|
-- ^ Always provide a plant texture for each step, format: modname_plantname_i.png (i = stepnumber)
|
||||||
minlight = 13, -- Minimum light to grow
|
minlight = 13, -- Minimum light to grow
|
||||||
maxlight = default.LIGHT_MAX -- Maximum light to grow
|
maxlight = default.LIGHT_MAX -- Maximum light to grow
|
||||||
|
can_grow = function(pos) -- Сalled every growth tick to check if the plant can grow, returns bool
|
||||||
|
-- (optional, checks for wet soil by default)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -630,6 +634,34 @@ set a players home position and teleport a player to home position.
|
||||||
* `name` Player you wish to teleport to their home position
|
* `name` Player you wish to teleport to their home position
|
||||||
* return value: false if player cannot be sent home, otherwise true
|
* return value: false if player cannot be sent home, otherwise true
|
||||||
|
|
||||||
|
Spawn API
|
||||||
|
---------
|
||||||
|
|
||||||
|
The spawn mod takes care of deciding the position of new and respawning players
|
||||||
|
in the world and has an API to modify its behavior.
|
||||||
|
|
||||||
|
`spawn.get_default_pos()`
|
||||||
|
* Gets the default spawn position as decided by a biome-dependent algorithm.
|
||||||
|
* This is not influenced by settings like "static_spawnpoint" or "engine_spawn".
|
||||||
|
* return value: a vector or `nil` on failure
|
||||||
|
|
||||||
|
`spawn.add_suitable_biome(biome)`:
|
||||||
|
* Adds a biome to the list of allowed biomes for the above algorithm.
|
||||||
|
* `biome`: Name of a registered biome
|
||||||
|
|
||||||
|
`spawn.register_on_spawn(func)`:
|
||||||
|
* Registers a callback to be called when a player (re-)spawns. This can be used
|
||||||
|
to intercept the normal logic to e.g. respawn a player at his bed.
|
||||||
|
* `func`: `function(player, is_new)` with arguments
|
||||||
|
- `player`: ObjectRef
|
||||||
|
- `is_new`: true if the player is joining the server for the first time
|
||||||
|
- return value: true to skip all other spawn logic, false or nil otherwise
|
||||||
|
|
||||||
|
When a player (re-)spawns the following order is executed:
|
||||||
|
1. All spawn callbacks in order of registration.
|
||||||
|
2. If no result, teleport player to `spawn.get_default_pos()`.
|
||||||
|
3. If that fails, spawning is left up to engine.
|
||||||
|
|
||||||
|
|
||||||
Sfinv API
|
Sfinv API
|
||||||
---------
|
---------
|
||||||
|
@ -1026,6 +1058,27 @@ 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
|
||||||
-----
|
-----
|
||||||
|
@ -1140,8 +1193,35 @@ the log.
|
||||||
|
|
||||||
`default.set_inventory_action_loggers(def, name)`
|
`default.set_inventory_action_loggers(def, name)`
|
||||||
|
|
||||||
* sets the callbacks `on_metadata_inventory_move`,
|
* hooks 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
|
||||||
|
|
||||||
|
|
||||||
|
Weather API
|
||||||
|
-----------
|
||||||
|
|
||||||
|
The weather mod will constantly adjust weather effects seen by the player
|
||||||
|
(that is: cloud parameters and shadow intensity).
|
||||||
|
These can be influenced using this API.
|
||||||
|
|
||||||
|
#### `weather.get = function(player)`
|
||||||
|
|
||||||
|
* Returns the current weather effects seen by the player.
|
||||||
|
It returns a table with two keys:
|
||||||
|
* `clouds`: A table (or `nil`) with cloud data following the same format as used for `player:set_clouds()`.
|
||||||
|
* `lighting`: A table (or `nil`) with lighting data following the same format as used for `player:set_lighting()`.
|
||||||
|
* `player`: ObjectRef of the relevant player
|
||||||
|
* You can override this function to change the weather effects by simply returning different values.
|
||||||
|
Setting `clouds` or `lighting` in the result table to `nil` will *prevent* those from changing.
|
||||||
|
|
||||||
|
Utilities
|
||||||
|
---------
|
||||||
|
|
||||||
|
`default.dig_up(pos, node, digger, max_height)`
|
||||||
|
|
||||||
|
* Find all nodes above `pos` that is the same, then dig them all
|
||||||
|
* `max_height` Maximum number of nodes to iterate. Default: 100
|
||||||
|
|
|
@ -1,5 +1,10 @@
|
||||||
|
-- Removes a node without calling on on_destruct()
|
||||||
local reverse = true
|
-- We use this to mess with bed nodes without causing unwanted recursion.
|
||||||
|
local function remove_no_destruct(pos)
|
||||||
|
minetest.swap_node(pos, {name = "air"})
|
||||||
|
minetest.remove_node(pos) -- Now clear the meta
|
||||||
|
minetest.check_for_falling(pos)
|
||||||
|
end
|
||||||
|
|
||||||
local function destruct_bed(pos, n)
|
local function destruct_bed(pos, n)
|
||||||
local node = minetest.get_node(pos)
|
local node = minetest.get_node(pos)
|
||||||
|
@ -12,15 +17,11 @@ local function destruct_bed(pos, n)
|
||||||
local dir = minetest.facedir_to_dir(node.param2)
|
local dir = minetest.facedir_to_dir(node.param2)
|
||||||
other = vector.add(pos, dir)
|
other = vector.add(pos, dir)
|
||||||
end
|
end
|
||||||
|
local oname = minetest.get_node(other).name
|
||||||
if reverse then
|
if minetest.get_item_group(oname, "bed") ~= 0 then
|
||||||
reverse = not reverse
|
remove_no_destruct(other)
|
||||||
minetest.remove_node(other)
|
beds.remove_spawns_at(pos)
|
||||||
minetest.check_for_falling(other)
|
beds.remove_spawns_at(other)
|
||||||
beds.remove_spawns_at(pos)
|
|
||||||
beds.remove_spawns_at(other)
|
|
||||||
else
|
|
||||||
reverse = not reverse
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -113,10 +114,11 @@ function beds.register_bed(name, def)
|
||||||
|
|
||||||
on_rotate = function(pos, node, user, _, new_param2)
|
on_rotate = function(pos, node, user, _, new_param2)
|
||||||
local dir = minetest.facedir_to_dir(node.param2)
|
local dir = minetest.facedir_to_dir(node.param2)
|
||||||
|
-- old position of the top node
|
||||||
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 not minetest.get_item_group(node2.name, "bed") == 2 or
|
if not node2 or minetest.get_item_group(node2.name, "bed") ~= 2 or
|
||||||
not node.param2 == node2.param2 then
|
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
|
||||||
|
@ -126,6 +128,7 @@ function beds.register_bed(name, def)
|
||||||
if new_param2 % 32 > 3 then
|
if new_param2 % 32 > 3 then
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
|
-- new position of the top node
|
||||||
local newp = vector.add(pos, minetest.facedir_to_dir(new_param2))
|
local newp = vector.add(pos, minetest.facedir_to_dir(new_param2))
|
||||||
local node3 = minetest.get_node_or_nil(newp)
|
local node3 = minetest.get_node_or_nil(newp)
|
||||||
local node_def = node3 and minetest.registered_nodes[node3.name]
|
local node_def = node3 and minetest.registered_nodes[node3.name]
|
||||||
|
@ -137,8 +140,7 @@ function beds.register_bed(name, def)
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
node.param2 = new_param2
|
node.param2 = new_param2
|
||||||
-- do not remove_node here - it will trigger destroy_bed()
|
remove_no_destruct(p)
|
||||||
minetest.set_node(p, {name = "air"})
|
|
||||||
minetest.set_node(pos, node)
|
minetest.set_node(pos, node)
|
||||||
minetest.set_node(newp, {name = name .. "_top", param2 = new_param2})
|
minetest.set_node(newp, {name = name .. "_top", param2 = new_param2})
|
||||||
return true
|
return true
|
||||||
|
|
|
@ -65,17 +65,17 @@ 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",
|
"blank.png",
|
||||||
"beds_bed_side_bottom.png"
|
"beds_bed_side_bottom.png"
|
||||||
},
|
},
|
||||||
top = {
|
top = {
|
||||||
"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",
|
"blank.png",
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
nodebox = {
|
nodebox = {
|
||||||
|
|
|
@ -181,12 +181,32 @@ 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 > 0.2 and tod < 0.805 then
|
if tod > beds.day_interval.start and tod < beds.day_interval.finish 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
|
||||||
|
@ -206,17 +226,8 @@ 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
|
||||||
minetest.after(2, function()
|
schedule_update()
|
||||||
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
|
||||||
|
|
||||||
|
@ -233,10 +244,9 @@ end
|
||||||
-- Callbacks
|
-- Callbacks
|
||||||
-- Only register respawn callback if respawn enabled
|
-- Only register respawn callback if respawn enabled
|
||||||
if enable_respawn then
|
if enable_respawn then
|
||||||
-- respawn player at bed if enabled and valid position is found
|
-- Respawn player at bed if valid position is found
|
||||||
minetest.register_on_respawnplayer(function(player)
|
spawn.register_on_spawn(function(player, is_new)
|
||||||
local name = player:get_player_name()
|
local pos = beds.spawn[player:get_player_name()]
|
||||||
local pos = beds.spawn[name]
|
|
||||||
if pos then
|
if pos then
|
||||||
player:set_pos(pos)
|
player:set_pos(pos)
|
||||||
return true
|
return true
|
||||||
|
@ -249,13 +259,7 @@ 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
|
||||||
minetest.after(2, function()
|
schedule_update()
|
||||||
update_formspecs(is_night_skip_enabled())
|
|
||||||
if is_night_skip_enabled() then
|
|
||||||
beds.skip_night()
|
|
||||||
beds.kick_players()
|
|
||||||
end
|
|
||||||
end)
|
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
|
|
@ -16,6 +16,11 @@ 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
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# textdomain: beds
|
# textdomain: beds
|
||||||
Fancy Bed=Luksa Lito
|
Fancy Bed=Luksa lito
|
||||||
Simple Bed=Simpla Lito
|
Simple Bed=Simpla lito
|
||||||
This bed is already occupied!=Tiu lito jam estas okupata!
|
This bed is already occupied!=Tiu lito jam estas okupata!
|
||||||
You have to stop moving before going to bed!=Vi ĉesu moviĝi por enlitiĝi!
|
You have to stop moving before going to bed!=Vi ĉesu moviĝi por enlitiĝi!
|
||||||
Good morning.=Bonan matenon.
|
Good morning.=Bonan matenon.
|
||||||
|
|
|
@ -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!=
|
This bed is already occupied!=Ranjang telah terisi!
|
||||||
You have to stop moving before going to bed!=
|
You have to stop moving before going to bed!=Anda harus diam untuk tidur!
|
||||||
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 dapat tidur pada waktu malam.
|
You can only sleep at night.=Anda hanya bisa tidur pada waktu malam.
|
||||||
Leave Bed=Tinggalkan Ranjang
|
Leave Bed=Tinggalkan Ranjang
|
||||||
|
|
|
@ -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!=
|
This bed is already occupied!=Katil ini sudah diduduki!
|
||||||
You have to stop moving before going to bed!=
|
You have to stop moving before going to bed!=Anda perlu berhenti bergerak sebelum tidur!
|
||||||
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=Bangun
|
Leave Bed=Tinggalkan Katil
|
||||||
|
|
|
@ -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=@1 из @2 игроков в кровати
|
@1 of @2 players are in bed=@1 из @2 игроков в кровати
|
||||||
Force night skip=Пропустить ночь
|
Force night skip=Пропустить ночь
|
||||||
|
|
|
@ -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=Встати з ліжка
|
||||||
|
|
|
@ -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=強制跳過夜晚
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
name = beds
|
name = beds
|
||||||
description = Minetest Game mod: beds
|
description = Minetest Game mod: beds
|
||||||
depends = default, wool
|
depends = default, wool, spawn
|
||||||
|
|
Before Width: | Height: | Size: 83 B |
|
@ -1,3 +1,3 @@
|
||||||
# textdomain: binoculars
|
# textdomain: binoculars
|
||||||
Binoculars=Teropong
|
Binoculars=Teropong
|
||||||
Use with 'Zoom' key=Pakai dengan tombol 'Zoom'
|
Use with 'Zoom' key=Gunakan dengan tombol 'Zum'
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
# textdomain: binoculars
|
# textdomain: binoculars
|
||||||
Binoculars=Бинокль
|
Binoculars=Бинокль
|
||||||
Use with 'Zoom' key=Используется с привилегией 'Zoom'
|
Use with 'Zoom' key=Используется клавишей 'Приближение'
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
# textdomain: binoculars
|
# textdomain: binoculars
|
||||||
Binoculars=Бінокль
|
Binoculars=Бінокль
|
||||||
Use with 'Zoom' key=Використовується з правами 'Zoom'
|
Use with 'Zoom' key=Використовується клавішею 'Наближення'
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# textdomain: boats
|
# textdomain: boats
|
||||||
Boat cruise mode on=Mod bot layar makan angin dibolehkan
|
Boat cruise mode on=Mod jelajah bot dihidupkan
|
||||||
Boat cruise mode off=Mod bot layar makan angin dilumpuhkan
|
Boat cruise mode off=Mod jelajah bot dimatikan
|
||||||
Boat=Bot
|
Boat=Bot
|
||||||
|
|
|
@ -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=Лодка
|
||||||
|
|
|
@ -16,6 +16,27 @@ local function is_owner(pos, name)
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local function drop(pos, itemstack)
|
||||||
|
local obj = minetest.add_item(pos, itemstack:take_item(itemstack:get_count()))
|
||||||
|
if obj then
|
||||||
|
obj:set_velocity({
|
||||||
|
x = math.random(-10, 10) / 9,
|
||||||
|
y = 5,
|
||||||
|
z = math.random(-10, 10) / 9,
|
||||||
|
})
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
local function drop_contents(pos)
|
||||||
|
local inv = minetest.get_meta(pos):get_inventory()
|
||||||
|
|
||||||
|
for i = 1, inv:get_size("main") do
|
||||||
|
local stk = inv:get_stack("main", i)
|
||||||
|
drop(pos, stk)
|
||||||
|
end
|
||||||
|
minetest.remove_node(pos)
|
||||||
|
end
|
||||||
|
|
||||||
local bones_formspec =
|
local bones_formspec =
|
||||||
"size[8,9]" ..
|
"size[8,9]" ..
|
||||||
"list[current_name;main;0,0.3;8,4;]" ..
|
"list[current_name;main;0,0.3;8,4;]" ..
|
||||||
|
@ -28,7 +49,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
|
||||||
|
|
||||||
minetest.register_node("bones:bones", {
|
local bones_def = {
|
||||||
description = S("Bones"),
|
description = S("Bones"),
|
||||||
tiles = {
|
tiles = {
|
||||||
"bones_top.png^[transform2",
|
"bones_top.png^[transform2",
|
||||||
|
@ -87,6 +108,11 @@ minetest.register_node("bones:bones", {
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if not player:is_player() then
|
||||||
|
drop_contents(pos)
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
if minetest.get_meta(pos):get_string("infotext") == "" then
|
if minetest.get_meta(pos):get_string("infotext") == "" then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
@ -130,7 +156,11 @@ minetest.register_node("bones:bones", {
|
||||||
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
|
||||||
|
@ -167,17 +197,6 @@ local function may_replace(pos, player)
|
||||||
return node_definition.buildable_to
|
return node_definition.buildable_to
|
||||||
end
|
end
|
||||||
|
|
||||||
local drop = function(pos, itemstack)
|
|
||||||
local obj = minetest.add_item(pos, itemstack:take_item(itemstack:get_count()))
|
|
||||||
if obj then
|
|
||||||
obj:set_velocity({
|
|
||||||
x = math.random(-10, 10) / 9,
|
|
||||||
y = 5,
|
|
||||||
z = math.random(-10, 10) / 9,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
local player_inventory_lists = { "main", "craft" }
|
local player_inventory_lists = { "main", "craft" }
|
||||||
bones.player_inventory_lists = player_inventory_lists
|
bones.player_inventory_lists = player_inventory_lists
|
||||||
|
|
||||||
|
@ -224,7 +243,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 and not minetest.is_protected(air, player_name) then
|
if air then
|
||||||
pos = air
|
pos = air
|
||||||
else
|
else
|
||||||
bones_mode = "drop"
|
bones_mode = "drop"
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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å @a.
|
@1 died at @2.=@1 dog på @2.
|
||||||
@1 died at @2, and dropped their inventory.=@1 dog på @a, och tappade deras saker.
|
@1 died at @2, and dropped their inventory.=@1 dog på @2, 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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -33,6 +33,11 @@ local function check_protection(pos, name, text)
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local function log_action(pos, name, action)
|
||||||
|
minetest.log("action", (name ~= "" and name or "A mod")
|
||||||
|
.. " " .. action .. " at " .. minetest.pos_to_string(pos) .. " with a bucket")
|
||||||
|
end
|
||||||
|
|
||||||
-- Register a new liquid
|
-- Register a new liquid
|
||||||
-- source = name of the source node
|
-- source = name of the source node
|
||||||
-- flowing = name of the flowing node
|
-- flowing = name of the flowing node
|
||||||
|
@ -101,13 +106,13 @@ function bucket.register_liquid(source, flowing, itemname, inventory_image, name
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
if check_protection(lpos, user
|
local pname = user and user:get_player_name() or ""
|
||||||
and user:get_player_name()
|
if check_protection(lpos, pname, "place "..source) then
|
||||||
or "", "place "..source) then
|
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
minetest.set_node(lpos, {name = source})
|
minetest.set_node(lpos, {name = source})
|
||||||
|
log_action(lpos, pname, "placed " .. source)
|
||||||
return ItemStack("bucket:bucket_empty")
|
return ItemStack("bucket:bucket_empty")
|
||||||
end
|
end
|
||||||
})
|
})
|
||||||
|
@ -128,16 +133,16 @@ minetest.register_craftitem("bucket:bucket_empty", {
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
-- Check if pointing to a liquid source
|
-- Check if pointing to a liquid source
|
||||||
local node = minetest.get_node(pointed_thing.under)
|
local pos = pointed_thing.under
|
||||||
|
local node = minetest.get_node(pos)
|
||||||
local liquiddef = bucket.liquids[node.name]
|
local liquiddef = bucket.liquids[node.name]
|
||||||
local item_count = user:get_wielded_item():get_count()
|
local item_count = user:get_wielded_item():get_count()
|
||||||
|
|
||||||
if liquiddef ~= nil
|
if liquiddef ~= nil
|
||||||
and liquiddef.itemname ~= nil
|
and liquiddef.itemname ~= nil
|
||||||
and node.name == liquiddef.source then
|
and node.name == liquiddef.source then
|
||||||
if check_protection(pointed_thing.under,
|
local pname = user:get_player_name()
|
||||||
user:get_player_name(),
|
if check_protection(pos, pname, "take ".. node.name) then
|
||||||
"take ".. node.name) then
|
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -152,9 +157,9 @@ minetest.register_craftitem("bucket:bucket_empty", {
|
||||||
if inv:room_for_item("main", {name=liquiddef.itemname}) then
|
if inv:room_for_item("main", {name=liquiddef.itemname}) then
|
||||||
inv:add_item("main", liquiddef.itemname)
|
inv:add_item("main", liquiddef.itemname)
|
||||||
else
|
else
|
||||||
local pos = user:get_pos()
|
local upos = user:get_pos()
|
||||||
pos.y = math.floor(pos.y + 0.5)
|
upos.y = math.floor(upos.y + 0.5)
|
||||||
minetest.add_item(pos, liquiddef.itemname)
|
minetest.add_item(upos, liquiddef.itemname)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- set to return empty buckets minus 1
|
-- set to return empty buckets minus 1
|
||||||
|
@ -166,10 +171,13 @@ minetest.register_craftitem("bucket:bucket_empty", {
|
||||||
local source_neighbor = false
|
local source_neighbor = false
|
||||||
if liquiddef.force_renew then
|
if liquiddef.force_renew then
|
||||||
source_neighbor =
|
source_neighbor =
|
||||||
minetest.find_node_near(pointed_thing.under, 1, liquiddef.source)
|
minetest.find_node_near(pos, 1, liquiddef.source)
|
||||||
end
|
end
|
||||||
if not (source_neighbor and liquiddef.force_renew) then
|
if source_neighbor and liquiddef.force_renew then
|
||||||
minetest.add_node(pointed_thing.under, {name = "air"})
|
log_action(pos, pname, "picked up " .. liquiddef.source .. " (force renewed)")
|
||||||
|
else
|
||||||
|
minetest.add_node(pos, {name = "air"})
|
||||||
|
log_action(pos, pname, "picked up " .. liquiddef.source)
|
||||||
end
|
end
|
||||||
|
|
||||||
return ItemStack(giving_back)
|
return ItemStack(giving_back)
|
||||||
|
@ -177,7 +185,7 @@ minetest.register_craftitem("bucket:bucket_empty", {
|
||||||
-- non-liquid nodes will have their on_punch triggered
|
-- non-liquid nodes will have their on_punch triggered
|
||||||
local node_def = minetest.registered_nodes[node.name]
|
local node_def = minetest.registered_nodes[node.name]
|
||||||
if node_def then
|
if node_def then
|
||||||
node_def.on_punch(pointed_thing.under, node, user, pointed_thing)
|
node_def.on_punch(pos, node, user, pointed_thing)
|
||||||
end
|
end
|
||||||
return user:get_wielded_item()
|
return user:get_wielded_item()
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
# textdomain: bucket
|
# textdomain: bucket
|
||||||
Empty Bucket=Malplena Sitelo
|
Empty Bucket=Malplena sitelo
|
||||||
Water Bucket=Sitelo da Akvo
|
Water Bucket=Sitelo da akvo
|
||||||
River Water Bucket=Sitelo da Rivera Akvo
|
River Water Bucket=Sitelo da rivera akvo
|
||||||
Lava Bucket=Sitelo da Lafo
|
Lava Bucket=Sitelo da lafo
|
||||||
|
|
|
@ -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=溶岩入りバケツ
|
||||||
|
|
|
@ -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=Ведро с лавой
|
||||||
|
|
|
@ -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=Відро з лавою
|
||||||
|
|
|
@ -3,6 +3,9 @@
|
||||||
-- Load support for MT game translation.
|
-- Load support for MT game translation.
|
||||||
local S = minetest.get_translator("butterflies")
|
local S = minetest.get_translator("butterflies")
|
||||||
|
|
||||||
|
-- Legacy compatibility, when pointabilities don't exist, pointable is set to true.
|
||||||
|
local pointable_compat = not minetest.features.item_specific_pointabilities
|
||||||
|
|
||||||
-- register butterflies
|
-- register butterflies
|
||||||
local butter_list = {
|
local butter_list = {
|
||||||
{"white", S("White Butterfly")},
|
{"white", S("White Butterfly")},
|
||||||
|
@ -33,24 +36,15 @@ for i in ipairs (butter_list) do
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
buildable_to = true,
|
buildable_to = true,
|
||||||
walkable = false,
|
walkable = false,
|
||||||
|
pointable = pointable_compat,
|
||||||
groups = {catchable = 1},
|
groups = {catchable = 1},
|
||||||
selection_box = {
|
selection_box = {
|
||||||
type = "fixed",
|
type = "fixed",
|
||||||
fixed = {-0.1, -0.1, -0.1, 0.1, 0.1, 0.1},
|
fixed = {-0.1, -0.1, -0.1, 0.1, 0.1, 0.1},
|
||||||
},
|
},
|
||||||
floodable = true,
|
floodable = true,
|
||||||
on_place = function(itemstack, placer, pointed_thing)
|
on_construct = function(pos)
|
||||||
local player_name = placer:get_player_name()
|
minetest.get_node_timer(pos):start(1)
|
||||||
local pos = pointed_thing.above
|
|
||||||
|
|
||||||
if not minetest.is_protected(pos, player_name) and
|
|
||||||
not minetest.is_protected(pointed_thing.under, player_name) and
|
|
||||||
minetest.get_node(pos).name == "air" then
|
|
||||||
minetest.set_node(pos, {name = "butterflies:butterfly_"..name})
|
|
||||||
minetest.get_node_timer(pos):start(1)
|
|
||||||
itemstack:take_item()
|
|
||||||
end
|
|
||||||
return itemstack
|
|
||||||
end,
|
end,
|
||||||
on_timer = function(pos, elapsed)
|
on_timer = function(pos, elapsed)
|
||||||
if minetest.get_node_light(pos) < 11 then
|
if minetest.get_node_light(pos) < 11 then
|
||||||
|
@ -72,18 +66,8 @@ for i in ipairs (butter_list) do
|
||||||
drop = "",
|
drop = "",
|
||||||
groups = {not_in_creative_inventory = 1},
|
groups = {not_in_creative_inventory = 1},
|
||||||
floodable = true,
|
floodable = true,
|
||||||
on_place = function(itemstack, placer, pointed_thing)
|
on_construct = function(pos)
|
||||||
local player_name = placer:get_player_name()
|
minetest.get_node_timer(pos):start(1)
|
||||||
local pos = pointed_thing.above
|
|
||||||
|
|
||||||
if not minetest.is_protected(pos, player_name) and
|
|
||||||
not minetest.is_protected(pointed_thing.under, player_name) and
|
|
||||||
minetest.get_node(pos).name == "air" then
|
|
||||||
minetest.set_node(pos, {name = "butterflies:hidden_butterfly_"..name})
|
|
||||||
minetest.get_node_timer(pos):start(1)
|
|
||||||
itemstack:take_item()
|
|
||||||
end
|
|
||||||
return itemstack
|
|
||||||
end,
|
end,
|
||||||
on_timer = function(pos, elapsed)
|
on_timer = function(pos, elapsed)
|
||||||
if minetest.get_node_light(pos) >= 11 then
|
if minetest.get_node_light(pos) >= 11 then
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# textdomain: butterflies
|
# textdomain: butterflies
|
||||||
White Butterfly=Blanka Papilio
|
White Butterfly=Blanka papilio
|
||||||
Red Butterfly=Ruĝa Papilio
|
Red Butterfly=Ruĝa papilio
|
||||||
Violet Butterfly=Violkolora Papilio
|
Violet Butterfly=Violkolora papilio
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# textdomain: butterflies
|
# textdomain: butterflies
|
||||||
White Butterfly=
|
White Butterfly=Borboleta Branca
|
||||||
Red Butterfly=
|
Red Butterfly=Borboleta Vermelha
|
||||||
Violet Butterfly=
|
Violet Butterfly=Borboleta Violeta
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# textdomain: butterflies
|
# textdomain: butterflies
|
||||||
White Butterfly=Белая Бабочка
|
White Butterfly=Белая бабочка
|
||||||
Red Butterfly=Красная Бабочка
|
Red Butterfly=Красная бабочка
|
||||||
Violet Butterfly=Фиолетовая Бабочка
|
Violet Butterfly=Фиолетовая бабочка
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# textdomain: butterflies
|
# textdomain: butterflies
|
||||||
White Butterfly=Білий Метелик
|
White Butterfly=Білий метелик
|
||||||
Red Butterfly=Червоний Метелик
|
Red Butterfly=Червоний метелик
|
||||||
Violet Butterfly=Фіолетовий Метелик
|
Violet Butterfly=Фіолетовий метелик
|
||||||
|
|
|
@ -413,7 +413,8 @@ minetest.register_craftitem("carts:cart", {
|
||||||
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}, true)
|
{pos = pointed_thing.above}, true)
|
||||||
|
|
||||||
if not minetest.is_creative_enabled(placer:get_player_name()) then
|
local player_name = placer and placer:get_player_name() or ""
|
||||||
|
if not minetest.is_creative_enabled(player_name) then
|
||||||
itemstack:take_item()
|
itemstack:take_item()
|
||||||
end
|
end
|
||||||
return itemstack
|
return itemstack
|
||||||
|
|
|
@ -2,5 +2,5 @@
|
||||||
Cart=Ĉaro
|
Cart=Ĉaro
|
||||||
(Sneak+Click to pick up)=(Ŝteliri+Alklaki por reprini)
|
(Sneak+Click to pick up)=(Ŝteliri+Alklaki por reprini)
|
||||||
Rail=Relo
|
Rail=Relo
|
||||||
Powered Rail=Elektra Relo
|
Powered Rail=Elektra relo
|
||||||
Brake Rail=Bremsa Relo
|
Brake Rail=Bremsa relo
|
||||||
|
|
|
@ -2,5 +2,5 @@
|
||||||
Cart=Вагонетка
|
Cart=Вагонетка
|
||||||
(Sneak+Click to pick up)=(Пригнитесь и кликните по вагонетке, чтобы забрать)
|
(Sneak+Click to pick up)=(Пригнитесь и кликните по вагонетке, чтобы забрать)
|
||||||
Rail=Рельсы
|
Rail=Рельсы
|
||||||
Powered Rail=Запитанные рельсы
|
Powered Rail=Ускоряющие рельсы
|
||||||
Brake Rail=Тормозящие рельсы
|
Brake Rail=Тормозящие рельсы
|
||||||
|
|
|
@ -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=Гальмівні рейки
|
||||||
|
|
|
@ -46,34 +46,36 @@ 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
|
||||||
-- Dig time is modified according to difference (leveldiff) between tool
|
minetest.register_on_mods_loaded(function()
|
||||||
-- 'maxlevel' and node 'level'. Digtime is divided by the larger of
|
-- Dig time is modified according to difference (leveldiff) between tool
|
||||||
-- leveldiff and 1.
|
-- 'maxlevel' and node 'level'. Digtime is divided by the larger of
|
||||||
-- To speed up digging in creative, hand 'maxlevel' and 'digtime' have been
|
-- leveldiff and 1.
|
||||||
-- increased such that nodes of differing levels have an insignificant
|
-- To speed up digging in creative, hand 'maxlevel' and 'digtime' have been
|
||||||
-- effect on digtime.
|
-- increased such that nodes of differing levels have an insignificant
|
||||||
local digtime = 42
|
-- effect on digtime.
|
||||||
local caps = {times = {digtime, digtime, digtime}, uses = 0, maxlevel = 256}
|
local digtime = 42
|
||||||
|
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
|
||||||
|
|
|
@ -150,9 +150,10 @@ 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.ceil(inv.size / (4*8))
|
local pagemax = math.max(math.ceil(inv.size / (4*8)), 1)
|
||||||
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]
|
||||||
|
@ -160,7 +161,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.2,4.05;0.8,0.8;creative_next_icon.png;creative_next;]
|
image_button[7.25,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;]
|
||||||
]] ..
|
]] ..
|
||||||
|
@ -169,6 +170,7 @@ function creative.register_tab(name, title, items)
|
||||||
"tooltip[creative_prev;" .. esc(S("Previous page")) .. "]" ..
|
"tooltip[creative_prev;" .. esc(S("Previous page")) .. "]" ..
|
||||||
"tooltip[creative_next;" .. esc(S("Next page")) .. "]" ..
|
"tooltip[creative_next;" .. esc(S("Next page")) .. "]" ..
|
||||||
"listring[current_player;main]" ..
|
"listring[current_player;main]" ..
|
||||||
|
"field_enter_after_edit[creative_filter;true]" ..
|
||||||
"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]" ..
|
||||||
|
@ -191,10 +193,13 @@ 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" then
|
fields.key_enter_field == "creative_filter")
|
||||||
|
and fields.creative_filter then
|
||||||
inv.start_i = 0
|
inv.start_i = 0
|
||||||
inv.filter = fields.creative_filter:lower()
|
inv.filter = fields.creative_filter:sub(1, 128) -- truncate to a sane length
|
||||||
|
: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
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
# 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
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
# 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
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
# 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=Resetear
|
Reset=Reiniciar
|
||||||
Previous page=Pág. siguiente
|
Previous page=Pág. siguiente
|
||||||
Next page=Pág. anterior
|
Next page=Pág. anterior
|
||||||
All=Todos
|
All=Todos
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
# 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
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
# textdomain: creative
|
# textdomain: creative
|
||||||
Allow player to use creative inventory=Bolehkan pemain memakai inventaris kreatif
|
Allow player to use creative inventory=Bolehkan pemain menggunakan 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
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
# 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
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
# 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=前のページ
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
# 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
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
# 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=Set semula
|
Reset=Tetap semula
|
||||||
Previous page=Halaman sebelumnya
|
Previous page=Halaman sebelumnya
|
||||||
Next page=Halaman seterusnya
|
Next page=Halaman seterusnya
|
||||||
All=Semua
|
All=Semua
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
# 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
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
# 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
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
# 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=Предыдущая страница
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
# 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
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
# 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
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
# 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=Попередня сторінка
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
# 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=上一页
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
# 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=上一頁
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
# 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=
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
name = creative
|
name = creative
|
||||||
description = Minetest Game mod: creative
|
description = Minetest Game mod: creative
|
||||||
depends = sfinv
|
depends = sfinv
|
||||||
optional_depends = default
|
|
||||||
|
|
|
@ -38,34 +38,44 @@ 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 v.pos.x == pos.x and v.pos.y == pos.y and v.pos.z == pos.z then
|
if vector.equals(v.pos, pos) 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, minetest.swap_node, pos, { name = swap,
|
minetest.after(0.2, function()
|
||||||
param2 = node.param2 })
|
local current_node = minetest.get_node(pos)
|
||||||
minetest.sound_play(sound, {gain = 0.3, pos = pos,
|
if current_node.name ~= swap .. "_open" then
|
||||||
max_hear_distance = 10}, true)
|
-- the chest has already been replaced, don't try to replace what's there.
|
||||||
|
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)
|
||||||
if formname ~= "default:chest" then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
if not player or not fields.quit then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
local pn = player:get_player_name()
|
local pn = player:get_player_name()
|
||||||
|
|
||||||
if not default.chest.open_chests[pn] then
|
if formname ~= "default:chest" then
|
||||||
|
if default.chest.open_chests[pn] then
|
||||||
|
default.chest.chest_lid_close(pn)
|
||||||
|
end
|
||||||
|
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
if not (fields.quit and 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)
|
||||||
|
|
||||||
|
@ -129,6 +139,12 @@ 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
|
||||||
|
@ -136,10 +152,9 @@ 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,
|
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[clicker:get_player_name()] = { pos = pos,
|
default.chest.open_chests[cn] = { 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
|
||||||
|
@ -148,12 +163,12 @@ function default.chest.register_chest(prefixed_name, d)
|
||||||
local itemstack = player:get_wielded_item()
|
local itemstack = player:get_wielded_item()
|
||||||
local key_meta = itemstack:get_meta()
|
local key_meta = itemstack:get_meta()
|
||||||
|
|
||||||
if itemstack:get_metadata() == "" then
|
if itemstack:get_meta():get_string("") == "" then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
if key_meta:get_string("secret") == "" then
|
if key_meta:get_string("secret") == "" then
|
||||||
key_meta:set_string("secret", minetest.parse_json(itemstack:get_metadata()).secret)
|
key_meta:set_string("secret", minetest.parse_json(itemstack:get_meta():get_string("")).secret)
|
||||||
itemstack:set_metadata("")
|
itemstack:set_metadata("")
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -200,6 +215,12 @@ 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
|
||||||
|
@ -208,9 +229,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,
|
||||||
clicker:get_player_name(),
|
cn,
|
||||||
"default:chest", default.chest.get_chest_formspec(pos))
|
"default:chest", default.chest.get_chest_formspec(pos))
|
||||||
default.chest.open_chests[clicker:get_player_name()] = { pos = pos,
|
default.chest.open_chests[cn] = { 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)
|
||||||
|
@ -263,7 +284,7 @@ function default.chest.register_chest(prefixed_name, d)
|
||||||
nodenames = {name},
|
nodenames = {name},
|
||||||
action = function(pos, node)
|
action = function(pos, node)
|
||||||
local meta = minetest.get_meta(pos)
|
local meta = minetest.get_meta(pos)
|
||||||
meta:set_string("formspec", nil)
|
meta:set_string("formspec", "")
|
||||||
local inv = meta:get_inventory()
|
local inv = meta:get_inventory()
|
||||||
local list = inv:get_list("default:chest")
|
local list = inv:get_list("default:chest")
|
||||||
if list then
|
if list then
|
||||||
|
@ -274,6 +295,19 @@ function default.chest.register_chest(prefixed_name, d)
|
||||||
end
|
end
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- close opened chests on load
|
||||||
|
local modname, chestname = prefixed_name:match("^(:?.-):(.*)$")
|
||||||
|
minetest.register_lbm({
|
||||||
|
label = "close opened chests on load",
|
||||||
|
name = modname .. ":close_" .. chestname .. "_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", {
|
||||||
|
|
|
@ -57,7 +57,7 @@ local function book_on_use(itemstack, user)
|
||||||
local page, page_max, lines, string = 1, 1, {}, ""
|
local page, page_max, lines, string = 1, 1, {}, ""
|
||||||
|
|
||||||
-- Backwards compatibility
|
-- Backwards compatibility
|
||||||
local old_data = minetest.deserialize(itemstack:get_metadata())
|
local old_data = minetest.deserialize(itemstack:get_meta():get_string(""))
|
||||||
if old_data then
|
if old_data then
|
||||||
meta:from_table({ fields = old_data })
|
meta:from_table({ fields = old_data })
|
||||||
end
|
end
|
||||||
|
@ -148,7 +148,7 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
if fields.close then
|
if fields.quit then
|
||||||
book_writers[player_name] = nil
|
book_writers[player_name] = nil
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -179,6 +179,7 @@ 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)
|
||||||
|
|
||||||
|
|
|
@ -2,149 +2,149 @@
|
||||||
-- Sounds
|
-- Sounds
|
||||||
--
|
--
|
||||||
|
|
||||||
function default.node_sound_defaults(table)
|
function default.node_sound_defaults(tbl)
|
||||||
table = table or {}
|
tbl = tbl or {}
|
||||||
table.footstep = table.footstep or
|
tbl.footstep = tbl.footstep or
|
||||||
{name = "", gain = 1.0}
|
{name = "", gain = 1.0}
|
||||||
table.dug = table.dug or
|
tbl.dug = tbl.dug or
|
||||||
{name = "default_dug_node", gain = 0.25}
|
{name = "default_dug_node", gain = 0.25}
|
||||||
table.place = table.place or
|
tbl.place = tbl.place or
|
||||||
{name = "default_place_node_hard", gain = 1.0}
|
{name = "default_place_node_hard", gain = 1.0}
|
||||||
return table
|
return tbl
|
||||||
end
|
end
|
||||||
|
|
||||||
function default.node_sound_stone_defaults(table)
|
function default.node_sound_stone_defaults(tbl)
|
||||||
table = table or {}
|
tbl = tbl or {}
|
||||||
table.footstep = table.footstep or
|
tbl.footstep = tbl.footstep or
|
||||||
{name = "default_hard_footstep", gain = 0.2}
|
{name = "default_hard_footstep", gain = 0.2}
|
||||||
table.dug = table.dug or
|
tbl.dug = tbl.dug or
|
||||||
{name = "default_hard_footstep", gain = 1.0}
|
{name = "default_hard_footstep", gain = 1.0}
|
||||||
default.node_sound_defaults(table)
|
default.node_sound_defaults(tbl)
|
||||||
return table
|
return tbl
|
||||||
end
|
end
|
||||||
|
|
||||||
function default.node_sound_dirt_defaults(table)
|
function default.node_sound_dirt_defaults(tbl)
|
||||||
table = table or {}
|
tbl = tbl or {}
|
||||||
table.footstep = table.footstep or
|
tbl.footstep = tbl.footstep or
|
||||||
{name = "default_dirt_footstep", gain = 0.25}
|
{name = "default_dirt_footstep", gain = 0.25}
|
||||||
table.dig = table.dig or
|
tbl.dig = tbl.dig or
|
||||||
{name = "default_dig_crumbly", gain = 0.4}
|
{name = "default_dig_crumbly", gain = 0.4}
|
||||||
table.dug = table.dug or
|
tbl.dug = tbl.dug or
|
||||||
{name = "default_dirt_footstep", gain = 1.0}
|
{name = "default_dirt_footstep", gain = 1.0}
|
||||||
table.place = table.place or
|
tbl.place = tbl.place or
|
||||||
{name = "default_place_node", gain = 1.0}
|
{name = "default_place_node", gain = 1.0}
|
||||||
default.node_sound_defaults(table)
|
default.node_sound_defaults(tbl)
|
||||||
return table
|
return tbl
|
||||||
end
|
end
|
||||||
|
|
||||||
function default.node_sound_sand_defaults(table)
|
function default.node_sound_sand_defaults(tbl)
|
||||||
table = table or {}
|
tbl = tbl or {}
|
||||||
table.footstep = table.footstep or
|
tbl.footstep = tbl.footstep or
|
||||||
{name = "default_sand_footstep", gain = 0.05}
|
{name = "default_sand_footstep", gain = 0.05}
|
||||||
table.dug = table.dug or
|
tbl.dug = tbl.dug or
|
||||||
{name = "default_sand_footstep", gain = 0.15}
|
{name = "default_sand_footstep", gain = 0.15}
|
||||||
table.place = table.place or
|
tbl.place = tbl.place or
|
||||||
{name = "default_place_node", gain = 1.0}
|
{name = "default_place_node", gain = 1.0}
|
||||||
default.node_sound_defaults(table)
|
default.node_sound_defaults(tbl)
|
||||||
return table
|
return tbl
|
||||||
end
|
end
|
||||||
|
|
||||||
function default.node_sound_gravel_defaults(table)
|
function default.node_sound_gravel_defaults(tbl)
|
||||||
table = table or {}
|
tbl = tbl or {}
|
||||||
table.footstep = table.footstep or
|
tbl.footstep = tbl.footstep or
|
||||||
{name = "default_gravel_footstep", gain = 0.25}
|
{name = "default_gravel_footstep", gain = 0.25}
|
||||||
table.dig = table.dig or
|
tbl.dig = tbl.dig or
|
||||||
{name = "default_gravel_dig", gain = 0.35}
|
{name = "default_gravel_dig", gain = 0.35}
|
||||||
table.dug = table.dug or
|
tbl.dug = tbl.dug or
|
||||||
{name = "default_gravel_dug", gain = 1.0}
|
{name = "default_gravel_dug", gain = 1.0}
|
||||||
table.place = table.place or
|
tbl.place = tbl.place or
|
||||||
{name = "default_place_node", gain = 1.0}
|
{name = "default_place_node", gain = 1.0}
|
||||||
default.node_sound_defaults(table)
|
default.node_sound_defaults(tbl)
|
||||||
return table
|
return tbl
|
||||||
end
|
end
|
||||||
|
|
||||||
function default.node_sound_wood_defaults(table)
|
function default.node_sound_wood_defaults(tbl)
|
||||||
table = table or {}
|
tbl = tbl or {}
|
||||||
table.footstep = table.footstep or
|
tbl.footstep = tbl.footstep or
|
||||||
{name = "default_wood_footstep", gain = 0.15}
|
{name = "default_wood_footstep", gain = 0.15}
|
||||||
table.dig = table.dig or
|
tbl.dig = tbl.dig or
|
||||||
{name = "default_dig_choppy", gain = 0.4}
|
{name = "default_dig_choppy", gain = 0.4}
|
||||||
table.dug = table.dug or
|
tbl.dug = tbl.dug or
|
||||||
{name = "default_wood_footstep", gain = 1.0}
|
{name = "default_wood_footstep", gain = 1.0}
|
||||||
default.node_sound_defaults(table)
|
default.node_sound_defaults(tbl)
|
||||||
return table
|
return tbl
|
||||||
end
|
end
|
||||||
|
|
||||||
function default.node_sound_leaves_defaults(table)
|
function default.node_sound_leaves_defaults(tbl)
|
||||||
table = table or {}
|
tbl = tbl or {}
|
||||||
table.footstep = table.footstep or
|
tbl.footstep = tbl.footstep or
|
||||||
{name = "default_grass_footstep", gain = 0.45}
|
{name = "default_grass_footstep", gain = 0.45}
|
||||||
table.dug = table.dug or
|
tbl.dug = tbl.dug or
|
||||||
{name = "default_grass_footstep", gain = 0.7}
|
{name = "default_grass_footstep", gain = 0.7}
|
||||||
table.place = table.place or
|
tbl.place = tbl.place or
|
||||||
{name = "default_place_node", gain = 1.0}
|
{name = "default_place_node", gain = 1.0}
|
||||||
default.node_sound_defaults(table)
|
default.node_sound_defaults(tbl)
|
||||||
return table
|
return tbl
|
||||||
end
|
end
|
||||||
|
|
||||||
function default.node_sound_glass_defaults(table)
|
function default.node_sound_glass_defaults(tbl)
|
||||||
table = table or {}
|
tbl = tbl or {}
|
||||||
table.footstep = table.footstep or
|
tbl.footstep = tbl.footstep or
|
||||||
{name = "default_glass_footstep", gain = 0.3}
|
{name = "default_glass_footstep", gain = 0.3}
|
||||||
table.dig = table.dig or
|
tbl.dig = tbl.dig or
|
||||||
{name = "default_glass_footstep", gain = 0.5}
|
{name = "default_glass_footstep", gain = 0.5}
|
||||||
table.dug = table.dug or
|
tbl.dug = tbl.dug or
|
||||||
{name = "default_break_glass", gain = 1.0}
|
{name = "default_break_glass", gain = 1.0}
|
||||||
default.node_sound_defaults(table)
|
default.node_sound_defaults(tbl)
|
||||||
return table
|
return tbl
|
||||||
end
|
end
|
||||||
|
|
||||||
function default.node_sound_ice_defaults(table)
|
function default.node_sound_ice_defaults(tbl)
|
||||||
table = table or {}
|
tbl = tbl or {}
|
||||||
table.footstep = table.footstep or
|
tbl.footstep = tbl.footstep or
|
||||||
{name = "default_ice_footstep", gain = 0.15}
|
{name = "default_ice_footstep", gain = 0.15}
|
||||||
table.dig = table.dig or
|
tbl.dig = tbl.dig or
|
||||||
{name = "default_ice_dig", gain = 0.5}
|
{name = "default_ice_dig", gain = 0.5}
|
||||||
table.dug = table.dug or
|
tbl.dug = tbl.dug or
|
||||||
{name = "default_ice_dug", gain = 0.5}
|
{name = "default_ice_dug", gain = 0.5}
|
||||||
default.node_sound_defaults(table)
|
default.node_sound_defaults(tbl)
|
||||||
return table
|
return tbl
|
||||||
end
|
end
|
||||||
|
|
||||||
function default.node_sound_metal_defaults(table)
|
function default.node_sound_metal_defaults(tbl)
|
||||||
table = table or {}
|
tbl = tbl or {}
|
||||||
table.footstep = table.footstep or
|
tbl.footstep = tbl.footstep or
|
||||||
{name = "default_metal_footstep", gain = 0.2}
|
{name = "default_metal_footstep", gain = 0.2}
|
||||||
table.dig = table.dig or
|
tbl.dig = tbl.dig or
|
||||||
{name = "default_dig_metal", gain = 0.5}
|
{name = "default_dig_metal", gain = 0.5}
|
||||||
table.dug = table.dug or
|
tbl.dug = tbl.dug or
|
||||||
{name = "default_dug_metal", gain = 0.5}
|
{name = "default_dug_metal", gain = 0.5}
|
||||||
table.place = table.place or
|
tbl.place = tbl.place or
|
||||||
{name = "default_place_node_metal", gain = 0.5}
|
{name = "default_place_node_metal", gain = 0.5}
|
||||||
default.node_sound_defaults(table)
|
default.node_sound_defaults(tbl)
|
||||||
return table
|
return tbl
|
||||||
end
|
end
|
||||||
|
|
||||||
function default.node_sound_water_defaults(table)
|
function default.node_sound_water_defaults(tbl)
|
||||||
table = table or {}
|
tbl = tbl or {}
|
||||||
table.footstep = table.footstep or
|
tbl.footstep = tbl.footstep or
|
||||||
{name = "default_water_footstep", gain = 0.2}
|
{name = "default_water_footstep", gain = 0.2}
|
||||||
default.node_sound_defaults(table)
|
default.node_sound_defaults(tbl)
|
||||||
return table
|
return tbl
|
||||||
end
|
end
|
||||||
|
|
||||||
function default.node_sound_snow_defaults(table)
|
function default.node_sound_snow_defaults(tbl)
|
||||||
table = table or {}
|
tbl = tbl or {}
|
||||||
table.footstep = table.footstep or
|
tbl.footstep = tbl.footstep or
|
||||||
{name = "default_snow_footstep", gain = 0.2}
|
{name = "default_snow_footstep", gain = 0.2}
|
||||||
table.dig = table.dig or
|
tbl.dig = tbl.dig or
|
||||||
{name = "default_snow_footstep", gain = 0.3}
|
{name = "default_snow_footstep", gain = 0.3}
|
||||||
table.dug = table.dug or
|
tbl.dug = tbl.dug or
|
||||||
{name = "default_snow_footstep", gain = 0.3}
|
{name = "default_snow_footstep", gain = 0.3}
|
||||||
table.place = table.place or
|
tbl.place = tbl.place or
|
||||||
{name = "default_place_node", gain = 1.0}
|
{name = "default_place_node", gain = 1.0}
|
||||||
default.node_sound_defaults(table)
|
default.node_sound_defaults(tbl)
|
||||||
return table
|
return tbl
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
@ -293,15 +293,32 @@ minetest.register_abm({
|
||||||
-- Dig upwards
|
-- Dig upwards
|
||||||
--
|
--
|
||||||
|
|
||||||
function default.dig_up(pos, node, digger)
|
local in_dig_up = false
|
||||||
|
|
||||||
|
function default.dig_up(pos, node, digger, max_height)
|
||||||
|
if in_dig_up then return end -- Do not recurse
|
||||||
if digger == nil then return end
|
if digger == nil then return end
|
||||||
local np = {x = pos.x, y = pos.y + 1, z = pos.z}
|
max_height = max_height or 100
|
||||||
local nn = minetest.get_node(np)
|
|
||||||
if nn.name == node.name then
|
in_dig_up = true
|
||||||
minetest.node_dig(np, nn, digger)
|
for y = 1, max_height do
|
||||||
|
local up_pos = vector.offset(pos, 0, y, 0)
|
||||||
|
local up_node = minetest.get_node(up_pos)
|
||||||
|
if up_node.name ~= node.name then
|
||||||
|
break
|
||||||
|
end
|
||||||
|
if not minetest.node_dig(up_pos, up_node, digger) then
|
||||||
|
break
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
in_dig_up = false
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- errors are hard to handle, instead we rely on resetting this value the next step
|
||||||
|
minetest.register_globalstep(function()
|
||||||
|
in_dig_up = false
|
||||||
|
end)
|
||||||
|
|
||||||
|
|
||||||
--
|
--
|
||||||
-- Fence registration helper
|
-- Fence registration helper
|
||||||
|
@ -309,14 +326,6 @@ end
|
||||||
local fence_collision_extra = minetest.settings:get_bool("enable_fence_tall") and 3/8 or 0
|
local fence_collision_extra = minetest.settings:get_bool("enable_fence_tall") and 3/8 or 0
|
||||||
|
|
||||||
function default.register_fence(name, def)
|
function default.register_fence(name, def)
|
||||||
minetest.register_craft({
|
|
||||||
output = name .. " 4",
|
|
||||||
recipe = {
|
|
||||||
{ def.material, 'group:stick', def.material },
|
|
||||||
{ def.material, 'group:stick', def.material },
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
local fence_texture = "default_fence_overlay.png^" .. def.texture ..
|
local fence_texture = "default_fence_overlay.png^" .. def.texture ..
|
||||||
"^default_fence_overlay.png^[makealpha:255,126,126"
|
"^default_fence_overlay.png^[makealpha:255,126,126"
|
||||||
-- Allow almost everything to be overridden
|
-- Allow almost everything to be overridden
|
||||||
|
@ -364,10 +373,22 @@ function default.register_fence(name, def)
|
||||||
-- Always add to the fence group, even if no group provided
|
-- Always add to the fence group, even if no group provided
|
||||||
def.groups.fence = 1
|
def.groups.fence = 1
|
||||||
|
|
||||||
|
local material = def.material
|
||||||
def.texture = nil
|
def.texture = nil
|
||||||
def.material = nil
|
def.material = nil
|
||||||
|
|
||||||
minetest.register_node(name, def)
|
minetest.register_node(name, def)
|
||||||
|
|
||||||
|
-- Register crafting recipe, trim away starting colon if any
|
||||||
|
if not material then return end
|
||||||
|
name = string.gsub(name, "^:", "")
|
||||||
|
minetest.register_craft({
|
||||||
|
output = name .. " 4",
|
||||||
|
recipe = {
|
||||||
|
{ material, 'group:stick', material },
|
||||||
|
{ material, 'group:stick', material },
|
||||||
|
}
|
||||||
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
@ -376,15 +397,6 @@ end
|
||||||
--
|
--
|
||||||
|
|
||||||
function default.register_fence_rail(name, def)
|
function default.register_fence_rail(name, def)
|
||||||
minetest.register_craft({
|
|
||||||
output = name .. " 16",
|
|
||||||
recipe = {
|
|
||||||
{ def.material, def.material },
|
|
||||||
{ "", ""},
|
|
||||||
{ def.material, def.material },
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
local fence_rail_texture = "default_fence_rail_overlay.png^" .. def.texture ..
|
local fence_rail_texture = "default_fence_rail_overlay.png^" .. def.texture ..
|
||||||
"^default_fence_rail_overlay.png^[makealpha:255,126,126"
|
"^default_fence_rail_overlay.png^[makealpha:255,126,126"
|
||||||
-- Allow almost everything to be overridden
|
-- Allow almost everything to be overridden
|
||||||
|
@ -433,10 +445,23 @@ function default.register_fence_rail(name, def)
|
||||||
-- Always add to the fence group, even if no group provided
|
-- Always add to the fence group, even if no group provided
|
||||||
def.groups.fence = 1
|
def.groups.fence = 1
|
||||||
|
|
||||||
|
local material = def.material
|
||||||
def.texture = nil
|
def.texture = nil
|
||||||
def.material = nil
|
def.material = nil
|
||||||
|
|
||||||
minetest.register_node(name, def)
|
minetest.register_node(name, def)
|
||||||
|
|
||||||
|
-- Register crafting recipe, trim away starting colon if any
|
||||||
|
if not material then return end
|
||||||
|
name = string.gsub(name, "^:", "")
|
||||||
|
minetest.register_craft({
|
||||||
|
output = name .. " 16",
|
||||||
|
recipe = {
|
||||||
|
{ material, material },
|
||||||
|
{ "", ""},
|
||||||
|
{ material, material },
|
||||||
|
}
|
||||||
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
--
|
--
|
||||||
|
@ -444,15 +469,6 @@ end
|
||||||
--
|
--
|
||||||
|
|
||||||
function default.register_mesepost(name, def)
|
function default.register_mesepost(name, def)
|
||||||
minetest.register_craft({
|
|
||||||
output = name .. " 4",
|
|
||||||
recipe = {
|
|
||||||
{'', 'default:glass', ''},
|
|
||||||
{'default:mese_crystal', 'default:mese_crystal', 'default:mese_crystal'},
|
|
||||||
{'', def.material, ''},
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
local post_texture = def.texture .. "^default_mese_post_light_side.png^[makealpha:0,0,0"
|
local post_texture = def.texture .. "^default_mese_post_light_side.png^[makealpha:0,0,0"
|
||||||
local post_texture_dark = def.texture .. "^default_mese_post_light_side_dark.png^[makealpha:0,0,0"
|
local post_texture_dark = def.texture .. "^default_mese_post_light_side_dark.png^[makealpha:0,0,0"
|
||||||
-- Allow almost everything to be overridden
|
-- Allow almost everything to be overridden
|
||||||
|
@ -480,10 +496,23 @@ function default.register_mesepost(name, def)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local material = def.material
|
||||||
def.texture = nil
|
def.texture = nil
|
||||||
def.material = nil
|
def.material = nil
|
||||||
|
|
||||||
minetest.register_node(name, def)
|
minetest.register_node(name, def)
|
||||||
|
|
||||||
|
-- Register crafting recipe, trim away starting colon if any
|
||||||
|
if not material then return end
|
||||||
|
name = string.gsub(name, "^:", "")
|
||||||
|
minetest.register_craft({
|
||||||
|
output = name .. " 4",
|
||||||
|
recipe = {
|
||||||
|
{'', 'default:glass', ''},
|
||||||
|
{'default:mese_crystal', 'default:mese_crystal', 'default:mese_crystal'},
|
||||||
|
{'', material, ''},
|
||||||
|
}
|
||||||
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
--
|
--
|
||||||
|
@ -744,16 +773,23 @@ 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(), "to", name, "at", pos)
|
default.log_player_action(player, "moves", stack:get_name(), stack:get_count(), "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(), "from", name, "at", pos)
|
default.log_player_action(player, "takes", stack:get_name(), stack:get_count(), "from", name, "at", pos)
|
||||||
|
return on_take(pos, listname, index, stack, player)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -784,7 +820,7 @@ function default.can_interact_with_node(player, pos)
|
||||||
local key_meta = item:get_meta()
|
local key_meta = item:get_meta()
|
||||||
|
|
||||||
if key_meta:get_string("secret") == "" then
|
if key_meta:get_string("secret") == "" then
|
||||||
local key_oldmeta = item:get_metadata()
|
local key_oldmeta = item:get_meta():get_string("")
|
||||||
if key_oldmeta == "" or not minetest.parse_json(key_oldmeta) then
|
if key_oldmeta == "" or not minetest.parse_json(key_oldmeta) then
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
|
|
|
@ -134,6 +134,7 @@ local function furnace_node_timer(pos, elapsed)
|
||||||
local fuel
|
local fuel
|
||||||
|
|
||||||
local update = true
|
local update = true
|
||||||
|
local items_smelt = 0
|
||||||
while elapsed > 0 and update do
|
while elapsed > 0 and update do
|
||||||
update = false
|
update = false
|
||||||
|
|
||||||
|
@ -171,9 +172,7 @@ local function furnace_node_timer(pos, elapsed)
|
||||||
else
|
else
|
||||||
dst_full = true
|
dst_full = true
|
||||||
end
|
end
|
||||||
-- Play cooling sound
|
items_smelt = items_smelt + 1
|
||||||
minetest.sound_play("default_cool_lava",
|
|
||||||
{pos = pos, max_hear_distance = 16, gain = 0.07}, true)
|
|
||||||
else
|
else
|
||||||
-- Item could not be cooked: probably missing fuel
|
-- Item could not be cooked: probably missing fuel
|
||||||
update = true
|
update = true
|
||||||
|
@ -224,6 +223,11 @@ local function furnace_node_timer(pos, elapsed)
|
||||||
elapsed = elapsed - el
|
elapsed = elapsed - el
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if items_smelt > 0 then
|
||||||
|
-- Play cooling sound
|
||||||
|
minetest.sound_play("default_cool_lava",
|
||||||
|
{ pos = pos, max_hear_distance = 16, gain = 0.07 * math.min(items_smelt, 7) }, true)
|
||||||
|
end
|
||||||
if fuel and fuel_totaltime > fuel.time then
|
if fuel and fuel_totaltime > fuel.time then
|
||||||
fuel_totaltime = fuel.time
|
fuel_totaltime = fuel.time
|
||||||
end
|
end
|
||||||
|
@ -329,7 +333,12 @@ end
|
||||||
-- Node definitions
|
-- Node definitions
|
||||||
--
|
--
|
||||||
|
|
||||||
minetest.register_node("default:furnace", {
|
local function apply_logger(def)
|
||||||
|
default.set_inventory_action_loggers(def, "furnace")
|
||||||
|
return def
|
||||||
|
end
|
||||||
|
|
||||||
|
minetest.register_node("default:furnace", apply_logger({
|
||||||
description = S("Furnace"),
|
description = S("Furnace"),
|
||||||
tiles = {
|
tiles = {
|
||||||
"default_furnace_top.png", "default_furnace_bottom.png",
|
"default_furnace_top.png", "default_furnace_bottom.png",
|
||||||
|
@ -379,9 +388,9 @@ minetest.register_node("default:furnace", {
|
||||||
allow_metadata_inventory_put = allow_metadata_inventory_put,
|
allow_metadata_inventory_put = allow_metadata_inventory_put,
|
||||||
allow_metadata_inventory_move = allow_metadata_inventory_move,
|
allow_metadata_inventory_move = allow_metadata_inventory_move,
|
||||||
allow_metadata_inventory_take = allow_metadata_inventory_take,
|
allow_metadata_inventory_take = allow_metadata_inventory_take,
|
||||||
})
|
}))
|
||||||
|
|
||||||
minetest.register_node("default:furnace_active", {
|
minetest.register_node("default:furnace_active", apply_logger({
|
||||||
description = S("Furnace"),
|
description = S("Furnace"),
|
||||||
tiles = {
|
tiles = {
|
||||||
"default_furnace_top.png", "default_furnace_bottom.png",
|
"default_furnace_top.png", "default_furnace_bottom.png",
|
||||||
|
@ -415,7 +424,7 @@ minetest.register_node("default:furnace_active", {
|
||||||
allow_metadata_inventory_put = allow_metadata_inventory_put,
|
allow_metadata_inventory_put = allow_metadata_inventory_put,
|
||||||
allow_metadata_inventory_move = allow_metadata_inventory_move,
|
allow_metadata_inventory_move = allow_metadata_inventory_move,
|
||||||
allow_metadata_inventory_take = allow_metadata_inventory_take,
|
allow_metadata_inventory_take = allow_metadata_inventory_take,
|
||||||
})
|
}))
|
||||||
|
|
||||||
minetest.register_craft({
|
minetest.register_craft({
|
||||||
output = "default:furnace",
|
output = "default:furnace",
|
||||||
|
|
|
@ -77,3 +77,19 @@ dofile(default_path.."/crafting.lua")
|
||||||
dofile(default_path.."/mapgen.lua")
|
dofile(default_path.."/mapgen.lua")
|
||||||
dofile(default_path.."/aliases.lua")
|
dofile(default_path.."/aliases.lua")
|
||||||
dofile(default_path.."/legacy.lua")
|
dofile(default_path.."/legacy.lua")
|
||||||
|
|
||||||
|
-- Smoke test that is run via ./util/test/run.sh
|
||||||
|
if minetest.settings:get_bool("minetest_game_smoke_test") then
|
||||||
|
minetest.after(0, function()
|
||||||
|
minetest.emerge_area(vector.new(0, 0, 0), vector.new(32, 32, 32))
|
||||||
|
local pos = vector.new(9, 9, 9)
|
||||||
|
local function check()
|
||||||
|
if minetest.get_node(pos).name ~= "ignore" then
|
||||||
|
minetest.request_shutdown()
|
||||||
|
return
|
||||||
|
end
|
||||||
|
minetest.after(0, check)
|
||||||
|
end
|
||||||
|
check()
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
|
@ -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-2018:
|
Copyright (C) 2010-2023:
|
||||||
|
|
||||||
celeron55, Perttu Ahola <celeron55@gmail.com>
|
celeron55, Perttu Ahola <celeron55@gmail.com>
|
||||||
Cisoun
|
Cisoun
|
||||||
|
@ -52,6 +52,7 @@ Copyright (C) 2010-2018:
|
||||||
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.
|
||||||
|
|
|
@ -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=Esepenbaumsetzling
|
Aspen Tree Sapling=Espenbaumsetzling
|
||||||
Coal Ore=Kohleerz
|
Coal Ore=Kohleerz
|
||||||
Coal Block=Kohleblock
|
Coal Block=Kohleblock
|
||||||
Iron Ore=Eisenerz
|
Iron Ore=Eisenerz
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# textdomain: default
|
# textdomain: default
|
||||||
Locked Chest=Ŝlosita Kesto
|
Locked Chest=Ŝlosita kesto
|
||||||
Locked Chest (owned by @1)=Ŝlosita Kesto (de @1)
|
Locked Chest (owned by @1)=Ŝlosita kesto (de @1)
|
||||||
You do not own this chest.=Vi ne posedas ĉi tiun keston.
|
You do not own this chest.=Vi ne posedas ĉi tiun keston.
|
||||||
a locked chest=ŝlosita kesto
|
a locked chest=ŝlosita kesto
|
||||||
Chest=Kesto
|
Chest=Kesto
|
||||||
|
@ -15,26 +15,26 @@ The book you were writing to mysteriously disappeared.=La libro, kiun vi skribis
|
||||||
"@1" by @2="@1" per @2
|
"@1" by @2="@1" per @2
|
||||||
Blueberries=Mirteloj
|
Blueberries=Mirteloj
|
||||||
Book=Libro
|
Book=Libro
|
||||||
Book with Text=Libro kun Teksto
|
Book with Text=Libro kun teksto
|
||||||
Bronze Ingot=Bronza Ingoto
|
Bronze Ingot=Bronza ingoto
|
||||||
Clay Brick=Argila Briko
|
Clay Brick=Argila briko
|
||||||
Clay Lump=Argila Bulo
|
Clay Lump=Argila bulo
|
||||||
Coal Lump=Karba Bulo
|
Coal Lump=Karba bulo
|
||||||
Copper Ingot=Kupra Ingoto
|
Copper Ingot=Kupra ingoto
|
||||||
Copper Lump=Kupra Bulo
|
Copper Lump=Kupra bulo
|
||||||
Diamond=Diamanto
|
Diamond=Diamanto
|
||||||
Flint=Siliko
|
Flint=Siliko
|
||||||
Gold Ingot=Ora Ingoto
|
Gold Ingot=Ora ingoto
|
||||||
Gold Lump=Ora Bulo
|
Gold Lump=Ora bulo
|
||||||
Iron Lump=Fera Bulo
|
Iron Lump=Fera bulo
|
||||||
Mese Crystal=Mesea Kristalo
|
Mese Crystal=Mesea kristalo
|
||||||
Mese Crystal Fragment=Mesea Kristala Ero
|
Mese Crystal Fragment=Mesea kristala ero
|
||||||
Obsidian Shard=Obsidiana Peceto
|
Obsidian Shard=Obsidiana peceto
|
||||||
Paper=Papero
|
Paper=Papero
|
||||||
Steel Ingot=Ŝtala Ingoto
|
Steel Ingot=Ŝtala ingoto
|
||||||
Stick=Bastono
|
Stick=Bastono
|
||||||
Tin Ingot=Stana Ingoto
|
Tin Ingot=Stana ingoto
|
||||||
Tin Lump=Stana Bulo
|
Tin Lump=Stana bulo
|
||||||
Furnace is empty=Forno estas malplena
|
Furnace is empty=Forno estas malplena
|
||||||
100% (output full)=100% (plena eligo)
|
100% (output full)=100% (plena eligo)
|
||||||
@1%=@1%
|
@1%=@1%
|
||||||
|
@ -46,175 +46,175 @@ Furnace inactive=Forno ne laboras
|
||||||
Furnace=Forno
|
Furnace=Forno
|
||||||
Stone=Ŝtono
|
Stone=Ŝtono
|
||||||
Cobblestone=Pavimŝtono
|
Cobblestone=Pavimŝtono
|
||||||
Stone Brick=Ŝtona Briko
|
Stone Brick=Ŝtona briko
|
||||||
Stone Block=Ŝtona Bloko
|
Stone Block=Ŝtona bloko
|
||||||
Mossy Cobblestone=Muska Pavimŝtono
|
Mossy Cobblestone=Muska pavimŝtono
|
||||||
Desert Stone=Dezerta Ŝtono
|
Desert Stone=Dezerta ŝtono
|
||||||
Desert Cobblestone=Dezerta Pavimŝtono
|
Desert Cobblestone=Dezerta pavimŝtono
|
||||||
Desert Stone Brick=Dezerta Ŝtona Briko
|
Desert Stone Brick=Dezerta ŝtona briko
|
||||||
Desert Stone Block=Dezerta Ŝtona Bloko
|
Desert Stone Block=Dezerta ŝtona bloko
|
||||||
Sandstone=Sablaŝtono
|
Sandstone=Sablaŝtono
|
||||||
Sandstone Brick=Sablaŝtono Briko
|
Sandstone Brick=Sablaŝtono briko
|
||||||
Sandstone Block=Sablaŝtono Bloko
|
Sandstone Block=Sablaŝtono bloko
|
||||||
Desert Sandstone=Dezerta Sablaŝtono
|
Desert Sandstone=Dezerta sablaŝtono
|
||||||
Desert Sandstone Brick=Dezerta Sablaŝtono Briko
|
Desert Sandstone Brick=Dezerta sablaŝtono briko
|
||||||
Desert Sandstone Block=Dezerta Sablaŝtono Bloko
|
Desert Sandstone Block=Dezerta sablaŝtono bloko
|
||||||
Silver Sandstone=Arĝenta Sablaŝtono
|
Silver Sandstone=Arĝenta sablaŝtono
|
||||||
Silver Sandstone Brick=Arĝenta Sablaŝtono Briko
|
Silver Sandstone Brick=Arĝenta sablaŝtono briko
|
||||||
Silver Sandstone Block=Arĝenta Sablaŝtono Bloko
|
Silver Sandstone Block=Arĝenta sablaŝtono bloko
|
||||||
Obsidian=Obsidiano
|
Obsidian=Obsidiano
|
||||||
Obsidian Brick=Obsidiana Briko
|
Obsidian Brick=Obsidiana briko
|
||||||
Obsidian Block=Obsidiana Bloko
|
Obsidian Block=Obsidiana bloko
|
||||||
Dirt=Tero
|
Dirt=Tero
|
||||||
Dirt with Grass=Tero kun Herbo
|
Dirt with Grass=Tero kun herbo
|
||||||
Dirt with Grass and Footsteps=Tero kun Herbo kaj Piedpaŝoj
|
Dirt with Grass and Footsteps=Tero kun herbo kaj piedpaŝoj
|
||||||
Dirt with Savanna Grass=Tero kun Savana Herbo
|
Dirt with Savanna Grass=Tero kun savana herbo
|
||||||
Dirt with Snow=Tero kun Neĝo
|
Dirt with Snow=Tero kun neĝo
|
||||||
Dirt with Rainforest Litter=Tero kun Pluvarbara Folioj
|
Dirt with Rainforest Litter=Tero kun pluvarbara folioj
|
||||||
Dirt with Coniferous Litter=Tero kun Koniferaj Folioj
|
Dirt with Coniferous Litter=Tero kun koniferaj folioj
|
||||||
Savanna Dirt=Savana Tero
|
Savanna Dirt=Savana tero
|
||||||
Savanna Dirt with Savanna Grass=Savana Tero kun Savana Herbo
|
Savanna Dirt with Savanna Grass=Savana tero kun savana herbo
|
||||||
Permafrost=Ĉiamfrosto
|
Permafrost=Ĉiamfrosto
|
||||||
Permafrost with Stones=Ĉiamfrosto kun Ŝtonoj
|
Permafrost with Stones=Ĉiamfrosto kun ŝtonoj
|
||||||
Permafrost with Moss=Ĉiamfrosto kun Musko
|
Permafrost with Moss=Ĉiamfrosto kun musko
|
||||||
Sand=Sablo
|
Sand=Sablo
|
||||||
Desert Sand=Dezerta Sablo
|
Desert Sand=Dezerta sablo
|
||||||
Silver Sand=Arĝenta Sablo
|
Silver Sand=Arĝenta sablo
|
||||||
Gravel=Gruzo
|
Gravel=Gruzo
|
||||||
Clay=Argilo
|
Clay=Argilo
|
||||||
Snow=Neĝo
|
Snow=Neĝo
|
||||||
Snow Block=Neĝa Bloko
|
Snow Block=Neĝa bloko
|
||||||
Ice=Glacio
|
Ice=Glacio
|
||||||
Cave Ice=Kaverna Glacio
|
Cave Ice=Kaverna glacio
|
||||||
Apple Tree=Pomarbo
|
Apple Tree=Pomarbo
|
||||||
Apple Wood Planks=Pomarbaj Lignaj Tabuloj
|
Apple Wood Planks=Pomarbaj lignaj tabuloj
|
||||||
Apple Tree Sapling=Pomarba Arbido
|
Apple Tree Sapling=Pomarba arbido
|
||||||
Apple Tree Leaves=Pomarbaj Folioj
|
Apple Tree Leaves=Pomarbaj folioj
|
||||||
Apple=Pomo
|
Apple=Pomo
|
||||||
Apple Marker=Poma Marko
|
Apple Marker=Poma marko
|
||||||
Jungle Tree=Ĝangala Arbo
|
Jungle Tree=Ĝangala arbo
|
||||||
Jungle Wood Planks=Ĝangalaj Lignaj Tabuloj
|
Jungle Wood Planks=Ĝangalaj lignaj tabuloj
|
||||||
Jungle Tree Leaves=Ĝangalaj Arbaj Folioj
|
Jungle Tree Leaves=Ĝangalaj arbaj folioj
|
||||||
Jungle Tree Sapling=Ĝangala Arba Arbido
|
Jungle Tree Sapling=Ĝangala arba arbido
|
||||||
Emergent Jungle Tree Sapling=Nova Ĝangala Arba Arbido
|
Emergent Jungle Tree Sapling=Nova ĝangala arba arbido
|
||||||
Pine Tree=Pino
|
Pine Tree=Pino
|
||||||
Pine Wood Planks=Pinaj Lignaj Tabuloj
|
Pine Wood Planks=Pinaj lignaj tabuloj
|
||||||
Pine Needles=Pinpingloj
|
Pine Needles=Pinpingloj
|
||||||
Pine Tree Sapling=Pina Arbido
|
Pine Tree Sapling=Pina arbido
|
||||||
Acacia Tree=Akacio
|
Acacia Tree=Akacio
|
||||||
Acacia Wood Planks=Akaciaj Lignaj Tabuloj
|
Acacia Wood Planks=Akaciaj lignaj tabuloj
|
||||||
Acacia Tree Leaves=Akaciaj Folioj
|
Acacia Tree Leaves=Akaciaj folioj
|
||||||
Acacia Tree Sapling=Akacia Arbido
|
Acacia Tree Sapling=Akacia arbido
|
||||||
Aspen Tree=Tremolo
|
Aspen Tree=Tremolo
|
||||||
Aspen Wood Planks=Tremolaj Lignaj Tabuloj
|
Aspen Wood Planks=Tremolaj lignaj tabuloj
|
||||||
Aspen Tree Leaves=Tremolaj Folioj
|
Aspen Tree Leaves=Tremolaj folioj
|
||||||
Aspen Tree Sapling=Tremola Arbido
|
Aspen Tree Sapling=Tremola arbido
|
||||||
Coal Ore=Karba Minaĵo
|
Coal Ore=Karba minaĵo
|
||||||
Coal Block=Karba Bloko
|
Coal Block=Karba bloko
|
||||||
Iron Ore=Fera Minaĵo
|
Iron Ore=Fera minaĵo
|
||||||
Steel Block=Ŝtala Bloko
|
Steel Block=Ŝtala bloko
|
||||||
Copper Ore=Kupra Minaĵo
|
Copper Ore=Kupra minaĵo
|
||||||
Copper Block=Kupra Bloko
|
Copper Block=Kupra bloko
|
||||||
Tin Ore=Stana Minaĵo
|
Tin Ore=Stana minaĵo
|
||||||
Tin Block=Stana Bloko
|
Tin Block=Stana bloko
|
||||||
Bronze Block=Bronza Bloko
|
Bronze Block=Bronza bloko
|
||||||
Mese Ore=Mesea Minaĵo
|
Mese Ore=Mesea minaĵo
|
||||||
Mese Block=Mesea Bloko
|
Mese Block=Mesea bloko
|
||||||
Gold Ore=Ora Minaĵo
|
Gold Ore=Ora minaĵo
|
||||||
Gold Block=Ora Bloko
|
Gold Block=Ora bloko
|
||||||
Diamond Ore=Diamanta Minaĵo
|
Diamond Ore=Diamanta minaĵo
|
||||||
Diamond Block=Diamanta Bloko
|
Diamond Block=Diamanta bloko
|
||||||
Cactus=Kakto
|
Cactus=Kakto
|
||||||
Large Cactus Seedling=Granda Kakta Kreskaĵo
|
Large Cactus Seedling=Granda kakta kreskaĵo
|
||||||
Papyrus=Papiruso
|
Papyrus=Papiruso
|
||||||
Dry Shrub=Seka Arbetaĵo
|
Dry Shrub=Seka arbetaĵo
|
||||||
Jungle Grass=Ĝangala Herbo
|
Jungle Grass=Ĝangala herbo
|
||||||
Grass=Herbo
|
Grass=Herbo
|
||||||
Savanna Grass=Savana Herbo
|
Savanna Grass=Savana herbo
|
||||||
Fern=Filiko
|
Fern=Filiko
|
||||||
Marram Grass=Amofilo
|
Marram Grass=Amofilo
|
||||||
Bush Stem=Arbateĵa Tubo
|
Bush Stem=Arbateĵa tubo
|
||||||
Bush Leaves=Arbateĵaj Folioj
|
Bush Leaves=Arbateĵaj folioj
|
||||||
Bush Sapling=Arbateĵa Arbido
|
Bush Sapling=Arbateĵa arbido
|
||||||
Blueberry Bush Leaves with Berries=Mirtelaj Arbateĵaj Folioj kaj Beroj
|
Blueberry Bush Leaves with Berries=Mirtelaj arbateĵaj folioj kaj beroj
|
||||||
Blueberry Bush Leaves=Mirtelaj Arbateĵaj Folioj
|
Blueberry Bush Leaves=Mirtelaj arbateĵaj folioj
|
||||||
Blueberry Bush Sapling=Mirtela Arbateĵa Arbido
|
Blueberry Bush Sapling=Mirtela arbateĵa arbido
|
||||||
Acacia Bush Stem=Akacia Arbateĵa Tubo
|
Acacia Bush Stem=Akacia arbateĵa tubo
|
||||||
Acacia Bush Leaves=Akaciaj Arbateĵaj Folioj
|
Acacia Bush Leaves=Akaciaj arbateĵaj folioj
|
||||||
Acacia Bush Sapling=Akacia Arbateĵa Arbido
|
Acacia Bush Sapling=Akacia arbateĵa arbido
|
||||||
Pine Bush Stem=Pina Arbateĵa Tubo
|
Pine Bush Stem=Pina arbateĵa tubo
|
||||||
Pine Bush Needles=Pinaj Arbateĵaj Pingloj
|
Pine Bush Needles=Pinaj arbateĵaj pingloj
|
||||||
Pine Bush Sapling=Pina Arbateĵa Arbido
|
Pine Bush Sapling=Pina arbateĵa arbido
|
||||||
Kelp=Fuko
|
Kelp=Fuko
|
||||||
Green Coral=Verda Koralo
|
Green Coral=Verda koralo
|
||||||
Pink Coral=Rozkolora Koralo
|
Pink Coral=Rozkolora koralo
|
||||||
Cyan Coral=Bluverda Koralo
|
Cyan Coral=Bluverda koralo
|
||||||
Brown Coral=Bruna Koralo
|
Brown Coral=Bruna koralo
|
||||||
Orange Coral=Oranĝkolora Koralo
|
Orange Coral=Oranĝkolora koralo
|
||||||
Coral Skeleton=Korala Framo
|
Coral Skeleton=Korala framo
|
||||||
Water Source=Akva Fonto
|
Water Source=Akva fonto
|
||||||
Flowing Water=Flua Akvo
|
Flowing Water=Flua akvo
|
||||||
River Water Source=Rivera Akva Fonto
|
River Water Source=Rivera akva fonto
|
||||||
Flowing River Water=Flua Rivera Akvo
|
Flowing River Water=Flua rivera akvo
|
||||||
Lava Source=Lafa Fonto
|
Lava Source=Lafa fonto
|
||||||
Flowing Lava=Flua Lafa
|
Flowing Lava=Flua lafa
|
||||||
Empty Bookshelf=Malplena Librobreto
|
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
|
||||||
Wooden Sign=Ligna Signo
|
"@1"=
|
||||||
Steel Sign=Ŝtala Signo
|
Wooden Sign=Ligna signo
|
||||||
Wooden Ladder=Ligna Ŝtupetaro
|
Steel Sign=Ŝtala signo
|
||||||
Steel Ladder=Ŝtala Ŝtupetaro
|
Wooden Ladder=Ligna ŝtupetaro
|
||||||
Apple Wood Fence=Poma Ligna Barilo
|
Steel Ladder=Ŝtala ŝtupetaro
|
||||||
Acacia Wood Fence=Akacia Ligna Barilo
|
Apple Wood Fence=Poma ligna barilo
|
||||||
Jungle Wood Fence=Ĝangala Ligna Barilo
|
Acacia Wood Fence=Akacia ligna barilo
|
||||||
Pine Wood Fence=Pina Ligna Barilo
|
Jungle Wood Fence=Ĝangala ligna barilo
|
||||||
Aspen Wood Fence=Tremola Ligna Barilo
|
Pine Wood Fence=Pina ligna barilo
|
||||||
Apple Wood Fence Rail=Poma Ligna Barila Relo
|
Aspen Wood Fence=Tremola ligna barilo
|
||||||
Acacia Wood Fence Rail=Akacia Ligna Barila Relo
|
Apple Wood Fence Rail=Poma ligna barila relo
|
||||||
Jungle Wood Fence Rail=Ĝangala Ligna Barila Relo
|
Acacia Wood Fence Rail=Akacia ligna barila relo
|
||||||
Pine Wood Fence Rail=Pina Ligna Barila Relo
|
Jungle Wood Fence Rail=Ĝangala ligna barila relo
|
||||||
Aspen Wood Fence Rail=Tremola Ligna Barila Relo
|
Pine Wood Fence Rail=Pina ligna barila relo
|
||||||
|
Aspen Wood Fence Rail=Tremola ligna barila relo
|
||||||
Glass=Vitro
|
Glass=Vitro
|
||||||
Obsidian Glass=Obsidiana Vitro
|
Obsidian Glass=Obsidiana vitro
|
||||||
Brick Block=Brika Bloko
|
Brick Block=Brika bloko
|
||||||
Mese Lamp=Mesea Lampo
|
Mese Lamp=Mesea lampo
|
||||||
Apple Wood Mese Post Light=Poma Ligna Mesea Fosta Lampo
|
Apple Wood Mese Post Light=Poma ligna mesea fosta lampo
|
||||||
Acacia Wood Mese Post Light=Akacia Ligna Mesea Fosta Lampo
|
Acacia Wood Mese Post Light=Akacia ligna mesea fosta lampo
|
||||||
Jungle Wood Mese Post Light=Ĝangala Ligna Mesea Fosta Lampo
|
Jungle Wood Mese Post Light=Ĝangala ligna mesea fosta lampo
|
||||||
Pine Wood Mese Post Light=Pina Ligna Mesea Fosta Lampo
|
Pine Wood Mese Post Light=Pina ligna mesea fosta lampo
|
||||||
Aspen Wood Mese Post Light=Tremola Ligna Mesea Fosta Lampo
|
Aspen Wood Mese Post Light=Tremola ligna mesea fosta lampo
|
||||||
Cloud=Nubo
|
Cloud=Nubo
|
||||||
Wooden Pickaxe=Ligna Pioĉo
|
Wooden Pickaxe=Ligna pioĉo
|
||||||
Stone Pickaxe=Ŝtona Pioĉo
|
Stone Pickaxe=Ŝtona pioĉo
|
||||||
Bronze Pickaxe=Bronza Pioĉo
|
Bronze Pickaxe=Bronza pioĉo
|
||||||
Steel Pickaxe=Ŝtala Pioĉo
|
Steel Pickaxe=Ŝtala pioĉo
|
||||||
Mese Pickaxe=Mesea Pioĉo
|
Mese Pickaxe=Mesea pioĉo
|
||||||
Diamond Pickaxe=Diamanta Pioĉo
|
Diamond Pickaxe=Diamanta pioĉo
|
||||||
Wooden Shovel=Ligna Fosilo
|
Wooden Shovel=Ligna fosilo
|
||||||
Stone Shovel=Ŝtona Fosilo
|
Stone Shovel=Ŝtona fosilo
|
||||||
Bronze Shovel=Bronza Fosilo
|
Bronze Shovel=Bronza fosilo
|
||||||
Steel Shovel=Ŝtala Fosilo
|
Steel Shovel=Ŝtala fosilo
|
||||||
Mese Shovel=Mesea Fosilo
|
Mese Shovel=Mesea fosilo
|
||||||
Diamond Shovel=Diamanta Fosilo
|
Diamond Shovel=Diamanta fosilo
|
||||||
Wooden Axe=Ligna Hakilo
|
Wooden Axe=Ligna hakilo
|
||||||
Stone Axe=Ŝtona Hakilo
|
Stone Axe=Ŝtona hakilo
|
||||||
Bronze Axe=Bronza Hakilo
|
Bronze Axe=Bronza hakilo
|
||||||
Steel Axe=Ŝtala Hakilo
|
Steel Axe=Ŝtala hakilo
|
||||||
Mese Axe=Mesea Hakilo
|
Mese Axe=Mesea hakilo
|
||||||
Diamond Axe=Diamanta Hakilo
|
Diamond Axe=Diamanta hakilo
|
||||||
Wooden Sword=Ligna Glavo
|
Wooden Sword=Ligna glavo
|
||||||
Stone Sword=Ŝtona Glavo
|
Stone Sword=Ŝtona glavo
|
||||||
Bronze Sword=Bronza Glavo
|
Bronze Sword=Bronza glavo
|
||||||
Steel Sword=Ŝtala Glavo
|
Steel Sword=Ŝtala glavo
|
||||||
Mese Sword=Mesea Glavo
|
Mese Sword=Mesea glavo
|
||||||
Diamond Sword=Diamanta Glavo
|
Diamond Sword=Diamanta glavo
|
||||||
Torch=Torĉo
|
Torch=Torĉo
|
||||||
@1 will intersect protection on growth.=@1 sekcos protekton dum kresko.
|
@1 will intersect protection on growth.=@1 sekcos protekton dum kresko.
|
||||||
|
|
||||||
|
|
||||||
##### not used anymore #####
|
##### not used anymore #####
|
||||||
|
|
||||||
Mese Post Light=Mesea Fosta Lampo
|
Mese Post Light=Mesea fosta lampo
|
||||||
|
|
||||||
|
|
|
@ -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=Bloc de fer
|
Iron Ore=Minerai 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
|
||||||
|
|
|
@ -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=
|
Write=Tulis
|
||||||
Read=
|
Read=Baca
|
||||||
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.=
|
The book you were writing to mysteriously disappeared.=Buku yang Anda tulis menghilang secara misterius.
|
||||||
"@1" by @2="@1" oleh @2
|
"@1" by @2="@1" oleh @2
|
||||||
Blueberries=Blueberry
|
Blueberries=Bluberi
|
||||||
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 dapat dimasak
|
Not cookable=Tidak bisa 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=Gua Es
|
Cave Ice=Es Gua
|
||||||
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 Maram
|
Marram Grass=Rumput Pantai
|
||||||
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 Blueberry Berbuah
|
Blueberry Bush Leaves with Berries=Daun Semak Bluberi Berbuah
|
||||||
Blueberry Bush Leaves=Daun Semak Blueberry
|
Blueberry Bush Leaves=Daun Semak Bluberi
|
||||||
Blueberry Bush Sapling=Anak Semak Blueberry
|
Blueberry Bush Sapling=Anak Semak Bluberi
|
||||||
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 Jambon
|
Pink Coral=Koral Merah Muda
|
||||||
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=
|
Apple Wood Mese Post Light=Lampu Taman Mese Kayu Apel
|
||||||
Acacia Wood Mese Post Light=
|
Acacia Wood Mese Post Light=Lampu Taman Mese Kayu Akasia
|
||||||
Jungle Wood Mese Post Light=
|
Jungle Wood Mese Post Light=Lampu Taman Mese Kayu Rimba
|
||||||
Pine Wood Mese Post Light=
|
Pine Wood Mese Post Light=Lampu Taman Mese Kayu Pinus
|
||||||
Aspen Wood Mese Post Light=
|
Aspen Wood Mese Post Light=Lampu Taman Mese Kayu Aspen
|
||||||
Cloud=Awan
|
Cloud=Awan
|
||||||
Wooden Pickaxe=Gancu Kayu
|
Wooden Pickaxe=Belencong Kayu
|
||||||
Stone Pickaxe=Gancu Batu
|
Stone Pickaxe=Belencong Batu
|
||||||
Bronze Pickaxe=Gancu Perunggu
|
Bronze Pickaxe=Belencong Perunggu
|
||||||
Steel Pickaxe=Gancu Baja
|
Steel Pickaxe=Belencong Baja
|
||||||
Mese Pickaxe=Gancu Mese
|
Mese Pickaxe=Belencong Mese
|
||||||
Diamond Pickaxe=Gancu Berlian
|
Diamond Pickaxe=Belencong 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
|
||||||
|
|
|
@ -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=鉄の剣
|
||||||
|
|
|
@ -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=
|
Write=Tulis
|
||||||
Read=
|
Read=Baca
|
||||||
Title:=Tajuk:
|
Title:=Tajuk:
|
||||||
Contents:=Kandungan:
|
Contents:=Kandungan:
|
||||||
Save=Simpan
|
Save=Simpan
|
||||||
by @1=oleh @1
|
by @1=oleh @1
|
||||||
Page @1 of @2=Ms. @1 / @2
|
Page @1 of @2=Halaman @1 daripada @2
|
||||||
The book you were writing to mysteriously disappeared.=
|
The book you were writing to mysteriously disappeared.=Buku yang anda tulis hilang secara misterinya.
|
||||||
"@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 Mese
|
Mese Crystal Fragment=Serpihan Kristal 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=
|
Dirt with Savanna Grass=Tanah Berumput Savana
|
||||||
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=
|
Savanna Dirt=Tanah Savana
|
||||||
Savanna Dirt with Savanna Grass=
|
Savanna Dirt with Savanna Grass=Tanah Savana Berumput Savana
|
||||||
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=
|
Savanna Grass=Rumput Savana
|
||||||
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=
|
Apple Wood Mese Post Light=Lampu Tiang Mese Kayu Epal
|
||||||
Acacia Wood Mese Post Light=
|
Acacia Wood Mese Post Light=Lampu Tiang Mese Kayu Akasia
|
||||||
Jungle Wood Mese Post Light=
|
Jungle Wood Mese Post Light=Lampu Tiang Mese Kayu Hutan
|
||||||
Pine Wood Mese Post Light=
|
Pine Wood Mese Post Light=Lampu Tiang Mese Kayu Pain
|
||||||
Aspen Wood Mese Post Light=
|
Aspen Wood Mese Post Light=Lampu Tiang Mese Kayu Aspen
|
||||||
Cloud=Awan
|
Cloud=Awan
|
||||||
Wooden Pickaxe=Beliung Kayu
|
Wooden Pickaxe=Beliung Kayu
|
||||||
Stone Pickaxe=Beliung Batu
|
Stone Pickaxe=Beliung Batu
|
||||||
|
|
215
mods/default/locale/default.pt.tr
Normal file
|
@ -0,0 +1,215 @@
|
||||||
|
# textdomain: default
|
||||||
|
Locked Chest=Baú Trancado
|
||||||
|
Locked Chest (owned by @1)=Baú Trancado (pertence a @1)
|
||||||
|
You do not own this chest.=Você não é dono deste baú.
|
||||||
|
a locked chest=um baú trancado
|
||||||
|
Chest=Baú
|
||||||
|
Write=
|
||||||
|
Read=
|
||||||
|
Title:=Título:
|
||||||
|
Contents:=Conteúdo:
|
||||||
|
Save=Salvar
|
||||||
|
by @1=por @1
|
||||||
|
Page @1 of @2=Página @1 de @2
|
||||||
|
The book you were writing to mysteriously disappeared.=
|
||||||
|
"@1" by @2="@1" por @2
|
||||||
|
Blueberries=Mirtilo
|
||||||
|
Book=Livro
|
||||||
|
Book with Text=Livro com Texto
|
||||||
|
Bronze Ingot=Lingote de Bronze
|
||||||
|
Clay Brick=Tijolo de Argila
|
||||||
|
Clay Lump=Pedaço de Argila
|
||||||
|
Coal Lump=Pedaço de Carvão
|
||||||
|
Copper Ingot=Lingote de Cobre
|
||||||
|
Copper Lump=Pedaço de Cobre
|
||||||
|
Diamond=Diamante
|
||||||
|
Flint=Rocha Sílex
|
||||||
|
Gold Ingot=Lingote de Ouro
|
||||||
|
Gold Lump=Pedaço de Ouro
|
||||||
|
Iron Lump=Pedaço de Ferro
|
||||||
|
Mese Crystal=Cristal de Mese
|
||||||
|
Mese Crystal Fragment=Fragmento de Cristal de Mese
|
||||||
|
Obsidian Shard=Caco de Obsidian
|
||||||
|
Paper=Papel
|
||||||
|
Steel Ingot=Lingote de Aço
|
||||||
|
Stick=Graveto
|
||||||
|
Tin Ingot=Lingote de Estanho
|
||||||
|
Tin Lump=Pedaço de Estanho
|
||||||
|
Furnace is empty=A fornalha está vazia
|
||||||
|
100% (output full)=100% (saída cheia)
|
||||||
|
@1%=@1%
|
||||||
|
Not cookable=Não pode cozinhar
|
||||||
|
Empty=Vazio
|
||||||
|
Furnace active=Fornalha ativa
|
||||||
|
Furnace inactive=Fornalha inativa
|
||||||
|
(Item: @1; Fuel: @2)=(Item: @1; Combustível: @2)
|
||||||
|
Furnace=Fornalha
|
||||||
|
Stone=Pedra
|
||||||
|
Cobblestone=Pedregulho
|
||||||
|
Stone Brick=Tijolo de Pedra
|
||||||
|
Stone Block=Bloco de Pedra
|
||||||
|
Mossy Cobblestone=Pedregulho Musgoso
|
||||||
|
Desert Stone=Pedra do Deserto
|
||||||
|
Desert Cobblestone=Pedregulho do Deserto
|
||||||
|
Desert Stone Brick=Tijolo de Pedra do Deserto
|
||||||
|
Desert Stone Block=Bloco de Pedra do Deserto
|
||||||
|
Sandstone=Arenito
|
||||||
|
Sandstone Brick=Tijolo de Arenito
|
||||||
|
Sandstone Block=Bloco de Arenito
|
||||||
|
Desert Sandstone=Bloco de Arenito do Deserto
|
||||||
|
Desert Sandstone Brick=Tijolo de Arenito do Deserto
|
||||||
|
Desert Sandstone Block=Bloco de Arenito do Deserto
|
||||||
|
Silver Sandstone=Arenito Prateado
|
||||||
|
Silver Sandstone Brick=Tijolo de Arenito Prateado
|
||||||
|
Silver Sandstone Block=Bloco de Arenito Prateado
|
||||||
|
Obsidian=Obsidiana
|
||||||
|
Obsidian Brick=Tijolo de Obsidiana
|
||||||
|
Obsidian Block=Bloco de Obsidiana
|
||||||
|
Dirt=Terra
|
||||||
|
Dirt with Grass=Terra com Grama
|
||||||
|
Dirt with Grass and Footsteps=Terra com Grama e Pegadas
|
||||||
|
Dirt with Savanna Grass=Terra com Grama da Savana
|
||||||
|
Dirt with Snow=Terra com Neve
|
||||||
|
Dirt with Rainforest Litter=Terra com Serrapilheira Tropical
|
||||||
|
Dirt with Coniferous Litter=Terra com Serrapilheira
|
||||||
|
Savanna Dirt=Terra da Savana
|
||||||
|
Savanna Dirt with Savanna Grass=Terra da Savana com Grama da Savana
|
||||||
|
Permafrost=Terra Congelada
|
||||||
|
Permafrost with Stones=Terra Congelada com Pedras
|
||||||
|
Permafrost with Moss=Terra Congelada com Musgo
|
||||||
|
Sand=Areia
|
||||||
|
Desert Sand=Areia do Deserto
|
||||||
|
Silver Sand=Areia Prateada
|
||||||
|
Gravel=Cascalho
|
||||||
|
Clay=Argila
|
||||||
|
Snow=Neve
|
||||||
|
Snow Block=Bloco de Neve
|
||||||
|
Ice=Gelo
|
||||||
|
Cave Ice=Caverna de Gelo
|
||||||
|
Apple Tree=Macieira
|
||||||
|
Apple Wood Planks=Tábuas de Macieira
|
||||||
|
Apple Tree Sapling=Muda de Macieira
|
||||||
|
Apple Tree Leaves=Folhas de Macieira
|
||||||
|
Apple=Maçã
|
||||||
|
Apple Marker=Marcador de Maçã
|
||||||
|
Jungle Tree=Árvore da Selva
|
||||||
|
Jungle Wood Planks=Tábuas de Árvore da Selva
|
||||||
|
Jungle Tree Leaves=Folhas de Árvore da Selva
|
||||||
|
Jungle Tree Sapling=Muda de Árvore da Selva
|
||||||
|
Emergent Jungle Tree Sapling=Muda Crescida de Árvore da Selva
|
||||||
|
Pine Tree=Pinheiro
|
||||||
|
Pine Wood Planks=Tábuas de Pinheiro
|
||||||
|
Pine Needles=Agulhas de Pinheiro
|
||||||
|
Pine Tree Sapling=Muda de Pinheiro
|
||||||
|
Acacia Tree=Acácia
|
||||||
|
Acacia Wood Planks=Tábuas de Acácia
|
||||||
|
Acacia Tree Leaves=Folhas de Acácia
|
||||||
|
Acacia Tree Sapling=Mudas de Acácia
|
||||||
|
Aspen Tree=Álamo
|
||||||
|
Aspen Wood Planks=Tábuas de Álamo
|
||||||
|
Aspen Tree Leaves=Folhas de Álamo
|
||||||
|
Aspen Tree Sapling=Muda de Álamo
|
||||||
|
Coal Ore=Minério de Carvão
|
||||||
|
Coal Block=Bloco de Carvão
|
||||||
|
Iron Ore=Minério de Ferro
|
||||||
|
Steel Block=Bloco de Aço
|
||||||
|
Copper Ore=Minério de Cobre
|
||||||
|
Copper Block=Bloco de Cobre
|
||||||
|
Tin Ore=Minério de Estanho
|
||||||
|
Tin Block=Bloco de Estanho
|
||||||
|
Bronze Block=Bloco de Bronze
|
||||||
|
Mese Ore=Minério de Mese
|
||||||
|
Mese Block=Bloco de Mese
|
||||||
|
Gold Ore=Minério de Ouro
|
||||||
|
Gold Block=Bloco de Ouro
|
||||||
|
Diamond Ore=Minério de Diamante
|
||||||
|
Diamond Block=Bloco de Diamante
|
||||||
|
Cactus=Cacto
|
||||||
|
Large Cactus Seedling=Grande Muda de Cacto
|
||||||
|
Papyrus=Papiro
|
||||||
|
Dry Shrub=Arbusto Seco
|
||||||
|
Jungle Grass=Grama da Selva
|
||||||
|
Grass=Grama
|
||||||
|
Savanna Grass=Grama da Savana
|
||||||
|
Fern=Samambaia
|
||||||
|
Marram Grass=Grama de Feno
|
||||||
|
Bush Stem=Caule de Arbusto
|
||||||
|
Bush Leaves=Folhas de Arbusto
|
||||||
|
Bush Sapling=Muda de Arbusto
|
||||||
|
Blueberry Bush Leaves with Berries=Folhas de Arbusto de Mirtilo com Bagas
|
||||||
|
Blueberry Bush Leaves=Folhas de Arbusto de Mirtilo
|
||||||
|
Blueberry Bush Sapling=Muda de Arbusto de Mirtilo
|
||||||
|
Acacia Bush Stem=Caule de Arbusto de Acácia
|
||||||
|
Acacia Bush Leaves=Folhas de Arbusto de Acácia
|
||||||
|
Acacia Bush Sapling=Muda de Arbusto de Acácia
|
||||||
|
Pine Bush Stem=Caule de Arbusto de Pinheiro
|
||||||
|
Pine Bush Needles=Agulha de Arbusto de Pinheiro
|
||||||
|
Pine Bush Sapling=Muda de Arbusto de Pinheiro
|
||||||
|
Kelp=Alga
|
||||||
|
Green Coral=Coral Verde
|
||||||
|
Pink Coral=Coral Rosa
|
||||||
|
Cyan Coral=Coral Ciano
|
||||||
|
Brown Coral=Coral Marrom
|
||||||
|
Orange Coral=Coral Laranja
|
||||||
|
Coral Skeleton=Esqueleto de Coral
|
||||||
|
Water Source=Fonte de Água
|
||||||
|
Flowing Water=Água Corrente
|
||||||
|
River Water Source=Fonte de Água do Rio
|
||||||
|
Flowing River Water=Água Corrente do Rio
|
||||||
|
Lava Source=Fonte de Lava
|
||||||
|
Flowing Lava=Lava Corrente
|
||||||
|
Empty Bookshelf=Estante de Livros Vazia
|
||||||
|
Bookshelf (@1 written, @2 empty books)=Estante de Livros (@1 livros escritos, @2 livros em branco)
|
||||||
|
Bookshelf=Estante de Livros
|
||||||
|
Text too long=Texto muito longo
|
||||||
|
"@1"="@1"
|
||||||
|
Wooden Sign=Placa de Madeira
|
||||||
|
Steel Sign=Placa de Aço
|
||||||
|
Wooden Ladder=Escada de Madeira
|
||||||
|
Steel Ladder=Escada de Aço
|
||||||
|
Apple Wood Fence=Cerca de Macieira
|
||||||
|
Acacia Wood Fence=Cerca de Acácia
|
||||||
|
Jungle Wood Fence=Cerca de Madeira da Selva
|
||||||
|
Pine Wood Fence=Cerca de Pinheiro
|
||||||
|
Aspen Wood Fence=Cerca de Álamo
|
||||||
|
Apple Wood Fence Rail=Trilho de Cerca de Macieira
|
||||||
|
Acacia Wood Fence Rail=Trilho de Cerca de Acácia
|
||||||
|
Jungle Wood Fence Rail=Trilho de Cerca de Madeira da Selva
|
||||||
|
Pine Wood Fence Rail=Trilho de Cerca de Pinheiro
|
||||||
|
Aspen Wood Fence Rail=Trilho de Cerca de Álamo
|
||||||
|
Glass=Vidro
|
||||||
|
Obsidian Glass=Vidro de Obsidiana
|
||||||
|
Brick Block=Bloco de Tijolos
|
||||||
|
Mese Lamp=Lâmpada de Mese
|
||||||
|
Apple Wood Mese Post Light=Poste de Lâmpada de Mese de Macieira
|
||||||
|
Acacia Wood Mese Post Light=Poste de Lâmpada de Mese de Acácia
|
||||||
|
Jungle Wood Mese Post Light=Poste de Lâmpada de Mese de Madeira da Selva
|
||||||
|
Pine Wood Mese Post Light=Poste de Lâmpada de Mese de Pinheiro
|
||||||
|
Aspen Wood Mese Post Light=Poste de Lâmpada de Mese de Aspen
|
||||||
|
Cloud=Nuvem
|
||||||
|
Wooden Pickaxe=Picareta de Madeira
|
||||||
|
Stone Pickaxe=Picareta de Pedra
|
||||||
|
Bronze Pickaxe=Picareta de Bronze
|
||||||
|
Steel Pickaxe=Picareta de Aço
|
||||||
|
Mese Pickaxe=Picareta de Mese
|
||||||
|
Diamond Pickaxe=Picareta de Diamante
|
||||||
|
Wooden Shovel=Pá de Madeira
|
||||||
|
Stone Shovel=Pá de Pedra
|
||||||
|
Bronze Shovel=Pá de Bronze
|
||||||
|
Steel Shovel=Pá de Aço
|
||||||
|
Mese Shovel=Pá de Mese
|
||||||
|
Diamond Shovel=Pá de Diamante
|
||||||
|
Wooden Axe=Machado de Madeira
|
||||||
|
Stone Axe=Machado de Pedra
|
||||||
|
Bronze Axe=Machado de Bronze
|
||||||
|
Steel Axe=Machado de Aço
|
||||||
|
Mese Axe=Machado de Mese
|
||||||
|
Diamond Axe=Machado de Diamante
|
||||||
|
Wooden Sword=Espada de Madeira
|
||||||
|
Stone Sword=Espada de Pedra
|
||||||
|
Bronze Sword=Espada de Bronze
|
||||||
|
Steel Sword=Espada de Aço
|
||||||
|
Mese Sword=Espada de Mese
|
||||||
|
Diamond Sword=Espada de Diamante
|
||||||
|
Torch=Tocha
|
||||||
|
@1 will intersect protection on growth.=@1 cruzará a proteção no crescimento.
|
|
@ -23,7 +23,7 @@ Coal Lump=Pedaço de Carvão
|
||||||
Copper Ingot=Lingote de Cobre
|
Copper Ingot=Lingote de Cobre
|
||||||
Copper Lump=Pedaço de Cobre
|
Copper Lump=Pedaço de Cobre
|
||||||
Diamond=Diamante
|
Diamond=Diamante
|
||||||
Flint=Sílex (Flint)
|
Flint=Rocha Sílex
|
||||||
Gold Ingot=Lingote de Ouro
|
Gold Ingot=Lingote de Ouro
|
||||||
Gold Lump=Pedaço de Ouro
|
Gold Lump=Pedaço de Ouro
|
||||||
Iron Lump=Pedaço de Ferro
|
Iron Lump=Pedaço de Ferro
|
||||||
|
|
|
@ -1,42 +1,42 @@
|
||||||
# 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="@1" @2
|
"@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=Пустое
|
||||||
|
@ -46,179 +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 пересечет защищённую зону при вырастании.
|
||||||
|
|
||||||
|
|
||||||
##### not used anymore #####
|
|
||||||
|
|
||||||
Dirt with Dry Grass=Земля с Сухой Травой
|
|
||||||
Dry Dirt=Сухая Земля
|
|
||||||
Dry Dirt with Dry Grass=Сухая Земля с Сухой Травой
|
|
||||||
Dry Grass=Сухая Трава
|
|
||||||
Mese Post Light=Столб с Месе Фонарем
|
|
|
@ -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="@1" @2
|
"@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%
|
||||||
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 перетне захист коли виросте.
|
||||||
|
|
|
@ -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=书
|
||||||
|
|
|
@ -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=書
|
||||||
|
|
|
@ -2476,9 +2476,6 @@ 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")
|
||||||
|
|
||||||
|
|
|
@ -1985,8 +1985,8 @@ minetest.register_node("default:sand_with_kelp", {
|
||||||
|
|
||||||
on_place = function(itemstack, placer, pointed_thing)
|
on_place = function(itemstack, placer, pointed_thing)
|
||||||
-- Call on_rightclick if the pointed node defines it
|
-- Call on_rightclick if the pointed node defines it
|
||||||
if pointed_thing.type == "node" and placer and
|
if pointed_thing.type == "node" and not (placer and placer:is_player()
|
||||||
not placer:get_player_control().sneak then
|
and placer:get_player_control().sneak) then
|
||||||
local node_ptu = minetest.get_node(pointed_thing.under)
|
local node_ptu = minetest.get_node(pointed_thing.under)
|
||||||
local def_ptu = minetest.registered_nodes[node_ptu.name]
|
local def_ptu = minetest.registered_nodes[node_ptu.name]
|
||||||
if def_ptu and def_ptu.on_rightclick then
|
if def_ptu and def_ptu.on_rightclick then
|
||||||
|
@ -2024,7 +2024,7 @@ minetest.register_node("default:sand_with_kelp", {
|
||||||
return itemstack
|
return itemstack
|
||||||
end,
|
end,
|
||||||
|
|
||||||
after_destruct = function(pos, oldnode)
|
after_dig_node = function(pos, oldnode, oldmetadata, digger)
|
||||||
minetest.set_node(pos, {name = "default:sand"})
|
minetest.set_node(pos, {name = "default:sand"})
|
||||||
end
|
end
|
||||||
})
|
})
|
||||||
|
@ -2035,19 +2035,20 @@ minetest.register_node("default:sand_with_kelp", {
|
||||||
--
|
--
|
||||||
|
|
||||||
local function coral_on_place(itemstack, placer, pointed_thing)
|
local function coral_on_place(itemstack, placer, pointed_thing)
|
||||||
if pointed_thing.type ~= "node" or not placer then
|
if pointed_thing.type ~= "node" then
|
||||||
return itemstack
|
return itemstack
|
||||||
end
|
end
|
||||||
|
|
||||||
local player_name = placer:get_player_name()
|
local player_name = placer and placer:get_player_name()
|
||||||
local pos_under = pointed_thing.under
|
local pos_under = pointed_thing.under
|
||||||
local pos_above = pointed_thing.above
|
local pos_above = pointed_thing.above
|
||||||
local node_under = minetest.get_node(pos_under)
|
local node_under = minetest.get_node(pos_under)
|
||||||
local def_under = minetest.registered_nodes[node_under.name]
|
local def_under = minetest.registered_nodes[node_under.name]
|
||||||
|
|
||||||
if def_under and def_under.on_rightclick and not placer:get_player_control().sneak then
|
if def_under and def_under.on_rightclick and not (
|
||||||
|
placer and placer:is_player() and placer:get_player_control().sneak) then
|
||||||
return def_under.on_rightclick(pos_under, node_under,
|
return def_under.on_rightclick(pos_under, node_under,
|
||||||
placer, itemstack, pointed_thing) or itemstack
|
placer, itemstack, pointed_thing)
|
||||||
end
|
end
|
||||||
|
|
||||||
if node_under.name ~= "default:coral_skeleton" or
|
if node_under.name ~= "default:coral_skeleton" or
|
||||||
|
@ -2057,9 +2058,6 @@ local function coral_on_place(itemstack, placer, pointed_thing)
|
||||||
|
|
||||||
if minetest.is_protected(pos_under, player_name) or
|
if minetest.is_protected(pos_under, player_name) or
|
||||||
minetest.is_protected(pos_above, player_name) then
|
minetest.is_protected(pos_above, player_name) then
|
||||||
default.log_player_action(placer,
|
|
||||||
"tried to place", itemstack:get_name(),
|
|
||||||
"at protected position", pos_under)
|
|
||||||
minetest.record_protection_violation(pos_under, player_name)
|
minetest.record_protection_violation(pos_under, player_name)
|
||||||
return itemstack
|
return itemstack
|
||||||
end
|
end
|
||||||
|
@ -2099,7 +2097,7 @@ minetest.register_node("default:coral_green", {
|
||||||
|
|
||||||
on_place = coral_on_place,
|
on_place = coral_on_place,
|
||||||
|
|
||||||
after_destruct = function(pos, oldnode)
|
after_dig_node = function(pos, oldnode, oldmetadata, digger)
|
||||||
minetest.set_node(pos, {name = "default:coral_skeleton"})
|
minetest.set_node(pos, {name = "default:coral_skeleton"})
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
@ -2130,7 +2128,7 @@ minetest.register_node("default:coral_pink", {
|
||||||
|
|
||||||
on_place = coral_on_place,
|
on_place = coral_on_place,
|
||||||
|
|
||||||
after_destruct = function(pos, oldnode)
|
after_dig_node = function(pos, oldnode, oldmetadata, digger)
|
||||||
minetest.set_node(pos, {name = "default:coral_skeleton"})
|
minetest.set_node(pos, {name = "default:coral_skeleton"})
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
@ -2161,7 +2159,7 @@ minetest.register_node("default:coral_cyan", {
|
||||||
|
|
||||||
on_place = coral_on_place,
|
on_place = coral_on_place,
|
||||||
|
|
||||||
after_destruct = function(pos, oldnode)
|
after_dig_node = function(pos, oldnode, oldmetadata, digger)
|
||||||
minetest.set_node(pos, {name = "default:coral_skeleton"})
|
minetest.set_node(pos, {name = "default:coral_skeleton"})
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
@ -2549,6 +2547,15 @@ 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)
|
||||||
|
@ -2597,12 +2604,12 @@ local function register_sign(material, desc, def)
|
||||||
if not text then
|
if not text then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
if string.len(text) > 512 then
|
if #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
|
||||||
default.log_player_action(sender, "wrote \"" .. text ..
|
text = text:gsub("[%z-\8\11-\31\127]", "") -- strip naughty control characters (keeps \t and \n)
|
||||||
"\" to the sign at", pos)
|
default.log_player_action(sender, ("wrote %q to the sign at"):format(text), pos)
|
||||||
local meta = minetest.get_meta(pos)
|
local meta = minetest.get_meta(pos)
|
||||||
meta:set_string("text", text)
|
meta:set_string("text", text)
|
||||||
|
|
||||||
|
|
Before Width: | Height: | Size: 247 B After Width: | Height: | Size: 312 B |
Before Width: | Height: | Size: 327 B After Width: | Height: | Size: 336 B |
Before Width: | Height: | Size: 514 B After Width: | Height: | Size: 610 B |
Before Width: | Height: | Size: 449 B After Width: | Height: | Size: 463 B |
Before Width: | Height: | Size: 135 B After Width: | Height: | Size: 388 B |
Before Width: | Height: | Size: 238 B After Width: | Height: | Size: 224 B |
Before Width: | Height: | Size: 236 B After Width: | Height: | Size: 221 B |
Before Width: | Height: | Size: 398 B After Width: | Height: | Size: 447 B |
Before Width: | Height: | Size: 426 B After Width: | Height: | Size: 481 B |
Before Width: | Height: | Size: 676 B After Width: | Height: | Size: 641 B |
Before Width: | Height: | Size: 590 B After Width: | Height: | Size: 630 B |
Before Width: | Height: | Size: 3.9 KiB After Width: | Height: | Size: 7.9 KiB |
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 253 B After Width: | Height: | Size: 560 B |
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 7.9 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.5 KiB |