0
0
Fork 0

Compare commits

..

1 Commits

Author SHA1 Message Date
tacotexmex b776135efb Update OpenCollective link 2024-06-26 01:29:02 +02:00
215 changed files with 2123 additions and 7004 deletions

View File

@ -46,9 +46,6 @@ Armor trim models were created by Aeonix_Aeon
Source: <https://www.curseforge.com/minecraft/texture-packs/ozocraft-remix> Source: <https://www.curseforge.com/minecraft/texture-packs/ozocraft-remix>
License: [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) License: [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/)
Charcoal block texture was created by [blitzdoughnuts](https://gitlab.com/ApplemunchFromDaDead), based on the Pixel Perfection coal block.
License: [CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/)
The main menu images are released under: [CC0](https://creativecommons.org/publicdomain/zero/1.0/) The main menu images are released under: [CC0](https://creativecommons.org/publicdomain/zero/1.0/)
All other files, unless mentioned otherwise, fall under: All other files, unless mentioned otherwise, fall under:

View File

@ -1,2 +0,0 @@
# textdomain:mcl_explosions
@1 was caught in an explosion.=@1 foi atrapado nunha explosión.

View File

@ -1,23 +0,0 @@
# textdomain: mcl_boats
Acacia Boat=Barco de acacia
Birch Boat=Barco de bidueiro
Boat=Barco
Boats are used to travel on the surface of water.=Os barcos úsanse para viaxar pola superficie da auga.
Dark Oak Boat=Barco de carballo escuro
Jungle Boat=Barco da xungla
Oak Boat=Barco de carballo
Rightclick on a water source to place the boat. Rightclick the boat to enter it. Use [Left] and [Right] to steer, [Forwards] to speed up and [Backwards] to slow down or move backwards. Rightclick the boat again to leave it, punch the boat to make it drop as an item.=Fai clic co botón dereito nunha fonte de auga para colocar o barco. Fai clic co botón dereito no barco para entrar nel. Use [Esquerda] e [Dereita] para dirixir, [Adiante] para acelerar e [Atrás] para desacelerar ou retroceder. Usa [Sneak] para deixar o barco, golpea o barco para que caia como elemento.
Spruce Boat=Barco de abeto
Water vehicle=Vehículo acuático
Sneak to dismount=Agáchate para desmontar
Obsidian Boat=Barco de obsidiana
Mangrove Boat=Barco de mangle
Cherry Boat=Barco cereixa
Oak Chest Boat=Barco cofre de carballo
Spruce Chest Boat=Barco de cofre de abeto
Birch Chest Boat=Barco de cofre de bidueiro
Jungle Chest Boat=Barco cofre da xungla
Acacia Chest Boat=Barco cofre de acacia
Dark Oak Chest Boat=Barco de cofre de carballo escuro
Mangrove Chest Boat=Barco cofre de mangle
Cherry Chest Boat=Barco de cofre de cereixa

View File

@ -1,3 +0,0 @@
# textdomain: mcl_falling_nodes
@1 was smashed by a falling anvil.=@1 foi esnaquizado por unha yunque que caía.
@1 was smashed by a falling block.=@1 foi esnaquizado por un bloque que caía.

View File

@ -136,7 +136,6 @@ local function try_object_pickup(player, inv, object, checkpos)
-- Destroy entity -- Destroy entity
-- This just prevents this section to be run again because object:remove() doesn't remove the item immediately. -- This just prevents this section to be run again because object:remove() doesn't remove the item immediately.
le.target = checkpos le.target = checkpos
le.itemstring = ""
le._removed = true le._removed = true
-- Stop the object -- Stop the object
@ -958,7 +957,6 @@ minetest.register_entity(":__builtin:item", {
self.random_velocity = 0 self.random_velocity = 0
self:set_item(own_stack:to_string()) self:set_item(own_stack:to_string())
entity.itemstring = ""
entity._removed = true entity._removed = true
object:remove() object:remove()
return true return true

View File

@ -1,40 +0,0 @@
# textdomain: mcl_minecarts
Minecart=Vagoneta
Minecarts can be used for a quick transportion on rails.=As vagonetas pódense usar para un transporte rápido sobre carrís.
Minecarts only ride on rails and always follow the tracks. At a T-junction with no straight way ahead, they turn left. The speed is affected by the rail type.=Las vagonetas só circulan sobre carrís e seguen sempre as pistas. Nun cruce en T sen camiño recto, xiran á esquerda. A velocidade vese afectada polo tipo de carril.
You can place the minecart on rails. Right-click it to enter it. Punch it to get it moving.=Podes colocar a vagoneta sobre carrís. Fai clic co botón dereito nel para ingresalo. Golpea para que se mova.
To obtain the minecart, punch it while holding down the sneak key.=Para obter a vagoneta, golpeao mentres mantés premida a tecla furtiva.
Minecart with Chest=Vagoneta con cofre
Minecart with Furnace=Vagoneta con forno
Minecart with Command Block=Vagoneta con bloque de comandos
Minecart with Hopper=Vagoneta con tolva
Minecart with TNT=Vagoneta con dinamita
Place it on rails. Punch it to move it. The TNT is ignited with a flint and steel or when the minecart is on an powered activator rail.=Colócalo en raíles. Golpea para movelo. A dinamita encéndese cun pedernal e aceiro ou cando a vagoneta está nun carril activador motorizado.
To obtain the minecart and TNT, punch them while holding down the sneak key. You can't do this if the TNT was ignited.=Para obter a vagoneta e a dinamita, pégueos mentres mantén premida a tecla furtiva. Non podes facelo se a dinamita estaba acendido.
A minecart with furnace is a vehicle that travels on rails. It can propel itself with fuel.=Unha vagoneta con forno é un vehículo que circula sobre carrís. Pode impulsarse con combustible.
Place it on rails. If you give it some coal, the furnace will start burning for a long time and the minecart will be able to move itself. Punch it to get it moving.=Colócalo en raíles. Se lle dás algo de carbón, o forno comezará a arder durante moito tempo e a vagoneta poderá moverse por si mesmo. Golpea para que se mova.
To obtain the minecart and furnace, punch them while holding down the sneak key.=Para obter a vagoneta e o forno, pécheos mentres mantén premida a tecla furtiva.
Minecart with Chest=Vagoneta con cofre
Minecart with Furnace=Vagoneta con forno
Minecart with Command Block=Vagoneta con bloque de comandos
Minecart with Hopper=Vagoneta con tolva
Minecart with TNT=Vagoneta con dinamita
Place them on the ground to build your railway, the rails will automatically connect to each other and will turn into curves, T-junctions, crossings and slopes as needed.=Colócaos no chan para construír o teu ferrocarril, os carrís conectaranse automaticamente entre si e converteranse en curvas, cruces en T, cruces e pendentes segundo sexa necesario.
Rail=Carril
Rails can be used to build transport tracks for minecarts. Normal rails slightly slow down minecarts due to friction.=Os carrís pódense usar para construír vías de transporte para carros de minas. Os carrís normais ralentizan lixeiramente os carros de minas debido á fricción.
Powered Rail=Carril propulsor
Rails can be used to build transport tracks for minecarts. Powered rails are able to accelerate and brake minecarts.=Os carrís pódense usar para construír vías de transporte para carros de minas. Os carrís motorizados son capaces de acelerar e frear os carros de minas.
Without redstone power, the rail will brake minecarts. To make this rail accelerate minecarts, power it with redstone power.=Sen enerxía Pedra Vermella, o carril freará as vagonetas. Para que este carril acelere os carros de minas, aliméntalo con enerxía Pedra Vermella.
Activator Rail=Carril activador
Rails can be used to build transport tracks for minecarts. Activator rails are used to activate special minecarts.=Os carrís pódense usar para construír vías de transporte para carros de minas. Os carrís activadores utilízanse para activar vagonetas especiais.
To make this rail activate minecarts, power it with redstone power and send a minecart over this piece of rail.=Para que este carril active os carros de minas, enciéndao con enerxía Redstone e envía unha vagoneta sobre este anaco de carril.
Detector Rail=Carril detector
Rails can be used to build transport tracks for minecarts. A detector rail is able to detect a minecart above it and powers redstone mechanisms.=Os carrís pódense usar para construír vías de transporte para carros de minas. Un carril detector é capaz de detectar a vagpneta enriba dela e alimenta os mecanismos de pedra vermella.
To detect a minecart and provide redstone power, connect it to redstone trails or redstone mechanisms and send any minecart over the rail.=Para detectar unha vagoneta e proporcionar enerxía de pedra vermella, conéctao a pistas de pedra vermella ou mecanismos de pedra vermella e envía calquera vagoneta sobre o carril.
Track for minecarts=Pista para carros de mina
Speed up when powered, slow down when not powered=Acelera cando está alimentado, reduce a velocidade cando non está alimentado
Activates minecarts when powered=Activa os minecarts cando se alimenta
Emits redstone power when a minecart is detected=Emite poder de pedra vermella cando se detecta unha vagoneta
Vehicle for fast travel on rails=Vehículo para desprazamentos rápidos sobre carrís
Can be ignited by tools or powered activator rail=Pódese acender con ferramentas ou carril activador eléctrico
Sneak to dismount=Coarse para desmontar

View File

@ -18,7 +18,7 @@ mcl_mobs.invis = {}
local remove_far = true local remove_far = true
local mobs_debug = minetest.settings:get_bool("mobs_debug", false) -- Shows helpful debug info above each mob local mobs_debug = minetest.settings:get_bool("mobs_debug", false) -- Shows helpful debug info above each mob
local spawn_logging = minetest.settings:get_bool("mcl_logging_mobs_spawn", false) local spawn_logging = minetest.settings:get_bool("mcl_logging_mobs_spawn",true)
local MAPGEN_LIMIT = mcl_vars.mapgen_limit local MAPGEN_LIMIT = mcl_vars.mapgen_limit
local MAPGEN_MOB_LIMIT = MAPGEN_LIMIT - 90 local MAPGEN_MOB_LIMIT = MAPGEN_LIMIT - 90

View File

@ -1,13 +0,0 @@
# textdomain: mcl_mobs
Peaceful mode active! No monsters will spawn.=¡Modo tranquilo activo! Non aparecerá ningún monstro.
This allows you to place a single mob.=Isto permítelle colocar un único mob.
Just place it where you want the mob to appear. Animals will spawn tamed, unless you hold down the sneak key while placing. If you place this on a mob spawner, you change the mob it spawns.=Simplemente colócao onde queres que apareza o inimigo. Os animais aparecerán domesticados, a menos que manteñas premida a tecla furtiva mentres o colocas. Se colocas isto nun xerador de mob, cambias o mob que xera.
You need the “maphack” privilege to change the mob spawner.=Precisas o privilexio "maphack" para cambiar o xerador de mob.
Name Tag=Etiqueta
A name tag is an item to name a mob.=Unha etiqueta de nome é un elemento para nomear un inimigo.
Before you use the name tag, you need to set a name at an anvil. Then you can use the name tag to name a mob. This uses up the name tag.=Antes de usar a etiqueta de nome, cómpre establecer un nome nun zafra. Despois podes usar a etiqueta de nome para nomear unha multitude. Isto usa a etiqueta de nome.
Only peaceful mobs allowed!=¡Só se permiten mobs pacíficos!!
Give names to mobs=Dálle nomes aos mobs
Set name at anvil=Establecer o nome na zafra
Removes specified mobs except nametagged and tamed ones. For the second parameter, use nametagged/tamed to select only nametagged/tamed mobs, or a range to specify a maximum distance from the player.=Elimina as turbas especificadas, excepto as con nome e as domesticadas. Para o segundo parámetro, use nametagged/tamed para seleccionar só mobs nametagged/tamed, ou un intervalo para especificar unha distancia máxima do xogador.
Default usage. Clearing hostile mobs. For more options please type: /help clearmobs=Uso predeterminado. Eliminando turbas hostís. Para obter máis opcións, escriba: /help clearmobs

View File

@ -258,18 +258,6 @@ function mcl_mobs.drive(entity, moving_anim, stand_anim, can_fly, dtime)
end end
end end
-- Stop!
local s = get_sign(entity.v)
entity.v = entity.v - 0.02 * s
if s ~= get_sign(entity.v) then
entity.object:set_velocity({x = 0, y = 0, z = 0})
entity.v = 0
return
end
-- if not moving then set animation and return -- if not moving then set animation and return
if entity.v == 0 and velo.x == 0 and velo.y == 0 and velo.z == 0 then if entity.v == 0 and velo.x == 0 and velo.y == 0 and velo.z == 0 then
@ -285,6 +273,18 @@ function mcl_mobs.drive(entity, moving_anim, stand_anim, can_fly, dtime)
mcl_mobs:set_animation(entity, moving_anim) mcl_mobs:set_animation(entity, moving_anim)
end end
-- Stop!
local s = get_sign(entity.v)
entity.v = entity.v - 0.02 * s
if s ~= get_sign(entity.v) then
entity.object:set_velocity({x = 0, y = 0, z = 0})
entity.v = 0
return
end
-- enforce speed limit forward and reverse -- enforce speed limit forward and reverse
local max_spd = entity.max_speed_reverse local max_spd = entity.max_speed_reverse

View File

@ -17,13 +17,12 @@ local mt_get_biome_name = minetest.get_biome_name
local get_objects_inside_radius = minetest.get_objects_inside_radius local get_objects_inside_radius = minetest.get_objects_inside_radius
local get_connected_players = minetest.get_connected_players local get_connected_players = minetest.get_connected_players
local math_min = math.min
local math_max = math.max
local math_random = math.random local math_random = math.random
local math_floor = math.floor local math_floor = math.floor
local math_ceil = math.ceil local math_ceil = math.ceil
local math_cos = math.cos local math_cos = math.cos
local math_sin = math.sin local math_sin = math.sin
local math_round = function(x) return (x > 0) and math_floor(x + 0.5) or math_ceil(x - 0.5) end
local math_sqrt = math.sqrt local math_sqrt = math.sqrt
local vector_distance = vector.distance local vector_distance = vector.distance
@ -34,9 +33,9 @@ local table_copy = table.copy
local table_remove = table.remove local table_remove = table.remove
local pairs = pairs local pairs = pairs
local logging = minetest.settings:get_bool("mcl_logging_mobs_spawn", false) local LOGGING_ON = minetest.settings:get_bool("mcl_logging_mobs_spawning", false)
local function mcl_log (message, property) local function mcl_log (message, property)
if logging then if LOGGING_ON then
if property then if property then
message = message .. ": " .. dump(property) message = message .. ": " .. dump(property)
end end
@ -55,10 +54,8 @@ local FIND_SPAWN_POS_RETRIES = 16
local FIND_SPAWN_POS_RETRIES_SUCCESS_RESPIN = 8 local FIND_SPAWN_POS_RETRIES_SUCCESS_RESPIN = 8
local MOB_SPAWN_ZONE_INNER = 24 local MOB_SPAWN_ZONE_INNER = 24
local MOB_SPAWN_ZONE_INNER_SQ = MOB_SPAWN_ZONE_INNER^2 -- squared
local MOB_SPAWN_ZONE_MIDDLE = 32 local MOB_SPAWN_ZONE_MIDDLE = 32
local MOB_SPAWN_ZONE_OUTER = 128 local MOB_SPAWN_ZONE_OUTER = 128
local MOB_SPAWN_ZONE_OUTER_SQ = MOB_SPAWN_ZONE_OUTER^2 -- squared
-- range for mob count -- range for mob count
local MOB_CAP_INNER_RADIUS = 32 local MOB_CAP_INNER_RADIUS = 32
@ -98,6 +95,7 @@ mcl_log("Percentage of hostile spawns are group: " .. hostile_group_percentage_s
--do mobs spawn? --do mobs spawn?
local mobs_spawn = minetest.settings:get_bool("mobs_spawn", true) ~= false local mobs_spawn = minetest.settings:get_bool("mobs_spawn", true) ~= false
local spawn_protected = minetest.settings:get_bool("mobs_spawn_protected") ~= false local spawn_protected = minetest.settings:get_bool("mobs_spawn_protected") ~= false
local logging = minetest.settings:get_bool("mcl_logging_mobs_spawn",true)
-- THIS IS THE BIG LIST OF ALL BIOMES - used for programming/updating mobs -- THIS IS THE BIG LIST OF ALL BIOMES - used for programming/updating mobs
-- Also used for missing parameter -- Also used for missing parameter
@ -603,40 +601,71 @@ function mcl_mobs:spawn_specific(name, dimension, type_of_spawning, biomes, min_
spawn_dictionary[key]["check_position"] = check_position spawn_dictionary[key]["check_position"] = check_position
end end
-- Calculate the inverse of a piecewise linear function f(x). Line segments are represented as two
-- adjacent points specified as { x, f(x) }. At least 2 points are required. If there are most solutions,
-- the one with a lower x value will be chosen.
local function inverse_pwl(fx, f)
if fx < f[1][2] then
return f[1][1]
end
for i=2,#f do
local x0,fx0 = unpack(f[i-1])
local x1,fx1 = unpack(f[i ])
if fx < fx1 then
return (fx - fx0) * (x1 - x0) / (fx1 - fx0) + x0
end
end
return f[#f][1]
end
local SPAWN_DISTANCE_CDF_PWL = {
{0.000,0.00},
{0.083,0.40},
{0.416,0.75},
{1.000,1.00},
}
local two_pi = 2 * math.pi
local function get_next_mob_spawn_pos(pos) local function get_next_mob_spawn_pos(pos)
-- Select a distance such that distances closer to the player are selected much more often than -- Select a distance such that distances closer to the player are selected much more often than
-- those further away from the player. This does produce a concentration at INNER (24 blocks) -- those further away from the player.
local distance = math_random()^2 * (MOB_SPAWN_ZONE_OUTER - MOB_SPAWN_ZONE_INNER) + MOB_SPAWN_ZONE_INNER local fx = (math_random(1,10000)-1) / 10000
local x = inverse_pwl(fx, SPAWN_DISTANCE_CDF_PWL)
local distance = x * (MOB_SPAWN_ZONE_OUTER - MOB_SPAWN_ZONE_INNER) + MOB_SPAWN_ZONE_INNER
--print("Using spawn distance of "..tostring(distance).." fx="..tostring(fx)..",x="..tostring(x)) --print("Using spawn distance of "..tostring(distance).." fx="..tostring(fx)..",x="..tostring(x))
-- Choose a random direction. Rejection sampling is simple and fast (1-2 tries usually) -- TODO Floor xoff and zoff and add 0.5 so it tries to spawn in the middle of the square. Less failed attempts.
local xoff, yoff, zoff, dd -- Use spherical coordinates https://en.wikipedia.org/wiki/Spherical_coordinate_system#Cartesian_coordinates
repeat local theta = math_random() * two_pi
xoff, yoff, zoff = math_random() * 2 - 1, math_random() * 2 - 1, math_random() * 2 - 1 local phi = math_random() * two_pi
dd = xoff*xoff + yoff*yoff + zoff*zoff local xoff = math_round(distance * math_sin(theta) * math_cos(phi))
until (dd <= 1 and dd >= 1e-6) -- outside of uniform ball, retry local yoff = math_round(distance * math_cos(theta))
dd = distance / math_sqrt(dd) -- distance scaling factor local zoff = math_round(distance * math_sin(theta) * math_sin(phi))
xoff, yoff, zoff = xoff * dd, yoff * dd, zoff * dd
local goal_pos = vector.offset(pos, xoff, yoff, zoff) local goal_pos = vector.offset(pos, xoff, yoff, zoff)
if not ( math.abs(goal_pos.x) <= SPAWN_MAPGEN_LIMIT and math.abs(goal_pos.y) <= SPAWN_MAPGEN_LIMIT and math.abs(goal_pos.z) <= SPAWN_MAPGEN_LIMIT ) then if not ( math.abs(goal_pos.x) <= SPAWN_MAPGEN_LIMIT and math.abs(pos.y) <= SPAWN_MAPGEN_LIMIT and math.abs(goal_pos.z) <= SPAWN_MAPGEN_LIMIT ) then
mcl_log("Pos outside mapgen limits: " .. minetest.pos_to_string(goal_pos)) mcl_log("Pos outside mapgen limits: " .. minetest.pos_to_string(goal_pos))
return nil return nil
end end
-- Calculate upper/lower y limits -- Calculate upper/lower y limits
local d2 = xoff*xoff + zoff*zoff -- squared distance in x,z plane only local R1 = MOB_SPAWN_ZONE_OUTER
local y1 = math_sqrt( MOB_SPAWN_ZONE_OUTER_SQ - d2 ) -- absolue value of distance to outer sphere local d = vector_distance( pos, vector.new( goal_pos.x, pos.y, goal_pos.z ) ) -- distance from player to projected point on horizontal plane
local y1 = math_sqrt( R1*R1 - d*d ) -- absolue value of distance to outer sphere
local y_min, y_max local y_min
if d2 >= MOB_SPAWN_ZONE_INNER_SQ then local y_max
if d >= MOB_SPAWN_ZONE_INNER then
-- Outer region, y range has both ends on the outer sphere -- Outer region, y range has both ends on the outer sphere
y_min = pos.y - y1 y_min = pos.y - y1
y_max = pos.y + y1 y_max = pos.y + y1
else else
-- Inner region, y range spans between inner and outer spheres -- Inner region, y range spans between inner and outer spheres
local y2 = math_sqrt( MOB_SPAWN_ZONE_INNER_SQ - d2 ) local R2 = MOB_SPAWN_ZONE_INNER
if goal_pos.y > pos.y then local y2 = math_sqrt( R2*R2 - d*d )
if goal_pos.y > pos. y then
-- Upper hemisphere -- Upper hemisphere
y_min = pos.y + y2 y_min = pos.y + y2
y_max = pos.y + y1 y_max = pos.y + y1
@ -646,9 +675,16 @@ local function get_next_mob_spawn_pos(pos)
y_max = pos.y - y2 y_max = pos.y - y2
end end
end end
y_min = math_round(y_min)
y_max = math_round(y_max)
-- Limit total range of check to 32 nodes (maximum of 3 map blocks) -- Limit total range of check to 32 nodes (maximum of 3 map blocks)
y_min = math_max(math_floor(y_min), goal_pos.y - 16) if y_max > goal_pos.y + 16 then
y_max = math_min(math_ceil(y_max), goal_pos.y + 16) y_max = goal_pos.y + 16
end
if y_min < goal_pos.y - 16 then
y_min = goal_pos.y - 16
end
-- Ask engine for valid spawn locations -- Ask engine for valid spawn locations
local spawning_position_list = find_nodes_in_area_under_air( local spawning_position_list = find_nodes_in_area_under_air(
@ -961,7 +997,7 @@ if mobs_spawn then
mob_total_wide = 0 mob_total_wide = 0
end end
local cap_space_wide = math_max(type_cap - mob_total_wide, 0) local cap_space_wide = math.max(type_cap - mob_total_wide, 0)
mcl_log("mob_type", mob_type) mcl_log("mob_type", mob_type)
mcl_log("cap_space_wide", cap_space_wide) mcl_log("cap_space_wide", cap_space_wide)
@ -969,10 +1005,10 @@ if mobs_spawn then
local cap_space_available = 0 local cap_space_available = 0
if mob_type == "hostile" then if mob_type == "hostile" then
mcl_log("cap_space_global", cap_space_hostile) mcl_log("cap_space_global", cap_space_hostile)
cap_space_available = math_min(cap_space_hostile, cap_space_wide) cap_space_available = math.min(cap_space_hostile, cap_space_wide)
else else
mcl_log("cap_space_global", cap_space_non_hostile) mcl_log("cap_space_global", cap_space_non_hostile)
cap_space_available = math_min(cap_space_non_hostile, cap_space_wide) cap_space_available = math.min(cap_space_non_hostile, cap_space_wide)
end end
local mob_total_close = mob_counts_close[mob_type] local mob_total_close = mob_counts_close[mob_type]
@ -981,8 +1017,8 @@ if mobs_spawn then
mob_total_close = 0 mob_total_close = 0
end end
local cap_space_close = math_max(close_zone_cap - mob_total_close, 0) local cap_space_close = math.max(close_zone_cap - mob_total_close, 0)
cap_space_available = math_min(cap_space_available, cap_space_close) cap_space_available = math.min(cap_space_available, cap_space_close)
mcl_log("cap_space_close", cap_space_close) mcl_log("cap_space_close", cap_space_close)
mcl_log("cap_space_available", cap_space_available) mcl_log("cap_space_available", cap_space_available)
@ -1109,7 +1145,7 @@ if mobs_spawn then
local amount_to_spawn = math.random(group_min, spawn_in_group) local amount_to_spawn = math.random(group_min, spawn_in_group)
mcl_log("Spawning quantity: " .. amount_to_spawn) mcl_log("Spawning quantity: " .. amount_to_spawn)
amount_to_spawn = math_min(amount_to_spawn, cap_space_available) amount_to_spawn = math.min(amount_to_spawn, cap_space_available)
mcl_log("throttled spawning quantity: " .. amount_to_spawn) mcl_log("throttled spawning quantity: " .. amount_to_spawn)
if logging then if logging then
@ -1160,8 +1196,8 @@ if mobs_spawn then
local players = get_connected_players() local players = get_connected_players()
local total_mobs, total_non_hostile, total_hostile = count_mobs_total_cap() local total_mobs, total_non_hostile, total_hostile = count_mobs_total_cap()
local cap_space_hostile = math_max(mob_cap.global_hostile - total_hostile, 0) local cap_space_hostile = math.max(mob_cap.global_hostile - total_hostile, 0)
local cap_space_non_hostile = math_max(mob_cap.global_non_hostile - total_non_hostile, 0) local cap_space_non_hostile = math.max(mob_cap.global_non_hostile - total_non_hostile, 0)
mcl_log("global cap_space_hostile", cap_space_hostile) mcl_log("global cap_space_hostile", cap_space_hostile)
mcl_log("global cap_space_non_hostile", cap_space_non_hostile) mcl_log("global cap_space_non_hostile", cap_space_non_hostile)

View File

@ -1,2 +0,0 @@
# textdomain:mcl_paintings
Painting=Pintura

View File

@ -4,17 +4,21 @@
local S = minetest.get_translator("mobs_mc") local S = minetest.get_translator("mobs_mc")
local BEAM_CHECK_FREQUENCY = 1 local BEAM_CHECK_FREQUENCY = 2
local POS_CHECK_FREQUENCY = 15 local POS_CHECK_FREQUENCY = 15
local HEAL_INTERVAL = 1 local HEAL_AMMOUNT = 37
local HEAL_AMOUNT = 2
local function heal(self)
local o = self.object
self.health = math.min(self.hp_max,self.health + HEAL_AMMOUNT)
end
local function check_beam(self) local function check_beam(self)
for _, obj in ipairs(minetest.get_objects_inside_radius(self.object:get_pos(), 80)) do for _, obj in ipairs(minetest.get_objects_inside_radius(self.object:get_pos(), 80)) do
local luaentity = obj:get_luaentity() local luaentity = obj:get_luaentity()
if luaentity and luaentity.name == "mcl_end:crystal" then if luaentity and luaentity.name == "mcl_end:crystal" then
if luaentity.beam then if luaentity.beam then
if luaentity.beam == self.beam then if luaentity.beam == self.beam then
heal(self)
break break
end end
else else
@ -102,6 +106,7 @@ mcl_mobs.register_mob("mobs_mc:enderdragon", {
}, },
ignores_nametag = true, ignores_nametag = true,
do_custom = function(self,dtime) do_custom = function(self,dtime)
mcl_bossbars.update_boss(self.object, "Ender Dragon", "light_purple")
if self._pos_timer == nil or self._pos_timer > POS_CHECK_FREQUENCY then if self._pos_timer == nil or self._pos_timer > POS_CHECK_FREQUENCY then
self._pos_timer = 0 self._pos_timer = 0
check_pos(self) check_pos(self)
@ -110,20 +115,8 @@ mcl_mobs.register_mob("mobs_mc:enderdragon", {
self._beam_timer = 0 self._beam_timer = 0
check_beam(self) check_beam(self)
end end
self._beam_timer = self._beam_timer + dtime self._beam_timer = self._beam_timer + dtime
self._pos_timer = self._pos_timer + dtime self._pos_timer = self._pos_timer + dtime
if self.beam ~= nil then
-- heal
self._heal_timer = (self._heal_timer or 0) + dtime
if self._heal_timer > HEAL_INTERVAL then
self.health = math.min(self.hp_max,self.health + HEAL_AMOUNT)
self._heal_timer = self._heal_timer - HEAL_INTERVAL
end
end
mcl_bossbars.update_boss(self.object, "Ender Dragon", "light_purple")
end, end,
on_die = function(self, pos, cmi_cause) on_die = function(self, pos, cmi_cause)
if self._portal_pos then if self._portal_pos then

View File

@ -83,8 +83,8 @@ mcl_mobs.register_mob("mobs_mc:iron_golem", {
stand_speed = 15, walk_speed = 15, run_speed = 25, punch_speed = 15, stand_speed = 15, walk_speed = 15, run_speed = 25, punch_speed = 15,
stand_start = 0, stand_end = 0, stand_start = 0, stand_end = 0,
walk_start = 0, walk_end = 40, walk_start = 0, walk_end = 40,
run_start = 40, run_end = 80, run_start = 0, run_end = 40,
punch_start = 80, punch_end = 90, punch_start = 40, punch_end = 50,
}, },
jump = true, jump = true,
do_custom = function(self, dtime) do_custom = function(self, dtime)

View File

@ -1,83 +0,0 @@
# textdomain: mobs_mc
Agent=Axente
Axolotl=Axolotl
Bat=Morcego
Blaze=Blaze
Chicken=polo
Cow=vaca
Mooshroom=Mooshroom
Stalker=Acosador
Ender Dragon=Ender Dragon
Enderman=Enderman
Endermite=Endermita
Ghast=Ghast
Elder Guardian=Gardián Ancián
Guardian=Gardián
Horse=Cabalo
Skeleton Horse=Cabalo esqueleto
Zombie Horse=Cabalo zombi
Donkey=Burro
Mule=Mula
Iron Golem=Golem de ferro
Llama=Chama
Ocelot=Ocelote
Cat=gato
Parrot=Loro
Pig=Porco
Polar Bear=Oso polar
Rabbit=Coello
Killer Bunny=Coello asasino
Sheep=ovella
Shulker=Shulker
Silverfish=Peixe de prata
Skeleton=Esqueleto
Stray=Esqueleto
Wither Skeleton=Esqueleto de Wither
Magma Cube=Cubo de magma
Slime=Limo
Snow Golem=Golem de neve
Spider=Araña
Cave Spider=Araña caverna
Squid=Calamar
Vex=Vex
Evoker=Evocador
Illusioner=Ilusionista
Villager=Aldeano
Vindicator=Vindicador
Zombie Villager=Aldeabo Zombi
Witch=Bruxa
Wither=murchar
Wolf=Lobo
Husk=casca
Baby Husk=Bebé Husk
Zombie=Zombi
Baby Zombie=Bebé zombi
Piglin=Piglin
Baby Piglin=Bebé Piglin
Zombie Piglin=Zombie Piglin
Baby Zombie Piglin=Bebé Zombie Piglin
Sword Piglin=Espada Piglin
Piglin Brute=Piglin Brute
Farmer=Labrego
Fisherman=Pescador
Fletcher=Fletcher
Shepherd=Pastor
Librarian=Bibliotecario
Cartographer=Cartógrafo
Armorer=Armeiro
Leatherworker=Coiro
Butcher=carniceiro
Weapon Smith=Arma Smith
Tool Smith=Ferramenta Smith
Cleric=Clérigo
Nitwit=Nitwit
Cod=Cod
Salmon=salmón
Dolphin=Golfiño
Pillager=Pillador
Tropical fish=
Hoglin=Golfiño
Baby hoglin=Baby hoglin
Zoglin=Baby hoglin
Strider=Strider
Glow Squid=Calamar brillante

View File

@ -1,3 +0,0 @@
# textdomain: lightning
Let lightning strike at the specified position or player.No parameter will strike yourself.=Deixa caer un raio na posición ou no xogador especificado.Ningún parámetro vai caer a ti mesmo.
No position specified and unknown player=Sen posición especificada e xogador descoñecido

View File

@ -1,2 +0,0 @@
# textdomain: mcl_raids
Ominous Banner=Estandarte Ameazador

View File

@ -1,3 +0,0 @@
# textdomain: mcl_void_damage
The void is off-limits to you!=¡O baleiro está fóra dos límites para ti!
@1 fell into the endless void.=@1 caeu no baleiro sen fin.

View File

@ -1,8 +0,0 @@
# textdomain: mcl_weather
Gives ability to control weather=Dá a capacidade de controlar o tempo
Changes the weather to the specified parameter.=Cambia o tempo ao parámetro especificado.
Error: No weather specified.=Erro: non se especificou tempo.
Error: Invalid parameters.=Erro: parámetros non válidos.
Error: Duration can't be less than 1 second.=Erro: a duración non pode ser inferior a 1 segundo.
Error: Invalid weather specified. Use “clear”, “rain”, “snow” or “thunder”.=Erro: tempo especificado non válido. Use "claro", "choiva", "neve" ou "trono".
Toggles between clear weather and weather with downfall (randomly rain, thunderstorm or snow)=Alterna entre o tempo claro e o tempo con caída (choiva, treboada ou neve aleatoriamente)

View File

@ -10,10 +10,6 @@ mcl_weather.thunder = {
init_done = false, init_done = false,
} }
lightning.register_on_strike(function(pos, pos2, objects)
if not mcl_weather.has_rain(pos) then return nil, true end
end)
minetest.register_globalstep(function(dtime) minetest.register_globalstep(function(dtime)
if mcl_weather.get_weather() ~= "thunder" then if mcl_weather.get_weather() ~= "thunder" then
return false return false

View File

@ -1,51 +0,0 @@
# textdomain:doc
<=
>=
Access to the requested entry has been denied; this entry is secret. You may unlock access by progressing in the game. Figure out on your own how to unlock this entry.=O acceso á entrada solicitada foi denegado; esta entrada é secreta. Podes desbloquear o acceso progresando no xogo. Descubra por conta propia como desbloquear esta entrada.
All entries read.=Todas as entradas lidas.
All help entries revealed!=¡Reveláronse todas as entradas de axuda!
All help entries are already revealed.=Todas as entradas de axuda xa están reveladas.
Allows you to reveal all hidden help entries with /help_reveal=Permítelle revelar todas as entradas de axuda ocultas con /help_reveal
Category list=Lista de Categorias
Currently all entries in this category are hidden from you.\\nUnlock new entries by progressing in the game.=Actualmente todas as entradas desta categoría están ocultas para ti.
Unlock new entries by progressing in the game.=Desbloquea novas entradas progresando no xogo.
Help=Axuda
Entry=Entrada
Entry list=Lista de Entradas
Error: Access denied.=Erro: acceso denegado.
Error: No help available.=Erro: Non hai axuda dispoñible.
Go to category list=Ir á lista de categorías
Go to entry list=Ir á lista de entradas
Help > @1=Axuda > @1
Help > @1 > @2=Axuda > @1 > @2
Help > @1 > (No Entry)=Axuda > @1 > (Sen entrada)
Help > (No Category)=Axuda > (Sen categoría)
Hidden entries: @1=Entradas ocultas: @1
Nameless entry (@1)=Entrada sem nome (@1)
New entries: @1=Novas entradas: (@1)
New help entry unlocked: @1 > @2=Nova entrada de axuda desbloqueada: @1 > @2
No categories have been registered, but they are required to provide help.=Non se rexistraron categorías, pero son necesarias para proporcionar axuda.
The Documentation System [doc] does not come with help contents on its own, it needs additional mods to add help content. Please make sure such mods are enabled on for this world, and try again.=O sistema de documentación [doc] non inclúe contidos de axuda por si só, necesita modificacións adicionais para engadir contido de axuda. Asegúrate de que estes modificacións estean activadas para este mundo e téntao de novo.
Number of entries: @1=Número de entradas: @1
OK=Ben
Open a window providing help entries about Minetest and more=Abre unha ventá que ofrece entradas de axuda sobre Minetest e máis
Please select a category you wish to learn more about:=Seleccione unha categoría sobre a que desexa obter máis información:
Recommended mods: doc_basics, doc_items, doc_identifier, doc_encyclopedia.=Modificacións recomendadas: doc_basics, doc_items, doc_identifier, doc_encyclopedia
Reveal all hidden help entries to you=Mostrarche todas as entradas de axuda ocultas
Show entry=Mostrar entrada
Show category=Mostrar categoría
Show next entry=Mostrar a seguinte entrada
Show previous entry=Mostrar entrada anterior
This category does not have any entries.=Esta categoría non ten entradas.
This category has the following entries:=Esta categoría ten as seguintes entradas:
This category is empty.=Esta categoría está baleira.
This is the help.=Esta é a axuda.
You haven't chosen a category yet. Please choose one in the category list first.=Aínda non escolliches unha categoría. Escolla primeiro un na lista de categorías.
You haven't chosen an entry yet. Please choose one in the entry list first.=Aínda non escolliches ningunha entrada. Escolla primeiro un na lista de entradas.
Collection of help texts=Colección de textos de axuda
Notify me when new help is available=Notificarme cando hai unha nova axuda dispoñible
Play notification sound when new help is available=Reproduce un son de notificación cando hai unha nova axuda dispoñible
Show previous image=Mostrar imaxe anterior
Show previous gallery page=Mostrar a páxina anterior da galería
Show next image=Mostrar a seguinte imaxe
Show next gallery page=Mostrar a seguinte páxina da galería

View File

@ -1,18 +0,0 @@
# textdomain:doc_identifier
Error: This node, item or object is undefined. This is always an error.=Erro: este nodo, elemento ou obxecto non está definido. Isto sempre é un erro.
This can happen for the following reasons:=Isto pode ocorrer polos seguintes motivos:
• The mod which is required for it is not enabled=• O mod que é necesario para iso non está activado
• The author of the game or a mod has made a mistake=• O autor do xogo ou un mod cometeu un erro
It appears to originate from the mod “@1”, which is enabled.=Parece orixinarse do mod "@1", que está activado.
It appears to originate from the mod “@1”, which is not enabled!=¡Parece orixinarse do mod "@1", que non está activado!
Its identifier is “@1”.=O seu identificador é “@1”.
Lookup Tool=Ferramenta de busca
No help entry for this block could be found.=Non se puido atopar ningunha entrada de axuda para este bloque.
No help entry for this item could be found.=Non se puido atopar ningunha entrada de axuda para este elemento.
No help entry for this object could be found.=Non se puido atopar ningunha entrada de axuda para este obxecto.
OK=Aceptar
Punch any block, item or other thing about you wish to learn more about. This will open up the appropriate help entry. The tool comes in two modes which are changed by using. In liquid mode, this tool points to liquids as well while in solid mode this is not the case.=Perfora calquera bloque, elemento ou outra cousa sobre o que queiras saber máis. Isto abrirá a entrada de axuda adecuada. A ferramenta vén en dous modos que se cambian usando. No modo líquido, esta ferramenta tamén apunta a líquidos, mentres que no modo sólido este non é o caso.
This block cannot be identified because the world has not materialized at this point yet. Try again in a few seconds.=Non se pode identificar este bloque porque o mundo aínda non se materializou neste momento. Téntao de novo nuns segundos.
This is a player.=Este é un xogador.
This useful little helper can be used to quickly learn more about about one's closer environment. It identifies and analyzes blocks, items and other things and it shows extensive information about the thing on which it is used.=Este pequeno axudante útil pódese usar para aprender rapidamente máis sobre o propio entorno máis próximo. Identifica e analiza bloques, elementos e outras cousas e mostra unha ampla información sobre a cousa na que se usa.
Show help for pointed thing=Mostrar axuda para cousa apuntada

View File

@ -1,143 +0,0 @@
# textdomain:doc_items
Using it as fuel turns it into: @1.= Usalo como combustible convérteo en: @1.
@1 seconds=@1 segundo
# Item count times item name
%@1×@2=%@1×@2
# Itemname (25%)
@1 (@2%)=@1 (@2%)
# Itemname (<0.5%)
@1 (<0.5%)=@1 (<0.5%)
# Itemname (ca. 25%)
@1 (ca. @2%)=@1 (ca. @2%)
# List separator (e.g. “one, two, three”)
, =,
# Final list separator (e.g. “One, two and three”)
and = e
1 second=1 segundo
A transparent block, basically empty space. It is usually left behind after digging something.=Un bloque transparente, basicamente espazo baleiro. Adoita quedar atrás despois de cavar algo.
Air=Aire
Blocks=Bloques
Building another block at this block will place it inside and replace it.=Construír outro bloque neste bloque colocarao dentro e substituirase.
Building this block is completely silent.=Construír este bloque é completamente silencioso.
Collidable: @1=Colisible: @1
Description: @1=Descrición: @1
Falling blocks can go through this block; they destroy it when doing so.=Os bloques que caen poden pasar por este bloque; destrúeno ao facelo.
Full punch interval: @1 s=Intervalo completo de golpe: @1 s
Hand=Man
Hold it in your hand, then leftclick to eat it.=Mantéñao na man e, a continuación, prema co botón esquerdo para comelo.
Hold it in your hand, then leftclick to eat it. But why would you want to do this?=Mantéñao na man e, a continuación, prema co botón esquerdo para comelo. ¿Pero por que queres facer isto?
Item reference of all wieldable tools and weapons=Referencia do elemento de todas as ferramentas e armas manexables
Item reference of blocks and other things which are capable of occupying space=Referencia de elementos de bloques e outras cousas que son capaces de ocupar espazo
Item reference of items which are neither blocks, tools or weapons (esp. crafting items)=Referencia de elementos de elementos que non son nin bloques, ferramentas nin armas (especialmente artigos de elaboración)
Liquids can flow into this block and destroy it.=Os líquidos poden fluír neste bloque e destruílo.
Maximum stack size: @1=Tamaño máximo da pila: @1
Mining level: @1=Nivel de minería: @1
Mining ratings:=Clasificación mineira:
• @1, rating @2: @3 s - @4 s=• @1, clasificación @2: @3 s - @4 s
• @1, rating @2: @3 s=• @1, clasificación @2: @3 s
Mining times:=Tempos de minería:
Mining this block is completely silent.=A minería deste bloque é completamente silenciosa.
Miscellaneous items=Elementos varios
No=Non
Pointable: No=Puntual: Non
Pointable: Only by special items=Puntable: só por elementos especiais
Pointable: Yes=Puntual: Si
Punches with this block don't work as usual; melee combat and mining are either not possible or work differently.=Os golpes con este bloque non funcionan como de costume; o combate corpo a corpo e a minería non son posibles ou funcionan de forma diferente.
Punches with this item don't work as usual; melee combat and mining are either not possible or work differently.=Os golpes con este elemento non funcionan como de costume; o combate corpo a corpo e a minería non son posibles ou funcionan de forma diferente.
Punches with this tool don't work as usual; melee combat and mining are either not possible or work differently.=Os golpes con esta ferramenta non funcionan como de costume; o combate corpo a corpo e a minería non son posibles ou funcionan de forma diferente.
Range: @1=Alcance: @1
# Range: <Hand> (<Range>)
Range: @1 (@2)=Alcance: @1 (@2)
Range: 4=Alcance: 4
# Rating used for digging times
Rating @1=Classificación @1
# @1 is minimal rating, @2 is maximum rating
Rating @1-@2=Classificación @1-@2
The fall damage on this block is increased by @1%.=O dano por caída neste bloque aumenta nun @1%..
The fall damage on this block is reduced by @1%.=O dano por caída neste bloque redúcese nun @1%.
This block allows light to propagate with a small loss of brightness, and sunlight can even go through losslessly.=Este bloque permite que a luz se propague cunha pequena perda de brillo, e incluso a luz solar pode pasar sen perdas.
This block allows light to propagate with a small loss of brightness.=Este bloque permite que a luz se propague cunha pequena perda de brillo.
This block allows sunlight to propagate without loss in brightness.=Este bloque permite que a luz solar se propague sen perda de brillo.
This block belongs to the @1 group.=Este bloque pertence ao grupo @1.
This block belongs to these groups: @1.=Este bloque pertence a estes grupos: @1.
This block can be climbed.=Este bloque pódese escalar.
This block can be destroyed by any mining tool immediately.=Este bloque pode ser destruído por calquera ferramenta de minería inmediatamente.
This block can be destroyed by any mining tool in half a second.=Este bloque pode ser destruído por calquera ferramenta de minería en medio segundo.
This block can be mined by any mining tool immediately.=Este bloque pode ser minado por calquera ferramenta de minería inmediatamente.
This block can be mined by any mining tool in half a second.=Este bloque pode ser extraído por calquera ferramenta de minería en medio segundo.
This block can be mined by mining tools which match any of the following mining ratings and its toughness level.=Este bloque pódese extraer mediante ferramentas de minería que coincidan con calquera das seguintes clasificacións de minería e o seu nivel de dureza.
This block can not be destroyed by ordinary mining tools.=Este bloque non pode ser destruído por ferramentas de minería comúns.
This block can not be mined by ordinary mining tools.=Este bloque non pode ser extraído por ferramentas de minería comúns.
This block can serve as a smelting fuel with a burning time of @1.=Este bloque pode servir como combustible de fundición cun tempo de combustión de @1.
This block causes a damage of @1 hit point per second.=Este bloque causa un dano de @1 punto de golpe por segundo.
This block causes a damage of @1 hit points per second.=Este bloque causa un dano de @1 puntos de vida por segundo.
This block connects to blocks of the @1 group.=Este bloque conéctase a bloques do grupo @1.
This block connects to blocks of the following groups: @1.=Este bloque conéctase a bloques dos seguintes grupos: @1.
This block connects to these blocks: @1.=Este bloque conéctase a estes bloques: @1.
This block connects to this block: @1.=Este bloque conéctase a este bloque: @1.
This block decreases your breath and causes a drowning damage of @1 hit point every 2 seconds.=Este bloque diminúe a túa respiración e causa un dano por afogamento de @1 punto de golpe cada 2 segundos.
This block decreases your breath and causes a drowning damage of @1 hit points every 2 seconds.=Este bloque diminúe a túa respiración e causa un dano por afogamento de @1 punto de golpe cada 2 segundos..
This block is a light source with a light level of @1.=Este bloque é unha fonte de luz cun nivel de luz de @1.
This block glows faintly with a light level of @1.=Este bloque brilla débilmente cun nivel de luz de @1.
This block is a building block for creating various buildings.=Este bloque é un bloque para crear varios edificios.
This block is a liquid with these properties:=Este bloque é un líquido con estas propiedades:
This block is affected by gravity and can fall.=Este bloque está afectado pola gravidade e pode caer.
This block is completely silent when mined or built.=Este bloque é completamente silencioso cando se extrae ou se constrúe.
This block is completely silent when walked on, mined or built.=Este bloque é completamente silencioso cando se pisa, se extrae ou se constrúe.
This block is destroyed when a falling block ends up inside it.=Este bloque destrúese cando un bloque que cae acaba dentro del.
This block negates all fall damage.=Este bloque anula todos os danos por caída.
This block points to liquids.=Este bloque apunta a líquidos.
This block will drop as an item when a falling block ends up inside it.=Este bloque caerá como elemento cando un bloque caendo acabe dentro del.
This block will drop as an item when it is not attached to a surrounding block.=Este bloque caerá como elemento cando non estea ligado a un bloque circundante.
This block will drop as an item when no collidable block is below it.=Este bloque caerá como elemento cando ningún bloque colizable estea debaixo del.
This block will drop the following items when mined: %s.=Este bloque eliminará os seguintes elementos cando se extrae: @1.
This block will drop the following when mined: @1×@2.=Este bloque eliminará o seguinte cando se extrae: @1×@2.
This block will drop the following when mined: @1.=Este bloque eliminará o seguinte cando se extrae: @1.
This block will drop the following when mined: %s.=Este bloque eliminará o seguinte cando se extrae: @1.
This block will make you bounce off with an elasticity of @1%.=Este bloque farache rebotar cunha elasticidade de @1%.
This block will randomly drop one of the following when mined: %s.=Este bloque soltará aleatoriamente un dos seguintes cando se extrae: @1.
This block will randomly drop up to %d drops of the following possible drops when mined: %s.=Este bloque caerá aleatoriamente ata @1 gotas das seguintes posibles caídas cando se extrae: @2.
This block won't drop anything when mined.=Este bloque non soltará nada cando se extrae.
This is a decorational block.=Este é un bloque decorativo.
This is a melee weapon which deals damage by punching.=Esta é unha arma corpo a corpo que fai dano ao golpear.
Maximum damage per hit:=Dano máximo por golpe:
This item belongs to the @1 group.=Este elemento pertence ao grupo @1.
This item belongs to these groups: @1.=Este elemento pertence a estes grupos: @1.
This item can serve as a smelting fuel with a burning time of @1.=Este elemento pode servir como combustible de fundición cun tempo de combustión de @1.
This item is primarily used for crafting other items.=Este elemento úsase principalmente para elaborar outros elementos.
This item points to liquids.=Este elemento apunta a líquidos.
This tool belongs to the @1 group.=Esta ferramenta pertence ao grupo @1.
This tool belongs to these groups: @1.=Esta ferramenta pertence a estes grupos: @1.
This tool can serve as a smelting fuel with a burning time of @1.=Esta ferramenta pode servir como combustible de fundición cun tempo de combustión de @1.
This tool is capable of mining.=Esta ferramenta é capaz de minar.
Maximum toughness levels:=Niveis máximos de tenacidade:
This tool points to liquids.=Esta ferramenta apunta a líquidos.
Tools and weapons=Ferramentas e armas
Unknown Node=Nodo descoñecido
Usage help: @1=Como usar: @1
Walking on this block is completely silent.=Camiñar por este bloque é completamente silencioso.
Whenever you are not wielding any item, you use the hand which acts as a tool with its own capabilities. When you are wielding an item which is not a mining tool or a weapon it will behave as if it would be the hand.=Sempre que non manexas ningún elemento, utilizas a man que actúa como unha ferramenta coas súas propias capacidades. Cando manexas un elemento que non é unha ferramenta de minería ou unha arma, comportarase coma se fose a man.
Yes=Si
You can not jump while standing on this block.=Non podes saltar mentres estás de pé neste bloque.
any level=calquera nivel
level 0=nível 0
level 0-@1=nivel 0-@1
unknown=descoñecido
Unknown item (@1)=Elemento descoñecido (@1)
• @1: @2=
• @1: @2 HP=
• @1: @2, @3=
• Flowing range: @1=• Rango de fluxo: @1
• No flowing=• Non fluír
• Not renewable=• Non renovable
• Renewable=• • Renovable
• Viscosity: @1=• Viscosidade: @1
Itemstring: "@1"=Cadea de elementos: "@1"
Durability: @1 uses=Durabilidade: @1 usos
Durability: @1=Durabilidade: @1
Durability:=Durabilidade:
• @1, level @2: @3 uses=• @1, nivel @2: @3 usos
• @1, level @2: Unlimited=• @1, nivel @2: ilimitado
This block's rotation is affected by the way you place it: Place it on the floor or ceiling for a vertical orientation; place it at the side for a horizontal orientation. Sneaking while placing it leads to a perpendicular orientation instead.=A rotación deste bloque vese afectada pola forma de colocalo: colócao no chan ou no teito para unha orientación vertical; colócao ao lado para unha orientación horizontal. Colarse mentres o coloca leva a unha orientación perpendicular no seu lugar.
Toughness level: @1=Nivel de tenacidade: @1
This block is slippery.=Este bloque é esvaradío.

View File

@ -1,37 +0,0 @@
# textdomain: craftguide
Any shulker box=Calquera caixa de shulker
Any wool=Calquera la
Any wood planks=Calquera táboa de madeira
Any wood=Calquera madeira
Any sand=Calquera area
Any normal sandstone=Calquera arenisca normal
Any red sandstone=Calquera arenisca vermella
Any carpet=Calquera alfombra
Any dye=Calquera tintura
Any water bucket=Calquera balde de auga
Any flower=Calquera flor
Any mushroom=Calquera cogomelo
Any wooden slab=Calquera lousa de madeira
Any wooden stairs=Calquera escaleira de madeira
Any coal=Calquera carbón
Any kind of quartz block=Calquera tipo de bloque de cuarzo
Any kind of purpur block=Calquera tipo de bloque púrpura
Any stone bricks=Calquera ladrillo de pedra
Any stick=Calquera pau
Any item belonging to the @1 group=Calquera elemento pertencente ao grupo @1
Any item belonging to the groups: @1=Calquera elemento pertencente aos grupos: @1
Search=Busca
Reset=Restablecer
Previous page=Páxina anterior
Next page=Páxina seguinte
Usage @1 of @2=Uso @1 de @2
Recipe @1 of @2=Receita @1 de @2
Burning time: @1=Tempo de combustión: @1
Cooking time: @1=Tempo de cocción: @1
Recipe is too big to be displayed (@1×@2)=A receita é demasiado grande para mostrarse (@1×@2)
Shapeless=Sen forma
Cooking=Cociñar
Increase window size=Aumentar o tamaño da xanela
Decrease window size=Diminuír o tamaño da xanela
No item to show=Non hai elemento que mostrar
Collect items to reveal more recipes=Recolle elementos para revelar máis receitas

View File

@ -1,80 +0,0 @@
# textdomain: mcl_doc
Water can flow into this block and cause it to drop as an item.=A auga pode fluír neste bloque e facer que caia como elemento.
This block can be turned into dirt with a hoe.=Este bloque pódese converter en terra cunha aixada.
This block can be turned into farmland with a hoe.=Este bloque pódese converter en terra de cultivo cunha aixada.
This block can be turned into grass path with a shovel.=Este bloque pódese converter en camiño de herba cunha pa.
This block acts as a soil for all saplings.=Este bloque actúa como chan para todos os mudos.
This block acts as a soil for some saplings.=Este bloque fai de chan para algunhas mudas.
Sugar canes will grow on this block.=Neste bloque crecerán canas de azucre.
Nether wart will grow on this block.=A verruga inferior crecerá neste bloque.
This block quickly decays when there is no wood block of any species within a distance of @1. When decaying, it disappears and may drop one of its regular drops. The block does not decay when the block has been placed by a player.=Este bloque decae rapidamente cando non hai un bloque de madeira de ningunha especie a unha distancia de @1. Cando se deteriora, desaparece e pode caer unha das súas gotas habituais. O bloque non decae cando o bloqueo foi colocado por un xogador.
This block quickly decays and disappears when there is no wood block of any species within a distance of @1. The block does not decay when the block has been placed by a player.=Este bloque decae rapidamente e desaparece cando non hai un bloque de madeira de ningunha especie a unha distancia de @1. O bloque non decae cando o bloqueo foi colocado por un xogador.
This plant can only grow on grass blocks and dirt. To survive, it needs to have an unobstructed view to the sky above or be exposed to a light level of 8 or higher.=Esta planta só pode crecer en bloques de herba e terra. Para sobrevivir, ten que ter unha vista sen obstáculos do ceo enriba ou estar exposto a un nivel de luz de 8 ou superior.
This plant can grow on grass blocks, podzol, dirt and coarse dirt. To survive, it needs to have an unobstructed view to the sky above or be exposed to a light level of 8 or higher.=Esta planta pode crecer en bloques de herba, podzol, sucidade e sucidade grosa. Para sobrevivir, ten que ter unha vista sen obstáculos do ceo enriba ou estar exposto a un nivel de luz de 8 ou superior.
This block is flammable.=Este bloque é inflamable.
This block destroys any item it touches.=Este bloque destrúe calquera elemento que toque.
To eat it, wield it, then rightclick.=Para comelo, mándao e despois fai clic co botón dereito.
You can eat this even when your hunger bar is full.=Podes comer isto mesmo cando a túa barra de fame estea chea.
You cannot eat this when your hunger bar is full.=Non podes comer isto cando a túa barra de fame estea chea.
To drink it, wield it, then rightclick.=Para bebelo, mándao e despois fai clic co botón dereito.
You cannot drink this when your hunger bar is full.=Non podes beber isto cando a túa barra de fame estea chea.
To consume it, wield it, then rightclick.=Para consumilo, úsao e, a continuación, fai clic co botón dereito
You cannot consume this when your hunger bar is full.=Non podes consumir isto cando a túa barra de fame estea chea.
You have to wait for about 2 seconds before you can eat or drink again.=Ten que esperar uns 2 segundos antes de poder comer ou beber de novo.
Hunger points restored: @1=Puntos de fame restaurados: @1
Saturation points restored: @1%.1f=Puntos de saturación restaurados: @1%.1f
This item can be repaired at an anvil with: @1.=Este elemento pódese reparar nunha zafra con: @1.
This item can be repaired at an anvil with any wooden planks.=Este elemento pódese reparar nunha zafra con calquera táboa de madeira.
This item can be repaired at an anvil with any item in the “@1” group.=Este elemento pódese reparar nunha zafra con calquera elemento do grupo "@1".
This item cannot be renamed at an anvil.=Este elemento non se pode renomear nunha zafra.
This block crushes any block it falls into.=Este bloque esmaga calquera bloque no que caia.
When this block falls deeper than 1 block, it causes damage to any player it hits. The damage dealt is B×22 hit points with B @= number of blocks fallen. The damage can never be more than 40 HP.=Cando este bloque cae máis de 1 bloque, causa danos a calquera xogador ao que choque. O dano causado é de B×22 puntos de golpe con B @= número de bloques caídos. O dano nunca pode ser superior a 40 HP.
Diamond Pickaxe=Pico de diamante
Iron Pickaxe=Pico de ferro
Stone Pickaxe=Pico de pedra
Golden Pickaxe=Pico de Ouro
Wooden Pickaxe=Pico de Ouro
Diamond Axe=Machado de diamante
Iron Axe=Machado de ferro
Stone Axe=Machado de pedra
Golden Axe=Machado de ouro
Wooden Axe=Machado de madeira
Diamond Shovel=Pala de diamante
Iron Shovel=Pala de ferro
Stone Shovel=Pala de pedra
Golden Shovel=Pala de ouro
Wooden Shovel=Pala de madeira
This block can be mined by any tool instantly.=Este bloque pode ser extraído por calquera ferramenta ao instante.
This block can be mined by:=Este bloque pódese extraer mediante:
Hardness: ∞=Dureza: ∞
Hardness: @1=Dureza: @1
This block will not be destroyed by TNT explosions.=Este bloque non será destruído polas explosións de Dinamita.
This block drops itself when mined by shears.=Este bloque cae por si mesmo cando é extraído por tesoiras.
@1×@2=@1×@2
This blocks drops the following when mined by shears: @1=Este bloque elimina o seguinte cando se extrae con tesoiras: @1
, =,
• Shears=• Tesoiras
• Sword=• Espada
• Hand=• Man
This is a melee weapon which deals damage by punching.=Esta é unha arma corpo a corpo que fai dano ao golpear.
Maximum damage: @1 HP=Dano máximo: @1 HP
Full punch interval: @1 s=Intervalo de perforación total: @1 s
This tool is capable of mining.=Esta ferramenta é capaz de minar.
Mining speed: @1=Velocidade de minería: @1
Painfully slow=Dolorosamente lento
Very slow=Moi lento
Slow=Lento
Fast=Rápido
Very fast=Moi rápido
Extremely fast=Extremadamente rápido
Instantaneous=Instantáneo
@1 uses=@1 usos
Unlimited uses=Usos ilimitados
Block breaking strength: @1=Resistencia á rotura do bloque: @1
Durability: @1=Durabilidade: @1
Armor points: @1=Puntos de armadura: @1
Armor durability: @1=Durabilidade da armadura: @1
It can be worn on the head.=Pódese levar na cabeza.
It can be worn on the torso.=Pódese levar no torso.
It can be worn on the legs.=Pódese levar nas pernas.
It can be worn on the feet.=Pódese levar nos pés.

View File

@ -1,511 +0,0 @@
# textdomain: mcl_doc_basics
Basics=Fundamentos
Everything you need to know about Minetest to get started with playing=Todo o que necesitas saber para comezar a xogar
Advanced usage=Uso avanzado
Advanced information about Minetest which may be nice to know, but is not crucial to gameplay=Información avanzada que pode ser agradable coñecer, pero que non é crucial para o xogo
Quick start=Inicio rápido
This is a very brief introduction to the basic gameplay:=Esta é unha breve introdución ao xogo básico:
Basic controls:=Controis básicos:
• Move mouse to look=• Move o rato para mirar
• [W], [A], [S] and [D] to move=• [W], [A], [S] e [D] para mover
• [E] to sprint=• [E] para esprintar
• [Space] to jump or move upwards=• [Espazo] para saltar ou moverse cara arriba
• [Shift] to sneak or move downwards=• [Maiús] para escapar ou moverse cara abaixo
• Mouse wheel or [0]-[9] to select item=• Roda do rato ou [1]-[9] para seleccionar elemento
• Left-click to mine blocks or attack=• Fai clic co botón esquerdo para minar bloques ou atacar
• Recover from swings to deal full damage=• Recupérate de oscilacións para causar dano total
• Right-click to build blocks and use things=• Fai clic co botón dereito para construír bloques e usar as cousas
• [I] for the inventory=• [I] para o inventario
• First items in inventory appear in hotbar below=• Os primeiros elementos do inventario aparecen na barra de acceso abaixo
• Lowest row in inventory appears in hotbar below=• A fila máis baixa do inventario aparece na barra de acceso abaixo
• [Esc] to close this window=• [Esc] para pechar esta xanela
How to play:=Como xogar:
• Punch a tree trunk until it breaks and collect wood=• Golpear un tronco de árbore ata romper e recoller madeira
• Place the wood into the 2×2 grid (your “crafting grid”) in your inventory menu and craft 4 wood planks=• Coloca a madeira na reixa 2×2 (a túa “reixa de elaboración”) no menú do teu inventario e crea 4 táboas de madeira
• Place them in a 2×2 shape in the crafting grid to craft a crafting table=• Colócaos en forma de 2×2 na reixa de elaboración para elaborar unha mesa de elaboración
• Place the crafting table on the ground=• Coloca a mesa de elaboración no chan
• Rightclick it for a 3×3 crafting grid=• Fai clic co botón dereito nel para obter unha cuadrícula de elaboración 3×3
• Use the crafting guide (book icon) to learn all the possible crafting recipes=• Use a guía de elaboración (icona do libro) para aprender todas as posibles receitas de elaboración
• Craft a wooden pickaxe so you can dig stone=• Elabora un pico de madeira para poder cavar pedra
• Different tools break different kinds of blocks. Try them out!=• Diferentes ferramentas rompen diferentes tipos de bloques. ¡Próbaos!
• Read entries in this help to learn the rest=• Le as entradas desta axuda para aprender o resto
• Continue playing as you wish. There's no goal. Have fun!=• Continúa xogando como queiras. Non hai gol. ¡Divírtete!
Minetest=
Minetest is a free software game engine for games based on voxel gameplay, inspired by InfiniMiner, Minecraft, and the like. Minetest was originally created by Perttu Ahola (alias “celeron55”).=Minetest é un motor de xogos de software gratuíto para xogos baseado en voxel, inspirado en InfiniMiner, Minecraft e similares. Minetest foi creado orixinalmente por Perttu Ahola (alias “celeron55”).
The player is thrown into a huge world made out of cubes or blocks. These cubes usually make the landscape they blocks can be removed and placed almost entirely freely. Using the collected items, new tools and other items can be crafted. Games in Minetest can, however, be much more complex than this.=O xogador é lanzado a un mundo enorme feito de cubos ou bloques. Estes cubos adoitan facer que a paisaxe que bloquean poida ser eliminada e colocada case totalmente libremente. Usando os elementos recollidos, pódense elaborar novas ferramentas e outros elementos. Non obstante, os xogos en Minetest poden ser moito máis complexos que isto.
A core feature of Minetest is the built-in modding capability. Mods modify existing gameplay. They can be as simple as adding a few decorational blocks or be very complex by e.g. introducing completely new gameplay concepts, generating a completely different kind of world, and many other things.=Unha característica principal de Minetest é a capacidade de modificación integrada. As modificacións modifican o xogo existente. Poden ser tan sinxelos como engadir uns cantos bloques decorativos ou ser moi complexos, por exemplo. introducindo conceptos de xogo completamente novos, xerando un tipo de mundo completamente diferente e moitas outras cousas.
Minetest can be played alone or online together with multiple players. Online play will work out of the box with any mods, with no need for additional software as they are entirely provided by the server.=Minetest pódese xogar só ou en liña xunto con varios xogadores. O xogo en liña funcionará fóra da caixa con calquera modificación, sen necesidade de software adicional, xa que son proporcionados enteiramente polo servidor.
Minetest is usually bundled with a simple default game, named “Minetest Game” (shown in images 1 and 2). You probably already have it. Other games for Minetest can be downloaded from the official Minetest forums <https://forum.minetest.net/viewforum.php?f@=48>.=Minetest adoita incluír un xogo predeterminado sinxelo, chamado "Xogo Minetest" (mostrado nas imaxes 1 e 2). Probablemente xa o teñas. Outros xogos para Minetest pódense descargar dos foros oficiais de Minetest <https://forum.minetest.net/viewforum.php?f@=48>.
Minetest as well as Minetest Game are both unfinished at the moment, so please forgive us when not everything works out perfectly.=Minetest e Minetest Game están sen rematar polo momento, así que perdóanos cando non todo funcione perfectamente.
Sneaking=furtivamente
Sneaking makes you walk slower and prevents you from falling off the edge of a block.=Escalar faiche camiñar máis lento e evita que caigas do bordo dun bloque.
To sneak, hold down the sneak key (default: [Shift]). When you release it, you stop sneaking. Careful: When you release the sneak key at a ledge, you might fall!=Para escabullirse, manteña premida a tecla de furtivismo (predeterminado: [Maiús]). Cando o soltas, deixas de escapar. Coidado: cando soltas a chave furtiva nunha cornisa, podes caer!
• Sneak: [Shift]=• Furtivamente: [Maiús]
Sneaking only works when you stand on solid ground, are not in a liquid and don't climb.=A furtiva só funciona cando estás en terreo sólido, non estás nun líquido e non trepes.
If you jump while holding the sneak key, you also jump slightly higher than usual.=Se saltas mantendo pulsada a tecla furtiva, tamén saltas lixeiramente máis alto do habitual.
Sneaking might be disabled by mods. In this case, you still walk slower by sneaking, but you will no longer be stopped at ledges.=As modificacións poden desactivar a furtiva. Neste caso, aínda camiñas máis lento coa furtiva, pero xa non te pararás nas repisas.
Controls=Controis
These are the default controls:=Estes son os controis predeterminados:
Basic movement:=Movemento básico:
• Moving the mouse around: Look around=• Mover o rato: mira ao redor
• W: Move forwards=• W: avanzar
• A: Move to the left=• R: Mover á esquerda
• D: Move to the right=• D: Mover á dereita
• S: Move backwards=• S: Mover cara atrás
• E: Sprint=• E: Sprint
While standing on solid ground:=Estando de pé en terreo sólido:
• Space: Jump=• Espazo: Salto
• Shift: Sneak=• Quenda: furtivo
While on a ladder, swimming in a liquid or fly mode is active=Mentres está nunha escaleira, nadar en modo líquido ou voar está activo
• Space: Move up=• Espazo: Mover arriba
• Shift: Move down=• Maiúsculas: Mover cara abaixo
Extended movement (requires privileges):=Movemento estendido (require privilexios):
• J: Toggle fast mode, makes you run or fly fast (requires “fast” privilege)=• J: alterna o modo rápido, faiche correr ou voar rápido (require privilexio "rápido")
• K: Toggle fly mode, makes you move freely in all directions (requires “fly” privilege)=• K: alterna o modo voo, fai que te movas libremente en todas as direccións (require o privilexio de "voar")
• H: Toggle noclip mode, makes you go through walls in fly mode (requires “noclip” privilege)=• H: Activa o modo noclip, fai que atraveses paredes no modo voar (require privilexio “noclip”)
• E: Move even faster when in fast mode=• E: Móvese aínda máis rápido cando está en modo rápido
• E: Walk fast in fast mode=• E: Camiña rápido en modo rápido
World interaction:=Interacción mundial:
• Left mouse button: Punch / mine blocks / take items=• Botón esquerdo do rato: perforar / minar bloques / levar elementos
• Left mouse button: Punch / mine blocks=• Botón esquerdo do rato: Punch/mine blocks
• Right mouse button: Build or use pointed block=• Botón dereito do rato: Constrúe ou use un bloque apuntado
• Shift+Right mouse button: Build=• Maiús+botón dereito do rato: Construír
• Roll mouse wheel: Select next/previous item in hotbar=• Rodar a roda do rato: seleccione o elemento seguinte/anterior na barra de acceso
• Roll mouse wheel / B / N: Select next/previous item in hotbar=• Rodar a roda do rato / B / N: seleccione o elemento seguinte/anterior na barra de acceso
• 1-9: Select item in hotbar directly=• 1-9: Seleccione o elemento na barra de acceso directo
• Q: Drop item stack=• P: Soltar pila de elementos
• Shift+Q: Drop 1 item=• Maiús+Q: solta 1 elemento
• I: Show/hide inventory menu=• I: Mostrar/ocultar menú de inventario
Inventory interaction:=Interacción de inventario:
See the entry “Basics > Inventory”.=Consulte a entrada "Básicos > Inventario".
Camera:=Cámara:
• Z: Zoom=• Z: Zoom
• F7: Toggle camera mode=• F7: alternar modo de cámara
• F8: Toggle cinematic mode=• F8: alternar modo cinematográfico
Interface:=Interface:
• Esc: Open menu window (pauses in single-player mode) or close window=• Esc: Abre a xanela do menú (fai unha pausa no modo dun xogador) ou pecha xanela
• F1: Show/hide HUD=• F1: Mostrar/ocultar HUD
• F2: Show/hide chat=• F2: Mostrar/ocultar chat
• F9: Toggle minimap=• F9: Alternar minimapa
• Shift+F9: Toggle minimap rotation mode=• Maiús+F9: alterna o modo de rotación do minimapa
• F10: Open/close console/chat log=• F10: Abrir/pechar consola/rexistro de chat
• F12: Take a screenshot=• F12: Fai unha captura de pantalla
Server interaction:=Interacción do servidor:
• T: Open chat window (chat requires the “shout” privilege)=• T: Abrir a xanela de chat (o chat require o privilexio de “gritar”)
• /: Start issuing a server command=• /: Comeza a emitir un comando do servidor
Technical:=Técnico:
• R: Toggle far view (disables all fog and allows viewing far away, can make game very slow)=• R: Alterna a vista de lonxe (desactiva toda a néboa e permite a visualización de lonxe, pode facer que o xogo sexa moi lento)
• +: Increase minimal viewing distance=• +: Aumenta a distancia mínima de visualización
• -: Decrease minimal viewing distance=• -: Diminuír a distancia mínima de visualización
• F3: Enable/disable fog=• F3: Activar/desactivar néboa
• F5: Enable/disable debug screen which also shows your coordinates=• F5: Activar/desactivar a pantalla de depuración que tamén mostra as súas coordenadas
• F6: Only useful for developers. Enables/disables profiler=• F6: Só útil para desenvolvedores. Activa/desactiva o perfilador
• P: Only useful for developers. Writes current stack traces=• P: Só útil para desenvolvedores. Escribe trazos de pila actual
Players=Xogadores
Players (actually: “player characters”) are the characters which users control.=Os xogadores (en realidade: "personaxes xogadores") son os personaxes que controlan os usuarios.
Players are living beings. They start with a number of health points (HP) and a number of breath points (BP).=Os xogadores son seres vivos. Comezan cun número de puntos de saúde (HP) e un número de puntos de respiración (BP).
Players are capable of walking, sneaking, jumping, climbing, swimming, diving, mining, building, fighting and using tools and blocks.=Os xogadores son capaces de camiñar, escapar, saltar, escalar, nadar, mergullarse, minar, construír, loitar e usar ferramentas e bloques.
Players can take damage for a variety of reasons, here are some:=Os xogadores poden sufrir danos por varias razóns, aquí tes algunhas:
• Taking fall damage=• Asumir danos por caída
• Touching a block which causes direct damage=• Tocar un bloque que cause danos directos
• Drowning=• Afogamento
• Being attacked by another player=• Ser atacado por outro xogador
• Being attacked by a computer enemy=• Ser atacado por un inimigo informático
At a health of 0, the player dies. The player can just respawn in the world.=Cunha saúde de 0, o xogador morre. O xogador só pode reaparecer no mundo.
Other consequences of death depend on the game. The player could lose all items, or lose the round in a competitive game.=Outras consecuencias da morte dependen do xogo. O xogador podería perder todos os elementos ou perder a rolda nun xogo competitivo.
Some blocks reduce breath. While being with the head in a block which causes drowning, the breath points are reduced by 1 for every 2 seconds. When all breath is gone, the player starts to suffer drowning damage. Breath is quickly restored in any other block.=Algúns bloques reducen a respiración. Mentres está coa cabeza nun bloque que provoca afogamento, os puntos de respiración redúcense 1 por cada 2 segundos. Cando todo o alento desaparece, o xogador comeza a sufrir danos por afogamento. A respiración restablece rapidamente en calquera outro bloque.
Damage can be disabled on any world. Without damage, players are immortal and health and breath are unimportant.=Os danos pódense desactivar en calquera mundo. Sen danos, os xogadores son inmortais e a saúde e a respiración non teñen importancia.
In multi-player mode, the name of other players is written above their head.=No modo multixogador, o nome dos outros xogadores está escrito enriba da súa cabeza.
Items=Elementos
Items are things you can carry along and store in inventories. They can be used for crafting, smelting, building, mining, and more. Types of items include blocks, tools, weapons and items only used for crafting.=Os artigos son cousas que podes levar e almacenar nos inventarios. Pódense usar para artesanía, fundición, construción, minería e moito máis. Os tipos de elementos inclúen bloques, ferramentas, armas e elementos que só se usan para a elaboración.
An item stack is a collection of items of the same type which fits into a single item slot. Item stacks can be dropped on the ground. Items which drop into the same coordinates will form an item stack.=Unha pila de artigos é unha colección de elementos do mesmo tipo que caben nun único espazo para elementos. As pilas de artigos pódense deixar caer ao chan. Os elementos que caen nas mesmas coordenadas formarán unha pila de elementos.
Dropped item stacks will be collected automatically when you stand close to them.=As pilas de elementos soltados recolleranse automaticamente cando esteas preto delas.
Items have several properties, including the following:=Os elementos teñen varias propiedades, incluíndo as seguintes:
• Maximum stack size: Number of items which fit on 1 item stack=• Tamaño máximo da pila: número de elementos que caben nunha pila de elementos
• Pointing range: How close things must be to be pointed while wielding this item=• Rango de apuntamento: ata que punto deben estar as cousas para ser apuntadas mentres se manexa este elemento
• Group memberships: See “Basics > Groups”=• Pertenzas a grupos: consulte “Aspectos básicos > Grupos”
• May be used for crafting or cooking=• Pódese usar para facer manualidades ou cociñar
Tools=Ferramentas
Some items may serve as a tool when wielded. Any item which has some special use which can be directly used by its wielder is considered a tool.=Algúns elementos poden servir como ferramenta cando se manexan. Calquera elemento que teña algún uso especial que poida ser usado directamente polo seu portador considérase unha ferramenta.
A common subset of tools is mining tools. These are important to break all kinds of blocks. Weapons are a kind of tool. There are of course many other possible tools. Special actions of tools are usually done by left-click or right-click.=Un subconxunto común de ferramentas son as ferramentas de minería. Estes son importantes para romper todo tipo de bloques. As armas son unha especie de ferramenta. Por suposto, hai moitas outras ferramentas posibles. As accións especiais das ferramentas adoitan facerse facendo clic co botón esquerdo ou co botón dereito.
When nothing is wielded, players use their hand which may act as tool and weapon.=Cando non se manexa nada, os xogadores usan a súa man que pode actuar como ferramenta e arma.
Mining tools are important to break all kinds of blocks. Weapons are another kind of tool. There are some other more specialized tools. Special actions of tools are usually done by right-click.=As ferramentas de minería son importantes para romper todo tipo de bloques. As armas son outro tipo de ferramenta. Hai outras ferramentas máis especializadas. As accións especiais das ferramentas adoitan facerse facendo clic co botón dereito.
When nothing is wielded, players use their hand which may act as tool and weapon. The hand is capable of punching and deals minimum damage.=Cando non se manexa nada, os xogadores usan a súa man, que pode actuar como ferramenta e arma. A man é capaz de golpear e causa un dano mínimo.
Many tools will wear off when using them and may eventually get destroyed. The damage is displayed in a damage bar below the tool icon. If no damage bar is shown, the tool is in mint condition. Tools may be repairable by crafting, see “Basics > Crafting”.=Moitas ferramentas desgastaranse ao usalas e poden acabar destruíndose. O dano móstrase nunha barra de danos debaixo da icona da ferramenta. Se non se mostra ningunha barra de danos, a ferramenta está en perfecto estado. As ferramentas pódense reparar elaborando, consulte "Conceptos básicos > Elaboración".
Weapons=Armas
Some items are usable as a melee weapon when wielded. Weapons share most of the properties of tools.=Algúns elementos poden usarse como arma corpo a corpo cando se manexan. As armas comparten a maioría das propiedades das ferramentas.
Melee weapons deal damage by punching players and other animate objects. There are two ways to attack:=As armas corpo a corpo causan dano golpeando aos xogadores e outros obxectos animados. Hai dúas formas de atacar:
• Single punch: Left-click once to deal a single punch=• Golpe único: fai clic co botón esquerdo unha vez para dar un só golpe
• Quick punching: Hold down the left mouse button to deal quick repeated punches=• Perforación rápida: Manteña premido o botón esquerdo do rato para facer golpes rápidos repetidos
There are two core attributes of melee weapons:=Hai dous atributos fundamentais das armas corpo a corpo:
• Maximum damage: Damage which is dealt after a hit when the weapon was fully recovered=• Dano máximo: dano que se inflixe despois dun golpe cando a arma foi totalmente recuperada
• Full punch interval: Time it takes for fully recovering from a punch=• Intervalo de golpe completo: tempo que tarda en recuperarse completamente dun golpe
A weapon only deals full damage when it has fully recovered from a previous punch. Otherwise, the weapon will deal only reduced damage. This means, quick punching is very fast, but also deals rather low damage. Note the full punch interval does not limit how fast you can attack.=Unha arma só causa dano total cando se recuperou completamente dun golpe anterior. En caso contrario, a arma só causará un dano reducido. Isto significa que o golpe rápido é moi rápido, pero tamén causa un dano bastante baixo. Teña en conta que o intervalo de golpe completo non limita a rapidez coa que pode atacar.
There is a rule which sometimes makes attacks impossible: Players, animate objects and weapons belong to damage groups. A weapon only deals damage to those who share at least one damage group with it. So if you're using the wrong weapon, you might not deal any damage at all.=Hai unha regra que ás veces imposibilita os ataques: os xogadores, os obxectos animados e as armas pertencen a grupos de danos. Unha arma só causa dano a aqueles que comparten polo menos un grupo de danos con ela. Polo tanto, se estás a usar a arma incorrecta, pode que non causes ningún dano.
Pointing=Apuntando
“Pointing” means looking at something in range with the crosshair. Pointing is needed for interaction, like mining, punching, using, etc. Pointable things include blocks, players, computer enemies and objects.="Apuntar" significa mirar algo dentro do alcance co punto de mira. Apuntar é necesario para a interacción, como minar, perforar, usar, etc. As cousas salientables inclúen bloques, xogadores, inimigos de ordenador e obxectos.
To point something, it must be in the pointing range (also just called “range”) of your wielded item. There's a default range when you are not wielding anything. A pointed thing will be outlined or highlighted (depending on your settings). Pointing is not possible with the 3rd person front camera.=Para apuntar algo, debe estar no intervalo de apuntamento (tamén chamado "rango") do teu elemento esgrimido. Hai un intervalo predeterminado cando non manexas nada. Destacarase ou resaltarase unha cousa sinalada (dependendo da súa configuración). Non é posible apuntar coa cámara frontal de 3a persoa.
A few things can not be pointed. Most blocks are pointable. A few blocks, like air, can never be pointed. Other blocks, like liquids can only be pointed by special items.=Algunhas cousas non se poden sinalar. A maioría dos bloques son puntuables. Uns cantos bloques, como o aire, nunca se poden apuntar. Outros bloques, como os líquidos, só poden ser sinalados por elementos especiais.
Camera=Cámara
There are 3 different views which determine the way you see the world. The modes are:=Hai 3 puntos de vista diferentes que determinan a forma de ver o mundo. Os modos son:
• 1: First-person view (default)=• 1: Vista en primeira persoa (predeterminado)
• 2: Third-person view from behind=• 2: Vista en terceira persoa desde atrás
• 3: Third-person view from the front=• 3: Vista en terceira persoa de fronte
You can change the camera mode by pressing [F7].=Pode cambiar o modo da cámara premendo [F7].
You might be able to zoom with [Z] to zoom the view at the crosshair. This allows you to look further.=Podes facer zoom con [Z] para ampliar a vista no punto de mira. Isto permítelle mirar máis alá.
Zooming is a gameplay feature that might be enabled or disabled by the game. By default, zooming is enabled when in Creative Mode but disabled otherwise.=O zoom é unha función de xogo que pode estar activada ou desactivada polo xogo. De forma predeterminada, o zoom está activado cando está en modo creativo, pero en caso contrario está desactivado.
There is also Cinematic Mode which can be toggled with [F8]. With Cinematic Mode enabled, the camera movements become more smooth. Some players don't like it, it is a matter of taste.=Tamén hai un modo cinematográfico que se pode alternar con [F8]. Co modo cinematográfico activado, os movementos da cámara fanse máis suaves. A algúns xogadores non lles gusta, é cuestión de gustos.
By holding down [Z], you can zoom the view at your crosshair. You need the “zoom” privilege to do this.=Mantendo premido [Z], podes ampliar a vista no punto de mira. Necesitas o privilexio de "zoom" para facelo.
• Switch camera mode: [F7]=• Cambiar modo de cámara: [F7]
• Toggle Cinematic Mode: [F8]=• Alterna o modo cinematográfico: [F8]
• Zoom: [Z]=• Zoom: [Z]
Blocks=Bloques
The world of MineClone 2 is made entirely out of blocks (voxels, to be precise). Blocks can be added or removed with the correct tools.=O mundo de MineClone 2 está feito enteiramente de bloques (voxels, para ser precisos). Pódense engadir ou eliminar bloques coas ferramentas correctas.
The world is made entirely out of blocks (voxels, to be precise). Blocks can be added or removed with the correct tools.=O mundo está feito enteiramente de bloques (voxels, para ser precisos). Pódense engadir ou eliminar bloques coas ferramentas correctas.
Blocks can have a wide range of different properties which determine mining times, behavior, looks, shape, and much more. Their properties include:=Os bloques poden ter unha ampla gama de propiedades diferentes que determinan os tempos de minería, o comportamento, o aspecto, a forma e moito máis. As súas propiedades inclúen:
• Collidable: Collidable blocks can not be passed through; players can walk on them. Non-collidable blocks can be passed through freely=• Colidable: os bloques colidábeis non se poden atravesar; os xogadores poden andar sobre eles. Os bloques non colisionables pódense pasar libremente
• Pointable: Pointable blocks show a wireframe or a halo box when pointed. But you will just point through non-pointable blocks. Liquids are usually non-pointable but they can be pointed at by some special tools=• Puntável: os bloques apuntables mostran unha armazón ou unha caixa de halo cando se apuntan. Pero só apuntarás a través de bloques non puntuables. Os líquidos adoitan ser insensibles, pero pódense sinalar con algunhas ferramentas especiais
• Mining properties: By which tools it can be mined, how fast and how much it wears off tools=• Propiedades mineiras: con que ferramentas se pode extraer, a que velocidade e canto gasta as ferramentas
• Climbable: While you are at a climbable block, you won't fall and you can move up and down with the jump and sneak keys=• Escalable: mentres estás nun bloque escalable, non caerás e podes moverte cara arriba e abaixo coas teclas de salto e furtivo
• Drowning damage: See the entry “Basics > Player”=• Danos por afogamento: consulte a entrada “Básicos > Xogador”
• Liquids: See the entry “Basics > Liquids”=• Líquidos: Consulte a entrada “Básicos > Líquidos”
• Group memberships: Group memberships are used to determine mining properties, crafting, interactions between blocks and more=• Pertenzas a grupos: as pertenzas a grupos úsanse para determinar as propiedades de minería, a elaboración, as interaccións entre bloques e moito máis
Mining=minería
Mining (or digging) is the process of breaking blocks to remove them. To mine a block, point it and hold down the left mouse button until it breaks.=A minería (ou cavar) é o proceso de romper bloques para eliminalos. Para minar un bloque, apunto e manteña premido o botón esquerdo do rato ata que se rompa.
Blocks require a mining tool to be mined. Different blocks are mined by different mining tools, and some blocks can not be mined by any tool. Blocks vary in hardness and tools vary in strength. Mining tools will wear off over time. The mining time and the tool wear depend on the block and the mining tool. The fastest way to find out how efficient your mining tools are is by just trying them out on various blocks. Any items you gather by mining will drop on the ground, ready to be collected.=Os bloques requiren unha ferramenta de minería para ser minados. Diferentes bloques son extraídos por diferentes ferramentas de minería, e algúns bloques non poden ser extraídos por ningunha ferramenta. Os bloques varían en dureza e as ferramentas varían en forza. As ferramentas de minería desaparecerán co paso do tempo. O tempo de minería e o desgaste da ferramenta dependen do bloque e da ferramenta de minería. A forma máis rápida de descubrir a eficiencia das túas ferramentas de minería é probalas en varios bloques. Calquera elemento que recolla coa minería caerá no chan, listo para ser recollido.
After mining, a block may leave a “drop” behind. This is a number of items you get after mining. Most commonly, you will get the block itself. There are other possibilities for a drop which depends on the block type. The following drops are possible:=Despois da minería, un bloque pode deixar unha "gota" atrás. Esta é unha serie de elementos que obtén despois da minería. Máis comúnmente, obterás o propio bloque. Existen outras posibilidades de caída que dependen do tipo de bloque. Son posibles as seguintes caídas:
• Always drops itself (the usual case)=• Sempre cae a si mesmo (o caso habitual)
• Always drops the same items=• Sempre solta os mesmos elementos
• Drops items based on probability=• Elimina elementos en función da probabilidade
• Drops nothing=• Non cae nada
Building=Edificio
Almost all blocks can be built (or placed). Building is very simple and has no delay.=Case todos os bloques pódense construír (ou colocar). A construción é moi sinxela e non ten demora.
To build your wielded block, point at a block in the world and right-click. If this is not possible because the pointed block has a special right-click action, hold down the sneak key before right-clicking.=Para construír o teu bloque, apunta a un bloque do mundo e fai clic co botón dereito. Se isto non é posible porque o bloque apuntado ten unha acción especial de clic co botón dereito, manteña premida a tecla furtiva antes de facer clic co botón dereito.
Blocks can almost always be built at pointable blocks. One exception are blocks attached to the floor; these can only be built on the floor.=Case sempre pódense construír bloques en bloques puntuables. Unha excepción son os bloques pegados ao chan; estes só poden construírse no chan.
Normally, blocks are built in front of the pointed side of the pointed block. A few blocks are different: When you try to build at them, they are replaced.=Normalmente, os bloques constrúense diante do lado apuntado do bloque puntiagudo. Algúns bloques son diferentes: cando intentas construír neles, substitúense.
Liquids=Líquidos
Liquids are special dynamic blocks. Liquids like to spread and flow to their surrounding blocks. Players can swim and drown in them.=Os líquidos son bloques dinámicos especiais. Aos líquidos gústalles estenderse e fluír aos seus bloques circundantes. Os xogadores poden nadar e afogar neles.
Liquids usually come in two forms: In source form (S) and in flowing form (F).=Os líquidos adoitan presentarse en dúas formas: en forma fonte (S) e en forma fluída (F).
Liquid sources have the shape of a full cube. A liquid source will generate flowing liquids around it from time to time, and, if the liquid is renewable, it also generates liquid sources. A liquid source can sustain itself. As long it is left alone, a liquid source will normally keep its place and does not drain out.=As fontes líquidas teñen a forma dun cubo cheo. Unha fonte líquida xerará líquidos ao seu redor de cando en vez e, se o líquido é renovable, tamén xera fontes líquidas. Unha fonte líquida pode manterse por si mesma. Mentres se deixa só, unha fonte líquida normalmente manterá o seu lugar e non escorre.
Flowing liquids take a sloped form. Flowing liquids spread around the world until they drain. A flowing liquid can not sustain itself and always comes from a liquid source, either directly or indirectly. Without a liquid source, a flowing liquid will eventually drain out and disappear.=Os líquidos que flúen adoptan unha forma inclinada. Os líquidos que flúen esténdense polo mundo ata que drenan. Un líquido que flúe non pode sosterse e sempre provén dunha fonte líquida, ben directa ou indirectamente. Sen unha fonte de líquido, un líquido que flúe eventualmente escorrerá e desaparecerá.
All liquids share the following properties:=Todos os líquidos comparten as seguintes propiedades:
• All properties of blocks (including drowning damage)=• Todas as propiedades dos bloques (incluíndo danos por afogamento)
• Renewability: Renewable liquids can create new sources=• Renovabilidade: os líquidos renovables poden crear novas fontes
• Flowing range: How many flowing liquids are created at maximum per liquid source, it determines how far the liquid will spread. Possible are ranges from 0 to 8. At 0, no flowing liquids will be created. Image 5 shows a liquid of flowing range 2=• Rango de fluxo: cantos líquidos fluídos se crean como máximo por fonte de líquido, determina ata onde se espallará o líquido. Posibles son os rangos de 0 a 8. Ao 0, non se crearán líquidos fluídos. A imaxe 5 mostra un líquido de intervalo fluído 2
• Viscosity: How slow players move through it and how slow the liquid spreads=• Viscosidade: o lento que se move os xogadores por el e o lento que se espalla o líquido
Renewable liquids create new liquid sources at open spaces (image 2). A new liquid source is created when:=Os líquidos renovables crean novas fontes líquidas en espazos abertos (imaxe 2). Créase unha nova fonte de líquido cando:
• Two renewable liquid blocks of the same type touch each other diagonally=• Dous bloques de líquidos renovables do mesmo tipo tócanse en diagonal
• These blocks are also on the same height=• Estes bloques tamén están á mesma altura
• One of the two “corners” is open space which allows liquids to flow in=• Un dos dous “esquinas” é un espazo aberto que permite que os líquidos flúen
When those criteria are met, the open space is filled with a new liquid source of the same type (image 3).=Cando se cumpren eses criterios, o espazo aberto énchese cunha nova fonte de líquido do mesmo tipo (imaxe 3).
Swimming in a liquid is fairly straightforward: The usual direction keys for basic movement, the jump key for rising and the sneak key for sinking.=Nadar nun líquido é bastante sinxelo: as teclas de dirección habituais para o movemento básico, a tecla de salto para subir e a tecla para afundir.
The physics for swimming and diving in a liquid are:=A física para nadar e mergullar nun líquido son:
• The higher the viscosity, the slower you move=• Canto maior sexa a viscosidade, máis lento te moves
• If you rest, you'll slowly sink=• Se descansas, afundirase lentamente
• There is no fall damage for falling into a liquid as such=• Non hai danos por caída por caer nun líquido como tal
• If you fall into a liquid, you will be slowed down on impact (but don't stop instantly). Your impact depth is determined by your speed and the liquid viscosity. For a safe high drop into a liquid, make sure there is enough liquid above the ground, otherwise you might hit the ground and take fall damage=• Se caes nun líquido, reducirás a velocidade no impacto (pero non pares ao instante). A súa profundidade de impacto está determinada pola súa velocidade e a viscosidade do líquido. Para unha caída segura e alta nun líquido, asegúrate de que haxa suficiente líquido sobre o chan, se non, podes golpear o chan e sufrir danos por caída
Liquids are often not pointable. But some special items are able to point all liquids.=Os líquidos moitas veces non son útiles. Pero algúns elementos especiais son capaces de apuntar todos os líquidos.
Crafting=Elaboración
Crafting is the task of combining several items to form a new item.=A elaboración é a tarefa de combinar varios elementos para formar un novo elemento.
To craft something, you need one or more items, a crafting grid (C) and a crafting recipe. A crafting grid is like a normal inventory which can also be used for crafting. Items need to be put in a certain pattern into the crafting grid. Next to the crafting grid is an output slot (O). Here the result will appear when you placed items correctly. This is just a preview, not the actual item. Crafting grids can come in different sizes which limits the possible recipes you can craft.=Para elaborar algo, necesitas un ou máis elementos, unha reixa de elaboración (C) e unha receita de elaboración. Unha cuadrícula de elaboración é como un inventario normal que tamén se pode usar para elaborar. Os elementos deben colocarse nun patrón determinado na reixa de elaboración. Xunto á reixa de elaboración hai unha ranura de saída (O). Aquí o resultado aparecerá cando colocou os elementos correctamente. Esta é só unha vista previa, non o elemento real. As cuadrículas de elaboración poden ter diferentes tamaños, o que limita as posibles receitas que podes elaborar.
To complete the craft, take the result item from the output slot, which will consume items from the crafting grid and creates a new item. It is not possible to place items into the output slot.=Para completar a manualidade, toma o elemento do resultado da ranura de saída, que consumirá elementos da grella de elaboración e creará un novo elemento. Non é posible colocar elementos no slot de saída.
A description on how to craft an item is called a “crafting recipe”. You need this knowledge to craft. There are multiple ways to learn crafting recipes. One way is by using a crafting guide, which contains a list of available crafting recipes. Some games provide crafting guides. There are also some mods which you can download online for installing a crafting guide. Another way is by reading the online manual of the game (if one is available).=Unha descrición sobre como elaborar un artigo chámase "receita de elaboración". Necesitas estes coñecementos para elaborar. Hai varias formas de aprender receitas artesanais. Unha forma é usar unha guía de elaboración, que contén unha lista de receitas de elaboración dispoñibles. Algúns xogos ofrecen guías de elaboración. Tamén hai algúns mods que podes descargar en liña para instalar unha guía de elaboración. Outra forma é lendo o manual en liña do xogo (se está dispoñible).
Crafting recipes consist of at least one input item and exactly one stack of output items. When performing a single craft, it will consume exactly one item from each stack of the crafting grid, unless the crafting recipe defines replacements.=As receitas de elaboración consisten en polo menos un elemento de entrada e exactamente unha pila de elementos de saída. Ao realizar unha única artesanía, consumirá exactamente un elemento de cada pila da grella de elaboración, a menos que a receita de elaboración defina substitucións.
There are multiple types of crafting recipes:=Hai varios tipos de receitas de elaboración:
• Shaped (image 2): Items need to be placed in a particular shape=• En forma (imaxe 2): os elementos deben colocarse nunha forma determinada
• Shapeless (images 3 and 4): Items need to be placed somewhere in input (both images show the same recipe)=• Sen forma (imaxes 3 e 4): os elementos deben colocarse nalgún lugar da entrada (ambas imaxes mostran a mesma receita)
• Cooking: Explained in “Basics > Cooking”=• Cociñar: Explícase en “Básicos > Cociñar”
• Repairing (image 5): Place two damaged tools into the crafting grid anywhere to get a tool which is repaired by 5%=• Reparación (imaxe 5): coloque dúas ferramentas danadas na reixa de elaboración en calquera lugar para conseguir unha ferramenta que se repara nun 5%
In some crafting recipes, some input items do not need to be a concrete item, instead they need to be a member of a group (see “Basics > Groups”). These recipes offer a bit more freedom in the input items. Images 6-8 show the same group-based recipe. Here, 8 items of the “stone” group are required, which is true for all of the shown items.=Nalgunhas receitas de elaboración, algúns elementos de entrada non precisan ser un elemento concreto, senón que deben ser membros dun grupo (consulta "Aspectos básicos > Grupos"). Estas receitas ofrecen un pouco máis de liberdade nos elementos de entrada. As imaxes 6-8 mostran a mesma receita baseada en grupo. Aquí, son necesarios 8 elementos do grupo "pedra", o que é certo para todos os elementos mostrados.
Rarely, crafting recipes have replacements. This means, whenever you perform a craft, some items in the crafting grid will not be consumed, but instead will be replaced by another item.=Poucas veces, as receitas de elaboración teñen substitutos. Isto significa que, sempre que realices unha manualidade, algúns elementos da grella de elaboración non se consumirán, senón que se substituirán por outro.
Cooking=Cociñar
Cooking (or smelting) is a form of crafting which does not involve a crafting grid. Cooking is done with a special block (like a furnace), an cookable item, a fuel item and time in order to yield a new item.=Cociñar (ou fundir) é unha forma de elaboración que non implica unha reixa de elaboración. A cociña realízase cun bloque especial (como un forno), un elemento cocibel, un elemento de combustible e tempo para producir un novo elemento.
Each fuel item has a burning time. This is the time a single item of the fuel keeps a furnace burning.=Cada elemento de combustible ten un tempo de combustión. Este é o momento en que un só elemento do combustible mantén aceso un forno.
Each cookable item requires time to be cooked. This time is specific to the item type and the item must be “on fire” for the whole cooking time to actually yield the result.=Cada elemento cociñable require tempo para ser cociñado. Este tempo é específico para o tipo de elemento e o elemento debe estar "incendido" durante todo o tempo de cocción para que realmente produza o resultado.
Hotbar=Barra de Acceso
At the bottom of the screen you see some squares. This is called the “hotbar”. The hotbar allows you to quickly access the first items from your player inventory.=Na parte inferior da pantalla ves algúns cadrados. Isto chámase "barra de acceso". A barra de acceso rápido permíteche acceder rapidamente aos primeiros elementos do inventario do teu reprodutor.
You can change the selected item with the mouse wheel or the keyboard.=Pode cambiar o elemento seleccionado coa roda do rato ou o teclado.
• Select previous item in hotbar: [Mouse wheel up] or [B]=• Seleccione o elemento anterior na barra de acceso: [Roda cara arriba] ou [B]
• Select next item in hotbar: [Mouse wheel down] or [N]=• Seleccione o seguinte elemento na barra de acceso: [Roda do rato cara abaixo] ou [N]
• Select item in hotbar directly: [1]-[9]=• Seleccione o elemento directamente na barra de acceso: [1]-[9]
The selected item is also your wielded item.=O elemento escollido tamén é o teu elemento usado.
Minimap=Minimapa
If you have a map item in any of your hotbar slots, you can use the minimap.=Se tes un elemento do mapa nalgunha das túas ranuras da barra activa, podes usar o minimapa.
Press [F9] to make a minimap appear on the top right. The minimap helps you to find your way around the world. Press it again to select different minimap modes and zoom levels. The minimap also shows the positions of other players.=Preme [F9] para que apareza un minimapa na parte superior dereita. O minimapa axúdache a buscar o teu camiño polo mundo. Preme de novo para seleccionar diferentes modos de minimapa e niveis de zoom. O minimapa tamén mostra as posicións doutros xogadores.
There are 2 minimap modes and 3 zoom levels.=Hai 2 modos de minimapa e 3 niveis de zoom.
Surface mode (image 1) is a top-down view of the world, roughly resembling the colors of the blocks this world is made of. It only shows the topmost blocks, everything below is hidden, like a satellite photo. Surface mode is useful if you got lost.=O modo de superficie (imaxe 1) é unha vista de arriba abaixo do mundo, que se asemella aproximadamente ás cores dos bloques dos que está feito este mundo. Só mostra os bloques superiores, todo o que está abaixo está oculto, como unha foto de satélite. O modo de superficie é útil se te perdes.
Radar mode (image 2) is more complicated. It displays the “denseness” of the area around you and changes with your height. Roughly, the more green an area is, the less “dense” it is. Black areas have many blocks. Use the radar to find caverns, hidden areas, walls and more. The rectangular shapes in image 2 clearly expose the position of a dungeon.=O modo radar (imaxe 2) é máis complicado. Mostra a "densidade" da área que te rodea e cambia coa túa altura. Aproximadamente, canto máis verde é unha zona, menos "densa" é. As áreas negras teñen moitos bloques. Usa o radar para atopar cavernas, áreas escondidas, muros e moito máis. As formas rectangulares da imaxe 2 expoñen claramente a posición dun calabozo.
There are also two different rotation modes. In “square mode”, the rotation of the minimap is fixed. If you press [Shift]+[F9] to switch to “circle mode”, the minimap will instead rotate with your looking direction, so “up” is always your looking direction.=Tamén hai dous modos de rotación diferentes. No "modo cadrado", a rotación do minimapa está fixada. Se premes [Maiús]+[F9] para cambiar ao "modo círculo", o minimapa xirará na dirección da túa mirada, polo que "arriba" é sempre a túa dirección de mira.
In some games, the minimap may be disabled.=Nalgúns xogos, o minimapa pode estar desactivado.
• Toggle minimap mode: [F9]=• Alternar o modo minimapa: [F9]
• Toggle minimap rotation mode: [Shift]+[F9]=• Alternar o modo de rotación do minimapa: [Maiús]+[F9]
Inventory=Inventario
Inventories are used to store item stacks. There are other uses, such as crafting. An inventory consists of a rectangular grid of item slots. Each item slot can either be empty or hold one item stack. Item stacks can be moved freely between most slots.=Os inventarios úsanse para almacenar pilas de artigos. Hai outros usos, como a artesanía. Un inventario consiste nunha cuadrícula rectangular de espazos para elementos. Cada espazo para elementos pode estar baleiro ou albergar unha pila de elementos. As pilas de elementos pódense mover libremente entre a maioría dos espazos.
You have your own inventory which is called your “player inventory”, you can open it with the inventory key (default: [I]). The first inventory slots are also used as slots in your hotbar.=Tes o teu propio inventario que se chama o teu "inventario de xogadores", podes abrilo coa clave de inventario (predeterminado: [I]). Os primeiros espazos de inventario tamén se usan como espazos na súa barra de acceso rápido.
Blocks can also have their own inventory, e.g. chests and furnaces.=Os bloques tamén poden ter o seu propio inventario, p. ex. cofres e fornos.
Inventory controls:=Controis de inventario:
Taking: You can take items from an occupied slot if the cursor holds nothing.=Tomando: podes sacar elementos dun slot ocupado se o cursor non contén nada.
• Left click: take entire item stack=• Fai clic co botón esquerdo: leva a pila completa de elementos
• Right click: take half from the item stack (rounded up)=• Fai clic co botón dereito: toma a metade da pila de elementos (redondeado cara arriba)
• Middle click: take 10 items from the item stack=• Prema central: toma 10 elementos da pila de elementos
• Mouse wheel down: take 1 item from the item stack=• Roda do rato cara abaixo: colle 1 elemento da pila de elementos
Putting: You can put items onto a slot if the cursor holds 1 or more items and the slot is either empty or contains an item stack of the same item type.=Poñer: podes poñer elementos nunha ranura se o cursor contén 1 ou máis elementos e o espazo está baleiro ou contén unha pila de elementos do mesmo tipo.
• Left click: put entire item stack=• Fai clic co botón esquerdo: pon todo a pila de elementos
• Right click: put 1 item of the item stack=• Fai clic co botón dereito: pon 1 elemento da pila de elementos
• Right click or mouse wheel up: put 1 item of the item stack=• Fai clic co botón dereito do rato ou a roda do rato cara arriba: pon 1 elemento da pila de elementos
• Middle click: put 10 items of the item stack=• Clic central: pon 10 elementos da pila de elementos
Exchanging: You can exchange items if the cursor holds 1 or more items and the destination slot is occupied by a different item type.=Intercambiar: podes intercambiar elementos se o cursor ten 1 ou máis elementos e o espazo de destino está ocupado por un tipo de elemento diferente.
• Click: exchange item stacks=• Fai clic: intercambia pilas de elementos
Throwing away: If you hold an item stack and click with it somewhere outside the menu, the item stack gets thrown away into the environment.=Tirar ao lixo: se gardas unha pila de elementos e fai clic con ela nalgún lugar fóra do menú, a pila de elementos bótase ao ambiente.
Quick transfer: You can quickly transfer an item stack to/from the player inventory to/from another item's inventory slot like a furnace, chest, or any other item with an inventory slot when that item's inventory is accessed. The target inventory is generally the most relevant inventory in this context.=Transferencia rápida: podes transferir rapidamente unha pila de artigos ao inventario dos xogadores a/desde o espazo de inventario doutro artigo, como un forno, un cofre ou calquera outro elemento cun espazo de inventario cando se accede ao inventario dese artigo. O inventario de destino é xeralmente o inventario máis relevante neste contexto.
• Sneak+Left click: Automatically transfer item stack=• Sneak+click esquerdo: transferir automaticamente pila de elementos
Online help=Axuda en liña
You may want to check out these online resources related to MineClone 2.=Pode querer consultar estes recursos en liña relacionados con MineClone 2.
MineClone 2 download and forum discussion: <https://forum.minetest.net/viewtopic.php?f@=50&t@=16407>=Descarga de MineClone 2 e discusión do foro: <https://forum.minetest.net/viewtopic.php?f@=50&t@=16407>
Here you find the most recent version of MineClone 2 and can discuss it.=Aquí atoparás a versión máis recente de MineClone 2 e podes discutilo.
Bug tracker: <https://github.com/Wuzzy2/MineClone2-Bugs>=Rastreador de erros: <https://github.com/Wuzzy2/MineClone2-Bugs>
Report bugs here.=Informa de erros aquí.
Minetest links:=Ligazóns Minetest:
You may want to check out these online resources related to Minetest:=Quizais queiras consultar estes recursos en liña relacionados con Minetest:
Official homepage of Minetest: <https://minetest.net/>=Páxina oficial de Minetest: <https://minetest.net/>
The main place to find the most recent version of Minetest, the engine used by MineClone 2.=O lugar principal para atopar a versión máis recente de Minetest, o motor empregado por MineClone 2.
The main place to find the most recent version of Minetest.=O lugar principal para atopar a versión máis recente de Minetest.
Community wiki: <https://wiki.minetest.net/>=Wiki da comunidade: <https://wiki.minetest.net/>
A community-based documentation website for Minetest. Anyone with an account can edit it! It also features a documentation of Minetest Game.=Un sitio web de documentación baseado na comunidade para Minetest. Calquera persoa que teña unha conta pode editala. Tamén presenta unha documentación de Minetest Game.
Minetest forums: <https://forums.minetest.net/>=Foros de Minetest: <https://forums.minetest.net/>
A web-based discussion platform where you can discuss everything related to Minetest. This is also a place where player-made mods and games are published and discussed. The discussions are mainly in English, but there is also space for discussion in other languages.=Unha plataforma de debate baseada na web onde podes discutir todo o relacionado con Minetest. Este tamén é un lugar onde se publican e discuten as modificacións e os xogos feitos polo xogador. Os debates son principalmente en inglés, pero tamén hai espazo para debater noutros idiomas.
Chat: <irc://irc.freenode.net#minetest>=Chat: <irc://irc.freenode.net#minetest>
A generic Internet Relay Chat channel for everything related to Minetest where people can meet to discuss in real-time. If you do not understand IRC, see the Community Wiki for help.=Unha canle xenérica de Internet Relay Chat para todo o relacionado con Minetest onde a xente pode reunirse para discutir en tempo real. Se non entendes IRC, consulta a Wiki da comunidade para obter axuda.
Groups=Grupos
Items, players and objects (animate and inanimate) can be members of any number of groups. Groups serve multiple purposes:=Os elementos, xogadores e obxectos (animados e inanimados) poden ser membros de calquera número de grupos. Os grupos teñen varios propósitos:
• Crafting recipes: Slots in a crafting recipe may not require a specific item, but instead an item which is a member of a particular group, or multiple groups=• Receitas de elaboración: os espazos nunha receita de elaboración poden non requirir un elemento específico, senón un elemento que é membro dun grupo determinado, ou de varios grupos
• Digging times: Diggable blocks belong to groups which are used to determine digging times. Mining tools are capable of digging blocks belonging to certain groups=• Tempos de escavación: os bloques escavables pertencen a grupos que se utilizan para determinar os tempos de escavación. As ferramentas de minería son capaces de cavar bloques pertencentes a determinados grupos
• Block behavior: Blocks may show a special behaviour and interact with other blocks when they belong to a particular group=• Comportamento do bloque: os bloques poden mostrar un comportamento especial e interactuar con outros bloques cando pertencen a un determinado grupo
• Damage and armor: Objects and players have armor groups, weapons have damage groups. These groups determine damage. See also: “Basics > Weapons”=• Danos e armaduras: os obxectos e os xogadores teñen grupos de armaduras, as armas teñen grupos de danos. Estes grupos determinan os danos. Vexa tamén: "Básico > Armas"
• Other uses=• Outros usos
In the item help, many important groups are usually mentioned and explained.=Na axuda do elemento, adoitan mencionarse e explicar moitos grupos importantes.
Glossary=Glosario
This is a list of commonly used terms:=Esta é unha lista de termos de uso habitual:
Controls:=Controis:
• Wielding: Holding an item in hand=• Empuñando: Sostendo un elemento na man
• Pointing: Looking with the crosshair at something in range=• Apuntar: mirar co punto de mira algo que se atopa no alcance
• Dropping: Throwing an item or item stack to the ground=• Caer: tirar un elemento ou unha pila de elementos ao chan
• Punching: Attacking with left-click, is also used on blocks=• Golpear: atacar co botón esquerdo, tamén se usa en bloques
• Sneaking: Walking slowly while (usually) avoiding to fall over edges=• Furtivamente: Camiñar lentamente mentres (normalmente) evita caer por riba das beiras
• Climbing: Moving up or down a climbable block=• Escalada: subir ou baixar un bloque escalable
Blocks:=Bloques:
• Block: Cubes that the worlds are made of=• Bloque: Cubos dos que están feitos os mundos
• Mining/digging: Using a mining tool to break a block=• Minería/escavación: Usando unha ferramenta de minería para romper un bloque
• Building/placing: Putting a block somewhere=• Construír/colocar: Poñer un bloque nalgún lugar
• Drop: Items you get after mining a block=• Soltar: elementos que obtén despois de minar un bloque
• Using a block: Right-clicking a block to access its special function=• Usando un bloque: premendo co botón dereito nun bloque para acceder á súa función especial
Items:=Elementos:
• Item: A single thing that players can possess=• Elemento: unha única cousa que os xogadores poden posuír
• Item stack: A collection of items of the same kind=• Pila de elementos: unha colección de elementos do mesmo tipo
• Maximum stack size: Maximum amount of items in an item stack=• Tamaño máximo da pila: cantidade máxima de elementos nunha pila de elementos
• Slot / inventory slot: Can hold one item stack=• Slot / slot de inventario: pode albergar unha pila de elementos
• Inventory: Provides several inventory slots for storage=• Inventario: ofrece varios espazos de inventario para almacenamento
• Player inventory: The main inventory of a player=• Inventario de xogadores: o inventario principal dun xogador
• Tool: An item which you can use to do special things with when wielding=• Ferramenta: un elemento co que podes usar para facer cousas especiais ao manexar
• Range: How far away things can be to be pointed by an item=• Rango: ata que punto poden estar as cousas para ser sinaladas por un elemento
• Mining tool: A tool which allows to break blocks=• Ferramenta de minería: unha ferramenta que permite romper bloques
• Craftitem: An item which is (primarily or only) used for crafting=• Artigo de artesanía: un artigo que se usa (principalmente ou só) para elaborar
Gameplay:=Xogo:
• “heart”: A single health symbol, indicates 2 HP=• “corazón”: un único símbolo de saúde, indica 2 HP
• “bubble”: A single breath symbol, indicates 1 BP=• “burbulla”: un só símbolo de respiración, indica 1 BP
• HP: Hit point (equals half 1 “heart”)=• HP: Punto de vida (é igual a metade 1 “corazón”)
• BP: Breath point, indicates breath when diving=• BP: punto de respiración, indica respiración ao mergullar
• Mob: Computer-controlled enemy=• Mob: inimigo controlado por ordenador
• Crafting: Combining multiple items to create new ones=• Elaboración: combinar varios elementos para crear outros novos
• Crafting guide: A helper which shows available crafting recipes=• Guía de elaboración: un axudante que mostra as receitas de elaboración dispoñibles
• Spawning: Appearing in the world=• Desove: Aparece no mundo
• Respawning: Appearing again in the world after death=• Respawning: aparecer de novo no mundo despois da morte
• Group: Puts similar things together, often affects gameplay=• Grupo: reúne cousas semellantes, moitas veces afecta ao xogo
• noclip: Allows to fly through walls=• noclip: Permite voar a través das paredes
Interface=Interface
• Hotbar: Inventory slots at the bottom=• Barra de acceso: espazos de inventario na parte inferior
• Statbar: Indicator made out of half-symbols, used for health and breath=• Statbar: indicador feito de semisímbolos, usado para saúde e respiración
• Minimap: The map or radar at the top right=• Minimapa: o mapa ou o radar na parte superior dereita
• Crosshair: Seen in the middle, used to point at things=• Punto de mira: Visto no medio, usado para sinalar cousas
Online multiplayer:=Multixogador en liña:
• PvP: Player vs Player. If active, players can deal damage to each other=• PvP: Xogador contra xogador. Se están activos, os xogadores poden facerse dano entre eles
• Griefing: Destroying the buildings of other players against their will=• Griefing: Destruír os edificios doutros xogadores contra a súa vontade
• Protection: Mechanism to own areas of the world, which only allows the owners to modify blocks inside=• Protección: Mecanismo para posuír zonas do mundo, que só permite aos propietarios modificar bloques no seu interior
Technical terms:=Termos técnicos:
• Minetest: This game engine=• Minetest: este motor de xogo
• MineClone 2: What you play right now=• MineClone 2: o que xogas agora
• Minetest Game: A game for Minetest by the Minetest developers=• Minetest Game: un xogo para Minetest dos desenvolvedores de Minetest
• Game: A complete playing experience to be used in Minetest; such as a game or sandbox or similar=• Xogo: unha experiencia de xogo completa para usar en Minetest; como un xogo ou unha caixa de area ou semellante
• Mod: A single subsystem which adds or modifies functionality; is the basic building block of games and can be used to further enhance or modify them=• Mod: un único subsistema que engade ou modifica funcionalidades; é o bloque básico dos xogos e pódese usar para melloralos ou modificalos aínda máis
• Privilege: Allows a player to do something=• Privilexio: Permítelle a un xogador facer algo
• Node: Other word for “block”=• Nodo: outra palabra para “bloque”
Settings=Configuración
There is a large variety of settings to configure Minetest. Pretty much every aspect can be changed that way.=Hai unha gran variedade de opcións para configurar Minetest. Case todos os aspectos pódense cambiar dese xeito.
These are a few of the most important gameplay settings:=Estas son algunhas das opcións de xogo máis importantes:
• Damage enabled (enable_damage): Enables the health and breath attributes for all players. If disabled, players are immortal=• Damage enabled (enable_damage): activa os atributos de saúde e respiración para todos os xogadores. Se está desactivado, os xogadores son inmortais
• Creative Mode (creative_mode): Enables sandbox-style gameplay focusing on creativity rather than a challenging gameplay. The meaning depends on the game; usual changes are: Reduced dig times, easy access to almost all items, tools never wear off, etc.=• Modo creativo (creative_mode): permite un xogo estilo sandbox centrándose na creatividade en vez de nun xogo desafiante. O significado depende do xogo; Os cambios habituais son: tempos de escavación reducidos, fácil acceso a case todos os elementos, ferramentas que nunca se desgastan, etc.
• PvP (enable_pvp): Short for “Player vs Player”. If enabled, players can deal damage to each other=• PvP (enable_pvp): abreviatura de "Xogador contra xogador". Se está activado, os xogadores poden causar dano entre eles
For a full list of all available settings, use the “All Settings” dialog in the main menu.=Para obter unha lista completa de todas as opcións dispoñibles, use o diálogo "Todas as opcións" no menú principal.
Movement modes=Modos de movemento
You can enable some special movement modes that change how you move.=Podes activar algúns modos de movemento especiais que cambian a forma de moverte.
Pitch movement mode:=Modo de movemento de ton:
• Description: If this mode is activated, the movement keys will move you relative to your current view pitch (vertical look angle) when you're in a liquid or in fly mode.=• Descrición: se este modo está activado, as teclas de movemento moveránche en relación ao teu tono de vista actual (ángulo de mirada vertical) cando esteas nun líquido ou no modo voo.
• Default key: [L]=• Tecla predeterminada: [L]
• No privilege required=• Non se require ningún privilexio
Fast mode:=Modo rápido:
• Description: Allows you to move much faster. Hold down the the “Use” key [E] to move faster. In the client configuration, you can further customize fast mode.=• Descrición: Permíteche moverte moito máis rápido. Manteña premida a tecla "Usar" [E] para moverse máis rápido. Na configuración do cliente, pode personalizar aínda máis o modo rápido.
• Default key: [J]=• Tecla predeterminada: [J]
• Required privilege: fast=• Privilexio necesario: rápido
Fly mode:=Modo voo:
• Description: Gravity doesn't affect you and you can move freely in all directions. Use the jump key to rise and the sneak key to sink.=• Descrición: a gravidade non che afecta e podes moverte libremente en todas as direccións. Usa a tecla de salto para subir e a tecla de furtivo para afundir.
• Default key: [K]=• Tecla predeterminada: [K]
• Required privilege: fly=• Privilexio necesario: fly
Noclip mode:=Modo Noclip:
• Description: Allows you to move through walls. Only works when fly mode is enabled, too.=• Descrición: Permíteche moverte por paredes. Só funciona cando o modo voo tamén está activado.
• Default key: [H]=• Tecla predeterminada: [H]
• Required privilege: noclip=• Privilexios necesarios: noclip
Console=Consola
With [F10] you can open and close the console. The main use of the console is to show the chat log and enter chat messages or server commands.=Con [F10] pode abrir e pechar a consola. O uso principal da consola é mostrar o rexistro de chat e introducir mensaxes de chat ou comandos do servidor.
Using the chat or server command key also opens the console, but it is smaller and will be closed after you sent a message.=Ao usar a tecla de comando do chat ou do servidor tamén se abre a consola, pero é máis pequena e pecharase despois de enviar unha mensaxe.
Use the chat to communicate with other players. This requires you to have the “shout” privilege.=Usa o chat para comunicarte con outros xogadores. Isto require que teñas o privilexio de "berrar".
Just type in the message and hit [Enter]. Public chat messages can not begin with “/”.=Só tes que escribir a mensaxe e premer [Intro]. As mensaxes de chat público non poden comezar por “/”.
You can send private messages: Say “/msg <player> <message>” in chat to send “<message>” which can only be seen by <player>.=Podes enviar mensaxes privadas: Di "/msg <player> <mensaxe>" no chat para enviar "<mensaxe>" que só pode ver <player>.
There are some special controls for the console:=Hai algúns controis especiais para a consola:
• [F10] Open/close console=• [F10] Abrir/pechar consola
• [Enter]: Send message or command=• [Intro]: enviar mensaxe ou comando
• [Tab]: Try to auto-complete a partially-entered player name=• [Tab]: tenta completar automaticamente un nome de xogador introducido parcialmente
• [Ctrl]+[Left]: Move cursor to the beginning of the previous word=• [Ctrl]+[Esquerda]: move o cursor ao comezo da palabra anterior
• [Ctrl]+[Right]: Move cursor to the beginning of the next word=• [Ctrl]+[Dereita]: move o cursor ao comezo da seguinte palabra
• [Ctrl]+[Backspace]: Delete previous word=• [Ctrl]+[Retroceso]: elimina a palabra anterior
• [Ctrl]+[Delete]: Delete next word=• [Ctrl]+[Eliminar]: elimina a seguinte palabra
• [Ctrl]+[U]: Delete all text before the cursor=• [Ctrl]+[U]: elimina todo o texto antes do cursor
• [Ctrl]+[K]: Delete all text after the cursor=• [Ctrl]+[K]: elimina todo o texto despois do cursor
• [Page up]: Scroll up=• [Arriba páxina]: Desprácese cara arriba
• [Page down]: Scroll down=• [Abaixo páxina]: Desprácese cara abaixo
There is also an input history. Minetest saves your previous console inputs which you can quickly access later:=Tamén hai un historial de entradas. Minetest garda as súas entradas de consola anteriores ás que pode acceder rapidamente máis tarde:
• [Up]: Go to previous entry in history=• [Arriba]: vai á entrada anterior do historial
• [Down]: Go to next entry in history=• [Abaixo]: vai á seguinte entrada do historial
Server commands=Comandos do servidor
Server commands (also called “chat commands”) are little helpers for advanced users. You don't need to use these commands when playing. But they might come in handy to perform some more technical tasks. Server commands work both in multi-player and single-player mode.=Os comandos do servidor (tamén chamados "comandos de chat") son pequenas axudas para os usuarios avanzados. Non necesitas usar estes comandos cando xogas. Pero poden ser útiles para realizar algunhas tarefas máis técnicas. Os comandos do servidor funcionan tanto no modo multixogador como no modo dun xogador.
Server commands can be entered by players using the chat to perform a special server action. There are a few commands which can be issued by everyone, but some commands only work if you have certain privileges granted on the server. There is a small set of basic commands which are always available, other commands can be added by mods.=Os xogadores poden introducir comandos do servidor mediante o chat para realizar unha acción especial do servidor. Hai algúns comandos que poden ser emitidos por todos, pero algúns só funcionan se tes certos privilexios concedidos no servidor. Hai un pequeno conxunto de comandos básicos que sempre están dispoñibles, outros comandos pódense engadir mediante mods.
To issue a command, simply type it like a chat message or press Minetest's command key (default: [/]). All commands have to begin with “/”, for example “/mods”. The Minetest command key does the same as the chat key, except that the slash is already entered.=Para emitir un comando, simplemente escríbeo como unha mensaxe de chat ou prema a tecla de comando de Minetest (predeterminado: [/]). Todos os comandos deben comezar por "/", por exemplo "/mods". A tecla de comando de Minetest fai o mesmo que a tecla de chat, excepto que a barra inclinada xa está introducida.
Commands may or may not give a response in the chat log, but errors will generally be shown in the chat. Try it for yourselves: Close this window and type in the “/mods” command. This will give you the list of available mods on this server.=Os comandos poden ou non dar unha resposta no rexistro de chat, pero os erros xeralmente mostraranse no chat. Probeo por vós mesmos: pecha esta xanela e escriba o comando "/mods". Isto darache a lista de modificacións dispoñibles neste servidor.
“/help all” is a very important command: You get a list of all available commands on the server, a short explanation and the allowed parameters. This command is also important because the available commands often differ per server.="/help all" é un comando moi importante: obtén unha lista de todos os comandos dispoñibles no servidor, unha pequena explicación e os parámetros permitidos. Este comando tamén é importante porque os comandos dispoñibles a miúdo difiren por servidor.
Commands are followed by zero or more parameters.=Os comandos van seguidos de cero ou máis parámetros.
In the command reference, you see some placeholders which you need to replace with an actual value. Here's an explanation:=Na referencia do comando, ves algúns marcadores de posición que debes substituír por un valor real. Aquí tes unha explicación:
• Text in greater-than and lower-than signs (e.g. “<param>”): Placeholder for a parameter=• Texto en signos de maior e menor que (por exemplo, “<param>”): marcador de posición para un parámetro
• Anything in square brackets (e.g. “[text]”) is optional and can be omitted=• Calquera cousa entre corchetes (por exemplo, “[texto]”) é opcional e pódese omitir
• Pipe or slash (e.g. “text1 | text2 | text3”): Alternation. One of multiple texts must be used (e.g. “text2”)=• Tubo ou barra (por exemplo, "texto1 | texto2 | texto3"): alternancia. Debe utilizarse un dos varios textos (por exemplo, "text2")
• Parenthesis: (e.g. “(word1 word2) | word3”): Groups multiple words together, used for alternations=• Paréntese: (p. ex. “(palabra1 palabra2) | palabra3”): agrupa varias palabras, usadas para alternar
• Everything else is to be read as literal text=• Todo o demais debe ser lido como texto literal
Here are some examples to illustrate the command syntax:=Aquí tes algúns exemplos para ilustrar a sintaxe do comando:
• /mods: No parameters. Just enter “/mods”=• /mods: sen parámetros. Só tes que introducir "/mods"
• /me <action>: 1 parameter. You have to enter “/me ” followed by any text, e.g. “/me orders pizza”=• /me <acción>: 1 parámetro. Tes que introducir "/me" seguido de calquera texto, p. ex. "/pido pizza"
• /give <name> <ItemString>: Two parameters. Example: “/give Player default:apple”=• /give <nome> <ItemString>: dous parámetros. Exemplo: "/dar o predeterminado do reprodutor: apple"
• /help [all|privs|<cmd>]: Valid inputs are “/help”, “/help all”, “/help privs”, or “/help ” followed by a command name, like “/help time”=• /help [all|privs|<cmd>]: as entradas válidas son “/help”, “/help all”, “/help privs” ou “/help ” seguidas dun nome de comando, como “/help time”
• /spawnentity <EntityName> [<X>,<Y>,<Z>]: Valid inputs include “/spawnentity boats:boat” and “/spawnentity boats:boat 0,0,0”=• /spawnentity <EntityName> [<X>,<Y>,<Z>]: as entradas válidas inclúen “/spawnentity boats:boat” e “/spawnentity boats:boat 0,0,0”
Some final remarks:=Algunhas observacións finais:
• For /give and /giveme, you need an itemstring. This is an internally used unique item identifier which you may find in the item help if you have the “give” or “debug” privilege=• Para /give e /giveme, necesitas unha cadea de elementos. Este é un identificador de elemento único de uso interno que podes atopar na axuda do elemento se tes o privilexio de "dar" ou "depurar"
• For /spawnentity you need an entity name, which is another identifier=• Para /spawnentity necesitas un nome de entidade, que é outro identificador
Privileges=Privilexios
Each player has a set of privileges, which differs from server to server. Your privileges determine what you can and can't do. Privileges can be granted and revoked from other players by any player who has the privilege called “privs”.=Cada xogador ten un conxunto de privilexios, que varían dun servidor a outro. Os teus privilexios determinan o que podes e non podes facer. Os privilexios poden ser concedidos e revogados a outros xogadores por calquera xogador que teña o privilexio chamado "privs".
On a multiplayer server with the default configuration, new players start with the privileges called “interact” and “shout”. The “interact” privilege is required for the most basic gameplay actions such as building, mining, using, etc. The “shout” privilege allows to chat.=Nun servidor multixogador coa configuración predeterminada, os novos xogadores comezan cos privilexios chamados "interactuar" e "gritar". O privilexio de "interactuar" é necesario para as accións de xogo máis básicas, como construír, minar, usar, etc. O privilexio de "gritar" permite chatear.
There is a small set of core privileges which you'll find on every server, other privileges might be added by mods.=Hai un pequeno conxunto de privilexios principais que atoparás en cada servidor, outros privilexios poden ser engadidos por mods.
To view your own privileges, issue the server command “/privs”.=Para ver os seus propios privilexios, emita o comando do servidor "/privs".
Here are a few basic privilege-related commands:=Aquí tes algúns comandos básicos relacionados cos privilexios:
• /privs: Lists your privileges=• /privs: enumera os teus privilexios
• /privs <player>: Lists the privileges of <player>=• /privs <player>: lista os privilexios de <player>
• /help privs: Shows a list and description about all privileges=• /help privs: mostra unha lista e unha descrición sobre todos os privilexios
Players with the “privs” privilege can modify privileges at will:=Os xogadores co privilexio "privs" poden modificar os privilexios a vontade:
• /grant <player> <privilege>: Grant <privilege> to <player>=• /grant <xogador> <privilexio>: concede <privilexio> a <xogador>
• /revoke <player> <privilege>: Revoke <privilege> from <player>=• /revoke <xogador> <privilexio>: revoga <privilexio> de <xogador>
In single-player mode, you can use “/grantme all” to unlock all abilities.=No modo para un xogador, podes usar "/grantme all" para desbloquear todas as habilidades.
Light=Luz
As the world is entirely block-based, so is the light in the world. Each block has its own brightness. The brightness of a block is expressed in a “light level” which ranges from 0 (total darkness) to 15 (as bright as the sun).=Como o mundo está totalmente baseado en bloques, tamén o é a luz do mundo. Cada bloque ten o seu propio brillo. O brillo dun bloque exprésase nun "nivel de luz" que varía de 0 (escuridade total) a 15 (tan brillante como o sol).
There are two types of light: Sunlight and artificial light.=Hai dous tipos de luz: luz solar e luz artificial.
Artificial light is emitted by luminous blocks. Artificial light has a light level from 1-14.=A luz artificial é emitida por bloques luminosos. A luz artificial ten un nivel de luz de 1-14.
Sunlight is the brightest light and always goes perfectly straight down from the sky at each time of the day. At night, the sunlight will become moonlight instead, which still provides a small amount of light. The light level of sunlight is 15.=A luz do sol é a luz máis brillante e sempre baixa perfectamente directamente desde o ceo a cada hora do día. Pola noite, a luz solar converterase en luz da lúa, que aínda proporciona unha pequena cantidade de luz. O nivel luminoso da luz solar é 15.
Blocks have 3 levels of transparency:=Os bloques teñen 3 niveis de transparencia:
• Transparent: Sunlight goes through limitless, artificial light goes through with losses=• Transparente: a luz solar pasa sen límites, a artificial pasa con perdas
• Semi-transparent: Sunlight and artificial light go through with losses=• Semitransparente: a luz solar e artificial atravesan con perdas
• Opaque: No light passes through=• Opaco: non pasa luz
Artificial light will lose one level of brightness for each transparent or semi-transparent block it passes through, until only darkness remains (image 1).=A luz artificial perderá un nivel de brillo por cada bloque transparente ou semitransparente polo que atravesa, ata que só quede escuridade (imaxe 1).
Sunlight will preserve its brightness as long it only passes fully transparent blocks. When it passes through a semi-transparent block, it turns to artificial light. Image 2 shows the difference.=A luz solar conservará o seu brillo mentres só pase bloques totalmente transparentes. Cando pasa por un bloque semitransparente, convértese en luz artificial. A imaxe 2 mostra a diferenza.
Note that “transparency” here only means that the block is able to carry brightness from its neighboring blocks. It is possible for a block to be transparent to light but you can't see trough the other side.=Teña en conta que "transparencia" aquí só significa que o bloque é capaz de levar o brillo dos seus bloques veciños. É posible que un bloque sexa transparente á luz pero non se ve polo outro lado.
Coordinates=Coordenadas
The world is a large cube. And because of this, a position in the world can be easily expressed with Cartesian coordinates. That is, for each position in the world, there are 3 values X, Y and Z.=O mundo é un gran cubo. E por iso, unha posición no mundo pódese expresar facilmente con coordenadas cartesianas. É dicir, para cada posición no mundo, hai 3 valores X, Y e Z.
Like this: (5, 45, -12)=Así: (5, 45, -12)
This refers to the position where X@=5, Y@=45 and Z@=-12. The 3 letters are called “axes”: Y is for the height. X and Z are for the horizontal position.=Isto refírese á posición onde X@=5, Y@=45 e Z@=-12. As 3 letras chámanse "eixes": Y é para a altura. X e Z son para a posición horizontal.
The values for X, Y and Z work like this:=Os valores de X, Y e Z funcionan así:
• If you go up, Y increases=• Se sobes, Y aumenta
• If you go down, Y decreases=• Se baixas, Y diminúe
• If you follow the sun, X increases=• Se segues o sol, X aumenta
• If you go to the reverse direction, X decreases=• Se vai en sentido inverso, X diminúe
• Follow the sun, then go right: Z increases=• Segue o sol, logo vai á dereita: Z aumenta
• Follow the sun, then go left: Z decreases=• Segue o sol, despois vai á esquerda: Z diminúe
• The side length of a full cube is 1=• A lonxitude do lado dun cubo completo é 1
You can view your current position in the debug screen (open with [F5]).=Podes ver a túa posición actual na pantalla de depuración (abre con [F5]).
# MCL2 extensions
Creative Mode=Modo creativo
Enabling Creative Mode in MineClone 2 applies the following changes:=Activar o modo creativo en MineClone 2 aplica os seguintes cambios:
• You keep the things you've placed=• Gardas as cousas que colocaches
• Creative inventory is available to obtain most items easily=• O inventario creativo está dispoñible para obter a maioría dos elementos facilmente
• Hand breaks all default blocks instantly=• A man rompe todos os bloques predeterminados ao instante
• Greatly increased hand pointing range=• Aumentou moito o rango de apuntamento da man
• Mined blocks don't drop items=• Os bloques extraídos non soltan elementos
• Items don't get used up=• Os elementos non se esgotan
• Tools don't wear off=• As ferramentas non se desgastan
• You can eat food whenever you want=• Podes comer cando queiras
• You can always use the minimap (including radar mode)=• Sempre podes usar o minimapa (incluído o modo radar)
Damage is not affected by Creative Mode, it needs to be disabled separately.=Os danos non se ven afectados polo modo creativo, é necesario desactivalo por separado.
Mobs=
Mobs are the living beings in the world. This includes animals and monsters.=As turbas son os seres vivos do mundo. Isto inclúe animais e monstros.
Mobs appear randomly throughout the world. This is called “spawning”. Each mob kind appears on particular block types at a given light level. The height also plays a role. Peaceful mobs tend to spawn at daylight while hostile ones prefer darkness. Most mobs can spawn on any solid block but some mobs only spawn on particular blocks (like grass blocks).=As turbas aparecen ao azar en todo o mundo. Isto chámase "desove". Cada tipo de mafia aparece en tipos de bloques particulares nun nivel de luz dado. A altura tamén xoga un papel. As turbas pacíficas tenden a aparecer á luz do día mentres que as hostís prefiren a escuridade. A maioría dos mobs poden xerarse en calquera bloque sólido, pero algúns mobs só aparecen en bloques particulares (como bloques de herba).
Like players, mobs have hit points and sometimes armor points, too (which means you need better weapons to deal any damage at all). Also like players, hostile mobs can attack directly or at a distance. Mobs may drop random items after they die.=Do mesmo xeito que os xogadores, os mobs teñen puntos de vida e ás veces tamén puntos de armadura (o que significa que necesitas mellores armas para causar calquera dano). Tamén como os xogadores, as turbas hostís poden atacar directamente ou a distancia. As turbas poden soltar elementos aleatorios despois de morrer.
Most animals roam the world aimlessly while most hostile mobs hunt players. Animals can be fed, tamed and bred.=A maioría dos animais percorren o mundo sen rumbo, mentres que a maioría das turbas hostís cazan aos xogadores. Os animais poden ser alimentados, domesticados e criados.
Animals=Animais
Animals are peaceful beings which roam the world aimlessly. You can feed, tame and breed them.=Os animais son seres pacíficos que deambulan polo mundo sen rumbo. Podes alimentalos, domesticalos e crialos.
Feeding:=Alimentación:
Each animal has its own taste for food and doesn't just accept any food. To feed, hold an item in your hand and rightclick the animal.=Cada animal ten o seu propio gusto pola comida e non só acepta calquera alimento. Para alimentarse, manteña un elemento na man e fai clic co botón dereito no animal.
Animals are attraced to the food they like and follow you as long you hold the food item in hand.=Os animais son atraídos pola comida que lles gusta e séguente mentres tes a comida na man.
Feeding an animal has three uses: Taming, healing and breeding.=Alimentar a un animal ten tres usos: domar, curar e criar.
Feeding heals animals instantly, depending on the quality of the food item.=A alimentación cura aos animais ao instante, dependendo da calidade do alimento.
Taming:=Domar:
A few animals can be tamed. You can generally do more things with tamed animals and use other items on them. For example, tame horses can be saddled and tame wolves fight on your side.=Algúns animais poden ser domesticados. En xeral, podes facer máis cousas con animais domesticados e usar outros elementos neles. Por exemplo, os cabalos mansos poden ser ensillados e os lobos mansos pelexan ao teu lado.
Breeding:=Cría:
When you have fed an animal up to its maximum health, then feed it again, you will activate “Love Mode” and many hearts appear around the animal.=Cando teñas alimentado un animal ata a súa saúde máxima, despois aliméntalo de novo, activarás o "Modo de amor" e aparecerán moitos corazóns ao redor do animal.
Two animals of the same species will start to breed if they are in Love Mode and close to each other. Soon a baby animal will pop up.=Dous animais da mesma especie comezarán a reproducirse se están en Modo Amor e preto un do outro. Axiña aparecerá un bebé animal.
Baby animals:=Animais bebés:
Baby animals are just like their adult couterparts, but they can't be tamed or bred and don't drop anything when they die. They grow to adults after a short time. When fed, they grow to adults faster.=Os animais bebés son como os seus homólogos adultos, pero non poden ser domesticados nin criados e non deixan caer nada cando morren. Crecen ata adultos despois de pouco tempo. Cando se alimentan, chegan a ser adultos máis rápido.
Hunger=fame
Hunger affects your health and your ability to sprint. Hunger is not in effect when damage is disabled.=A fame afecta a túa saúde e a túa capacidade para esprintar. A fame non está en vigor cando o dano está desactivado.
Core hunger rules:=Regras básicas da fame:
• You start with 20/20 hunger points (more points @= less hungry)=• Comezas con 20/20 puntos de fame (máis puntos @= menos fame)
• Actions like combat, jumping, sprinting, etc. decrease hunger points=• Accións como combate, saltos, sprints, etc. diminúen os puntos de fame
• Food restores hunger points=• A comida restaura os puntos de fame
• If your hunger bar decreases, you're hungry=• Se a barra da fame diminúe, tes fame
• At 18-20 hunger points, you regenerate 1 HP every 4 seconds=• Aos 18-20 puntos de fame, rexeneras 1 HP cada 4 segundos
• At 6 hunger points or less, you can't sprint=• Con 6 puntos de fame ou menos, non podes esprintar
• At 0 hunger points, you lose 1 HP every 4 seconds (down to 1 HP)=• Con 0 puntos de fame, perdes 1 HP cada 4 segundos (ata 1 HP)
• Poisonous food decreases your health=• A comida velenosa diminúe a túa saúde
Details:=Detalles:
You have 0-20 hunger points, indicated by 20 drumstick half-icons above the hotbar. You also have an invisible attribute: Saturation.=Tes 0-20 puntos de fame, indicados por 20 medias iconas de baqueta enriba da barra activa. Tamén tes un atributo invisible: Saturación.
Hunger points reflect how full you are while saturation points reflect how long it takes until you're hungry again.=Os puntos de fame reflicten o cheo que estás mentres que os de saturación reflicten o tempo que leva ata que tes fame de novo.
Each food item increases both your hunger level as well your saturation.=Cada alimento aumenta tanto o teu nivel de fame como a túa saturación.
Food with a high saturation boost has the advantage that it will take longer until you get hungry again.=A comida cun aumento de saturación elevado ten a vantaxe de que tardará máis tempo en volver pasar fame.
A few food items might induce food poisoning by chance. When you're poisoned, the health and hunger symbols turn sickly green. Food poisoning drains your health by 1 HP per second, down to 1 HP. Food poisoning also drains your saturation. Food poisoning goes away after a while or when you drink milk.=Algúns alimentos poden provocar unha intoxicación alimentaria por casualidade. Cando estás envelenado, os símbolos de saúde e fame vólvense verdes enfermizos. A intoxicación alimentaria drena a túa saúde en 1 HP por segundo, ata 1 HP. A intoxicación alimentaria tamén drena a túa saturación. A intoxicación alimentaria desaparece despois dun tempo ou cando toma leite.
You start with 5 saturation points. The maximum saturation is equal to your current hunger level. So with 20 hunger points your maximum saturation is 20. What this means is that food items which restore many saturation points are more effective the more hunger points you have. This is because at low hunger levels, a lot of the saturation boost will be lost due to the low saturation cap.=Comeza con 5 puntos de saturación. A saturación máxima é igual ao teu nivel de fame actual. Entón, con 20 puntos de fame, a túa saturación máxima é de 20. Isto significa que os alimentos que restauran moitos puntos de saturación son máis efectivos cantos máis puntos de fame teñas. Isto débese a que a baixos niveis de fame perderase gran parte do aumento da saturación debido ao baixo límite de saturación.
If your saturation reaches 0, you're hungry and start to lose hunger points. Whenever you see the hunger bar decrease, it is a good time to eat.=Se a túa saturación chega a 0, tes fame e comezas a perder puntos de fame. Sempre que vexas diminuír a barra da fame, é un bo momento para comer.
Saturation decreases by doing things which exhaust you (highest exhaustion first):=A saturación diminúe ao facer cousas que che esgotan (o esgotamento máis alto primeiro):
• Regenerating 1 HP=• Rexenerando 1 HP
• Suffering food poisoning=• Sufrir intoxicación alimentaria
• Sprint-jumping=• Sprint-salto
• Sprinting=• Sprintar
• Attacking=• Atacar
• Taking damage=• Levar danos
• Swimming=• Natación
• Jumping=• Saltar
• Mining a block=• Minar un bloque
Other actions, like walking, do not exaust you.=Outras accións, como andar, non te esgotan.
If you have a map item in any of your hotbar slots, you can use the minimap.=Se tes un elemento do mapa nalgunha das túas ranuras da barra activa, podes usar o minimapa.

View File

@ -1,48 +0,0 @@
# textdomain: mcl_tt
Head armor=Armadura de cabeza
Torso armor=Armadura do torso
Legs armor=Armadura de pernas
Feet armor=Armadura de pés
Armor points: @1=Puntos de armadura: @1
Armor durability: @1=Durabilidade da armadura: @1
Protection: @1%=Protección: @1%
Hunger points: +@1=Puntos de fame: +@1
Saturation points: +@1=Puntos de saturación: +@1
Deals damage when falling=Causa dano ao caer
Grows on grass blocks or dirt=Crece en bloques de herba ou terra estéril
Grows on grass blocks, podzol, dirt or coarse dirt=Crece en bloques de herba, podzol, sucidade ou terra estéril
Flammable=Inflamable
Zombie view range: -50%=Rango de visión zombi: -50%
Skeleton view range: -50%=Rango de visión de esqueleto: -50%
Stalker view range: -50%=Rango de visión de acosador: -50%
Damage: @1=Dano: @1
Damage (@1): @2=Dano (@1): @2
Healing: @1=Curación: @1
Healing (@1): @2=Curación (@1): @2
Full punch interval: @1s=Intervalo de golpe completo: @1s
Contact damage: @1 per second=Dano por contacto: @1 por segundo
Contact healing: @1 per second=Curación por contacto: @1 por segundo
Drowning damage: @1=Dano por afogamento: @1
Bouncy (@1%)=Rebota (@1%)
Luminance: @1=Luminancia: @1
Slippery=Escorregadizo
Climbable=Escalable
Climbable (only downwards)=Escalable (só cara abaixo)
No jumping=Non saltar
No swimming upwards=Non nadar cara arriba
No rising=Non erguer
Fall damage: @1%=Dano por caída: @1%
Fall damage: +@1%=Dano por caída: @1%
No fall damage=Sen dano por caída
Mining speed: @1=Velocidade de minería: @1
Very fast=Moi rápido
Extremely fast=Extremadamente rápido
Fast=Rápido
Slow=Lento
Very slow=Moi lento
Painfully slow=Dolorosamente lento
Block breaking strength: @1=Forza para romper bloques: @1
@1 uses=@1 usos
Unlimited uses=Usos ilimitados
Durability: @1=Durabilidade: @1
...stacks=...pilas

View File

@ -1,71 +0,0 @@
# textdomain:awards
@1/@2 chat messages=@1/@2 mensaxes de chat
@1/@2 crafted=@1/@2 elaborado
@1/@2 deaths=@1/@2 mortes
@1/@2 dug=@1/@2 cavado
@1/@2 game joins=@1/@2 unións ao xogo
@1/@2 placed=@1/@2 colocado
@1 (got)=@1 (conseguido)
@1: @2=@1: @2
@1s awards:=Premios de @1:
(Secret Advancement)=(Avance secreto)
<achievement ID>=<ID de logro>
<name>=<nome>
Advancement Made!=¡Avance feito!
Advancement Made:=Avance realizado:
Advancement: @1=Avance: @1
Achievement not found.=Non se atopou o logro.
All your awards and statistics have been cleared. You can now start again.=Limpáronse todos os teus premios e estatísticas. Agora podes comezar de novo.
Awards=Premios
Craft: @1×@2=Elaboración: @1×@2
Craft: @1=Elaboración: @1
Die @1 times.=Morre @1 veces.
Die.=Morre.
Get the achievements statistics for the given player or yourself=Obtén as estatísticas de logros para o xogador ou ti mesmo
Join the game @1 times.=Únete ao xogo @1 veces.
Join the game.=Únete ao xogo.
List awards in chat (deprecated)=Únete ao xogo.
Place a block: @1=Coloca un bloque: @1
Place blocks: @1×@2=Colocar bloques: @1×@2
Secret Advancement Made!=Avance secreto feito!
Secret Advancement Made:=Avance secreto feito:
Secret Advancement Made: @1=Avance secreto realizado: @1
Show details of an achievement=Mostrar detalles dun logro
Show, clear, disable or enable your advancements.=Mostrar, borrar, desactivar ou activar os seus avances.
Make this advancement to find out what it is.=Fai este avance para descubrir o que é.
Write @1 chat messages.=Escribe @1 mensaxes de chat.
Write something in chat.=Escribe algo no chat.
You have disabled your advancements.=Desactivaches os teus avances.
You have enabled your advancements.=Activaches os teus avances.
You have not gotten any awards.=Non conseguiches ningún premio.
You've disabled awards. Type /awards enable to reenable.=Desactivaches os premios. Escriba /awards enable para volver activar.
[c|clear|disable|enable]=[c|borrar|desactivar|activar]
OK=Ben
Error: No awards available.=Erro: non hai premios dispoñibles.
Eat: @1×@2=Comer: @1×@2
Eat: @1=Comer: @1
@1/@2 eaten=@1/@2 comido
Place @1 block(s).=Coloca @1 bloque(s).
Dig @1 block(s).=Cavar @1 bloque(s).
Eat @1 item(s).=Coma @1 elemento(s).
Craft @1 item(s).=Elabora @1 elemento(s).
Can give advancements to any player=Pode dar avances a calquera xogador
(grant <player> (<advancement> | all)) | list=(conceder <xogador> (<avance> | todos)) | lista
Give advancement to player or list all advancements=Dálle un avance ao xogador ou enumera todos os avances
@1 (@2)=@1 (@2)
Invalid syntax.=Sintaxe non válida.
Invalid action.=Acción non válida.
Player is not online.=O xogador non está en liña.
Done.=Feito.
Advancement “@1” does not exist.=O avance “@1” non existe.
@1 has made the advancement @2=@1 fixo o avance @2
Mine a block: @1=Mina un bloque: @1
Mine blocks: @1×@2=Bloques de mina: @1×@2
Awards are disabled, enable them first by using /awards enable!=¡Os premios están desactivados, actívaos primeiro usando /awards enable!
Goal Completed:=Obxectivo conseguido:
Goal Completed!=¡Obxectivo cumprido!
Goal Completed: @1=Obxectivo conseguido: @1
Challenge Completed:=Desafío completado:
Challenge Completed!=¡Desafío completado!
Challenge Completed: @1=Desafío completado: @1

View File

@ -330,16 +330,9 @@ function hb.change_hudbar(player, identifier, new_value, new_max_value, new_icon
local name = player:get_player_name() local name = player:get_player_name()
local hudtable = hb.get_hudtable(identifier) local hudtable = hb.get_hudtable(identifier)
-- hb.change_hudbar may be called with a non-existing hudbar like hunger.
if hudtable == nil then
return false
end
if not hudtable.hudstate[name] then if not hudtable.hudstate[name] then
return false return false
end end
local value_changed, max_changed = false, false local value_changed, max_changed = false, false
if new_value then if new_value then

View File

@ -1,4 +0,0 @@
# textdomain: hudbars
Health=Saude
Breath=Alento
@1: @2/@3=@1: @2/@3

View File

@ -1,118 +0,0 @@
# textdomain:mcl_achievements
Acquire Hardware=Adquirir hardware
Bake Bread=Cocer pan
Benchmarking=Crea a tu mesa de traballo
Cow Tipper=Volquete de vacas
Craft a bookshelf.=Elaborar unha estantería.
Craft a cake using wheat, sugar, milk and an egg.=Elabora un bolo con trigo, azucre, leite e un ovo.
Craft a crafting table from 4 wooden planks.=Elabora unha mesa de elaboración a partir de 4 táboas de madeira.
Craft a stone pickaxe using sticks and cobblestone.=Elabora un pico de pedra usando paus e rochas.
Craft a wooden sword using wooden planks and sticks on a crafting table.=Elabora unha espada de madeira usando táboas e paus de madeira nunha mesa de traballo.
DIAMONDS!=¡DIAMANTES!
Delicious Fish=Peixe delicioso
Dispense With This=Prescindir disto
Eat a cooked porkchop.=Coma unha chuleta de porco cocida.
Eat a cooked rabbit.=Coma un coello cocido.
Get really desperate and eat rotten flesh.=Desesperate moito e come carne podre.
Getting Wood=Conseguindo madeira
Getting an Upgrade=Obtendo unha actualización
Hit a skeleton, wither skeleton or stray by bow and arrow from a distance of at least 20 meters.=Golpear un esqueleto, murchar o esqueleto ou desviarse con arco e frecha desde unha distancia de polo menos 20 metros.
Hot Topic=Tema candente
Into Fire=No lume
We Need to Go Deeper=Necesitamos Afondar
Into the Nether=No abismo
Iron Belly=Barriga de Ferro
Librarian=Bibliotecario
Mine emerald ore.=Mina de esmeralda.
On A Rail=Nun carril
Pick up a blaze rod from the floor.=Colle unha vara de lume do chan.
Pick up a diamond from the floor.=Colle un diamante do chan.
Pick up a wood item from the ground.@nHint: Punch a tree trunk until it pops out as an item.=Colle un obxecto de madeira do chan.@nSuxestión: golpea o tronco dunha árbore ata que saia como elemento.
Pick up leather from the floor.@nHint: Cows and some other animals have a chance to drop leather, when killed.=Colle coiro do chan.@nSuxestión: as vacas e algúns outros animais teñen a oportunidade de soltar coiro cando os matan.
Place a dispenser.=Coloca un dispensador.
Place a flower pot.=Coloca unha maceta.
Pork Chop=Costela de porco
Pot Planter=Xardineiro
Rabbit Season=Tempada dos coellos
Sniper Duel=Duelo de arqueiros
Take a cooked fish from a furnace.@nHint: Use a fishing rod to catch a fish and cook it in a furnace.=Saca un peixe cocido dun forno.@nSuxestión: usa unha cana de pescar para coller un peixe e cociñalo nun forno.
Take an iron ingot from a furnace's output slot.@nHint: To smelt an iron ingot, put a fuel (like coal) and iron ore into a furnace.=Colle un lingote de ferro da ranura de saída dun forno.@nSuxestión: para fundir un lingote de ferro, pon un combustible (como o carbón) e mineral de ferro nun forno.
The Haggler=O regateador
The Lie=A mentira
Time to Farm!=¡Tempo de cultivar!
Time to Mine!=¡Tempo de minar!
Time to Strike!=¡Tempo de atacar!
Travel by minecart for at least 1000 meters from your starting point in a single ride.=Viaxa en carretilla durante polo menos 1000 metros desde o punto de partida nun só paseo.
Use 8 cobblestones to craft a furnace.=Usa 8 rochas para fabricar un forno.
Use a crafting table to craft a wooden hoe from wooden planks and sticks.=Usa unha mesa de traballo para elaborar unha aixada de madeira a partir de táboas e paus de madeira.
Use a crafting table to craft a wooden pickaxe from wooden planks and sticks.=Usa unha mesa de traballo para elaborar un pico de madeira a partir de táboas e paus de madeira.
Use obsidian and a fire starter to construct a Nether portal.=Usa obsidiana e un iniciador de lume para construír un portal Nether.
Use wheat to craft a bread.=Usa o trigo para elaborar un pan.
Who is Cutting Onions?=¿Quen está cortando cebolas?
Pick up a crying obsidian from the floor.=Colle unha obsidiana chorando do chan.
Hidden in the Depths=Oculto nas profundidades
Pick up an Ancient Debris from the floor.=Colle un restos antigos do chan.
The Nether=El Nether
Bring summer clothes.@nHint: Enter the Nether.=Trae roupa de verán.@nSuxestión: Entra no Nether.
Isn't It Iron Pick=¿Non e ferrónico?
Craft a iron pickaxe using sticks and iron.=Elabora un pico de ferro usando paus e ferro.
Postmortal=Post mortem
Use a Totem of Undying to cheat death.=Usa un Totem of Eternidade para enganar a morte.
Sweet Dreams=Doces soños
Sleep in a bed to change your respawn point.=Durme nunha cama para cambiar o seu punto de reaparición.
Not Quite "Nine" Lives=Non son "Nove" vidas
Charge a Respawn Anchor to the maximum.=Carga unha áncora de reaparición ao máximo.
What A Deal!=¡Qué negocio!
Successfully trade with a Villager.=Comercio con éxito cun aldeano.
Withering Heights=Alturas marchitas
Summon the wither from the dead.=Invoca o murcho de entre os mortos.
The Cutest Predator=O depredador máis bonito
Catch an Axolotl with a bucket!=¡Atrapa un axolote cun cubo!
Fishy Business=Negocios de pesca
Catch a fish.@nHint: Catch a fish, salmon, clownfish, or pufferfish.=Atrapa un peixe.@nSuxerencia: Atrapa un peixe, salmón, peixe paiaso, ou peixe globo.
Country Lode, Take Me Home=Magnetita lévame ao lar
Use a compass on a Lodestone.=Usa un compás sobre una magnetita
Serious Dedication=Dedicación seria
Use a Netherite Ingot to upgrade a hoe, and then completely reevaluate your life choices.=Usa un lingote de Netherite para actualizar unha aixada e, a continuación, reavalia completamente as túas opcións de vida.
Local Brewery=Cervexaría local
Brew a Potion.@nHint: Take a potion or glass bottle out of the brewing stand.=PPrepara unha poción.@nSuxestión: Saca unha poción ou unha botella de vidro do posto de elaboración.
Enchanter=Encantador
Enchant an item using an Enchantment Table.=Encanta un elemento usando unha táboa de encantamentos.
Bring Home the Beacon=Fágase a luz
Use a beacon.=Usa unha baliza.
Beaconator=Balizaneitor
Use a fully powered beacon.=Utiliza unha baliza a máxima potencia.
The Next Generation=A próxima xeración
Hold the Dragon Egg.@nHint: Pick up the egg from the ground and have it in your inventory.=Manteña o ovo de dragón.@nConsello: colle o ovo do chan e téñao no teu inventario.
The End... Again...=O final... de novo...
Respawn the Ender Dragon.=Volta a invocar ao dragón final.
Sky's the Limit=O ceo é o límite
Find the elytra and prepare to fly above and beyond!=¡Busca os élitros e prepárate para voar máis aló!
Free the End=Libera o final
Kill the ender dragon. Good Luck!=Mata o dragón final. Moita sorte!
Bee Our Guest=Abelante, este e o teu fogar
Use a campfire to collect a bottle of honey from a beehive without aggrivating the bees inside.=Usa unha fogueira para recoller unha botella de mel dunha colmea sen agravar as abellas dentro.
Total Beelocation=Abellémonos de aquí
Move a bee nest, with 3 bees inside, using a silk touch enchanted tool.=Move un niño de abellas, con 3 abellas dentro, usando unha ferramenta encantada de toque de seda.
Wax On=Encerando ando
Apply honeycomb to a copper block to protect it from the elements.=Aplique panal a un bloque de cobre para protexelo dos elementos.
Wax Off=Pulir cera
Scrape wax off of a copper block.=Raspe a cera dun bloque de cobre.
The End?=¿O fin?
Or the beginning?@nHint: Enter an end portal.=¿Ou o comezo?@nConsello: Entra nun portal final.
Stone Age=Idade de Pedra
Mine a stone with new pickaxe.=Mina unha pedra co pico novo.
Ice Bucket Challenge=Desafío de balde de xeo
Obtain an obsidian block.=Obter un bloque de obsidiana.
Hot Stuff=¡Cousas quentes!
Put lava in a bucket.=Poñer lava nun balde.
Hero of the Village=Heroe da aldea
Successfully defend a village from a raid=Defende con éxito unha aldea dunha incursión
Voluntary Exile=Exilio Voluntario
Kill a raid captain. Maybe consider staying away from the local villages for the time being...=Mata a un capitán de ataque. Quizais considere manterse lonxe das aldeas locais polo momento..
Tactical Fishing=Pesca táctica
Catch a fish... without a fishing rod!=Atrapa un peixe... ¡sen unha cana de pescar!
Crafting a New Look=Creando un novo aspecto
Craft a trimmed armor at a Smithing Table=Elabora unha armadura recortada nunha mesa de forxa
Smithing with Style=Forxando con estilo
Apply these smithing templates at least once: Spire, Snout, Rib, Ward, Silence, Vex, Tide, Wayfinder=Aplica polo menos unha vez estes modelos de ferraxe: agullas, fuciño, costelas, gardián, silencio, vex, mareas, pionero

View File

@ -1,14 +0,0 @@
# textdomain: mcl_credits
3D Models=Modelos 3D
A faithful Open Source clone of Minecraft=Un fiel clon de código aberto de Minecraft
Contributors=Un fiel clon de código aberto de Minecraft
Creator of MineClone=Un fiel clon de código aberto de Minecraft
Creator of VoxeLibre=Creador de VoxeLibre
Developers=Desenvolvedores
Jump to speed up (additionally sprint)=Ir para acelerar (adicionalmente sprint)
Maintainers=Ir para acelerar (adicionalmente sprint)
MineClone5=MineClone5
Original Mod Authors=Autores do mod orixinal
Sneak to skip=Escalar para saltar
Textures=Texturas
Translations=Traducións

View File

@ -1,55 +0,0 @@
# textdomain: mcl_death_messages
@1 went up in flames=@1 ardeu en chamas
@1 walked into fire whilst fighting @2=@1 entrou no lume mentres loitaba contra @2
@1 was struck by lightning=@1 foi alcanzado por un raio
@1 was struck by lightning whilst fighting @2=@1 foi alcanzado por un raio mentres loitaba contra @2
@1 burned to death=@1 morreu queimado
@1 was burnt to a crisp whilst fighting @2=@1 queimouse ata queimada mentres loitaba contra @2
@1 tried to swim in lava=@1 intentou nadar na lava
@1 tried to swim in lava to escape @2=@1 intentou nadar na lava para escapar @2
@1 discovered the floor was lava=@1 descubriu que o chan era lava
@1 walked into danger zone due to @2=@1 entrou na zona de perigo debido a @2
@1 suffocated in a wall=@1 asfixiado nunha parede
@1 suffocated in a wall whilst fighting @2=@1 asfixiouse nunha parede mentres loitaba contra @2
@1 drowned=@1 afogado
@1 drowned whilst trying to escape @2=@1 afogouse mentres intentaba escapar @2
@1 starved to death=@1 morreu de fame
@1 starved to death whilst fighting @2=@1 morreu de fame mentres loitaba contra @2
@1 was pricked to death=@1 morreu pinchado
@1 walked into a cactus whilst trying to escape @2=@1 entrou nun cacto mentres intentaba escapar @2
@1 hit the ground too hard=@1 golpeou o chan demasiado forte
@1 hit the ground too hard whilst trying to escape @2=@1 golpeou o chan con demasiada forza mentres tentaba escapar @2
@1 experienced kinetic energy=@1 experimentou enerxía cinética
@1 experienced kinetic energy whilst trying to escape @2=@1 experimentou enerxía cinética mentres intentaba escapar @2
@1 fell out of the world=@1 caeu do mundo
@1 didn't want to live in the same world as @2=@1 non quería vivir no mesmo mundo que @2
@1 died=@1 morreu
@1 died because of @2=@1 morreu por mor de @2
@1 was killed by magic=@1 foi asasinado por maxia
@1 was killed by magic whilst trying to escape @2=@1 foi asasinado por maxia mentres intentaba escapar @2
@1 was killed by @2 using magic=@1 foi asasinado por @2 usando magic
@1 was killed by @2 using @3=@1 foi asasinado por @2 usando @3
@1 was roasted in dragon breath=@1 foi asado en alento de dragón
@1 was roasted in dragon breath by @2=@1 foi asado en alento de dragón por @2
@1 withered away=@1 marchou
@1 withered away whilst fighting @2=@1 marchou mentres loitaba contra @2
@1 was shot by a skull from @2=@1 recibiu un disparo por unha caveira de @2
@1 was squashed by a falling anvil=@1 foi esmagado por unha yunque que caía
@1 was squashed by a falling anvil whilst fighting @2=@1 foi esmagado por unha yunque que caía mentres loitaba contra @2
@1 was squashed by a falling block=@1 foi esmagado por un bloque en caída
@1 was squashed by a falling block whilst fighting @2=@1 foi esmagado por un bloque que caía mentres loitaba contra @2
@1 was slain by @2=@1 foi asasinado por @2
@1 was slain by @2 using @3=@1 foi asasinado por @2 usando @3
@1 was shot by @2=@1 foi disparado por @2
@1 was shot by @2 using @3=@1 disparou @2 usando @3
@1 was fireballed by @2=@1 foi disparado por @2
@1 was fireballed by @2 using @3=@1 foi disparado por @2 usando @3
@1 was killed trying to hurt @2=@1 morreu intentando ferir a @2
@1 tried to hurt @2 and died by @3=@1 intentou ferir a @2 e morreu por @3
@1 blew up=@1 explotou
@1 was blown up by @2=@1 foi explotado por @2
@1 was blown up by @2 using @3=@1 foi explotado por @2 usando @3
@1 was squished too much=@1 esmagouse demasiado
@1 was squashed by @2=@1 foi esmagado por @2
@1 went off with a bang=@1 saíu cun estrondo
@1 went off with a bang due to a firework fired by @2 from @3=@1 saíu cun estrondo debido a un fogo de artificio disparado por @2 de @3

View File

@ -1,8 +0,0 @@
# textdomain: mcl_experience
[[<player>] <xp>]=[[<xogador>] <xp>]
Gives a player some XP=Dálle a un xogador algo de XP
Error: Too many parameters!=¡Erro: demasiados parámetros!
Error: Incorrect value of XP=Erro: valor incorrecto de XP
Error: Player not found=Erro: Non se atopou o xogador
Added @1 XP to @2, total: @3, experience level: @4=Engadido @1 XP a @2, total: @3, nivel de experiencia: @4
Bottle o' Enchanting=Botella de Encanto

View File

@ -1,12 +1,7 @@
-- Constants local size_min, size_max = 20, 59
local size_min = 20 / 100 -- minimum size, prescaled local delta_size = size_max - size_min
local size_max = 59 / 100 -- maximum size, prescaled
local delta_size = (size_max - size_min) / 10 -- Size change for each XP size level
local max_orb_age = 300 -- seconds
local gravity = vector.new(0, -((tonumber(minetest.settings:get("movement_gravity"))) or 9.81), 0)
local size_to_xp = { local size_to_xp = {
-- min and max XP amount for a given size
{-32768, 2}, -- 1 {-32768, 2}, -- 1
{ 3, 6}, -- 2 { 3, 6}, -- 2
{ 7, 16}, -- 3 { 7, 16}, -- 3
@ -21,20 +16,24 @@ local size_to_xp = {
} }
local function xp_to_size(xp) local function xp_to_size(xp)
xp = xp or 0 local i, l = 1, #size_to_xp
-- Find the size for the xp amount while xp > size_to_xp[i][1] and i < l do
for i=1,11 do i = i + 1
local bucket = size_to_xp[i]
if xp >= bucket[1] and xp <= bucket[2] then
return (i - 1) * delta_size + size_min
end
end end
-- Fallback is the minimum size return ((i - 1) / (l - 1) * delta_size + size_min) / 100
return size_min
end end
local max_orb_age = 300 -- seconds
local gravity = vector.new(0, -((tonumber(minetest.settings:get("movement_gravity"))) or 9.81), 0)
local collector, pos, pos2
local direction, distance, player_velocity, goal
local currentvel, acceleration, multiplier, velocity
local node, vel, def
local is_moving, is_slippery, slippery, slip_factor
local size
local function xp_step(self, dtime) local function xp_step(self, dtime)
--if item set to be collected then only execute go to player --if item set to be collected then only execute go to player
if self.collected == true then if self.collected == true then
@ -42,32 +41,33 @@ local function xp_step(self, dtime)
self.collected = false self.collected = false
return return
end end
collector = minetest.get_player_by_name(self.collector)
local collector = minetest.get_player_by_name(self.collector)
if collector and collector:get_hp() > 0 and vector.distance(self.object:get_pos(),collector:get_pos()) < 7.25 then if collector and collector:get_hp() > 0 and vector.distance(self.object:get_pos(),collector:get_pos()) < 7.25 then
self.object:set_acceleration(vector.new(0,0,0)) self.object:set_acceleration(vector.new(0,0,0))
self.disable_physics(self) self.disable_physics(self)
--get the variables --get the variables
local pos = self.object:get_pos() pos = self.object:get_pos()
local pos2 = collector:get_pos() pos2 = collector:get_pos()
local player_velocity = collector:get_velocity() or collector:get_player_velocity() player_velocity = collector:get_velocity() or collector:get_player_velocity()
pos2.y = pos2.y + 0.8 pos2.y = pos2.y + 0.8
local direction = vector.direction(pos,pos2) direction = vector.direction(pos,pos2)
local distance = vector.distance(pos2,pos) distance = vector.distance(pos2,pos)
local multiplier = distance multiplier = distance
if multiplier < 1 then if multiplier < 1 then
multiplier = 1 multiplier = 1
end end
local currentvel = self.object:get_velocity() goal = vector.multiply(direction,multiplier)
currentvel = self.object:get_velocity()
if distance > 1 then if distance > 1 then
multiplier = 20 - distance multiplier = 20 - distance
local velocity = vector.multiply(direction, multiplier) velocity = vector.multiply(direction,multiplier)
local acceleration = vector.new(velocity.x - currentvel.x, velocity.y - currentvel.y, velocity.z - currentvel.z) goal = velocity
self.object:add_velocity(vector.add(acceleration, player_velocity)) acceleration = vector.new(goal.x-currentvel.x,goal.y-currentvel.y,goal.z-currentvel.z)
self.object:add_velocity(vector.add(acceleration,player_velocity))
elseif distance < 0.8 then elseif distance < 0.8 then
mcl_experience.add_xp(collector, self._xp) mcl_experience.add_xp(collector, self._xp)
self.object:remove() self.object:remove()
@ -75,26 +75,28 @@ local function xp_step(self, dtime)
return return
else else
self.collector = nil self.collector = nil
self:enable_physics() self.enable_physics(self)
end end
end end
-- Age orbs
self.age = self.age + dtime self.age = self.age + dtime
if self.age > max_orb_age then if self.age > max_orb_age then
self.object:remove() self.object:remove()
return return
end end
local pos = self.object:get_pos() pos = self.object:get_pos()
if not pos then return end
-- Get the node directly below the XP orb if pos then
local node = minetest.get_node_or_nil({ node = minetest.get_node_or_nil({
x = pos.x, x = pos.x,
y = pos.y - 0.25, -- Orb collision box is +/-0.2, so go a bit below that y = pos.y -0.25,
z = pos.z z = pos.z
}) })
else
return
end
-- Remove nodes in 'ignore' -- Remove nodes in 'ignore'
if node and node.name == "ignore" then if node and node.name == "ignore" then
@ -107,18 +109,18 @@ local function xp_step(self, dtime)
end end
-- Slide on slippery nodes -- Slide on slippery nodes
local vel = self.object:get_velocity() vel = self.object:get_velocity()
local def = node and minetest.registered_nodes[node.name] def = node and minetest.registered_nodes[node.name]
local is_moving = (def and not def.walkable) or is_moving = (def and not def.walkable) or
vel.x ~= 0 or vel.y ~= 0 or vel.z ~= 0 vel.x ~= 0 or vel.y ~= 0 or vel.z ~= 0
local is_slippery = false is_slippery = false
if def and def.walkable then if def and def.walkable then
local slippery = minetest.get_item_group(node.name, "slippery") slippery = minetest.get_item_group(node.name, "slippery")
is_slippery = slippery ~= 0 is_slippery = slippery ~= 0
if is_slippery and (math.abs(vel.x) > 0.2 or math.abs(vel.z) > 0.2) then if is_slippery and (math.abs(vel.x) > 0.2 or math.abs(vel.z) > 0.2) then
-- Horizontal deceleration -- Horizontal deceleration
local slip_factor = 4.0 / (slippery + 4) slip_factor = 4.0 / (slippery + 4)
self.object:set_acceleration({ self.object:set_acceleration({
x = -vel.x * slip_factor, x = -vel.x * slip_factor,
y = 0, y = 0,
@ -158,6 +160,7 @@ minetest.register_entity("mcl_experience:orb", {
initial_sprite_basepos = {x = 0, y = 0}, initial_sprite_basepos = {x = 0, y = 0},
is_visible = true, is_visible = true,
pointable = false, pointable = false,
static_save = false,
}, },
moving_state = true, moving_state = true,
slippery_state = false, slippery_state = false,
@ -188,7 +191,7 @@ minetest.register_entity("mcl_experience:orb", {
-- This was a minetest bug for a while: https://github.com/minetest/minetest/issues/14420 -- This was a minetest bug for a while: https://github.com/minetest/minetest/issues/14420
local xp = tonumber(staticdata) or 0 local xp = tonumber(staticdata) or 0
self._xp = xp self._xp = xp
local size = xp_to_size(xp) size = xp_to_size(xp)
self.object:set_properties({ self.object:set_properties({
visual_size = {x = size, y = size}, visual_size = {x = size, y = size},
@ -196,9 +199,6 @@ minetest.register_entity("mcl_experience:orb", {
}) })
self.object:set_sprite({x=1,y=math.random(1,14)}, 14, 0.05, false) self.object:set_sprite({x=1,y=math.random(1,14)}, 14, 0.05, false)
end, end,
get_staticdata = function(self)
return tostring(self._xp or 0)
end,
enable_physics = function(self) enable_physics = function(self)
if not self.physical_state then if not self.physical_state then

View File

@ -1,2 +0,0 @@
# textdomain:hbarmor
Armor=Armadura

View File

@ -1,4 +0,0 @@
# textdomain: mcl_info
Set debug bit mask: 0 @= disable, 1 @= biome name, 2 @= coordinates, 3 @= all=Establecer máscara de bits de depuración: 0 @= desactivar, 1 @= nome do bioma, 2 @= coordenadas, 3 @= todo
Error! Possible values are integer numbers from @1 to @2=Erro! Os valores posibles son números enteiros de @1 a @2
Debug bit mask set to @1=Máscara de bits de depuración definida en @1

View File

@ -1,22 +0,0 @@
# textdomain: mcl_inventory
Recipe book=Libro de receitas
Help=Axuda
Select player skin=Selecciona a pel do xogador
Achievements=Logros
Building Blocks=Bloques de construcción
Decoration Blocks=Bloques de decoración
Redstone=Pedra Vermella
Transportation=Transporte
Brewing=elaboración de cervexa
Miscellaneous=Varios
Search Items=Buscar elementos
Foodstuffs=Alimentos
Tools=Ferramentas
Combat=Combate
Mobs=Mobs
Materials=Materiais
Survival Inventory=Inventario de supervivencia
Crafting=Elaboración
Inventory=Inventario
@1/@2=@1/@2
Switch stack size=Cambiar tamaño de pila

View File

@ -1,3 +0,0 @@
# textdomain: mcl_ver_info
Sorry, but your version of Minetest doesn't support the latest API. Please upgrade your minetest.=Sentímolo, a túa versión de Minetest non admite a API máis recente. Actualiza o teu minetest.
Display VoxeLibre game version.=Mostra a versión do xogo VoxeLibre.

View File

@ -1,12 +0,0 @@
# textdomain: mcl_comparators
Redstone comparators are multi-purpose redstone components.=Os comparadores pedra vermella son compoñentes de pedra vermella multipropósito.
They can transmit a redstone signal, detect whether a block contains any items and compare multiple signals.=Poden transmitir un sinal de pedra vermella, detectar se un bloque contén elementos e comparar varios sinais.
A redstone comparator has 1 main input, 2 side inputs and 1 output. The output is in arrow direction, the main input is in the opposite direction. The other 2 sides are the side inputs.=Un comparador pedra vermella ten 1 entrada principal, 2 entradas laterais e 1 saída. A saída está na dirección da frecha, a entrada principal está na dirección oposta. Os outros 2 lados son as entradas laterais.
The main input can powered in 2 ways: First, it can be powered directly by redstone power like any other component. Second, it is powered if, and only if a container (like a chest) is placed in front of it and the container contains at least one item.=A entrada principal pódese alimentar de 2 xeitos: en primeiro lugar, pódese alimentar directamente coa enerxía Pedra Vermella como calquera outro compoñente. En segundo lugar, é alimentado se, e só se un recipiente (como un cofre) se coloca diante del e o recipiente contén polo menos un elemento.
The side inputs are only powered by normal redstone power. The redstone comparator can operate in two modes: Transmission mode and subtraction mode. It starts in transmission mode and the mode can be changed by using the block.=As entradas laterais só son alimentadas pola enerxía Pedra Vermella normal. O comparador Pedra Vermella pode funcionar en dous modos: modo de transmisión e modo de subtracción. Comeza no modo de transmisión e pódese cambiar o modo usando o bloque.
Transmission mode:@nThe front torch is unlit and lowered. The output is powered if, and only if the main input is powered. The two side inputs are ignored.=Modo de transmisión: @nO farol dianteiro está apagado e baixa. A saída é alimentada se, e só se a entrada principal está alimentada. As dúas entradas laterais son ignoradas.
Subtraction mode:@nThe front torch is lit. The output is powered if, and only if the main input is powered and none of the side inputs is powered.=Modo de resta: @nO facho frontal está aceso. A saída é alimentada se, e só se a entrada principal está alimentada e ningunha das entradas laterais está alimentada.
Redstone Comparator=Comparador de Pedra Vermella
Redstone Comparator (Subtract)=Comparador de Pedra Vermella (Negativo)
Redstone Comparator (Powered)=Comparador de Pedra Vermella (Alimentado)
Redstone Comparator (Subtract, Powered)=Comparador Pedra Vermella(Negativo, Alimentado)

View File

@ -1,25 +0,0 @@
# textdomain: mcl_dispensers
Dispenser=Dispensador
A dispenser is a block which acts as a redstone component which, when powered with redstone power, dispenses an item. It has a container with 9 inventory slots.=Un dispensador é un bloque que actúa como un compoñente Pedra vermella que, cando se alimenta con Pedra vermella Power, dispensa un artigo. Ten un recipiente con 9 ranuras de inventario.
Place the dispenser in one of 6 possible directions. The “hole” is where items will fly out of the dispenser. Use the dispenser to access its inventory. Insert the items you wish to dispense. Supply the dispenser with redstone energy once to dispense a random item.=Coloque o dispensador nunha das 6 direccións posibles. O "burato" é onde os elementos sairán voando do dispensador. Use o dispensador para acceder ao seu inventario. Insira os elementos que desexa dispensar. Subministre o dispensador con enerxía Pedra vermella unha vez para dispensar un elemento aleatorio:
The dispenser will do different things, depending on the dispensed item:=O dispensador fará diferentes cousas, dependendo do artigo dispensado:
• Arrows: Are launched=• Frechas: lánzanse
• Eggs and snowballs: Are thrown=• Ovos e bólas de neve: lánzanse
• Fire charges: Are fired in a straight line=• Cargas de lume: Dispáranse en liña recta
• Armor: Will be equipped to players and armor stands=• Armadura: estará equipada para xogadores e soportes de armadura
• Boats: Are placed on water or are dropped=• Barcos: Colócanse sobre a auga ou bótanse caer
• Minecart: Are placed on rails or are dropped=• Carro de minería: colócanse sobre carrís ou déixase caer
• Bone meal: Is applied on the block it is facing=• Fariña de ósos: Aplícase no bloque ao que se enfronta
• Empty buckets: Are used to collect a liquid source=• Cubos baleiros: Úsanse para recoller unha fonte líquida
• Filled buckets: Are used to place a liquid source=• Cubos cheos: Úsanse para colocar unha fonte líquida
• Heads, pumpkins: Equipped to players and armor stands, or placed as a block=• Cabezas, cabazas: Equipadas para xogadores e soportes de armaduras, ou colocadas como bloque
• Shulker boxes: Are placed as a block=• Caixas Shulker: Colócanse como un bloque
• TNT: Is placed and ignited=• DINAMITA: Colócase e acende
• Flint and steel: Is used to ignite a fire in air and to ignite TNT=• Silex e aceiro: Úsase para prender lume no aire e para prender Dinamita
• Spawn eggs: Will summon the mob they contain=• Desova ovos: convocará á turba que conteñen
• Other items: Are simply dropped=• Outros elementos: simplemente bótanse
Downwards-Facing Dispenser=Dispensador cara abaixo
Upwards-Facing Dispenser=Dispensador cara arriba
Inventory=Inventario
9 inventory slots=9 rañuras de inventario
Launches item when powered by redstone power=Lanza o elemento cando está alimentado por enerxía Pedra vermella

View File

@ -1,9 +0,0 @@
# textdomain: mcl_droppers
Dropper=Contagotas
A dropper is a redstone component and a container with 9 inventory slots which, when supplied with redstone power, drops an item or puts it into a container in front of it.=Un contagotas é un compoñente Pedra Vermella e un recipiente con 9 rañuras de inventario que, cando se lle proporciona enerxía Pedra Vermella, deixa caer un artigo ou colócao nun recipiente diante del.
Droppers can be placed in 6 possible directions, items will be dropped out of the hole. Use the dropper to access its inventory. Supply it with redstone energy once to make the dropper drop or transfer a random item.=Os contagotas pódense colocar en 6 direccións posibles, os elementos deixaranse fóra do burato. Use o contagotas para acceder ao seu inventario. Proporcionalle enerxía de pedra vermella unha vez para facer caer o contagotas ou transferir un elemento aleatorio.
Downwards-Facing Dropper=Contagotas cara abaixo
Upwards-Facing Dropper=Contagotas cara arriba
Inventory=Inventario
9 inventory slots=9 rañuras de inventario
Drops item when powered by redstone power=Cae o elemento cando está alimentado por enerxía Pedra Vermella

View File

@ -113,8 +113,8 @@ mesecon.register_node("mcl_observers:observer", {
sounds = mcl_sounds.node_sound_stone_defaults(), sounds = mcl_sounds.node_sound_stone_defaults(),
paramtype2 = "facedir", paramtype2 = "facedir",
on_rotate = false, on_rotate = false,
_mcl_blast_resistance = 3, _mcl_blast_resistance = 3.5,
_mcl_hardness = 3, _mcl_hardness = 3.5,
}, { }, {
description = S("Observer"), description = S("Observer"),
_tt_help = S("Emits redstone pulse when block in front changes"), _tt_help = S("Emits redstone pulse when block in front changes"),
@ -172,8 +172,8 @@ mesecon.register_node("mcl_observers:observer_down", {
sounds = mcl_sounds.node_sound_stone_defaults(), sounds = mcl_sounds.node_sound_stone_defaults(),
groups = {pickaxey=1, material_stone=1, not_opaque=1, not_in_creative_inventory=1 }, groups = {pickaxey=1, material_stone=1, not_opaque=1, not_in_creative_inventory=1 },
on_rotate = false, on_rotate = false,
_mcl_blast_resistance = 3, _mcl_blast_resistance = 3.5,
_mcl_hardness = 3, _mcl_hardness = 3.5,
drop = "mcl_observers:observer_off", drop = "mcl_observers:observer_off",
}, { }, {
tiles = { tiles = {
@ -224,8 +224,8 @@ mesecon.register_node("mcl_observers:observer_up", {
sounds = mcl_sounds.node_sound_stone_defaults(), sounds = mcl_sounds.node_sound_stone_defaults(),
groups = {pickaxey=1, material_stone=1, not_opaque=1, not_in_creative_inventory=1 }, groups = {pickaxey=1, material_stone=1, not_opaque=1, not_in_creative_inventory=1 },
on_rotate = false, on_rotate = false,
_mcl_blast_resistance = 3, _mcl_blast_resistance = 3.5,
_mcl_hardness = 3, _mcl_hardness = 3.5,
drop = "mcl_observers:observer_off", drop = "mcl_observers:observer_off",
}, { }, {
tiles = { tiles = {

View File

@ -1,5 +0,0 @@
# textdomain: mcl_observers
Observer=Observador
An observer is a redstone component which observes the block in front of it and sends a very short redstone pulse whenever this block changes.=Un observador é un compoñente de pedra vermella que observa o bloque diante del e envía un pulso de pedra vermella moi breve sempre que este bloque cambia.
Place the observer directly in front of the block you want to observe with the “face” looking at the block. The arrow points to the side of the output, which is at the opposite side of the “face”. You can place your redstone dust or any other component here.=Coloca o observador directamente diante do bloque que queres observar coa "cara" mirando o bloque. A frecha apunta ao lado da saída, que está no lado oposto da "cara". Podes colocar aquí o teu po de pedra vermella ou calquera outro compoñente.
Emits redstone pulse when block in front changes=Emite pulso de pedra vermella cando o bloque de diante cambia

View File

@ -1,4 +0,0 @@
# textdomain: mcl_target
Target=Obxectivo
A target is a block that provides a temporary redstone charge when hit by a projectile.=Un obxectivo é un bloque que proporciona unha carga de pedra vermella temporal cando golpea un proxectil.
Throw a projectile on the target to activate it.=Lanza un proxectil sobre o obxectivo para activalo.

View File

@ -1,20 +0,0 @@
# textdomain: mesecons_button
Use the button to push it.=Use o botón para pulsalo.
Stone Button=Botón de pedra
A stone button is a redstone component made out of stone which can be pushed to provide redstone power. When pushed, it powers adjacent redstone components for 1 second.=Un botón de pedra é un compoñente de pedra vermella feito de pedra que se pode presionar para proporcionar enerxía vermella. Cando se empurra, alimenta os compoñentes de pedra vermella adxacentes durante 1 segundo.
Polished Blackstone Button=Botón Pedra negra pulido
A polished blackstone button is a redstone component made out of polished blackstone which can be pushed to provide redstone power. When pushed, it powers adjacent redstone components for 1 second.=Un botón de pedra negra pulida é un compoñente de pedra vermella feito de pedra negra pulida que se pode presionar para proporcionar potencia de pedra vermella. Cando se empurra, alimenta os compoñentes de pedra vermella adxacentes durante 1 segundo.
Oak Button=Botón de carballo
Acacia Button=Botón de acacia
Birch Button=Botón de bidueiro
Dark Oak Button=Botón de carballo escuro
Spruce Button=Botón de abeto
Jungle Button=Botón de xungla
Mangrove Button=Botón de mangle
Crimson Button=Botón carmesí
Warped Button=Botón deformado
A wooden button is a redstone component made out of wood which can be pushed to provide redstone power. When pushed, it powers adjacent redstone components for 1.5 seconds. Wooden buttons may also be pushed by arrows.=Un botón de madeira é un compoñente de pedra vermella feito de madeira que se pode presionar para proporcionar enerxía vermella. Cando se empurra, alimenta os compoñentes de pedra vermella adxacentes durante 1,5 segundos. Os botóns de madeira tamén se poden empurrar mediante frechas.
Provides redstone power when pushed=Proporciona enerxía pedra Vermella cando se pulsa
Push duration: @1s=Duración pulso: @1s=
Pushable by arrow=Pulsable pola frecha
A button is a redstone component which can be pushed to provide redstone power. When pushed, it powers adjacent redstone components for @1 seconds.=Un botón é un compoñente Pedra Vermella que se pode premer para proporcionar enerxía Pedra Vermella. Cando se empurra, alimenta os compoñentes de pedra vermella adxacentes durante @1 segundo.

View File

@ -1,32 +0,0 @@
# textdomain: mesecons_commandblock
Error: The command “@1” does not exist; your command block has not been changed. Use the “help” chat command for a list of available commands.=Erro: o comando "@1" non existe; o seu bloque de comandos non se cambiou. Use o comando de chat "axuda" para obter unha lista de comandos dispoñibles.
Error: The command “@1” does not exist; your command block has not been changed. Use the “help” chat command for a list of available commands. Hint: Try to remove the leading slash.=Erro: o comando "@1" non existe; o seu bloque de comandos non se cambiou. Use o comando de chat "axuda" para obter unha lista de comandos dispoñibles. Consello: tenta eliminar a barra inclinada inicial.
Error: You have insufficient privileges to use the command “@1” (missing privilege: @2)! The command block has not been changed.=Erro: non tes privilexios suficientes para usar o comando "@1" (falta o privilexio: @2)! Non se cambiou o bloque de comandos.
Error: No commander! Block must be replaced.=Erro: ¡sen dono! O bloque debe ser substituído.
Commander: @1=Dono: @1
Submit=Aceptar
No commands.=Sen comandos.
Commands:=Comandos:
Help=Axuda
Placement denied. You need the “maphack” privilege to place command blocks.=Colocación denegada. Necesitas o privilexio "maphack" para colocar bloques de comandos.
Command Block=Bloque de comandos
Command blocks are mighty redstone components which are able to alter reality itself. In other words, they cause the server to execute server commands when they are supplied with redstone power.=Os bloques de comando son poderosos compoñentes de pedra vermella que son capaces de alterar a propia realidade. Noutras palabras, fan que o servidor execute comandos do servidor cando se lles proporciona enerxía Pedra Vermella.
Everyone can activate a command block and look at its commands, but not everyone can edit and place them.=Todo o mundo pode activar un bloque de comandos e mirar os seus comandos, pero non todos poden editalos e colocalos.
To view the commands in a command block, use it. To activate the command block, just supply it with redstone power. This will execute the commands once. To execute the commands again, turn the redstone power off and on again.=Para ver os comandos nun bloque de comandos, utilízao. Para activar o bloque de comandos, só tes que proporcionarlle enerxía Pedra vermella. Isto executará os comandos unha vez. Para executar os comandos de novo, apaga a Pedra vermella e acende de novo.
To be able to place a command block and change the commands, you need to be in Creative Mode and must have the “maphack” privilege. A new command block does not have any commands and does nothing. Use the command block (in Creative Mode!) to edit its commands. Read the help entry “Advanced usage > Server Commands” to understand how commands work. Each line contains a single command. You enter them like you would in the console, but without the leading slash. The commands will be executed from top to bottom.=Para poder colocar un bloque de comandos e cambiar os comandos, cómpre estar en modo creativo e ter o privilexio "maphack". Un novo bloque de comandos non ten ningún comando e non fai nada. Use o bloque de comandos (en modo creativo!) para editar os seus comandos. Le a entrada de axuda "Uso avanzado > Comandos do servidor" para comprender como funcionan os comandos. Cada liña contén un único comando. Introdúceos como o faría na consola, pero sen a barra inclinada. Os comandos executaranse de arriba a abaixo.
# ^ OLD TRANSLATION: Para poder colocar un bloque de comandos y cambiar los comandos, debe estar en modo creativo y debe tener el privilegio de "maphack". Un nuevo bloque de comandos no tiene ningún comando y no hace nada. Use el bloque de comandos (en modo creativo) para editar sus comandos. Lea la entrada de ayuda "Temas avanzados> Comandos del servidor" para comprender cómo funcionan los comandos. Cada línea contiene un solo comando. Los ingresas como lo harías en la consola, pero sin la barra inclinada. Los comandos se ejecutarán de arriba a abajo.
All commands will be executed on behalf of the player who placed the command block, as if the player typed in the commands. This player is said to be the “commander” of the block.=Todas as ordes executaranse en nome do xogador que colocou o bloque de comandos, coma se o xogador teclease as ordes. Dise que este xogador é o "dono" do bloque.
Command blocks support placeholders, insert one of these placeholders and they will be replaced by some other text:=Os bloques de comandos admiten marcadores de posición, insira un destes marcadores de posición e substituirase por outro texto:
• “@@c”: commander of this command block=• "@@c“: dono deste bloque de comandos
• “@@n” or “@@p”: nearest player from the command block=• "@@n“ o "@@p“: xogador máis próximo do bloque de comandos
• “@@f” farthest player from the command block=• "@@f“: jugador máis afastado do bloque de comandos
• “@@r”: random player currently in the world=• "@@r“: xogador aleatorio actualmente no mundo
• “@@@@”: literal “@@” sign=• „@@@@“: literal "@@“ letreiro
Example 1:@n time 12000@nSets the game clock to 12:00=Exemplo 1:@n hora 12000@nConfigura o reloxo do xogo ás 12:00
Example 2:@n give @@n mcl_core:apple 5@nGives the nearest player 5 apples=Exemplo 2: @n dálle @@n mcl_core:apple 5@nDálle 5 mazás ao xogador máis próximo
Access denied. You need the “maphack” privilege to edit command blocks.=Acceso denegado. Necesitas o privilexio "maphack" para editar bloques de comandos.
Editing the command block has failed! You can only change the command block in Creative Mode!=¡Produciuse un erro ao editar o bloque de comandos! ¡Só podes cambiar o bloque de comandos no modo creativo!
Editing the command block has failed! The command block is gone.=Produciuse un erro ao editar o bloque de comandos! O bloque de comandos desapareceu.
Executes server commands when powered by redstone power=Executa os comandos do servidor cando está alimentado por enerxía Pedra Vermella
Command blocks are not enabled on this server=Os bloques de comandos non están activados neste servidor

View File

@ -1,13 +0,0 @@
# textdomain: mesecons_delayer
Redstone repeaters are versatile redstone components with multiple purposes: 1. They only allow signals to travel in one direction. 2. They delay the signal. 3. Optionally, they can lock their output in one state.=Os repetidores Redstone son compoñentes versátiles de Redstone con múltiples propósitos: 1. Só permiten que os sinais viaxan nunha dirección. 2. Retrasan o sinal. 3. Opcionalmente, poden bloquear a súa saída nun estado.
To power a redstone repeater, send a signal in “arrow” direction (the input). The signal goes out on the opposite side (the output) with a delay. To change the delay, use the redstone repeater. The delay is between 0.1 and 0.4 seconds long and can be changed in steps of 0.1 seconds. It is indicated by the position of the moving redstone torch.=Para alimentar un repetidor Redstone, envíe un sinal na dirección da "frecha" (a entrada). O sinal sae no lado oposto (a saída) cun atraso. Para cambiar o atraso, usa o repetidor Redstone. O atraso é de entre 0,1 e 0,4 segundos e pódese cambiar en pasos de 0,1 segundos. Indícase pola posición do facho de pedra vermella en movemento.
To lock a repeater, send a signal from an adjacent repeater into one of its sides. While locked, the moving redstone torch disappears, the output doesn't change and the input signal is ignored.=Para bloquear un repetidor, envíe un sinal desde un repetidor adxacente a un dos seus lados. Mentres está bloqueado, o facho de pedra vermella en movemento desaparece, a saída non cambia e o sinal de entrada é ignorado.
Redstone Repeater=Repetidor de Pedra Vermella
Redstone Repeater (Powered)=Repetidor de Pedra Vermella (Alimentado)
Redstone Repeater (Locked)=Repetidor de Pedra Vermella (Bloqueado)
Redstone Repeater (Locked, Powered)=Repetidor de Pedra Vermella (Bloqueado, Alimentado)
Redstone Repeater (Delay @1)=Repetidor de Pedra Vermella (Retardar @1)
Redstone Repeater (Delay @1, Powered)=Repetidor de Pedra Vermella (Retardar @1, Alimentado)
Transmits redstone power only in one direction=Transmite o poder de Pedra Vermella só nunha dirección
Delays signal=Sinal de atraso
Output locks when getting active redstone repeater signal from the side=Bloqueas de saída ao recibir o sinal de repetidor Redstone activo desde o lado

View File

@ -1,20 +0,0 @@
# textdomain: mesecons_lightstone
Redstone Lamp=Lámpara de Pedra Vermella
Redstone lamps are simple redstone components which glow brightly (light level @1) when they receive redstone power.=As lámpadas Pedra Vermella son compoñentes sinxelos de Pedra Vermella que brillan intensamente (nivel de luz @1) cando reciben enerxía Pedra Vermella.
Glows when powered by redstone power=Brilla cando está alimentado por enerxía de Pedra Vermella
White Redstone Lamp=Lámpada Pedra Vermella Branca
Grey Redstone Lamp=Lámpada de Pedra Vermella gris
Light Grey Redstone Lamp=Lámpada de Pedra Vermella gris claro
Black Redstone Lamp=Lámpada de Pedra Vermella negra
Red Redstone Lamp=Lámpada de Pedra Vermella
Yellow Redstone Lamp=Lámpada de Pedra Vermella amarela
Green Redstone Lamp=Lámpada de Pedra Vermella verde
Cyan Redstone Lamp=Lámpada de Pedra Vermella cian
Blue Redstone Lamp=Lámpada Pedra Vermella Azul
Magenta Redstone Lamp=Lámpada de Pedra Vermella maxenta
Orange Redstone Lamp=Lámpada de Pedra Vermella laranxa
Purple Redstone Lamp=Lámpada de Pedra Vermella vermella
Brown Redstone Lamp=Lámpada de Pedra Vermella marrón
Pink Redstone Lamp=Lámpada de Pedra Vermella rosa
Lime Redstone Lamp=Lámpada de Pedra Vermella de Lima
Light Blue Redstone Lamp=Lámpada de Pedra Vermella azul claro

View File

@ -1,25 +0,0 @@
# textdomain: mesecons_noteblock
Note Block=Bloque de notas
A note block is a musical block which plays one of many musical notes and different intruments when it is punched or supplied with redstone power.=Un bloque de notas é un bloque musical que toca unha das moitas notas musicais e diferentes instrumentos cando se lle perfora ou recibe enerxía Pedra Vermella.
Use the note block to choose the next musical note (there are 25 semitones, or 2 octaves). The intrument played depends on the material of the block below the note block:=Use o bloque de notas para escoller a seguinte nota musical (hai 25 semitonos ou 2 oitavas). O instrumento tocado depende do material do bloque debaixo do bloque de notas:
• Glass: Sticks=• Cristal: Paus
• Wood: Bass guitar=• Madeira: Baixo
• Stone: Bass drum=• Pedra: Bombo
• Sand or gravel: Snare drum=• Area ou grava: tambor
• Anything else: Piano=• Calquera outra cousa: piano
• Stone: Bass drum=
• Sand or gravel: Snare drum=
• Anything else: Piano=
• Block of Gold: Bell=• Bloque de Ouro: Campana
• Clay: Flute=• Arxila: Frauta
• Packed Ice: Chime=• Xeo empacado: Chime
• Wool: Guitar=• La: Guitarra
• Bone Block: Xylophne=• Bloque óseo: Xilofono
• Block of Iron: Iron xylophne=• Bloque de Ferro: Ferro xilofono
• Soul Sand: Cow bell=• Area de alma: campá de vaca
• Pumpkin: Didgeridoo=• Cabaza: Didgeridoo
• Block of Emerald: Square wave=• Bloque de Esmeralda: Onda cadrada
• Hay Bale: Banjo= Bale de pao: Banjo
• Glowstone: Electric piano=• Pedra Brillante: Piano eléctrico
The note block will only play a note when it is below air, otherwise, it stays silent.=O bloque de notas só reproducirá unha nota cando estea debaixo do aire, se non, permanece en silencio.
Plays a musical note when powered by redstone power=Reproduce unha nota musical cando está alimentado por enerxía Pedra vermella

View File

@ -218,7 +218,7 @@ minetest.register_node("mesecons_pistons:piston_normal_off", {
}, },
}, },
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 0.5,
_mcl_hardness = 1.5, _mcl_hardness = 0.5,
on_rotate = function(pos, node, user, mode) on_rotate = function(pos, node, user, mode)
if mode == screwdriver.ROTATE_AXIS then if mode == screwdriver.ROTATE_AXIS then
minetest.set_node(pos, {name="mesecons_pistons:piston_up_normal_off"}) minetest.set_node(pos, {name="mesecons_pistons:piston_up_normal_off"})
@ -255,7 +255,7 @@ minetest.register_node("mesecons_pistons:piston_normal_on", {
}, },
}, },
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 0.5,
_mcl_hardness = 1.5, _mcl_hardness = 0.5,
on_rotate = false, on_rotate = false,
}) })
@ -326,7 +326,7 @@ minetest.register_node("mesecons_pistons:piston_sticky_off", {
}, },
}, },
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 0.5,
_mcl_hardness = 1.5, _mcl_hardness = 0.5,
on_rotate = function(pos, node, user, mode) on_rotate = function(pos, node, user, mode)
if mode == screwdriver.ROTATE_AXIS then if mode == screwdriver.ROTATE_AXIS then
minetest.set_node(pos, {name="mesecons_pistons:piston_up_sticky_off"}) minetest.set_node(pos, {name="mesecons_pistons:piston_up_sticky_off"})
@ -363,7 +363,7 @@ minetest.register_node("mesecons_pistons:piston_sticky_on", {
}, },
}, },
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 0.5,
_mcl_hardness = 1.5, _mcl_hardness = 0.5,
on_rotate = false, on_rotate = false,
}) })
@ -449,7 +449,7 @@ minetest.register_node("mesecons_pistons:piston_up_normal_off", {
footstep = mcl_sounds.node_sound_wood_defaults().footstep footstep = mcl_sounds.node_sound_wood_defaults().footstep
}), }),
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 0.5,
_mcl_hardness = 1.5, _mcl_hardness = 0.5,
on_rotate = function(pos, node, user, mode) on_rotate = function(pos, node, user, mode)
if mode == screwdriver.ROTATE_AXIS then if mode == screwdriver.ROTATE_AXIS then
minetest.set_node(pos, {name="mesecons_pistons:piston_down_normal_off"}) minetest.set_node(pos, {name="mesecons_pistons:piston_down_normal_off"})
@ -487,7 +487,7 @@ minetest.register_node("mesecons_pistons:piston_up_normal_on", {
}, },
}, },
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 0.5,
_mcl_hardness = 1.5, _mcl_hardness = 0.5,
on_rotate = false, on_rotate = false,
}) })
@ -556,7 +556,7 @@ minetest.register_node("mesecons_pistons:piston_up_sticky_off", {
}, },
}, },
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 0.5,
_mcl_hardness = 1.5, _mcl_hardness = 0.5,
on_rotate = function(pos, node, user, mode) on_rotate = function(pos, node, user, mode)
if mode == screwdriver.ROTATE_AXIS then if mode == screwdriver.ROTATE_AXIS then
minetest.set_node(pos, {name="mesecons_pistons:piston_down_sticky_off"}) minetest.set_node(pos, {name="mesecons_pistons:piston_down_sticky_off"})
@ -594,7 +594,7 @@ minetest.register_node("mesecons_pistons:piston_up_sticky_on", {
}, },
}, },
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 0.5,
_mcl_hardness = 1.5, _mcl_hardness = 0.5,
on_rotate = false, on_rotate = false,
}) })
@ -680,7 +680,7 @@ minetest.register_node("mesecons_pistons:piston_down_normal_off", {
}, },
}, },
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 0.5,
_mcl_hardness = 1.5, _mcl_hardness = 0.5,
on_rotate = function(pos, node, user, mode) on_rotate = function(pos, node, user, mode)
if mode == screwdriver.ROTATE_AXIS then if mode == screwdriver.ROTATE_AXIS then
minetest.set_node(pos, {name="mesecons_pistons:piston_normal_off"}) minetest.set_node(pos, {name="mesecons_pistons:piston_normal_off"})
@ -718,7 +718,7 @@ minetest.register_node("mesecons_pistons:piston_down_normal_on", {
}, },
}, },
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 0.5,
_mcl_hardness = 1.5, _mcl_hardness = 0.5,
on_rotate = false, on_rotate = false,
}) })
@ -782,7 +782,7 @@ minetest.register_node("mesecons_pistons:piston_down_sticky_off", {
}, },
}, },
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 0.5,
_mcl_hardness = 1.5, _mcl_hardness = 0.5,
on_rotate = function(pos, node, user, mode) on_rotate = function(pos, node, user, mode)
if mode == screwdriver.ROTATE_AXIS then if mode == screwdriver.ROTATE_AXIS then
minetest.set_node(pos, {name="mesecons_pistons:piston_sticky_off"}) minetest.set_node(pos, {name="mesecons_pistons:piston_sticky_off"})
@ -820,7 +820,7 @@ minetest.register_node("mesecons_pistons:piston_down_sticky_on", {
}, },
}, },
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 0.5,
_mcl_hardness = 1.5, _mcl_hardness = 0.5,
on_rotate = false, on_rotate = false,
}) })

View File

@ -1,8 +0,0 @@
# textdomain: mesecons_pistons
This block can have one of 6 possible orientations.=Este bloque pode ter unha das 6 orientacións posibles.
Piston=Pistón
A piston is a redstone component with a pusher which pushes the block or blocks in front of it when it is supplied with redstone power. Not all blocks can be pushed, however.=Un pistón é un compoñente de pedra vermella cun empurrador que empurra o bloque ou bloques diante del cando recibe enerxía de pedra vermella. Non obstante, non todos os bloques poden ser empuxados.
Sticky Piston=Pistón pegajoso
A sticky piston is a redstone component with a sticky pusher which can be extended and retracted. It extends when it is supplied with redstone power. When the pusher extends, it pushes the block or blocks in front of it. When it retracts, it pulls back the single block in front of it. Note that not all blocks can be pushed or pulled.=Un pistón pegajoso é un compoñente de pedra vermella cun impulsor pegajoso que se pode estender e retraer. Esténdese cando recibe enerxía Pedra Vermella. Cando o empurrador se estende, empurra o bloque ou bloques diante del. Cando se retrae, tira cara atrás o único bloque diante del. Teña en conta que non todos os bloques poden ser empurrados ou tirados.
Pushes block when powered by redstone power=Empuxa o bloque cando está alimentado por enerxía pedra vermella
Pushes or pulls block when powered by redstone power=Empuxa ou tira do bloque cando está alimentado por enerxía pedra vermella

View File

@ -1,21 +0,0 @@
# textdomain: mesecons_pressureplates
A pressure plate is a redstone component which supplies its surrounding blocks with redstone power while someone or something rests on top of it.=Unha placa de presión é un compoñente de pedra vermella que proporciona aos seus bloques circundantes poder de pedra vermella mentres alguén ou algo descansa sobre el.
Oak Pressure Plate=Placa de presión de carballo
Acacia Pressure Plate=Placa de presión de acacia
Birch Pressure Plate=Placa de presión de bidueiro
Dark Oak Pressure Plate=Placa de presión de carballo escuro
Spruce Pressure Plate=Placa de presión de abeto
Jungle Pressure Plate=Placa de presión de xungla
Mangrove Pressure Plate=Placa de presión de mangle
Crimson Pressure Plate=Placa de presión carmesí
Warped Pressure Plate=Placa de presión deformada
A wooden pressure plate is a redstone component which supplies its surrounding blocks with redstone power while any movable object (including dropped items, players and mobs) rests on top of it.=Unha placa de presión de madeira é un compoñente de pedra vermella que proporciona aos seus bloques circundantes poder de pedra vermella mentres calquera obxecto móbil (incluídos os elementos caídos, os xogadores e as turbas) descansa sobre el.
Polished Blackstone Pressure Plate=Placa de presión de Pedra negra pulida
A polished blackstone pressure plate is a redstone component which supplies its surrounding blocks with redstone power while a player or mob stands on top of it. It is not triggered by anything else.=Unha placa de presión de pedra negra pulida é un compoñente de pedra vermella que proporciona aos seus bloques circundantes poder de pedra vermella mentres un xogador ou inimigo está enriba dela. Non é desencadeado por outra cousa.
Stone Pressure Plate=Placa de presión de pedra
A stone pressure plate is a redstone component which supplies its surrounding blocks with redstone power while a player or mob stands on top of it. It is not triggered by anything else.=Unha placa de presión de pedra é un compoñente de pedra vermella que proporciona aos seus bloques circundantes poder de pedra vermella mentres un xogador ou inimigo está enriba dela. Non é desencadeado por outra cousa.
Provides redstone power when pushed=Proporciona enerxía Pedra Vermella cando se empurra
Pushable by players, mobs and objects=Empuxable por xogadores, mobs e obxectos
Pushable by players and mobs=Empuxable por xogadores e mobs
Pushable by players=Empuxable polos xogadores
Pushable by mobs=Pushable por mobs

View File

@ -1,8 +0,0 @@
# textdomain: mesecons_solarpanel
Daylight Sensor=Sensor de luz diurna
Daylight sensors are redstone components which provide redstone power when they are in sunlight and no power otherwise. They can also be inverted.=Os sensores de luz diurna son compoñentes Pedra Vermella que proporcionan enerxía Pedra Vermella cando están baixo a luz solar e non hai enerxía doutro xeito. Tamén se poden invertir.
Inverted Daylight Sensor=Sensor de luz diurna invertida
Use the daylight sensor to toggle its state.=Use o sensor de luz diurna para cambiar o seu estado.
In inverted state, they provide redstone power when they are not in sunlight and no power otherwise.=En estado invertido, proporcionan enerxía de Pedra Vermella cando non están á luz do sol e non hai enerxía doutro xeito.
Provides redstone power when in sunlight=Proporciona enerxía vermella cando está á luz solar
Can be inverted=Pódese invertir

View File

@ -1,9 +0,0 @@
# textdomain: mesecons_torch
Redstone Torch=Facho Pedra Vermella
Redstone Torch (off)=Facho Pedra Vermella (Apagada)
Redstone Torch (overheated)=Facho Pedra Vermella (sobrequentado)
A redstone torch is a redstone component which can be used to invert a redstone signal. It supplies its surrounding blocks with redstone power, except for the block it is attached to. A redstone torch is normally lit, but it can also be turned off by powering the block it is attached to. While unlit, a redstone torch does not power anything.=Un facho de pedra vermella é un compoñente de pedra vermella que se pode usar para inverter un sinal de pedra vermella. Fornece os seus bloques circundantes con enerxía de pedra vermella, agás o bloque ao que está unido. Normalmente acendese un facho de pedra vermella, pero tamén se pode apagar alimentando o bloque ao que está conectado. Mentres non se acende, un facho de pedra vermella non alimenta nada.
Redstone torches can be placed at the side and on the top of full solid opaque blocks.=Os fachos Pedra Vermella pódense colocar ao lado e na parte superior dos bloques opacos sólidos completos.
Block of Redstone=Bloque de Pedra Vermella
A block of redstone permanently supplies redstone power to its surrounding blocks.=Un bloque de pedra Vermella fornece permanentemente enerxía de pedra Vermella aos seus bloques circundantes.
Provides redstone power=Proporciona enerxía Pedra Vermella

View File

@ -1,5 +0,0 @@
# textdomain: mesecons_walllever
Lever=Panca
A lever is a redstone component which can be flipped on and off. It supplies redstone power to adjacent blocks while it is in the “on” state.=Unha panca é un compoñente de pedra vermella que se pode activar e desactivar. Proporciona enerxía Redstone aos bloques adxacentes mentres está no estado "activado".
Use the lever to flip it on or off.=Use a panca para acendelo ou apagalo.
Provides redstone power while it's turned on=Proporciona enerxía Redstone mentres está acendido

View File

@ -1,11 +0,0 @@
# textdomain: mesecons_wires
Redstone is a versatile conductive mineral which transmits redstone power. It can be placed on the ground as a trail.=Pedra Vermella é un mineral condutor versátil que transmite a enerxía de Pedra Vermella. Pódese colocar no chan a modo de rastro.
A redstone trail can be in two states: Powered or not powered. A powered redstone trail will power (and thus activate) adjacent redstone components.=Unha ruta Redstone pode estar en dous estados: alimentado ou sen alimentación. Un rastro de Pedra Vermella alimentado alimentará (e así activará) os compoñentes adxacentes de Pedra Vermella.
Redstone power can be received from various redstone components, such as a block of redstone or a button. Redstone power is used to activate numerous mechanisms, such as redstone lamps or pistons.=A enerxía de Pedra Vermella pódese recibir de varios compoñentes de Pedra Vermella, como un bloque de Pedra Vermella ou un botón. A enerxía Pedra Vermella úsase para activar numerosos mecanismos, como lámpadas ou pistóns Pedra Vermella.
Place redstone on the ground to build a redstone trail. The trails will connect to each other automatically and it can also go over hills.=Coloca Pedra Vermella no chan para construír unha pista de Pedra Vermella. Os camiños conectaranse entre si automaticamente e tamén poden pasar por outeiros.
Read the help entries on the other redstone components to learn how redstone components interact.=Le as entradas de axuda sobre os outros compoñentes de Pedra Vermella para saber como interactúan os compoñentes de Pedra Vermella.
Redstone=Pedra Vermella
Powered Redstone Spot (@1)=Punto de Pedra Vermella accionado (@1)
Redstone Trail (@1)=Sendeiro de Pedra Vermella (@1)
Powered Redstone Trail (@1)=Sendeiro de Pedra Vermella con alimentación (@1)
Transmits redstone power, powers mechanisms=Transmite enerxía Pedra Vermella, potencia mecanismos

View File

@ -1,19 +0,0 @@
# textdomain: mcl_amethyst
Amethyst Cluster=Aglomerado de Ametista
Amethyst Cluster is the final growth of amethyst bud.=O aglomerado de ametista é o final do crecemento do gromo de ametista.
Amethyst Shard=Fragmento de Ametista
An amethyst shard is a crystalline mineral.=Um fragmento de ametista é un mineral cristalino.
Block of Amethyst=Bloque de Ametista
Budding Amethyst=Ametista Gromando
Calcite=Calcita
Calcite can be found as part of amethyst geodes.=Calcita pode ser atopada como parte das xeodas de ametista.
Large Amethyst Bud=Gromo de Ametista Grande
Large Amethyst Bud is the third growth of amethyst bud.=Gromo de Ametista Grande é a terceira etapa de crecemento do gromo de ametista.
Medium Amethyst Bud=Gromo de Ametista Médio
Medium Amethyst Bud is the second growth of amethyst bud.=Gromo de Ametista Médio é a segunda etapa de crecemento do gromo de ametista.
Small Amethyst Bud=Gromo de Ametista Pequeno
Small Amethyst Bud is the first growth of amethyst bud.=Gromo de Ametista Pequeno é a primeira etapa de crecemento do gromo de ametista.
The Block of Amethyst is a decoration block crafted from amethyst shards.=O bloque de ametista é un bloque decorativo feito a partir de fragmentos de ametista.
The Budding Amethyst can grow amethyst=A ametista brotando pode cultivar ametista.
Tinted Glass=Vidro Tingido
Tinted Glass is a type of glass which blocks lights while it is visually transparent.=O vidro tingido é un tipo de vidro que bloquea luces mentre é visualmente transparente.

View File

@ -1,16 +0,0 @@
# textdomain: mcl_anvils
Set Name=Escolle un Nome
Repair and Name=Reparar e Nomear
Inventory=Inventario
Anvil=Zafra
The anvil allows you to repair tools and armor, and to give names to items. It has a limited durability, however. Don't let it fall on your head, it could be quite painful!=A zafra permiteche reparar ferramentas e armaduras, e dar nomes aos elementos. Sen embargo, ten unha durabilidade limitada. Non a deixes caer sobre a tua cabeza, ¡podería ser bastante doloroso!
To use an anvil, rightclick it. An anvil has 2 input slots (on the left) and one output slot.=Para usar unha zafra, faga clic dereito sobre ela. Unha zafra ten 2 rañuras de entrada (a esquerda) e unha rañura de saida.
To rename items, put an item stack in one of the item slots while keeping the other input slot empty. Type in a name, hit enter or “Set Name”, then take the renamed item from the output slot.=Para trocar o nome dos elementos, coloque unha pila de elementos nunha das rañuras de elementos mentras mantés Baleira a outra rañura de entrada. Escriba un nombre, presione enter o "Establecer nombre", luego obtenga el elemento renombrado en la ranura de salida.
There are two possibilities to repair tools (and armor):=Hai duas posibilidades para reparar ferramentas (e armaduras):
• Tool + Tool: Place two tools of the same type in the input slots. The “health” of the repaired tool is the sum of the “health” of both input tools, plus a 12% bonus.=• Ferramenta + Ferramenta: Coloque duas ferramentas do mesmo tipo nas rañuras de entrada. A "saude" da ferramenta reparada e a suma da "saude" de ambas ferramentas, cun bono do 12%.
• Tool + Material: Some tools can also be repaired by combining them with an item that it's made of. For example, iron pickaxes can be repaired with iron ingots. This repairs the tool by 25%.=• Ferramienta + Material: Algunhas ferramentas tamén poden repararse combinándoas cun elemento do que está feita. Por exemplo, os picos de ferro poden repararse con lingotes de ferro. Isto repara a ferramenta nun 25%.
Armor counts as a tool. It is possible to repair and rename a tool in a single step.=A armadura conta como unha ferramenta. E posible reparar e trocar o nome dunha ferramenta nun só paso.
The anvil has limited durability and 3 damage levels: undamaged, slightly damaged and very damaged. Each time you repair or rename something, there is a 12% chance the anvil gets damaged. Anvils also have a chance of being damaged when they fall by more than 1 block. If a very damaged anvil is damaged again, it is destroyed.=A zafra ten unha durabilidade limitada e 3 niveis de dano: sen danos, lixeiramente danada e moi danado. Cada vez que reparas ou trocas o nome de algo, hai un 12% de posibilidades de ca zafra se dane. As zafras tamén teñen a posibilidade de danarse cando caen en máis de 1 bloque. Se unha zafra moi danado se dana novamente, se destrue.
Slightly Damaged Anvil=Zafra lixeiramente danada
Very Damaged Anvil=Zafra moi danada
Repair and rename items=Reparar e renomear obxetos

View File

@ -1,51 +0,0 @@
# textdomain: mcl_armor
This is a piece of equippable armor which reduces the amount of damage you receive.=Esta é unha peza de armadura que se pode equipar, a cal reduce o dano que recibes.
To equip it, put it on the corresponding armor slot in your inventory menu.=Para equipala, colocaa na rañura da armadura do menú do teu inventario.
Leather Cap=Sombreiro de Coiro
Iron Helmet=Casco de Ferro
Golden Helmet=Casco de Ouro
Diamond Helmet=Casco de Diamante
Chain Helmet=casco de Cadeas
Netherite Helmet=Casco de Netherita
Leather Tunic=Túnica de Coiro
Iron Chestplate=Cota de Ferro
Golden Chestplate=Cota de Ouro
Diamond Chestplate=Cota de Diamante
Chain Chestplate=Cota de Cadeas
Netherite Chestplate=Cota de Netherita
Leather Pants=Pantalons de Coiro
Iron Leggings=Mallas de Ferro
Golden Leggings=Mallas de Ouro
Diamond Leggings=Mallas de Diamante
Chain Leggings=Mallas de Cadeas
Netherite Leggings=Mallas de Netherita
Leather Boots=Botas de Coiro
Iron Boots=Botas de Ferro
Golden Boots=Botas de Ouro
Diamond Boots=Botas de diamante
Chain Boots=Botas de Cadeas
Netherite Boots=Botas de Netherita
Elytra=Élitros
#Translations of enchantements
Increases underwater mining speed.=Aumenta a velocidade de minado baixo a agua.
Blast Protection=Protección contra explosions
Reduces explosion damage and knockback.=Reduce o dano de explosions e o seu empuxe.
Curse of Binding=Maldición de ligazón
Item cannot be removed from armor slots except due to death, breaking or in Creative Mode.=O obxeto non pode ser removido das rañuras do inventario excepto ao morrer, ao romperse, ou en Modo Creativo.
Feather Falling=Caída de plumaxe
Reduces fall damage.=Reduce o daño por caída.
Fire Protection=Protección contra o lume
Reduces fire damage.=Reduce o dano causado polo lume.
Shooting consumes no regular arrows.=Disparar non consume frechas normais.
Shoot 3 arrows at the cost of one.=Dispara 3 frechas polo custo dunha.
Projectile Protection=Protección contra proxectís
Reduces projectile damage.=Reduce o dano do proxectís.
Protection=Protección
Reduces most types of damage by 4% for each level.=Reduce a maioría de tipos de dano por 4% por cada nivel.
Thorns=Espiñas
Reflects some of the damage taken when hit, at the cost of reducing durability with each proc.=Reflexa unha parte do dano inflixido, a costa de reducir a durabilidade con cada activación.
Aqua Affinity=Afinidade acuática
#Translations for armor trims
Smithing Template '@1'=Modelo de forxería '@1'

View File

@ -1,5 +0,0 @@
# textdomain: mcl_armor_stand
Armor Stand=Soporte para armadura
An armor stand is a decorative object which can display different pieces of armor. Anything which players can wear as armor can also be put on an armor stand.=Un soporte para armadura e un obxeto decorativo que pode amosar diferentes pezas de armadura. Calquer cousa cos xogadores poidan usar como armadura tamén se pode poñer nun soporte para armadura.
Just place an armor item on the armor stand. To take the top piece of armor from the armor stand, select your hand and use the place key on the armor stand.=Soamente coloca un obxeto de armadura no soporte para armadura. Para tomar a peza superior de armadura do soporte para armadura, escolla a sua man e use a tecla de posición no soporte para armadura.
Displays pieces of armor=Amosa pezas de armadura

View File

@ -1,5 +0,0 @@
# textdomain: mcl_armor_stand
Armor Stand=Soporte para armadura
An armor stand is a decorative object which can display different pieces of armor. Anything which players can wear as armor can also be put on an armor stand.=Un soporte para armadura e un obxeto decorativo que pode amosar diferentes pezas de armadura. Calquer cousa cos xogadores poidan usar como armadura tamén se pode poñer nun soporte para armadura.
Just place an armor item on the armor stand. To take the top piece of armor from the armor stand, select your hand and use the place key on the armor stand.=Soamente coloca un obxeto de armadura no soporte para armadura. Para tomar a peza superior de armadura do soporte para armadura, escolla a sua man e use a tecla de posición no soporte para armadura.
Displays pieces of armor=Amosa pezas de armadura

View File

@ -62,7 +62,7 @@ local bamboo_def = {
inventory_image = "mcl_bamboo_bamboo_shoot.png", inventory_image = "mcl_bamboo_bamboo_shoot.png",
wield_image = "mcl_bamboo_bamboo_shoot.png", wield_image = "mcl_bamboo_bamboo_shoot.png",
_mcl_blast_resistance = 1, _mcl_blast_resistance = 1,
_mcl_hardness = 1, _mcl_hardness = 1.5,
node_box = { node_box = {
type = "fixed", type = "fixed",
fixed = { fixed = {
@ -277,7 +277,7 @@ local bamboo_block_def = {
sounds = node_sound, sounds = node_sound,
paramtype2 = "facedir", paramtype2 = "facedir",
drops = "mcl_bamboo:bamboo_block", drops = "mcl_bamboo:bamboo_block",
_mcl_blast_resistance = 2, _mcl_blast_resistance = 3,
_mcl_hardness = 2, _mcl_hardness = 2,
_mcl_stripped_variant = "mcl_bamboo:bamboo_block_stripped", -- this allows us to use the built in Axe's strip block. _mcl_stripped_variant = "mcl_bamboo:bamboo_block_stripped", -- this allows us to use the built in Axe's strip block.
on_place = mcl_util.rotate_axis, on_place = mcl_util.rotate_axis,

View File

@ -208,7 +208,7 @@ if minetest.get_modpath("mcl_fences") then
wood_groups, wood_groups,
minetest.registered_nodes["mcl_core:wood"]._mcl_hardness, minetest.registered_nodes["mcl_core:wood"]._mcl_hardness,
minetest.registered_nodes["mcl_core:wood"]._mcl_blast_resistance, minetest.registered_nodes["mcl_core:wood"]._mcl_blast_resistance,
node_sound) node_sound) -- note: about missing params.. will use defaults.
mcl_bamboo.mcl_log(dump(fence_id)) mcl_bamboo.mcl_log(dump(fence_id))
mcl_bamboo.mcl_log(dump(gate_id)) mcl_bamboo.mcl_log(dump(gate_id))

View File

@ -1,46 +0,0 @@
# textdomain: mcl_bamboo
### bamboo_base.lua ###
Bamboo=Bambú
Bamboo Mosaic Plank=Madeira de bambú de mosaico
Bamboo Plank=Madeira de bambú
Stripped Bamboo Block=Bloque de bambú sen cortiza
Bamboo Block=Bloque de Bambú
### bamboo_items.lua ###
A bamboo button is a redstone component made out of bamboo which can be pushed to provide redstone power. When pushed, it powers adjacent redstone components for 1 second.=Un botón de bambú e un compoñente de pedra vermella feito de pedra o cal se pode presionar para proporcionar enerxía de pedra vermella. Cando se empuxa, alimenta os compoñentes adxacentes de pedra vermella durante 1 segundo.
A wooden pressure plate is a redstone component which supplies its surrounding blocks with redstone power while any movable object (including dropped items, players and mobs) rests on top of it.=Unha placa de presión de madeira e un compoñente de pedra vermella que proporciona enerxía de pedra vermella aos seus bloques adxacentes mentres calquer obxeto movible (incluindo obxetos no chan, xogadores e mobs) descanse derriba sua.
Bamboo=Bambú
Bamboo Button=Botón de bambú
Bamboo Door.=Porta de bambú
Bamboo Fence=Cerca de bambú
Bamboo Fence Gate=Porta de cerca de bambú
Bamboo Mosaic Slab=Lousa de mosaico de bambú
Bamboo Mosaic Stair=Escaleiras de mosaico de bambú
Bamboo Plank Slab=Lousa de madeira de bambú
Bamboo Plank Stair=Escaleira de madeira de bambú
Bamboo Pressure Plate=Placa de presión de bambú
Bamboo Sign=Sinal de bambú
Bamboo Slab=Lousa de bambú
Bamboo Stair=Escaleira de bambú
Bamboo Trapdoor.=Trapela de bambú
Double Bamboo Mosaic Slab=Lousa dobre de mosaico de bambú
Double Bamboo Plank Slab=Lousa dobre de madeira de bambú
Double Bamboo Slab=Lousa dobre de bambú
Double Stripped Bamboo Slab=Lousa dobre de bambú sen cortiza
Scaffolding=Estada
Scaffolding (horizontal)=Estada (horizontal)
Scaffolding block used to climb up or out across areas.=O bloque de estada serve para subir ou baixar entre zonas.
Stripped Bamboo Slab=Lousa de bambú sen cortiza
Stripped Bamboo Stair=Escaleira de bambú sen cortiza
To open or close the trapdoor, rightclick it or send a redstone signal to it.=Para abrir ou pechar unha trapela, fai clic dereito ou manda un sinal de pedra vermella cara ela.
Wooden trapdoors are horizontal barriers which can be opened and closed by hand or a redstone signal. They occupy the upper or lower part of a block, depending on how they have been placed. When open, they can be climbed like a ladder.=As trapelas de madeira son barreiras horizontais que podense abrir e pechar ca man ou por un sinal de pedra vermella.
Wooden doors are 2-block high barriers which can be opened or closed by hand and by a redstone signal.=As portas de madeira son barreiras altas de 2 bloques que se poden abrir ou pechar a man e mediante un sinal de pedra vermella.
To open or close a wooden door, rightclick it or supply its lower half with a redstone signal.=Para abrir ou pechar unha porta de madeira, fai clic co botón dereito nela ou proporciona á súa metade inferior un sinal de pedra vermella.

View File

@ -1,79 +0,0 @@
# textdomain: mcl_banners
White Banner=Estandarte branco
White=Branco
Grey Banner=Estandarte gris
Grey=Gris
Light Grey Banner=Estandarte gris claro
Light Grey=Gris claro
Black Banner=Estandarte negro
Black=Negro
Red Banner=Estandarte vermello
Red=Rojo
Yellow Banner=Estandarte amarelo
Yellow=Amarelo
Green Banner=Estandarte verde
Green=Verde
Cyan Banner=Estandarte cian
Cyan=Cian
Blue Banner=Estandarte azul
Blue=Azul
Magenta Banner=Estandarte maxenta
Magenta=Maxenta
Orange Banner=Estandarte laranxa
Orange=Laranxa
Purple Banner=Estandarte morado
Purple=Morado
Brown Banner=Estandarte marrón
Brown=Marrón
Pink Banner=Estandarte rosa
Pink=Rosa
Lime Banner=Estandarte verde lima
Lime=Verde lima
Light Blue Banner=Estandarte azul claro
Light Blue=Azul claro
Banner=Estandarte
Banners are tall colorful decorative blocks. They can be placed on the floor and at walls. Banners can be emblazoned with a variety of patterns using a lot of dye in crafting.=Los estandartes son bloques decorativos altos y coloridos. Se pueden colocar en el suelo y en las paredes. Los estandartes se pueden estampar con una variedad de patrones usando mucho tinte en la elaboración.
Use crafting to draw a pattern on top of the banner. Emblazoned banners can be emblazoned again to combine various patterns. You can draw up to 12 layers on a banner that way. If the banner includes a gradient, only 3 layers are possible.=Usa la elaboración para dibujar un patrón en la parte superior del estandarte. Los estandartes estampados pueden volver a estamparse para combinar varios patrones. Puede dibujar hasta 12 capas en un estandarte de esa manera. Si la pancarta incluye un degradado, solo son posibles 3 capas.
You can copy the pattern of a banner by placing two banners of the same color in the crafting grid—one needs to be emblazoned, the other one must be clean. Finally, you can use a banner on a cauldron with water to wash off its top-most layer.=Puede copiar el patrón de un estandarte colocando dos estandartes del mismo color en la cuadrícula de fabricación: una debe ser estampada, la otra debe estar limpia. Finalmente, puede usar un estandarte en un caldero con agua para lavar su capa superior.
@1 Bordure=Bordo (@1)
@1 Bricks=Bloque (@1)
@1 Roundel=Medallón (@1)
@1 Creeper Charge=Carga de enredadeira (@1)
@1 Saltire=Aspa (@1)
@1 Bordure Indented=Bordura dentada (@1)
@1 Per Bend Inverted=Por banda invertida (@1)
@1 Per Bend Sinister Inverted=Por banda sinistra invertida (@1)
@1 Per Bend=Por Banda (@1)
@1 Per Bend Sinister=Por banda sinistra (@1)
@1 Flower Charge=Carga de flor (@1)
@1 Gradient=Degradado (@1)
@1 Base Gradient=Degradado de base (@1)
@1 Per Fess Inverted=Por faixa invertida (@1)
@1 Per Fess=Por faixa (@1)
@1 Per Pale=Palidez (@1)
@1 Per Pale Inverted=Palidez invertida (@1)
@1 Thing Charge=Carga de obxeto (@1)
@1 Lozenge=Rombo (@1)
@1 Skull Charge=Carga de caveira (@1)
@1 Paly=Póster (@1)
@1 Base Dexter Canton=Base inferior destra (@1)
@1 Base Sinister Canton=Base inferior sinistra (@1)
@1 Chief Dexter Canton=Encabezado superior destro (@1)
@1 Chief Sinister Canton=Encabezamento superior sinistro (@1)
@1 Cross=Cruzamento (@1)
@1 Base=Base (@1)
@1 Pale=Palidez (@1)
@1 Bend Sinister=Banda sinistra (@1)
@1 Bend=Banda (@1)
@1 Pale Dexter=Palidez destra (@1)
@1 Fess=Faixa (@1)
@1 Pale Sinister=Palidez sinistra (@1)
@1 Chief=Encabezamento (@1)
@1 Chevron=Viga (@1)
@1 Chevron Inverted=Viga invertida (@1)
@1 Base Indented=Base Dentada (@1)
@1 Chief Indented=Dentado do encabezamento (@1)
And one additional layer=E unha capa adicional
And @1 additional layers=E @1 capas adicionais
Paintable decoration=Decoración pintable
Preview Banner=Vista previa do Estandarte

View File

@ -1,5 +0,0 @@
# textdomain: mcl_barrels
Barrel=Barril
Barrels are containers which provide 27 inventory slots.=Os barrís son contedores que proveen 27 rañuras de inventario.
To access its inventory, rightclick it. When broken, the items will drop out.=Para acceder o teu inventario, fai clic dereito sobre el. Ao romperse, os obxetos caerán ao chan.
27 inventory slots=27 rañuras de inventario

View File

@ -1,5 +0,0 @@
# textdomain: mcl_beacons
Beacon=Sinalizador
Beacon:=Sinalizador:
Primary Power:=Poder Primario:
Inventory:=Inventario:

View File

@ -210,7 +210,7 @@ function mcl_beds.register_bed(name, def)
stack_max = 1, stack_max = 1,
groups = {handy=1, bed = 1, dig_by_piston=1, bouncy=66, fall_damage_add_percent=-50, deco_block = 1, flammable=-1}, groups = {handy=1, bed = 1, dig_by_piston=1, bouncy=66, fall_damage_add_percent=-50, deco_block = 1, flammable=-1},
_mcl_hardness = 0.2, _mcl_hardness = 0.2,
_mcl_blast_resistance = 0.2, _mcl_blast_resistance = 1,
sounds = def.sounds or default_sounds, sounds = def.sounds or default_sounds,
selection_box = common_box, selection_box = common_box,
collision_box = common_box, collision_box = common_box,
@ -286,9 +286,10 @@ function mcl_beds.register_bed(name, def)
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
is_ground_content = false, is_ground_content = false,
groups = {handy = 1, flammable = -1, bed = 2, dig_by_piston=1, bouncy=66, fall_damage_add_percent=-50, not_in_creative_inventory = 1}, -- FIXME: Should be bouncy=66, but this would be a higher bounciness than slime blocks!
groups = {handy = 1, flammable = -1, bed = 2, dig_by_piston=1, bouncy=33, fall_damage_add_percent=-50, not_in_creative_inventory = 1},
_mcl_hardness = 0.2, _mcl_hardness = 0.2,
_mcl_blast_resistance = 0.2, _mcl_blast_resistance = 1,
sounds = def.sounds or default_sounds, sounds = def.sounds or default_sounds,
drop = "", drop = "",
selection_box = common_box, selection_box = common_box,

View File

@ -1,50 +0,0 @@
# textdomain: mcl_beds
Beds allow you to sleep at night and make the time pass faster.=As camas te permiten durmir pola noite e facer co tempo pase máis axiña.
To use a bed, stand close to it and right-click the bed to sleep in it. Sleeping only works when the sun sets, at night or during a thunderstorm. The bed must also be clear of any danger.=Para usar unha cama, párate preto dela e fai clic dereito na cama para durmir nela. Durmir só funciona cando se agocha o sol pola noite ou durante unha tormenta eléctrica. A cama tamén ten que estar libre de calquer perigo.
You have heard of other worlds in which a bed would set the start point for your next life. But this world is not one of them.=Oiches falar doutros mundos nos que unha cama establecería o punto de partida para a tua vindeira vida. Pero este mundo non e un deles.
By using a bed, you set the starting point for your next life. If you die, you will start your next life at this bed, unless it is obstructed or destroyed.=Ao usar unha cama, esta establecese como o punto de partida para a tua vindeira vida. Se morres, comenzarás a tua vindeira vida nesa cama, a menos que esté obstruida ou destruida.
In this world, going to bed won't skip the night, but it will skip thunderstorms.=En este mundo, ir a la cama no se saltará la noche, pero se saltará las tormentas eléctricas.
Sleeping allows you to skip the night. The night is skipped when all players in this world went to sleep. The night is skipped after sleeping for a few seconds. Thunderstorms can be skipped in the same manner.=Durmir permite saltarte a noite. Omitese a noite cando todos os xogadores neste mundo foron a durmir. A noite saltase despois de durmir durante uns segundos. As tormentas eléctricas podense omitir da mesma maneira.
Bed=Cama
Red Bed=Cama vermella
Blue Bed=Cama azul
Cyan Bed=Cama cian
Grey Bed=Cama gris
Light Grey Bed=Cama gris ocuro
Black Bed=Cama negra
Yellow Bed=Cama amarela
Green Bed=Cama verde
Magenta Bed=Cama maxenta
Orange Bed=Cama laranxa
Purple Bed=Cama morada
Brown Bed=Cama marrón
Pink Bed=Cama rosa
Lime Bed=Cama verde lima
Light Blue Bed=Cama azul claro
White Bed=Cama branca
You can't sleep, the bed's too far away!=¡Non podes durmir, a cama está moi lonxe!
This bed is already occupied!=¡A cama xa está ocupada!
You have to stop moving before going to bed!=¡Tes que deixar de moverte antes de deitarte!
You can't sleep now, monsters are nearby!=No podes durmir agora, ¡hai monstros preto!
You can't sleep, the bed is obstructed!=¡Non podes durmir, a cama está obstruida!
It's too dangerous to sleep here!=¡E moi perigoso durmir aquí!
New respawn position set! But you can only sleep at night or during a thunderstorm.=¡Nova posición de reaparición establecida! Pero só podes durmir pola noite ou durante tormentas eléctricas.
You can only sleep at night or during a thunderstorm.=Só podes durmir pola noite ou durante tormentas eléctricas.
New respawn position set!=¡Nova posición de reaparición establecida!
Leave bed=Sair da cama
Abort sleep=Erguerse
Players in bed: @1/@2=Jugadores en la cama: @1/@2
Note: Night skip is disabled.=Nota: O salto nocturno está deshabilitado.
You're sleeping.=Estás durmindo.
You will fall asleep when all players are in bed.=Te quedarás durmido cando todos os xogadores estén na cama.
You will fall asleep when @1% of all players are in bed.=Quedarás durmido cando o @1% de todos os xogadores estean na cama.
You're in bed.=Estas na cama.
Allows you to sleep=Permíteche durmir
Respawn Anchor=Áncora de reaparición
Chat:=Chat:
send!=¡enviar!
You are missing the 'shout' privilege! It's required in order to talk in chat...=¡Estás perdendo o privilexio de "berrar"! É necesario para falar no chat...
You exceeded the maximum number of messages per 10 seconds!=¡Superou o número máximo de mensaxes por 10 segundos!
Hey! Would you guys mind sleeping?=¡Ei! ¿Importaríavos durmir?
Sorry, but you have to wait @1 seconds until you may use this button again!=¡Sentímolo, pero tes que esperar @1 segundo ata que poidas usar este botón de novo!
@1/@2 players currently in bed.=@1/@2 xogadores actualmente na cama.

View File

@ -1,5 +0,0 @@
# textdomain: mcl_beehives
Beehive=Colmea
Artificial bee nest.=Niño de abella artificial.
Bee Nest=Niño de abellas
A naturally generating block that houses bees and a tasty treat...if you can get it.=Un bloque xerador natural que alberga abellas e unha delicia... se podes conseguilo.

View File

@ -1,2 +0,0 @@
# textdomain: mcl_bells
Bell=Campá

View File

@ -33,8 +33,8 @@ minetest.register_node("mcl_blackstone:blackstone_gilded", {
{items = {"mcl_blackstone:blackstone_gilded"}, rarity = 1}, {items = {"mcl_blackstone:blackstone_gilded"}, rarity = 1},
} }
}, },
_mcl_blast_resistance = 6, _mcl_blast_resistance = 2,
_mcl_hardness = 1.5, _mcl_hardness = 2,
_mcl_silk_touch_drop = true, _mcl_silk_touch_drop = true,
_mcl_fortune_drop = { _mcl_fortune_drop = {
discrete_uniform_distribution = true, discrete_uniform_distribution = true,
@ -226,7 +226,18 @@ mcl_stairs.register_stair_and_slab("blackstone_brick_polished", "mcl_blackstone:
S("Double Polished Blackstone Brick Slab"), nil) S("Double Polished Blackstone Brick Slab"), nil)
--Wall --Wall
mcl_walls.register_wall("mcl_blackstone:wall", S("Blackstone Wall"), "mcl_blackstone:blackstone") mcl_walls.register_wall(
"mcl_blackstone:wall",
S("Blackstone Wall"),
"mcl_blackstone:blackstone",
{
"mcl_blackstone_top.png",
"mcl_blackstone_top.png",
"mcl_blackstone_side.png"
},
"",
{ cracky=3, pickaxey=1, material_stone=1 }
)
--lavacooling --lavacooling

View File

@ -1,29 +0,0 @@
# textdomain: mcl_blackstone
Blackstone=Pedra negra
Polished Blackstone=Pedra negra Pulida
Chiseled Polished Blackstone=Pedra negra Pulida cincelada
Polished Blackstone Bricks=Ladrillos de Pedra negra Pulida
Basalt=Basalto
Polished Basalt=Basalto Pulido
Blackstone Slab=Lousa de Pedra negra
Polished Blackstone Slab=Lousa de Pedra negra Pulida
Chiseled Polished Blackstone Slab=Lousa de Pedra negra Pulida Cincelada
Polished Blackstone Brick Slab=Lousa de Ladrillo de Pedra-negra Polida
Blackstone Stair=Escada de Pedra negra
Polished Blackstone Stair=Escada de Pedra negra Pulida
Chiseled Polished Blackstone Stair=Escada de Pedra negra Pulida cincelada
Polished Blackstone Brick Stair=Escada de Ladrillo de Pedra negra Pulida
Quartz Bricks=Ladrillos de Cuarzo
Soul Torch=Facho de Alma
Torches are light sources which can be placed at the side or on the top of most blocks.=Os fachos son fontes de luz que se poden colocar ao lado ou na parte superior da maioría dos bloques.
Soul Lantern=Lanterna de Alma
Soul Soil=Terra de Alma
Eternal Soul Fire=Eterno lume de Alma
Gilded Blackstone=Pedra negra Dourada
Nether Gold Ore=Mineral de Ouro do Nether
Smooth Basalt=Basalto Liso
Blackstone Wall=Muro de Pedra negra
Double Blackstone Slab=Dobre Lousa de Pedra negra
Polished Double Blackstone Slab=Dobre Lousa de Pedra negra Polida
Double Chiseled Polished Blackstone Slab=Dobre Lousa de Pedra negra Polida cincelada
Double Polished Blackstone Brick Slab=Dobre Lousa de Ladrillo de Pedra negra Polida

View File

@ -1,11 +0,0 @@
# textdomain: mcl_blast_furnace
Inventory=Inventario
Blast Furnace=Alto forno
Smelts ores faster than furnace=Funde os minerais máis rápido que o forno
Use the recipe book to see what ores you can smelt, what you can use as fuel and how long it will burn.=Emprega o libro de receitas para ver que minerais pode fundir, que pode usar como combustible e canto tempo vai arder.
Use the blast furnace to open the furnace menu.=Emprega o alto forno para abrir o menú do forno.
Place a furnace fuel in the lower slot and the source material in the upper slot.=Coloque un combustible de forno na rañura inferior e o material de orixe na rañura superior.
The blast furnace will slowly use its fuel to smelt the item.=O alto forno utilizará lentamente o seu combustible para fundir o elemento.
The result will be placed into the output slot at the right side.=O resultado colocarase na rañura de saída do lado dereito.
Blast Furnaces smelt several items, mainly ores and armor, using a furnace fuel, but twice as fast as a normal furnace.=Os altos fornos funden varios elementos, principalmente minerais e armaduras, usando un combustible de forno, pero o dobre de rápido que un forno normal.
Active Blast Furnace=Alto forno activo

View File

@ -1,28 +0,0 @@
# textdomain: mcl_books
Book=Libro
Books are used to make bookshelves and book and quills.=Os libros utilízanse para facer estanterías, libros e plumas.
“@1”="@1“
Copy of “@1”=Copia de "@1“
Copy of Copy of “@1”=Copia da copia de "@1"
Tatter ed Book=Libro esfarrapado
by @1=por @1
# as in “to sign a book”
Sign=Asinar
Done=Feito
This item can be used to write down some notes.=Este elemento podese empregar para escribir algunhas notas.
Hold it in the hand, then rightclick to read the current notes and edit then. You can edit the text as often as you like. You can also sign the book which turns it into a written book which you can stack, but it can't be edited anymore.=Sosteno na man, logo fai clic dereito para leer as notas actuais e logo edite. Pode editar o texto ca frecuencia que desexe. Tambén pode asinar o libro co convirte nun libro escrito que pode apiñar, pero ya no se puede editar.
A book can hold up to 4500 characters. The title length is limited to 64 characters.=Un libro pode conter ata 4500 caracteres. A longitude do título está limitada a 64 caracteres.
Enter book title:=Inserta o título do libro:
by @1=por @1
Note: The book will no longer be editable after signing=Nota: O libro xa non será editable despois de asinalo
Sign and Close=Asinar e pechar
Cancel=Cancelar
Nameless Book=Libro sen nome
Written Book=Libro escrito
Written books contain some text written by someone. They can be read and copied, but not edited.=Os libros escritos conteñen texto escrito por alguén. Poden leerse e copiarse, pero non editarse.
Hold it in your hand, then rightclick to read the book.="Sosteno na man e fai clic dereito para ler o libro."
To copy the text of the written book, place it into the crafting grid together with a book and quill (or multiple of those) and craft. The written book will not be consumed. Copies of copies can not be copied.=Para copiar o texto do libro escrito, colóqueo na cuadrícula de elaboración xunto cun libro e pluma (ou varios deles) e faga manualidades. O libro escrito non será consumido. As copias das copias non se poden copiar.
Bookshelf=Librería
Bookshelves are used for decoration.=As librerías utilizanse para a decoración.
Book and Quill=Libro e pluma
Write down some notes=Escribe algunhas notas

View File

@ -1,18 +0,0 @@
# textdomain: mcl_bows
Arrow=Frecha
Arrows are ammunition for bows and dispensers.=As frechas son municions para arcos y dispensadores.
An arrow fired from a bow has a regular damage of 1-9. At full charge, there's a 20% chance of a critical hit dealing 10 damage instead. An arrow fired from a dispenser always deals 3 damage.=Unha frecha disparada desde un arco ten un dano regular de 1-9. A carga completa, hai un 20 % de posibilidades de que un golpe crítico cause 10 de danos. Unha frecha disparada desde un dispensador sempre fai 3 de danos.
Arrows might get stuck on solid blocks and can be retrieved again. They are also capable of pushing wooden buttons.=As frechas poden quedar atrapadas en bloques sólidos e pódense recuperar de novo. Tamén son capaces de premer botóns de madeira.
To use arrows as ammunition for a bow, just put them anywhere in your inventory, they will be used up automatically. To use arrows as ammunition for a dispenser, place them in the dispenser's inventory. To retrieve an arrow that sticks in a block, simply walk close to it.=Para usar as frechas como munición para un arco, só tes que poñelas en calquera lugar do teu inventario, esgotaranse automaticamente. Para usar frechas como munición para un dispensador, colócaas no inventario do dispensador. Para recuperar unha frecha que se pegue nun bloque, só tes que camiñar preto dela.
Bow=Arco
Bows are ranged weapons to shoot arrows at your foes.=Os arcos son armas a distancia para disparar frechas aos teus inimigos.
The speed and damage of the arrow increases the longer you charge. The regular damage of the arrow is between 1 and 9. At full charge, there's also a 20% of a critical hit, dealing 10 damage instead.=A velocidade e os danos da frecha aumentan canto máis tempo cargas. O dano normal da frecha está entre 1 e 9. A carga completa, tamén hai un 20 % dun golpe crítico, causando 10 de danos no seu lugar.
To use the bow, you first need to have at least one arrow anywhere in your inventory (unless in Creative Mode). Hold down the right mouse button to charge, release to shoot.=Para usar o arco, primeiro debes ter polo menos unha frecha en calquera lugar do teu inventario (a non ser que esteas no modo creativo). Mantén premido o botón dereito do rato para cargar, solta para disparar.
Bow=Arco
Ammunition=Munición
Damage from bow: 1-10=Dano con arco: 1-10
Damage from dispenser: 3=Dano por dispensador: 3
Launches arrows=Lanza frechas
Crossbow=Bésta
Crossbows are ranged weapons to shoot arrows at your foes.=As béstas son armas a distancia para disparar frechas aos teus inimigos.
To use the crossbow, you first need to have at least one arrow anywhere in your inventory (unless in Creative Mode). Hold down the right mouse button to charge, release to shoot.=Para empregar a bésta, primeiro debes ter polo menos unha frecha en calquer lugar do teu inventario (agás no modo creativo).Mantén premido o botón dereito do rato para cargar, solta para disparar.

View File

@ -456,8 +456,8 @@ minetest.register_node("mcl_brewing:stand_000", {
} }
}, },
sounds = mcl_sounds.node_sound_metal_defaults(), sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 1,
_mcl_hardness = 0.5, _mcl_hardness = 1,
on_destruct = on_destruct, on_destruct = on_destruct,
allow_metadata_inventory_take = allow_take, allow_metadata_inventory_take = allow_take,
allow_metadata_inventory_put = allow_put, allow_metadata_inventory_put = allow_put,
@ -537,8 +537,8 @@ minetest.register_node("mcl_brewing:stand_100", {
} }
}, },
sounds = mcl_sounds.node_sound_metal_defaults(), sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 1,
_mcl_hardness = 0.5, _mcl_hardness = 1,
on_destruct = on_destruct, on_destruct = on_destruct,
allow_metadata_inventory_take = allow_take, allow_metadata_inventory_take = allow_take,
allow_metadata_inventory_put = allow_put, allow_metadata_inventory_put = allow_put,
@ -617,8 +617,8 @@ minetest.register_node("mcl_brewing:stand_010", {
} }
}, },
sounds = mcl_sounds.node_sound_metal_defaults(), sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 1,
_mcl_hardness = 0.5, _mcl_hardness = 1,
on_destruct = on_destruct, on_destruct = on_destruct,
allow_metadata_inventory_take = allow_take, allow_metadata_inventory_take = allow_take,
allow_metadata_inventory_put = allow_put, allow_metadata_inventory_put = allow_put,
@ -692,8 +692,8 @@ minetest.register_node("mcl_brewing:stand_001", {
} }
}, },
sounds = mcl_sounds.node_sound_metal_defaults(), sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 1,
_mcl_hardness = 0.5, _mcl_hardness = 1,
on_destruct = on_destruct, on_destruct = on_destruct,
allow_metadata_inventory_take = allow_take, allow_metadata_inventory_take = allow_take,
allow_metadata_inventory_put = allow_put, allow_metadata_inventory_put = allow_put,
@ -777,8 +777,8 @@ minetest.register_node("mcl_brewing:stand_110", {
} }
}, },
sounds = mcl_sounds.node_sound_metal_defaults(), sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 1,
_mcl_hardness = 0.5, _mcl_hardness = 1,
on_destruct = on_destruct, on_destruct = on_destruct,
allow_metadata_inventory_take = allow_take, allow_metadata_inventory_take = allow_take,
allow_metadata_inventory_put = allow_put, allow_metadata_inventory_put = allow_put,
@ -858,8 +858,8 @@ minetest.register_node("mcl_brewing:stand_101", {
} }
}, },
sounds = mcl_sounds.node_sound_metal_defaults(), sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 1,
_mcl_hardness = 0.5, _mcl_hardness = 1,
on_destruct = on_destruct, on_destruct = on_destruct,
allow_metadata_inventory_take = allow_take, allow_metadata_inventory_take = allow_take,
allow_metadata_inventory_put = allow_put, allow_metadata_inventory_put = allow_put,
@ -939,8 +939,8 @@ minetest.register_node("mcl_brewing:stand_011", {
} }
}, },
sounds = mcl_sounds.node_sound_metal_defaults(), sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 1,
_mcl_hardness = 0.5, _mcl_hardness = 1,
on_destruct = on_destruct, on_destruct = on_destruct,
allow_metadata_inventory_take = allow_take, allow_metadata_inventory_take = allow_take,
allow_metadata_inventory_put = allow_put, allow_metadata_inventory_put = allow_put,
@ -1027,8 +1027,8 @@ minetest.register_node("mcl_brewing:stand_111", {
} }
}, },
sounds = mcl_sounds.node_sound_metal_defaults(), sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 0.5, _mcl_blast_resistance = 1,
_mcl_hardness = 0.5, _mcl_hardness = 1,
on_destruct = on_destruct, on_destruct = on_destruct,
allow_metadata_inventory_take = allow_take, allow_metadata_inventory_take = allow_take,
allow_metadata_inventory_put = allow_put, allow_metadata_inventory_put = allow_put,

View File

@ -1,10 +0,0 @@
# textdomain: mcl_brewing
Brewing Stand=Stand de elaboración de cervexa
Inventory=Inventario
To use a brewing stand, rightclick it.=Para usar un soporte de elaboración, fai clic co botón dereito nel.
To brew, you need blaze powder as fuel, a brewing material and at least 1 glass bottle filled with a liquid.=Para elaborar a cervexa, necesitas po de lume como combustible, un material de elaboración e polo menos 1 botella de vidro chea dun líquido.
Place the blaze powder in the left slot, the brewing material in the middle slot and 1-3 bottles in the remaining slots.=Coloque o po de lume na rañura esquerda, o material de cervexa na rañura central e 1-3 botellas nas rañuras restantes.
When you have found a good combination, the brewing will commence automatically and steam starts to appear, using up the fuel and brewing material. The potions will soon be ready.=Cando atopes unha boa combinación, a elaboración comezará automaticamente e comeza a aparecer vapor, esgotando o combustible e o material de elaboración. As pocións pronto estarán listas.
Different combinations of brewing materials and liquids will give different results. Try to experiment!=As diferentes combinacións de materiais de elaboración e líquidos darán resultados diferentes ¡Tenta experimentar!
The stand allows you to brew potions!=¡O soporte permítelle preparar pocións!
Brew Potions=Pocións de preparación

View File

@ -1,25 +0,0 @@
# textdomain: mcl_buckets
Empty Bucket=Cubo vacío
A bucket can be used to collect and release liquids.=Podese empregar un caldeiro para recoller e liberar líquidos.
Punch a liquid source to collect it. You can then use the filled bucket to place the liquid somewhere else.=Golpea unha fonte de líquido para recolleitala. Despois pode empregar o caldeiro che para colocar o líquido noutro lugar.
Lava Bucket=Caldeiro con lava
A bucket can be used to collect and release liquids. This one is filled with hot lava, safely contained inside. Use with caution.=Podese empregar un caldeiro para recoller e liberar líquidos. Este está cheo de lava quente, contida de forma segura no interior. Empregar con precaución.
Get in a safe distance and place the bucket to empty it and create a lava source at this spot. Don't burn yourself!=Alonxate a unha distancia segura e coloca o caldeiro para baleiralo e crea unha fonte de lava nese lugar. ¡Non te queimes!
Water Bucket=Caldeiro con auga
A bucket can be used to collect and release liquids. This one is filled with water.=Podese empregar un caldeiro para recoller e liberar líquidos. Este está cheo de auga.
Place it to empty the bucket and create a water source.=Colócao para baleirar o caldeiro e crear unha fonte de auga.
River Water Bucket=Caldeiro de auga de río
A bucket can be used to collect and release liquids. This one is filled with river water.=Podese empregar un caldeiro para recoller e liberar líquidos. Este está cheo de auga de río.
Place it to empty the bucket and create a river water source.=Colócao para baleirar o caldeiro e crear una fonte de auga de río.
Collects liquids=Recolle líquidos
Places a lava source=Coloca unha fonte de lava
Places a water source=Coloca unha fonte de auga
Places a river water source=Coloca unha fonte de auga fluvial
Axolotl=Axolotl
Cod=Cod
Salmon=salmón
Tropical Fish=Peixe tropical
Bucket of @1=Caldeiro de @1
This bucket is filled with water and @1.=Este Caldeiro está cheo de auga e @1.
Place it to empty the bucket and place a @1. Obtain by right clicking on a @2 with a bucket of water.=Colócao para baleirar o Caldeiro e coloca un @1. Obter facendo clic co botón dereito nun @2 cun Caldeiro de auga.
Places a water source and a @1.=Coloca unha fonte de auga e un @1.

View File

@ -1,12 +0,0 @@
# textdomain: mcl_cake
Cake=Tarta
Cakes can be placed and eaten to restore hunger points. A cake has 7 slices. Each slice restores 2 hunger points and 0.4 saturation points. Cakes will be destroyed when dug or when the block below them is broken.=Os pasteis podense colocar e comer para restaurar os puntos de fame. Un pastel ten 7 anacos. Cada anaco restaura 2 puntos de fame e 0.4 puntos de saturación. Os pasteis destruiranse cando se caven ou cando se rompa o bloque debaixo deles.
Place the cake anywhere, then rightclick it to eat a single slice. You can't eat from the cake when your hunger bar is full.=Coloque o pastel en calquer lugar, despois faga clic dereito para comer un só anaco. Non podes comer do pastel cando a tua barra de fame está chea.
Cake (6 Slices Left)=Pastel (Quedan 6 anacos)
Cake (5 Slices Left)=Pastel (Quedan 5 anacos)
Cake (4 Slices Left)=Pastel (Quedan 4 anacos)
Cake (3 Slices Left)=Pastel (Quedan 3 anacos)
Cake (2 Slices Left)=Pastel (Quedan 2 anacos)
Cake (1 Slice Left)=Pastel (Queda 1 anaco)
With 7 tasty slices!=¡Con 7 deliciosas rebandas!
Hunger points: +@1 per slice=Puntos de fame: +@1 por rebanda

View File

@ -1,5 +0,0 @@
# textdomain: mcl_campfires
Campfire=Cacharela
Soul Campfire=Cacharela de almas
Cooks food and keeps bees happy.=Cociña comida e mantén as abellas ledas.
Campfires have multiple uses, including keeping bees happy, cooking raw meat and fish, and as a trap.=As cacharelas teñen múltiples usos, incluindo manter as abellas ledas, cociñar carne crúa e pescado, e como trampa.

View File

@ -1,4 +0,0 @@
# textdomain: mcl_cartography_table
Cartography Table=Mesa de Cartografia
Used to create or copy maps=Empregada para criar ou copiar mapas
Is used to create or copy maps for use..=É usada para criar ou copiar mapas para o seu uso..

View File

@ -1,11 +0,0 @@
# textdomain: mcl_cauldrons
Cauldron=Caldeiro
Cauldrons are used to store water and slowly fill up under rain.=Os caldeiros empreganse para almacenar auga e énchense lentamente coa choiva.
Place a water bucket into the cauldron to fill it with water. Place an empty bucket on a full cauldron to retrieve the water. Place a water bottle into the cauldron to fill the cauldron to one third with water. Place a glass bottle in a cauldron with water to retrieve one third of the water.=Os caldeiros empréganse para almacenar auga e énchense lentamente coa choiva. Coloca un caldeiro de auga no caldeiro para enchelo de auga. Coloca un caldeiro baleiro nun caldeiro cheo para recoller a auga. Coloca unha botella de auga no caldeiro para enchelo nun terzo de auga. Coloca unha botella de vidro nun caldeiro con auga para recoller un terzo da auga.
Cauldron (1/3 Water)=Caldeiro (1/3 de agua)
Cauldron (2/3 Water)=Caldeiro (2/3 de agua)
Cauldron (3/3 Water)=Caldera (3/3 de agua)
Cauldron (1/3 River Water)=Caldeiro (1/3 de auga de río)
Cauldron (2/3 River Water)=Caldeiro (2/3 de auga de río)
Cauldron (3/3 River Water)=Caldeiro (3/3 de auga de río)
Stores water=Almacena auga

View File

@ -19,6 +19,6 @@ Cherry Slab=Dalle en cerisier
Double Cherry Slab=Double Dalle en cerisier Double Cherry Slab=Double Dalle en cerisier
Cherry Sign=Panneau de cerisier Cherry Sign=Panneau de cerisier
Cherry Fence=Barrière en cerisier Cherry Fence=Barrière en cerisier
Cherry Fence Gate=Portillion en cerisier Cherry Gate=Portillion en cerisier
Cherry Pressure Plate=Plaque de pression en cerisier Cherry Pressure Plate=Plaque de pression en cerisier
Cherry Button=Bouton de Cerisier Cherry Button=Bouton de Cerisier

View File

@ -1,24 +0,0 @@
# textdomain: mcl_cherry_blossom
Cherry Log=Tronco de Cerdeira
The trunk of a cherry blossom tree.=O tronco dunha cerdeira en flor.
Stripped Cherry Log=Tronco de cereixeira descascado
The stripped trunk of a cherry blossom tree.=O tronco descascado dunha cerdeira en flor.
Cherry Bark=Cortiza de Cerdeira
This is a decorative block surrounded by the bark of a tree trunk.=Esto e un bloque decorativo rodeado pola cortiza dun tronco de árbore.
Stripped Cherry Wood=Madeira de Cerdeira Descascada
The stripped wood of a cherry blossom tree.=A madeira descascada dunha cerdeira en flor.
Cherry Wood Planks="Táboas de madeira de cerdeira"
Cherry Leaves=Follas de Cerdeira
Cherry blossom leaves are grown from cherry blossom trees.="As follas das cerdeiras en flor medran das cerdeiras.""
Cherry Sapling=Planta de Cereixa
Cherry blossom sapling can be planted to grow cherry trees.=Follas de cerdeira pódense plantar para cultivar cerdeiras.
Cherry Door=Porta de Cerdeira
Cherry Trapdoor="Porta-trampa de Cerdeira"
Cherry Stairs=Escada de Cerdeira
Cherry Slab=Lousa de cerdeira
Double Cherry Slab=Lousa de Cerdeira Dobre
Cherry Sign="Sinal de cerdeira"
Cherry Fence=Cerca de Cerdeira
Cherry Gate=Porta de Cerdeira
Cherry Pressure Plate=Placa de presión de cerdeira
Cherry Button=Botón de Cerdeira

View File

@ -19,6 +19,6 @@ Cherry Slab=Laje de Cerejeira
Double Cherry Slab=Laje Dupla de Cerejeira Double Cherry Slab=Laje Dupla de Cerejeira
Cherry Sign=Placa de Cerejeira Cherry Sign=Placa de Cerejeira
Cherry Fence=Cerca de Cerejeira Cherry Fence=Cerca de Cerejeira
Cherry Fence Gate=Portão de Cerejeira Cherry Gate=Portão de Cerejeira
Cherry Pressure Plate=Placa de Pressão de Cerejeira Cherry Pressure Plate=Placa de Pressão de Cerejeira
Cherry Button=Botão de Cerejeira Cherry Button=Botão de Cerejeira

View File

@ -19,6 +19,6 @@ Cherry Slab=Вишнёвая плита
Double Cherry Slab=Двойная вишнёвая плита Double Cherry Slab=Двойная вишнёвая плита
Cherry Sign=Вишнёвая табличка Cherry Sign=Вишнёвая табличка
Cherry Fence=Вишнёвый забор Cherry Fence=Вишнёвый забор
Cherry Fence Gate=Вишнёвая калитка Cherry Gate=Вишнёвая калитка
Cherry Pressure Plate=Вишнёвая нажимная плита Cherry Pressure Plate=Вишнёвая нажимная плита
Cherry Button=Вишнёвая кнопка Cherry Button=Вишнёвая кнопка

View File

@ -19,6 +19,6 @@ Cherry Slab=
Double Cherry Slab= Double Cherry Slab=
Cherry Sign= Cherry Sign=
Cherry Fence= Cherry Fence=
Cherry Fence Gate= Cherry Gate=
Cherry Pressure Plate= Cherry Pressure Plate=
Cherry Button= Cherry Button=

View File

@ -51,13 +51,13 @@ mcl_stairs.register_stair("cherrywood", "mcl_cherry_blossom:cherrywood",
{handy=1,axey=1, flammable=3,wood_stairs=1, material_wood=1, fire_encouragement=5, fire_flammability=20}, {handy=1,axey=1, flammable=3,wood_stairs=1, material_wood=1, fire_encouragement=5, fire_flammability=20},
{"mcl_cherry_blossom_planks.png"}, {"mcl_cherry_blossom_planks.png"},
S("Cherry Stairs"), S("Cherry Stairs"),
mcl_sounds.node_sound_wood_defaults(), nil, nil, mcl_sounds.node_sound_wood_defaults(), 3, 2,
"woodlike") "woodlike")
mcl_stairs.register_slab("cherrywood", "mcl_cherry_blossom:cherrywood", mcl_stairs.register_slab("cherrywood", "mcl_cherry_blossom:cherrywood",
{handy=1,axey=1, flammable=3,wood_slab=1, material_wood=1, fire_encouragement=5, fire_flammability=20}, {handy=1,axey=1, flammable=3,wood_slab=1, material_wood=1, fire_encouragement=5, fire_flammability=20},
{"mcl_cherry_blossom_planks.png"}, {"mcl_cherry_blossom_planks.png"},
S("Cherry Slab"), S("Cherry Slab"),
mcl_sounds.node_sound_wood_defaults(), nil, nil, mcl_sounds.node_sound_wood_defaults(), 3, 2,
S("Double Cherry Slab")) S("Double Cherry Slab"))
-- Signs -- Signs
@ -69,7 +69,7 @@ mcl_signs.register_sign_custom("mcl_cherry_blossom", "_cherrywood",
mcl_fences.register_fence_and_fence_gate( mcl_fences.register_fence_and_fence_gate(
"cherry_fence", "cherry_fence",
S("Cherry Fence"), S("Cherry Fence"),
S("Cherry Fence Gate"), S("Cherry Gate"),
"mcl_cherry_blossom_planks.png", "mcl_cherry_blossom_planks.png",
{handy=1, axey=1, flammable=2, fence_wood=1, fire_encouragement=5, fire_flammability=20}, {handy=1, axey=1, flammable=2, fence_wood=1, fire_encouragement=5, fire_flammability=20},
minetest.registered_nodes["mcl_core:wood"]._mcl_hardness, minetest.registered_nodes["mcl_core:wood"]._mcl_hardness,

View File

@ -1,233 +0,0 @@
# `mcl_chests` API
When reading through this documentation, please keep in mind that the chest
animations are achieved by giving each chest node an entity, as Minetest (as of
5.8.1) doesn't support giving nodes animated meshes, only static ones.
Because of that, a lot of parameters passed through the exposed functions are
be related to nodes and entities.
Please refer to [Minetest documentation](http://api.minetest.net/) and the code
comments in `api.lua`.
## `mcl_chests.register_chest(basename, definition)`
This function allows for simple chest registration, used by both regular and
trapped chests.
* `basename` is a string that will be concatenated to form full nodenames for
chests, for example `"mcl_chests:basename_small"`.
* `definition` is a key-value table, with the following fields:
```lua
{
desc = S("Stone Chest"),
-- Equivalent to `description` field of Item/Node definition.
-- Will be shown as chest's name in the inventory.
title = {
small = S("Stone Chest") -- the same as `desc` if not specified
double = S("Large Stone Chest") -- defaults to `"Large " .. desc`
}
-- These will be shown when opening the chest (in formspecs).
longdesc = S(
"Stone Chests are containers which provide 27 inventory slots. Stone Chests can be turned into" ..
"large stone chests with double the capacity by placing two stone chests next to each other."
),
usagehelp = S("To access its inventory, rightclick it. When broken, the items will drop out."),
tt_help = S("27 inventory slots") .. "\n" .. S("Can be combined to a large stone chest"),
-- Equivalent to `_doc_items_longdesc`, `_doc_items_usagehelp` and
-- `_tt_help` fields of Item/Node definition. Shown in the tooltip and wiki.
tiles = {
small = { "vl_stone_chests_small.png" },
double = { "vl_stone_chests_double.png" },
inv = {
"vl_stone_chests_top.png",
"vl_stone_chests_bottom.png",
"vl_stone_chests_right.png",
"vl_stone_chests_left.png",
"vl_stone_chests_back.png",
"vl_stone_chests_front.png"
},
},
-- `small` and `double` fields contain the textures that will be applied to
-- chest entities.
-- `inv` field contains table of textures (6 in total, for each cube side),
-- that will be used to render the chest "node" in the inventory.
groups = {
pickaxey = 1,
stone = 1,
material_stone = 1,
},
-- Equivalent to `groups` field of Item/Node definition. There is some table
-- merging occuring internally, but it is purely for entity rendering.
sounds = {
mcl_sounds.node_sound_stone_defaults(), -- defaults to `nil`
"vl_stone_chests_sound" -- defaults to `"default_chest"`
},
-- First value is equivalent to `sounds` field of Item/Node definition.
-- Second value is a sound prefix, from which the actual sounds will be
-- concatenated (e.g. `vl_stone_chests_sound_open.ogg`). See `api.lua`.
hardness = 4.0,
-- Equivalent to `_mcl_blast_resistance` and `_mcl_hardness` fields of
-- Item/Node definition. They are always equal for chests.
hidden = false,
-- Equivalent to `_doc_items_hidden` field of Item/Node definition.
mesecons = {
receptor = {
state = mesecon.state.on,
rules = mesecon.rules.pplate,
},
},
-- Equivalent to `mesecons` field of Item/Node definition.
on_rightclick = function(pos, node, clicker)
mcl_util.deal_damage(clicker, 2)
end,
-- If provided, will be executed at the end of the actual `on_rightclick`
-- function of the chest node.
-- If `on_rightclick_left` or `on_rightclick_right` are not provided, this
-- will also be what is executed for left and right double chest nodes,
-- respectively.
drop = "chest",
-- If provided, the chest will not drop itself, but the item of the chest
-- with that basename.
canonical_basename = "chest",
-- If provided, the chest will turn into chest with that basename in
-- `on_construct`.
}
```
For usage examples, see `chests.lua` and `example.lua`.
## `mcl_chests.create_entity(pos, node_name, textures, param2, double, sound_prefix, mesh_prefix, animation_type, dir, entity_pos)`
This function creates a chest entity based on the parameters:
* `pos` is the position vector.
* `node_name` is a string used in initialization data for the entity.
* `textures` is the entity textures.
* `param2` is a node param2, which then will be converted to entity direction.
* `double` is a boolean value for whether the chest is double or not.
* `sound_prefix` is a string, from which the actual sounds for the entity will
be concatenated.
* `mesh_prefix` is the same thing as `sound_prefix`, but for meshes.
* `animation_type` is a string that will be used in `set_animation` method of
chest entity.
* `dir` and `entity_pos` are number and vector values used to get entity info.
Returned value is either a luaentity, or `nil` if failed (in which case a
warning message gets written into the console).
## `mcl_chests.find_or_create_entity(pos, node_name, textures, param2, double, sound_prefix, mesh_prefix, animation_type, dir, entity_pos)`
This function finds an existing entity, or creates one if failed. Parameters:
* `pos` is the position vector.
* `node_name` is a string used in initialization data for the entity.
* `textures` is the entity textures.
* `param2` is a node param2, which then will be converted to entity direction.
* `double` is a boolean value for whether the chest is double or not.
* `sound_prefix` is a string, from which the actual sounds for the entity will
be concatenated.
* `mesh_prefix` is the same thing as `sound_prefix`, but for meshes.
* `animation_type` is a string that will be used in `set_animation` method of
chest entity.
* `dir` and `entity_pos` are number and vector values used to get entity info.
Returned value is either a luaentity, or `nil` if failed (in which case a
warning message gets written into the console).
## `mcl_chests.select_and_spawn_entity(pos, node)`
This function is a simple wrapper for `mcl_chests.find_or_create_entity`,
getting most of the fields from node definition.
* `pos` is the position vector.
* `node` is a NodeRef.
Returned value is either a luaentity, or `nil` if failed (in which case a
warning message gets written into the console).
## `mcl_chests.no_rotate`
This function is equivalent to `screwdriver.disallow` and is used when a chest
can't be rotated, and is applied in `on_rotate` field of Node definition.
## `mcl_chests.simple_rotate(pos, node, user, mode, new_param2)`
This function allows for simple rotation with the entity being affected as well,
and is applied in `on_rotate` field of Node definition.
## `mcl_chests.open_chests`
This table contains all currently open chests, indexed by player name.
`nil` if player is not using a chest, and `{ pos = <chest node position> }`
otherwise (where position is a vector value).
## `mcl_chests.protection_check_move(pos, from_list, from_index, to_list, to_index, count, player)`
This function is called in `allow_metadata_inventory_move` field of Node
definition.
## `mcl_chests.protection_check_put_take(pos, listname, index, stack, player)`
This function is called in `allow_metadata_inventory_put` and
`allow_metadata_inventory_take` fields of Node definition.
## `mcl_chests.player_chest_open(player, pos, node_name, textures, param2, double, sound, mesh, shulker)`
This function opens a chest based on the parameters:
* `player` is an ObjectRef.
* `pos` is the position vector.
* `node_name` is a string used in initialization data for the entity.
* `textures` is the entity textures.
* `param2` is a node param2, which then will be converted to entity direction.
* `double` is a boolean value for whether the chest is double or not.
* `sound` is a prefix string, from which the actual sounds for the entity will
be concatenated.
* `mesh` is the same thing as `sound`, but for meshes.
* `shulker` is a boolean value for whether the chest is a shulker or not.
## `mcl_chests.player_chest_close(player)`
This function has to be called when a player closes a chest.
* `player` is an ObjectRef.
## `mcl_chests.chest_update_after_close(pos)`
This function is called when a chest is closed by `player_chest_close`.
* `pos` is the chest's position vector.
## `mcl_chests.is_not_shulker_box(stack)`
This function checks for whether `stack` is a shulker box, and returns `false`
if it is. Used internally to disallow putting shulker boxes into shulker boxes.
* `stack` is an ItemStack.

View File

@ -1,19 +0,0 @@
# `mcl_chests`
This mod adds normal and large chests, trapped chests, ender chests and
shulkers, providing an API for mods to register their own chests.
The API is documented in `API.md`.
## License of source code
Copyright (C) 2011-2012 celeron55, Perttu Ahola <celeron55@gmail.com>\
Copyright (C) 2024 rudzik8, Mikita Wiśniewski <rudzik8@protonmail.com>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.
http://www.gnu.org/licenses/lgpl-2.1.html

View File

@ -1,966 +0,0 @@
local S = minetest.get_translator(minetest.get_current_modname())
local F = minetest.formspec_escape
local C = minetest.colorize
local get_double_container_neighbor_pos = mcl_util.get_double_container_neighbor_pos
local string = string
local table = table
local sf = string.format
-- Recursively merge tables with eachother
local function table_merge(tbl, ...)
local t = table.copy(tbl)
for k,v in pairs(...) do
if type(t[k]) == "table" and type(v) == "table" then
table_merge(t[k], v)
else
t[k] = v
end
end
return t
end
-- Chest Entity
-- ------------
-- This is necessary to show the chest as an animated mesh, as Minetest doesn't support assigning animated meshes to
-- nodes directly. We're bypassing this limitation by giving each chest its own entity, and making the chest node
-- itself fully transparent.
local animated_chests = (minetest.settings:get_bool("animated_chests") ~= false)
local entity_animations = {
shulker = {
speed = 50,
open = { x = 45, y = 95 },
close = { x = 95, y = 145 },
},
chest = {
speed = 25,
open = { x = 0, y = 7 },
close = { x = 13, y = 20 },
},
}
minetest.register_entity("mcl_chests:chest", {
initial_properties = {
visual = "mesh",
pointable = false,
physical = false,
static_save = false,
},
set_animation = function(self, animname)
local anim_table = entity_animations[self.animation_type]
local anim = anim_table[animname]
if not anim then return end
self.object:set_animation(anim, anim_table.speed, 0, false)
end,
open = function(self, playername)
self.players[playername] = true
if not self.is_open then
self:set_animation("open")
minetest.sound_play(self.sound_prefix .. "_open", { pos = self.node_pos, gain = 0.5, max_hear_distance = 16 },
true)
self.is_open = true
end
end,
close = function(self, playername)
local playerlist = self.players
playerlist[playername] = nil
if self.is_open then
if next(playerlist) then
return
end
self:set_animation("close")
minetest.sound_play(self.sound_prefix .. "_close",
{ pos = self.node_pos, gain = 0.3, max_hear_distance = 16 },
true)
self.is_open = false
end
end,
initialize = function(self, node_pos, node_name, textures, dir, double, sound_prefix, mesh_prefix, animation_type)
self.node_pos = node_pos
self.node_name = node_name
self.sound_prefix = sound_prefix
self.animation_type = animation_type
local obj = self.object
obj:set_armor_groups({ immortal = 1 })
obj:set_properties({
textures = textures,
mesh = mesh_prefix .. (double and "_double" or "") .. ".b3d",
})
self:set_yaw(dir)
self.players = {}
end,
reinitialize = function(self, node_name)
self.node_name = node_name
end,
set_yaw = function(self, dir)
self.object:set_yaw(minetest.dir_to_yaw(dir))
end,
check = function(self)
local node_pos, node_name = self.node_pos, self.node_name
if not node_pos or not node_name then
return false
end
local node = minetest.get_node(node_pos)
if node.name ~= node_name then
return false
end
return true
end,
on_activate = function(self, initialization_data)
if initialization_data and initialization_data:find("\"###mcl_chests:chest###\"") then
self:initialize(unpack(minetest.deserialize(initialization_data)))
else
minetest.log("warning",
"[mcl_chests] on_activate called without proper initialization_data ... removing entity")
self.object:remove()
end
end,
on_step = function(self, dtime)
if not self:check() then
self.object:remove()
end
end
})
local function get_entity_pos(pos, dir, double)
pos = vector.copy(pos)
if double then
local add, mul, vec, cross = vector.add, vector.multiply, vector.new, vector.cross
pos = add(pos, mul(cross(dir, vec(0, 1, 0)), -0.5))
end
return pos
end
local function find_entity(pos)
for _, obj in pairs(minetest.get_objects_inside_radius(pos, 0)) do
local luaentity = obj:get_luaentity()
if luaentity and luaentity.name == "mcl_chests:chest" then
return luaentity
end
end
end
local function get_entity_info(pos, param2, double, dir, entity_pos)
dir = dir or minetest.facedir_to_dir(param2)
return dir, get_entity_pos(pos, dir, double)
end
local function create_entity(pos, node_name, textures, param2, double, sound_prefix, mesh_prefix, animation_type, dir,
entity_pos)
dir, entity_pos = get_entity_info(pos, param2, double, dir, entity_pos)
local initialization_data = minetest.serialize({pos, node_name, textures, dir, double, sound_prefix,
mesh_prefix, animation_type, "###mcl_chests:chest###"})
local obj = minetest.add_entity(entity_pos, "mcl_chests:chest", initialization_data)
if obj and obj:get_pos() then
return obj:get_luaentity()
else
minetest.log("warning", "[mcl_chests] Failed to create entity at " ..
(entity_pos and minetest.pos_to_string(entity_pos, 1) or "nil"))
end
end
mcl_chests.create_entity = create_entity
local function find_or_create_entity(pos, node_name, textures, param2, double, sound_prefix, mesh_prefix,
animation_type, dir, entity_pos)
dir, entity_pos = get_entity_info(pos, param2, double, dir, entity_pos)
return find_entity(entity_pos) or
create_entity(pos, node_name, textures, param2, double, sound_prefix, mesh_prefix, animation_type, dir,
entity_pos)
end
mcl_chests.find_or_create_entity = find_or_create_entity
local function select_and_spawn_entity(pos, node)
local node_name = node.name
local node_def = minetest.registered_nodes[node_name]
local double_chest = minetest.get_item_group(node_name, "double_chest") > 0
find_or_create_entity(pos, node_name, node_def._chest_entity_textures, node.param2, double_chest,
node_def._chest_entity_sound, node_def._chest_entity_mesh, node_def._chest_entity_animation_type)
end
mcl_chests.select_and_spawn_entity = select_and_spawn_entity
local no_rotate, simple_rotate
if screwdriver then
no_rotate = screwdriver.disallow
simple_rotate = function(pos, node, user, mode, new_param2)
if screwdriver.rotate_simple(pos, node, user, mode, new_param2) ~= false then
local nodename = node.name
local nodedef = minetest.registered_nodes[nodename]
local dir = minetest.facedir_to_dir(new_param2)
find_or_create_entity(pos, nodename, nodedef._chest_entity_textures, new_param2, false,
nodedef._chest_entity_sound,
nodedef._chest_entity_mesh, nodedef._chest_entity_animation_type, dir):set_yaw(dir)
else
return false
end
end
end
mcl_chests.no_rotate, mcl_chests.simple_rotate = no_rotate, simple_rotate
-- List of open chests
-- -------------------
-- Key: Player name
-- Value:
-- If player is using a chest: { pos = <chest node position> }
-- Otherwise: nil
local open_chests = {}
mcl_chests.open_chests = open_chests
-- To be called if a player opened a chest
local function player_chest_open(player, pos, node_name, textures, param2, double, sound, mesh, shulker)
local name = player:get_player_name()
open_chests[name] = {
pos = pos,
node_name = node_name,
textures = textures,
param2 = param2,
double = double,
sound = sound,
mesh = mesh,
shulker = shulker
}
if animated_chests then
local dir = minetest.facedir_to_dir(param2)
find_or_create_entity(pos, node_name, textures, param2, double, sound, mesh,
shulker and "shulker" or "chest", dir):open(name)
end
end
mcl_chests.player_chest_open = player_chest_open
-- Simple protection checking functions
local function protection_check_move(pos, from_list, from_index, to_list, to_index, count, player)
local name = player:get_player_name()
if minetest.is_protected(pos, name) then
minetest.record_protection_violation(pos, name)
return 0
else
return count
end
end
mcl_chests.protection_check_move = protection_check_move
local function protection_check_take(pos, listname, index, stack, player)
local name = player:get_player_name()
if minetest.is_protected(pos, name) then
minetest.record_protection_violation(pos, name)
return 0
else
return stack:get_count()
end
end
mcl_chests.protection_check_put_take = protection_check_take
-- Logging functions
local function log_inventory_move(pos, from_list, from_index, to_list, to_index, count, player)
minetest.log("action", player:get_player_name() ..
" moves stuff to chest at " .. minetest.pos_to_string(pos))
end
local function log_inventory_put(pos, listname, index, stack, player)
minetest.log("action", player:get_player_name() ..
" moves stuff to chest at " .. minetest.pos_to_string(pos))
-- BEGIN OF LISTRING WORKAROUND
if listname == "input" then
local inv = minetest.get_inventory({ type = "node", pos = pos })
inv:add_item("main", stack)
end
-- END OF LISTRING WORKAROUND
end
local function log_inventory_take(pos, listname, index, stack, player)
minetest.log("action", player:get_player_name() ..
" takes stuff from chest at " .. minetest.pos_to_string(pos))
end
-- To be called when a chest is closed (only relevant for trapped chest atm)
local function chest_update_after_close(pos)
local node = minetest.get_node(pos)
if node.name == "mcl_chests:trapped_chest_on_small" then
minetest.swap_node(pos, { name = "mcl_chests:trapped_chest_small", param2 = node.param2 })
find_or_create_entity(pos, "mcl_chests:trapped_chest_small", { "mcl_chests_trapped.png" }, node.param2, false,
"default_chest", "mcl_chests_chest", "chest"):reinitialize("mcl_chests:trapped_chest_small")
mesecon.receptor_off(pos, mesecon.rules.pplate)
elseif node.name == "mcl_chests:trapped_chest_on_left" then
minetest.swap_node(pos, { name = "mcl_chests:trapped_chest_left", param2 = node.param2 })
find_or_create_entity(pos, "mcl_chests:trapped_chest_left", mcl_chests.tiles.chest_trapped_double, node.param2, true,
"default_chest", "mcl_chests_chest", "chest"):reinitialize("mcl_chests:trapped_chest_left")
mesecon.receptor_off(pos, mesecon.rules.pplate)
local pos_other = get_double_container_neighbor_pos(pos, node.param2, "left")
minetest.swap_node(pos_other, { name = "mcl_chests:trapped_chest_right", param2 = node.param2 })
mesecon.receptor_off(pos_other, mesecon.rules.pplate)
elseif node.name == "mcl_chests:trapped_chest_on_right" then
minetest.swap_node(pos, { name = "mcl_chests:trapped_chest_right", param2 = node.param2 })
mesecon.receptor_off(pos, mesecon.rules.pplate)
local pos_other = get_double_container_neighbor_pos(pos, node.param2, "right")
minetest.swap_node(pos_other, { name = "mcl_chests:trapped_chest_left", param2 = node.param2 })
find_or_create_entity(pos_other, "mcl_chests:trapped_chest_left", mcl_chests.tiles.chest_trapped_double,
node.param2, true, "default_chest", "mcl_chests_chest", "chest")
:reinitialize("mcl_chests:trapped_chest_left")
mesecon.receptor_off(pos_other, mesecon.rules.pplate)
end
end
mcl_chests.chest_update_after_close = chest_update_after_close
-- To be called if a player closed a chest
local function player_chest_close(player)
local name = player:get_player_name()
local open_chest = open_chests[name]
if open_chest == nil then
return
end
if animated_chests then
find_or_create_entity(open_chest.pos, open_chest.node_name, open_chest.textures, open_chest.param2,
open_chest.double, open_chest.sound, open_chest.mesh, open_chest.shulker and "shulker" or "chest")
:close(name)
end
chest_update_after_close(open_chest.pos)
open_chests[name] = nil
end
mcl_chests.player_chest_close = player_chest_close
local function double_chest_add_item(top_inv, bottom_inv, listname, stack)
if not stack or stack:is_empty() then return end
local name = stack:get_name()
local function top_off(inv, stack)
for c, chest_stack in ipairs(inv:get_list(listname)) do
if stack:is_empty() then
break
end
if chest_stack:get_name() == name and chest_stack:get_free_space() > 0 then
stack = chest_stack:add_item(stack)
inv:set_stack(listname, c, chest_stack)
end
end
return stack
end
stack = top_off(top_inv, stack)
stack = top_off(bottom_inv, stack)
if not stack:is_empty() then
stack = top_inv:add_item(listname, stack)
if not stack:is_empty() then
bottom_inv:add_item(listname, stack)
end
end
end
local function on_chest_blast(pos)
local node = minetest.get_node(pos)
local drop_items_chest = mcl_util.drop_items_from_meta_container("main")
drop_items_chest(pos, node)
minetest.remove_node(pos)
end
local function limit_put_list(stack, list)
for _, other in ipairs(list) do
stack = other:add_item(stack)
if stack:is_empty() then
break
end
end
return stack
end
local function limit_put(stack, top_inv, bottom_inv)
local leftover = ItemStack(stack)
leftover = limit_put_list(leftover, top_inv:get_list("main"))
leftover = limit_put_list(leftover, bottom_inv:get_list("main"))
return stack:get_count() - leftover:get_count()
end
local function close_forms(canonical_basename, pos)
local players = minetest.get_connected_players()
for p = 1, #players do
if vector.distance(players[p]:get_pos(), pos) <= 30 then
minetest.close_formspec(players[p]:get_player_name(),
"mcl_chests:" .. canonical_basename .. "_" .. pos.x .. "_" .. pos.y .. "_" .. pos.z)
end
end
end
local function get_chest_inventories(pos, side)
local inv = minetest.get_inventory({ type = "node", pos = pos })
local node = minetest.get_node(pos)
local pos_other = get_double_container_neighbor_pos(pos, node.param2, side)
local inv_other = minetest.get_inventory({ type = "node", pos = pos_other })
local top_inv, bottom_inv
if side == "left" then
top_inv = inv
bottom_inv = inv_other
else
top_inv = inv_other
bottom_inv = inv
end
return top_inv, bottom_inv
end
-- Functions used in double chest registration code
-- ------------------------------------------------
-- The `return function` wrapping is necessary to avoid stacking up parameters.
-- `side` is either "left" or "right".
local function hopper_pull_double(side) return function(pos, hop_pos, hop_inv, hop_list)
local top_inv, bottom_inv = get_chest_inventories(pos, side)
local stack_id = mcl_util.select_stack(top_inv, "main", hop_inv, hop_list)
if stack_id ~= nil then
return top_inv, "main", stack_id
end
stack_id = mcl_util.select_stack(bottom_inv, "main", hop_inv, hop_list)
return bottom_inv, "main", stack_id
end end
local function hopper_push_double(side) return function(pos, hop_pos, hop_inv, hop_list)
local top_inv, bottom_inv = get_chest_inventories(pos, side)
local stack_id = mcl_util.select_stack(hop_inv, hop_list, top_inv, "main", nil, 1)
if stack_id ~= nil then
return top_inv, "main", stack_id
end
stack_id = mcl_util.select_stack(hop_inv, hop_list, bottom_inv, "main", nil, 1)
return bottom_inv, "main", stack_id
end end
local function construct_double_chest(side, names) return function(pos)
local n = minetest.get_node(pos)
local param2 = n.param2
local p = get_double_container_neighbor_pos(pos, param2, side)
-- Turn into a small chest if the neighbor is gone
if not p or minetest.get_node(p).name ~= names[side].cr then
n.name = names.small.a
minetest.swap_node(pos, n)
end
end end
local function destruct_double_chest(side, names, canonical_basename, small_textures, sound_prefix) return function(pos)
local n = minetest.get_node(pos)
if n.name == names.small.a then
return
end
close_forms(canonical_basename, pos)
local param2 = n.param2
local p = get_double_container_neighbor_pos(pos, param2, side)
if not p or minetest.get_node(p).name ~= names[side].r then
return
end
close_forms(canonical_basename, p)
minetest.swap_node(p, { name = names.small.a, param2 = param2 })
create_entity(p, names.small.a, small_textures, param2, false, sound_prefix, "mcl_chests_chest", "chest")
end end
-- Small chests use `protection_check_take` for both put and take actions.
local function protection_check_put(side) return function(pos, listname, index, stack, player)
local name = player:get_player_name()
if minetest.is_protected(pos, name) then
minetest.record_protection_violation(pos, name)
return 0
-- BEGIN OF LISTRING WORKAROUND
elseif listname == "input" then
local top_inv, bottom_inv = get_chest_inventories(pos, side)
return limit_put(stack, top_inv, bottom_inv)
-- END OF LISTRING WORKAROUND
else
return stack:get_count()
end
end end
local function log_inventory_put_double(side) return function(pos, listname, index, stack, player)
minetest.log("action", player:get_player_name() ..
" moves stuff to chest at " .. minetest.pos_to_string(pos))
-- BEGIN OF LISTRING WORKAROUND
if listname == "input" then
local top_inv, bottom_inv = get_chest_inventories(pos, side)
top_inv:set_stack("input", 1, nil)
bottom_inv:set_stack("input", 1, nil)
double_chest_add_item(top_inv, bottom_inv, "main", stack)
end
-- END OF LISTRING WORKAROUND
end end
-- This is a helper function to register regular chests (both small and double variants).
-- Some parameters here are only utilized by trapped chests.
function mcl_chests.register_chest(basename, d)
-- If this passes without crash, we know for a fact that d = {...}
assert((d and type(d) == "table"), "Second argument to mcl_chests.register_chest must be a table")
-- Fallback for when there is no `title` field
if not d.title then d.title = {} end
d.title.small = d.title.small or d.desc
d.title.double = d.title.double or ("Large " .. d.title.small)
if not d.drop then
d.drop = "mcl_chests:" .. basename
else
d.drop = "mcl_chests:" .. d.drop
end
local drop_items_chest = mcl_util.drop_items_from_meta_container("main")
if not d.groups then d.groups = {} end
if not d.on_rightclick_left then
d.on_rightclick_left = d.on_rightclick
end
if not d.on_rightclick_right then
d.on_rightclick_right = d.on_rightclick
end
--[[local on_rightclick_side = {
left = d.on_rightclick_left or d.on_rightclick,
right = d.on_rightclick_right or d.on_rightclick,
}]]
if not d.sounds or type(d.sounds) ~= "table" then
d.sounds = { nil, "default_chest" }
end
if not d.sounds[2] then
d.sounds[2] = "default_chest"
end
-- The basename of the "canonical" version of the node, if set (e.g.: trapped_chest_on → trapped_chest).
-- Used to get a shared formspec ID and to swap the node back to the canonical version in on_construct.
if not d.canonical_basename then
d.canonical_basename = basename
end
-- Names table
-- -----------
-- Accessed through names["kind"].x (names.kind.x), where x can be:
-- a = "actual"
-- c = canonical
-- r = reverse (only for double chests)
-- cr = canonical, reverse (only for double chests)
local names = {
small = {
a = "mcl_chests:" .. basename .. "_small",
c = "mcl_chests:" .. d.canonical_basename .. "_small",
},
left = {
a = "mcl_chests:" .. basename .. "_left",
c = "mcl_chests:" .. d.canonical_basename .. "_left",
},
right = {
a = "mcl_chests:" .. basename .. "_right",
c = "mcl_chests:" .. d.canonical_basename .. "_right",
},
}
names.left.r = names.right.a
names.right.r = names.left.a
names.left.cr = names.right.c
names.right.cr = names.left.c
local small_textures = d.tiles.small
local double_textures = d.tiles.double
-- Construct groups
local groups_inv = table_merge({ deco_block = 1 }, d.groups)
local groups_small = table_merge(groups_inv, {
container = 2,
deco_block = 1,
chest_entity = 1,
not_in_creative_inventory = 1
}, d.groups)
local groups_left = table_merge(groups_small, {
double_chest = 1
}, d.groups)
local groups_right = table_merge(groups_small, {
-- In a double chest, the entity is assigned to the left side, but not the right one.
chest_entity = 0,
double_chest = 2
}, d.groups)
-- Dummy inventory node
-- Will turn into names.small.a when placed down
minetest.register_node("mcl_chests:" .. basename, {
description = d.desc,
_tt_help = d.tt_help,
_doc_items_longdesc = d.longdesc,
_doc_items_usagehelp = d.usagehelp,
_doc_items_hidden = d.hidden,
drawtype = "mesh",
mesh = "mcl_chests_chest.b3d",
tiles = small_textures,
use_texture_alpha = "opaque",
paramtype = "light",
paramtype2 = "facedir",
sounds = d.sounds[1],
groups = groups_inv,
on_construct = function(pos, node)
local node = minetest.get_node(pos)
node.name = names.small.a
minetest.set_node(pos, node)
end,
after_place_node = function(pos, placer, itemstack, pointed_thing)
minetest.get_meta(pos):set_string("name", itemstack:get_meta():get_string("name"))
end,
})
minetest.register_node(names.small.a, {
description = d.desc,
_tt_help = d.tt_help,
_doc_items_longdesc = d.longdesc,
_doc_items_usagehelp = d.usagehelp,
_doc_items_hidden = d.hidden,
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = { -0.4375, -0.5, -0.4375, 0.4375, 0.375, 0.4375 },
},
tiles = { "blank.png^[resize:16x16" },
use_texture_alpha = "clip",
_chest_entity_textures = small_textures,
_chest_entity_sound = d.sounds[2],
_chest_entity_mesh = "mcl_chests_chest",
_chest_entity_animation_type = "chest",
paramtype = "light",
paramtype2 = "facedir",
drop = d.drop,
groups = groups_small,
is_ground_content = false,
sounds = d.sounds[1],
on_construct = function(pos)
local param2 = minetest.get_node(pos).param2
local meta = minetest.get_meta(pos)
--[[ This is a workaround for Minetest issue 5894
<https://github.com/minetest/minetest/issues/5894>.
Apparently if we don't do this, large chests initially don't work when
placed at chunk borders, and some chests randomly don't work after
placing. ]]
-- FIXME: Remove this workaround when the bug has been fixed.
-- BEGIN OF WORKAROUND --
meta:set_string("workaround", "ignore_me")
meta:set_string("workaround", "") -- Done to keep metadata clean
-- END OF WORKAROUND --
local inv = meta:get_inventory()
inv:set_size("main", 9 * 3)
--[[ The "input" list is *another* workaround (hahahaha!) around the fact that Minetest
does not support listrings to put items into an alternative list if the first one
happens to be full. See <https://github.com/minetest/minetest/issues/5343>.
This list is a hidden input-only list and immediately puts items into the appropriate chest.
It is only used for listrings and hoppers. This workaround is not that bad because it only
requires a simple inventory allows check for large chests.]]
-- FIXME: Refactor the listrings as soon Minetest supports alternative listrings
-- BEGIN OF LISTRING WORKAROUND
inv:set_size("input", 1)
-- END OF LISTRING WORKAROUND
-- Combine into a double chest if neighbouring another small chest
if minetest.get_node(get_double_container_neighbor_pos(pos, param2, "right")).name ==
names.small.a then
minetest.swap_node(pos, { name = names.right.a, param2 = param2 })
local p = get_double_container_neighbor_pos(pos, param2, "right")
minetest.swap_node(p, { name = names.left.a, param2 = param2 })
create_entity(p, names.left.a, double_textures, param2, true, d.sounds[2],
"mcl_chests_chest", "chest")
elseif minetest.get_node(get_double_container_neighbor_pos(pos, param2, "left")).name ==
names.small.a then
minetest.swap_node(pos, { name = names.left.a, param2 = param2 })
create_entity(pos, names.left.a, double_textures, param2, true, d.sounds[2],
"mcl_chests_chest", "chest")
local p = get_double_container_neighbor_pos(pos, param2, "left")
minetest.swap_node(p, { name = names.right.a, param2 = param2 })
else
minetest.swap_node(pos, { name = names.small.a, param2 = param2 })
create_entity(pos, names.small.a, small_textures, param2, false, d.sounds[2],
"mcl_chests_chest", "chest")
end
end,
after_place_node = function(pos, placer, itemstack, pointed_thing)
minetest.get_meta(pos):set_string("name", itemstack:get_meta():get_string("name"))
end,
after_dig_node = drop_items_chest,
on_blast = on_chest_blast,
allow_metadata_inventory_move = protection_check_move,
allow_metadata_inventory_take = protection_check_take,
allow_metadata_inventory_put = protection_check_take,
on_metadata_inventory_move = log_inventory_move,
on_metadata_inventory_put = log_inventory_put,
on_metadata_inventory_take = log_inventory_take,
_mcl_blast_resistance = d.hardness,
_mcl_hardness = d.hardness,
on_rightclick = function(pos, node, clicker)
local topnode = minetest.get_node({ x = pos.x, y = pos.y + 1, z = pos.z })
if topnode and topnode.name and minetest.registered_nodes[topnode.name] then
if minetest.registered_nodes[topnode.name].groups.opaque == 1 then
-- won't open if there is no space from the top
return false
end
end
local name = minetest.get_meta(pos):get_string("name")
if name == "" then
name = d.title.small
end
minetest.show_formspec(clicker:get_player_name(),
sf("mcl_chests:%s_%s_%s_%s", d.canonical_basename, pos.x, pos.y, pos.z),
table.concat({
"formspec_version[4]",
"size[11.75,10.425]",
"label[0.375,0.375;" .. F(C(mcl_formspec.label_color, name)) .. "]",
mcl_formspec.get_itemslot_bg_v4(0.375, 0.75, 9, 3),
sf("list[nodemeta:%s,%s,%s;main;0.375,0.75;9,3;]", pos.x, pos.y, pos.z),
"label[0.375,4.7;" .. F(C(mcl_formspec.label_color, S("Inventory"))) .. "]",
mcl_formspec.get_itemslot_bg_v4(0.375, 5.1, 9, 3),
"list[current_player;main;0.375,5.1;9,3;9]",
mcl_formspec.get_itemslot_bg_v4(0.375, 9.05, 9, 1),
"list[current_player;main;0.375,9.05;9,1;]",
sf("listring[nodemeta:%s,%s,%s;main]", pos.x, pos.y, pos.z),
"listring[current_player;main]",
})
)
if d.on_rightclick then
d.on_rightclick(pos, node, clicker)
end
player_chest_open(clicker, pos, names.small.a, small_textures, node.param2, false, d.sounds[2],
"mcl_chests_chest")
end,
on_destruct = function(pos)
close_forms(d.canonical_basename, pos)
end,
mesecons = d.mesecons,
on_rotate = simple_rotate,
})
minetest.register_node(names.left.a, {
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = { -0.4375, -0.5, -0.4375, 0.5, 0.375, 0.4375 },
},
tiles = { "blank.png^[resize:16x16" },
use_texture_alpha = "clip",
_chest_entity_textures = double_textures,
_chest_entity_sound = d.sounds[2],
_chest_entity_mesh = "mcl_chests_chest",
_chest_entity_animation_type = "chest",
paramtype = "light",
paramtype2 = "facedir",
groups = groups_left,
drop = d.drop,
is_ground_content = false,
sounds = d.sounds[1],
on_construct = construct_double_chest("left", names),
after_place_node = function(pos, placer, itemstack, pointed_thing)
minetest.get_meta(pos):set_string("name", itemstack:get_meta():get_string("name"))
end,
on_destruct = destruct_double_chest("left", names, d.canonical_basename, small_textures, d.sounds[2]),
after_dig_node = drop_items_chest,
on_blast = on_chest_blast,
allow_metadata_inventory_move = protection_check_move,
allow_metadata_inventory_take = protection_check_take,
allow_metadata_inventory_put = protection_check_put("left"),
on_metadata_inventory_move = log_inventory_move,
on_metadata_inventory_put = log_inventory_put_double("left"),
on_metadata_inventory_take = log_inventory_take,
_mcl_blast_resistance = d.hardness,
_mcl_hardness = d.hardness,
on_rightclick = function(pos, node, clicker)
local pos_other = get_double_container_neighbor_pos(pos, node.param2, "left")
local above_def = minetest.registered_nodes[
minetest.get_node({ x = pos.x, y = pos.y + 1, z = pos.z }).name
]
local above_def_other = minetest.registered_nodes[
minetest.get_node({ x = pos_other.x, y = pos_other.y + 1, z = pos_other.z }).name
]
if (not above_def or above_def.groups.opaque == 1 or not above_def_other
or above_def_other.groups.opaque == 1) then
-- won't open if there is no space from the top
return false
end
local name = minetest.get_meta(pos):get_string("name")
if name == "" then -- if empty after that ^
name = minetest.get_meta(pos_other):get_string("name")
end if name == "" then -- if STILL empty after that ^
name = d.title.double
end
minetest.show_formspec(clicker:get_player_name(),
sf("mcl_chests:%s_%s_%s_%s", d.canonical_basename, pos.x, pos.y, pos.z),
table.concat({
"formspec_version[4]",
"size[11.75,14.15]",
"label[0.375,0.375;" .. F(C(mcl_formspec.label_color, name)) .. "]",
mcl_formspec.get_itemslot_bg_v4(0.375, 0.75, 9, 3),
sf("list[nodemeta:%s,%s,%s;main;0.375,0.75;9,3;]", pos.x, pos.y, pos.z),
mcl_formspec.get_itemslot_bg_v4(0.375, 4.5, 9, 3),
sf("list[nodemeta:%s,%s,%s;main;0.375,4.5;9,3;]", pos_other.x, pos_other.y, pos_other.z),
"label[0.375,8.45;" .. F(C(mcl_formspec.label_color, S("Inventory"))) .. "]",
mcl_formspec.get_itemslot_bg_v4(0.375, 8.825, 9, 3),
"list[current_player;main;0.375,8.825;9,3;9]",
mcl_formspec.get_itemslot_bg_v4(0.375, 12.775, 9, 1),
"list[current_player;main;0.375,12.775;9,1;]",
--BEGIN OF LISTRING WORKAROUND
"listring[current_player;main]",
sf("listring[nodemeta:%s,%s,%s;input]", pos.x, pos.y, pos.z),
--END OF LISTRING WORKAROUND
"listring[current_player;main]" ..
sf("listring[nodemeta:%s,%s,%s;main]", pos.x, pos.y, pos.z),
"listring[current_player;main]",
sf("listring[nodemeta:%s,%s,%s;main]", pos_other.x, pos_other.y, pos_other.z),
})
)
if d.on_rightclick_left then
d.on_rightclick_left(pos, node, clicker)
end
player_chest_open(clicker, pos, names.left.a, double_textures, node.param2, true, d.sounds[2],
"mcl_chests_chest")
end,
mesecons = d.mesecons,
on_rotate = no_rotate,
_mcl_hoppers_on_try_pull = hopper_pull_double("left"),
_mcl_hoppers_on_try_push = hopper_push_double("left"),
})
minetest.register_node(names.right.a, {
drawtype = "nodebox",
paramtype = "light",
paramtype2 = "facedir",
node_box = {
type = "fixed",
fixed = { -0.5, -0.5, -0.4375, 0.4375, 0.375, 0.4375 },
},
tiles = { "blank.png^[resize:16x16" },
use_texture_alpha = "clip",
groups = groups_right,
drop = d.drop,
is_ground_content = false,
sounds = d.sounds[1],
on_construct = construct_double_chest("right", names),
after_place_node = function(pos, placer, itemstack, pointed_thing)
minetest.get_meta(pos):set_string("name", itemstack:get_meta():get_string("name"))
end,
on_destruct = destruct_double_chest("right", names, d.canonical_basename, small_textures, d.sounds[2]),
after_dig_node = drop_items_chest,
on_blast = on_chest_blast,
allow_metadata_inventory_move = protection_check_move,
allow_metadata_inventory_take = protection_check_take,
allow_metadata_inventory_put = protection_check_put("right"),
on_metadata_inventory_move = log_inventory_move,
on_metadata_inventory_put = log_inventory_put_double("right"),
on_metadata_inventory_take = log_inventory_take,
_mcl_blast_resistance = d.hardness,
_mcl_hardness = d.hardness,
on_rightclick = function(pos, node, clicker)
local pos_other = get_double_container_neighbor_pos(pos, node.param2, "right")
local above_def = minetest.registered_nodes[
minetest.get_node({ x = pos.x, y = pos.y + 1, z = pos.z }).name
]
local above_def_other = minetest.registered_nodes[
minetest.get_node({ x = pos_other.x, y = pos_other.y + 1, z = pos_other.z }).name
]
if (not above_def or above_def.groups.opaque == 1 or not above_def_other
or above_def_other.groups.opaque == 1) then
-- won't open if there is no space from the top
return false
end
local name = minetest.get_meta(pos):get_string("name")
if name == "" then -- if empty after that ^
name = minetest.get_meta(pos_other):get_string("name")
end if name == "" then -- if STILL empty after that ^
name = d.title.double
end
minetest.show_formspec(clicker:get_player_name(),
sf("mcl_chests:%s_%s_%s_%s", d.canonical_basename, pos.x, pos.y, pos.z),
table.concat({
"formspec_version[4]",
"size[11.75,14.15]",
"label[0.375,0.375;" .. F(C(mcl_formspec.label_color, name)) .. "]",
mcl_formspec.get_itemslot_bg_v4(0.375, 0.75, 9, 3),
sf("list[nodemeta:%s,%s,%s;main;0.375,0.75;9,3;]", pos_other.x, pos_other.y, pos_other.z),
mcl_formspec.get_itemslot_bg_v4(0.375, 4.5, 9, 3),
sf("list[nodemeta:%s,%s,%s;main;0.375,4.5;9,3;]", pos.x, pos.y, pos.z),
"label[0.375,8.45;" .. F(C(mcl_formspec.label_color, S("Inventory"))) .. "]",
mcl_formspec.get_itemslot_bg_v4(0.375, 8.825, 9, 3),
"list[current_player;main;0.375,8.825;9,3;9]",
mcl_formspec.get_itemslot_bg_v4(0.375, 12.775, 9, 1),
"list[current_player;main;0.375,12.775;9,1;]",
--BEGIN OF LISTRING WORKAROUND
"listring[current_player;main]",
sf("listring[nodemeta:%s,%s,%s;input]", pos.x, pos.y, pos.z),
--END OF LISTRING WORKAROUND
"listring[current_player;main]" ..
sf("listring[nodemeta:%s,%s,%s;main]", pos_other.x, pos_other.y, pos_other.z),
"listring[current_player;main]",
sf("listring[nodemeta:%s,%s,%s;main]", pos.x, pos.y, pos.z),
})
)
if d.on_rightclick_right then
d.on_rightclick_right(pos, node, clicker)
end
player_chest_open(clicker, pos_other, names.left.a, double_textures, node.param2, true, d.sounds[2],
"mcl_chests_chest")
end,
mesecons = d.mesecons,
on_rotate = no_rotate,
_mcl_hoppers_on_try_pull = hopper_pull_double("right"),
_mcl_hoppers_on_try_push = hopper_push_double("right"),
})
if doc then
doc.add_entry_alias("nodes", names.small.a, "nodes", names.left.a)
doc.add_entry_alias("nodes", names.small.a, "nodes", names.right.a)
end
end
-- Returns false if itemstack is a shulker box
function mcl_chests.is_not_shulker_box(stack)
local g = minetest.get_item_group(stack:get_name(), "shulker_box")
return g == 0 or g == nil
end

View File

@ -1,165 +0,0 @@
local S = minetest.get_translator(minetest.get_current_modname())
local get_double_container_neighbor_pos = mcl_util.get_double_container_neighbor_pos
local chestusage = S("To access its inventory, rightclick it. When broken, the items will drop out.")
mcl_chests.register_chest("chest", {
desc = S("Chest"),
longdesc = S(
"Chests are containers which provide 27 inventory slots. Chests can be turned into large chests with " ..
"double the capacity by placing two chests next to each other."
),
usagehelp = chestusage,
tt_help = S("27 inventory slots") .. "\n" .. S("Can be combined to a large chest"),
tiles = {
small = mcl_chests.tiles.chest_normal_small,
double = mcl_chests.tiles.chest_normal_double,
inv = { "default_chest_top.png", "mcl_chests_chest_bottom.png",
"mcl_chests_chest_right.png", "mcl_chests_chest_left.png",
"mcl_chests_chest_back.png", "default_chest_front.png" },
},
groups = {
handy = 1,
axey = 1,
material_wood = 1,
flammable = -1,
},
sounds = { mcl_sounds.node_sound_wood_defaults() },
hardness = 2.5,
hidden = false,
})
local traptiles = {
small = mcl_chests.tiles.chest_trapped_small,
double = mcl_chests.tiles.chest_trapped_double,
}
mcl_chests.register_chest("trapped_chest", {
desc = S("Trapped Chest"),
title = {
small = S("Chest"),
double = S("Large Chest")
},
longdesc = S(
"A trapped chest is a container which provides 27 inventory slots. When it is opened, it sends a redstone " ..
"signal to its adjacent blocks as long it stays open. Trapped chests can be turned into large trapped " ..
"chests with double the capacity by placing two trapped chests next to each other."
),
usagehelp = chestusage,
tt_help = S("27 inventory slots") ..
"\n" .. S("Can be combined to a large chest") .. "\n" .. S("Emits a redstone signal when opened"),
tiles = traptiles,
groups = {
handy = 1,
axey = 1,
material_wood = 1,
flammable = -1,
mesecon = 2,
},
sounds = { mcl_sounds.node_sound_wood_defaults() },
hardness = 2.5,
hidden = false,
mesecons = {
receptor = {
state = mesecon.state.off,
rules = mesecon.rules.pplate,
},
},
on_rightclick = function(pos, node, clicker)
minetest.swap_node(pos, { name = "mcl_chests:trapped_chest_on_small", param2 = node.param2 })
mcl_chests.find_or_create_entity(pos, "mcl_chests:trapped_chest_on_small", { "mcl_chests_trapped.png" },
node.param2, false, "default_chest", "mcl_chests_chest", "chest")
:reinitialize("mcl_chests:trapped_chest_on_small")
mesecon.receptor_on(pos, mesecon.rules.pplate)
end,
on_rightclick_left = function(pos, node, clicker)
local meta = minetest.get_meta(pos)
meta:set_int("players", 1)
minetest.swap_node(pos, { name = "mcl_chests:trapped_chest_on_left", param2 = node.param2 })
mcl_chests.find_or_create_entity(pos, "mcl_chests:trapped_chest_on_left",
mcl_chests.tiles.chest_trapped_double, node.param2, true, "default_chest", "mcl_chests_chest",
"chest"):reinitialize("mcl_chests:trapped_chest_on_left")
mesecon.receptor_on(pos, mesecon.rules.pplate)
local pos_other = get_double_container_neighbor_pos(pos, node.param2, "left")
minetest.swap_node(pos_other, { name = "mcl_chests:trapped_chest_on_right", param2 = node.param2 })
mesecon.receptor_on(pos_other, mesecon.rules.pplate)
end,
on_rightclick_right = function(pos, node, clicker)
local pos_other = get_double_container_neighbor_pos(pos, node.param2, "right")
minetest.swap_node(pos, { name = "mcl_chests:trapped_chest_on_right", param2 = node.param2 })
mesecon.receptor_on(pos, mesecon.rules.pplate)
minetest.swap_node(pos_other, { name = "mcl_chests:trapped_chest_on_left", param2 = node.param2 })
mcl_chests.find_or_create_entity(pos_other, "mcl_chests:trapped_chest_on_left",
mcl_chests.tiles.chest_trapped_double, node.param2, true, "default_chest", "mcl_chests_chest",
"chest"):reinitialize("mcl_chests:trapped_chest_on_left")
mesecon.receptor_on(pos_other, mesecon.rules.pplate)
end
})
mcl_chests.register_chest("trapped_chest_on", {
title = {
small = S("Chest"),
double = S("Large Chest")
},
tiles = traptiles,
groups = {
handy = 1,
axey = 1,
material_wood = 1,
flammable = -1,
mesecon = 2,
},
sounds = { mcl_sounds.node_sound_wood_defaults() },
hardness = 2.5,
hidden = true,
mesecons = {
receptor = {
state = mesecon.state.on,
rules = mesecon.rules.pplate,
},
},
drop = "trapped_chest",
canonical_basename = "trapped_chest"
})
minetest.register_craft({
output = "mcl_chests:chest",
recipe = {
{ "group:wood", "group:wood", "group:wood" },
{ "group:wood", "", "group:wood" },
{ "group:wood", "group:wood", "group:wood" },
},
})
minetest.register_craft({
type = "fuel",
recipe = "mcl_chests:chest",
burntime = 15,
})
minetest.register_craft({
type = "fuel",
recipe = "mcl_chests:trapped_chest",
burntime = 15,
})
-- Disable active/open trapped chests when loaded because nobody could have them open at loading time.
-- Fixes redstone weirdness.
minetest.register_lbm({
label = "Disable active trapped chests",
name = "mcl_chests:reset_trapped_chests",
nodenames = {
"mcl_chests:trapped_chest_on_small",
"mcl_chests:trapped_chest_on_left",
"mcl_chests:trapped_chest_on_right"
},
run_at_every_load = true,
action = function(pos, node)
minetest.log("action", "[mcl_chests] Disabled active trapped chest on load: " .. minetest.pos_to_string(pos))
mcl_chests.chest_update_after_close(pos)
end,
})

View File

@ -1,138 +0,0 @@
local S = minetest.get_translator(minetest.get_current_modname())
local F = minetest.formspec_escape
local C = minetest.colorize
local longdesc = S(
"Ender chests grant you access to a single personal interdimensional inventory with 27 slots. This " ..
"inventory is the same no matter from which ender chest you access it from. If you put one item into one " ..
"ender chest, you will find it in all other ender chests. Each player will only see their own items, but " ..
"not the items of other players."
)
minetest.register_node("mcl_chests:ender_chest", {
description = S("Ender Chest"),
_tt_help = S("27 interdimensional inventory slots") ..
"\n" .. S("Put items inside, retrieve them from any ender chest"),
_doc_items_longdesc = longdesc,
_doc_items_usagehelp = S("Rightclick the ender chest to access your personal interdimensional inventory."),
drawtype = "mesh",
mesh = "mcl_chests_chest.b3d",
tiles = mcl_chests.tiles.chest_ender_small,
use_texture_alpha = "opaque",
paramtype = "light",
paramtype2 = "facedir",
groups = { deco_block = 1 },
sounds = mcl_sounds.node_sound_stone_defaults(),
on_construct = function(pos)
local node = minetest.get_node(pos)
node.name = "mcl_chests:ender_chest_small"
minetest.set_node(pos, node)
end,
})
local formspec_ender_chest = table.concat({
"formspec_version[4]",
"size[11.75,10.425]",
"label[0.375,0.375;" .. F(C(mcl_formspec.label_color, S("Ender Chest"))) .. "]",
mcl_formspec.get_itemslot_bg_v4(0.375, 0.75, 9, 3),
"list[current_player;enderchest;0.375,0.75;9,3;]",
"label[0.375,4.7;" .. F(C(mcl_formspec.label_color, S("Inventory"))) .. "]",
mcl_formspec.get_itemslot_bg_v4(0.375, 5.1, 9, 3),
"list[current_player;main;0.375,5.1;9,3;9]",
mcl_formspec.get_itemslot_bg_v4(0.375, 9.05, 9, 1),
"list[current_player;main;0.375,9.05;9,1;]",
"listring[current_player;enderchest]",
"listring[current_player;main]",
})
minetest.register_node("mcl_chests:ender_chest_small", {
description = S("Ender Chest"),
_tt_help = S("27 interdimensional inventory slots") ..
"\n" .. S("Put items inside, retrieve them from any ender chest"),
_doc_items_longdesc = longdesc,
_doc_items_usagehelp = S("Rightclick the ender chest to access your personal interdimensional inventory."),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = { -0.4375, -0.5, -0.4375, 0.4375, 0.375, 0.4375 },
},
_chest_entity_textures = mcl_chests.tiles.ender_chest_texture,
_chest_entity_sound = "mcl_chests_enderchest",
_chest_entity_mesh = "mcl_chests_chest",
_chest_entity_animation_type = "chest",
tiles = { "blank.png^[resize:16x16" },
use_texture_alpha = "clip",
-- Note: The “container” group is missing here because the ender chest does not
-- have an inventory on its own
groups = { pickaxey = 1, deco_block = 1, material_stone = 1, chest_entity = 1, not_in_creative_inventory = 1 },
is_ground_content = false,
paramtype = "light",
light_source = 7,
paramtype2 = "facedir",
sounds = mcl_sounds.node_sound_stone_defaults(),
drop = "mcl_core:obsidian 8",
on_construct = function(pos)
mcl_chests.create_entity(pos, "mcl_chests:ender_chest_small", mcl_chests.tiles.ender_chest_texture,
minetest.get_node(pos).param2, false, "mcl_chests_enderchest", "mcl_chests_chest", "chest")
end,
on_rightclick = function(pos, node, clicker)
if minetest.registered_nodes[minetest.get_node(vector.offset(pos, 0, 1, 0)).name].groups.opaque == 1 then
-- won't open if there is no space from the top
return false
end
minetest.show_formspec(clicker:get_player_name(), "mcl_chests:ender_chest_" .. clicker:get_player_name(),
formspec_ender_chest)
mcl_chests.player_chest_open(clicker, pos, "mcl_chests:ender_chest_small",
mcl_chests.tiles.ender_chest_texture, node.param2, false, "mcl_chests_enderchest",
"mcl_chests_chest")
end,
on_receive_fields = function(pos, formname, fields, sender)
if fields.quit then
mcl_chests.player_chest_close(sender)
end
end,
_mcl_blast_resistance = 600,
_mcl_hardness = 22.5,
_mcl_silk_touch_drop = { "mcl_chests:ender_chest" },
on_rotate = mcl_chests.simple_rotate,
})
minetest.register_on_joinplayer(function(player)
local inv = player:get_inventory()
inv:set_size("enderchest", 9 * 3)
end)
minetest.register_allow_player_inventory_action(function(player, action, inv, info)
if inv:get_location().type == "player" and (
action == "move" and (info.from_list == "enderchest" or info.to_list == "enderchest")
or action == "put" and info.listname == "enderchest"
or action == "take" and info.listname == "enderchest") then
local def = player:get_wielded_item():get_definition()
local range = (def and def.range or player:get_inventory():get_stack("hand", 1):get_definition().range) + 1
if not minetest.find_node_near(player:get_pos(), range, "mcl_chests:ender_chest_small", true) then
return 0
end
end
end)
minetest.register_craft({
output = "mcl_chests:ender_chest",
recipe = {
{ "mcl_core:obsidian", "mcl_core:obsidian", "mcl_core:obsidian" },
{ "mcl_core:obsidian", "mcl_end:ender_eye", "mcl_core:obsidian" },
{ "mcl_core:obsidian", "mcl_core:obsidian", "mcl_core:obsidian" },
},
})
minetest.register_lbm({
label = "Upgrade old ender chest formspec",
name = "mcl_chests:replace_old_ender_form",
nodenames = { "mcl_chests:ender_chest_small" },
run_at_every_load = false,
action = function(pos, node)
minetest.get_meta(pos):set_string("formspec", "")
end,
})

View File

@ -1,50 +0,0 @@
local S = minetest.get_translator(minetest.get_current_modname())
mcl_chests.register_chest("stone_chest", {
desc = S("Stone Chest"),
title = {
small = S("Stone Chest"),
double = S("Large Stone Chest")
},
longdesc = S(
"Stone Chests are containers which provide 27 inventory slots. Stone Chests can be turned into" ..
"large stone chests with double the capacity by placing two stone chests next to each other."
),
usagehelp = S("To access its inventory, rightclick it. When broken, the items will drop out."),
tt_help = S("27 inventory slots") .. "\n" .. S("Can be combined to a large stone chest"),
tiles = {
small = { mcl_chests.tiles.chest_normal_small[1] .. "^[hsl:-15:-80:-20" },
double = { mcl_chests.tiles.chest_normal_double[1] .. "^[hsl:-15:-80:-20" },
inv = { "default_chest_top.png^[hsl:-15:-80:-20",
"mcl_chests_chest_bottom.png^[hsl:-15:-80:-20",
"mcl_chests_chest_right.png^[hsl:-15:-80:-20",
"mcl_chests_chest_left.png^[hsl:-15:-80:-20",
"mcl_chests_chest_back.png^[hsl:-15:-80:-20",
"default_chest_front.png^[hsl:-15:-80:-20"
},
},
groups = {
pickaxey = 1,
stone = 1,
material_stone = 1,
},
sounds = {
mcl_sounds.node_sound_stone_defaults(),
"mcl_chests_enderchest"
},
hardness = 4.0,
hidden = false,
-- It bites!
on_rightclick = function(pos, node, clicker)
mcl_util.deal_damage(clicker, 2)
end,
})
minetest.register_craft({
output = "mcl_chests:stone_chest",
recipe = {
{ "mcl_core:stone", "mcl_core:stone", "mcl_core:stone" },
{ "mcl_core:stone", "", "mcl_core:stone" },
{ "mcl_core:stone", "mcl_core:stone", "mcl_core:stone" },
},
})

File diff suppressed because it is too large Load Diff

View File

@ -1,36 +0,0 @@
# textdomain: mcl_chests
Chest=Cofre
Chests are containers which provide 27 inventory slots. Chests can be turned into large chests with double the capacity by placing two chests next to each other.=Os cofres son recipientes que ofrecen 27 ranuras de inventario. Os cofres pódense converter en cofres grandes co dobre de capacidade colocando dous cofres un ao carón do outro.
To access its inventory, rightclick it. When broken, the items will drop out.=Para acceder ao seu inventario, fai clic co botón dereito nel. Cando se rompan, os elementos caerán.
Trapped Chest=Cofre trampa
A trapped chest is a container which provides 27 inventory slots. When it is opened, it sends a redstone signal to its adjacent blocks as long it stays open. Trapped chests can be turned into large trapped chests with double the capacity by placing two trapped chests next to each other.=Un cofre trampa é un recipiente que ofrece 27 espazos de inventario. Cando se abre, envía un sinal de pedra vermella aos seus bloques adxacentes mentres permaneza aberto. Os cofres trampa pódense converter en grandes cofres trampa con o dobre de capacidade colocando dous cofres trampa un ao carón do outro.
Ender Chest=Cofre de ender
Ender chests grant you access to a single personal interdimensional inventory with 27 slots. This inventory is the same no matter from which ender chest you access it from. If you put one item into one ender chest, you will find it in all other ender chests. Each player will only see their own items, but not the items of other players.=Os cofres Ender danche acceso a un único inventario interdimensional persoal con 27 espazos. Este inventario é o mesmo sen importar o cofre desde o que accedas a el. Se metes un elemento nun cofre ender, atoparao en todos os outros cofres ender. Cada xogador só verá os seus propios elementos, pero non os dos outros xogadores.
Rightclick the ender chest to access your personal interdimensional inventory.=Fai clic co botón dereito no cofre final para acceder ao teu inventario interdimensional persoal.
White Shulker Box=Caixa Shulker Branca
Light Grey Shulker Box=Caixa Shulker gris claro
Orange Shulker Box=Caixa Shulker laranxa
Cyan Shulker Box=Caixa shulker cian
Magenta Shulker Box=Caixa shulker maxenta
Purple Shulker Box=Caixa shulker morada
Light Blue Shulker Box=Caixa shulker azul claro
Blue Shulker Box=Caixa shulker azul
Yellow Shulker Box=Caixa shulker amarela
Brown Shulker Box=Caixa shulker marrón
Lime Shulker Box=Caixa shulker verde lima
Green Shulker Box=Caixa shulker verde
Pink Shulker Box=Caixa shulker rosa
Red Shulker Box=Caixa shulker vermella
Grey Shulker Box=Caixa shulker gris
Black Shulker Box=Caixa shulker negra
A shulker box is a portable container which provides 27 inventory slots for any item except shulker boxes. Shulker boxes keep their inventory when broken, so shulker boxes as well as their contents can be taken as a single item. Shulker boxes come in many different colors.=Unha caixa de shulker é un recipiente portátil que ofrece 27 espazos de inventario para calquera artigo, excepto caixas shulker. As caixas de shulker manteñen o seu inventario cando se rompen, polo que as caixas de shulker e o seu contido pódense tomar como un único elemento. As caixas Shulker veñen en moitas cores diferentes.
To access the inventory of a shulker box, place and right-click it. To take a shulker box and its contents with you, just break and collect it, the items will not fall out.=Para acceder ao inventario dunha caixa de shulker, colócaa e fai clic co botón dereito. Para levar unha caixa shulker e o seu contido contigo, só tes que rompela e recollela, os elementos non se caerán. Coloca de novo a caixa shulker para poder recuperar o seu contido.
Shulker Box=Caixa Shulker
Large Chest=Cofre grande
Inventory=Inventario
27 inventory slots=27 espazos de inventario
Can be carried around with its contents=Pódese transportar co seu contido
Can be combined to a large chest=Pódese combinar a un cofre grande
27 interdimensional inventory slots=27 rañuras de inventario interdimensional
Put items inside, retrieve them from any ender chest=Coloca elementos dentro, recuperaos de calqueira cofre de ender
Emits a redstone signal when opened=Emite un sinal de pedra vermella cando se abre

View File

@ -1,358 +0,0 @@
local S = minetest.get_translator(minetest.get_current_modname())
local F = minetest.formspec_escape
local C = minetest.colorize
-- Shulker boxes
local boxtypes = {
white = S("White Shulker Box"),
grey = S("Light Grey Shulker Box"),
orange = S("Orange Shulker Box"),
cyan = S("Cyan Shulker Box"),
magenta = S("Magenta Shulker Box"),
violet = S("Purple Shulker Box"),
lightblue = S("Light Blue Shulker Box"),
blue = S("Blue Shulker Box"),
yellow = S("Yellow Shulker Box"),
brown = S("Brown Shulker Box"),
green = S("Lime Shulker Box"),
dark_green = S("Green Shulker Box"),
pink = S("Pink Shulker Box"),
red = S("Red Shulker Box"),
dark_grey = S("Grey Shulker Box"),
black = S("Black Shulker Box"),
}
local shulker_mob_textures = {
white = "mobs_mc_shulker_white.png",
grey = "mobs_mc_shulker_silver.png",
orange = "mobs_mc_shulker_orange.png",
cyan = "mobs_mc_shulker_cyan.png",
magenta = "mobs_mc_shulker_magenta.png",
violet = "mobs_mc_shulker_purple.png",
lightblue = "mobs_mc_shulker_light_blue.png",
blue = "mobs_mc_shulker_blue.png",
yellow = "mobs_mc_shulker_yellow.png",
brown = "mobs_mc_shulker_brown.png",
green = "mobs_mc_shulker_lime.png",
dark_green = "mobs_mc_shulker_green.png",
pink = "mobs_mc_shulker_pink.png",
red = "mobs_mc_shulker_red.png",
dark_grey = "mobs_mc_shulker_gray.png",
black = "mobs_mc_shulker_black.png",
}
local canonical_shulker_color = "violet"
local normal_canonical_name = "mcl_chests:" .. canonical_shulker_color .. "_shulker_box"
local small_canonical_name = normal_canonical_name .. "_small"
--WARNING: after formspec v4 update, old shulker boxes will need to be placed again to get the new formspec
local function formspec_shulker_box(name)
if not name or name == "" then
name = S("Shulker Box")
end
return table.concat({
"formspec_version[4]",
"size[11.75,10.425]",
"label[0.375,0.375;" .. F(C(mcl_formspec.label_color, name)) .. "]",
mcl_formspec.get_itemslot_bg_v4(0.375, 0.75, 9, 3),
"list[context;main;0.375,0.75;9,3;]",
"label[0.375,4.7;" .. F(C(mcl_formspec.label_color, S("Inventory"))) .. "]",
mcl_formspec.get_itemslot_bg_v4(0.375, 5.1, 9, 3),
"list[current_player;main;0.375,5.1;9,3;9]",
mcl_formspec.get_itemslot_bg_v4(0.375, 9.05, 9, 1),
"list[current_player;main;0.375,9.05;9,1;]",
"listring[context;main]",
"listring[current_player;main]",
})
end
local function set_shulkerbox_meta(nmeta, imeta)
local name = imeta:get_string("name")
nmeta:set_string("description", imeta:get_string("description"))
nmeta:set_string("name", name)
nmeta:set_string("formspec", formspec_shulker_box(name))
end
for color, desc in pairs(boxtypes) do
local mob_texture = shulker_mob_textures[color]
local is_canonical = color == canonical_shulker_color
local longdesc, usagehelp, create_entry, entry_name
if doc then
if is_canonical then
longdesc = S(
"A shulker box is a portable container which provides 27 inventory slots for any item " ..
"except shulker boxes. Shulker boxes keep their inventory when broken, so shulker boxes " ..
"as well as their contents can be taken as a single item. Shulker boxes come in many " ..
"different colors."
)
usagehelp = S(
"To access the inventory of a shulker box, place and right-click it. To take a shulker " ..
"box and its contents with you, just break and collect it, the items will not fall out. " ..
"Place the shulker box again to be able to retrieve its contents."
)
entry_name = S("Shulker Box")
else
create_entry = false
end
end
local normal_name = "mcl_chests:" .. color .. "_shulker_box"
local small_name = normal_name .. "_small"
minetest.register_node(normal_name, {
description = desc,
_tt_help = S("27 inventory slots") .. "\n" .. S("Can be carried around with its contents"),
_doc_items_create_entry = create_entry,
_doc_items_entry_name = entry_name,
_doc_items_longdesc = longdesc,
_doc_items_usagehelp = usagehelp,
tiles = { mob_texture },
use_texture_alpha = "opaque",
drawtype = "mesh",
mesh = "mcl_chests_shulker.b3d",
groups = {
handy = 1,
pickaxey = 1,
container = 2,
deco_block = 1,
dig_by_piston = 1,
shulker_box = 1,
old_shulker_box_node = 1
},
is_ground_content = false,
sounds = mcl_sounds.node_sound_stone_defaults(),
stack_max = 1,
drop = "",
paramtype = "light",
paramtype2 = "facedir",
on_construct = function(pos)
local node = minetest.get_node(pos)
node.name = small_name
minetest.set_node(pos, node)
end,
after_place_node = function(pos, placer, itemstack, pointed_thing)
local nmeta = minetest.get_meta(pos)
local imeta = itemstack:get_meta()
-- Convert old itemstacks to not use get_metadata()
if not imeta:contains("inv") and
(itemstack:get_metadata() ~= "") then
imeta:set_string("inv", itemstack:get_metadata())
itemstack:set_metadata("") -- clear
end
local iinv_main = minetest.deserialize(imeta:get_string("inv"))
local ninv = nmeta:get_inventory()
ninv:set_list("main", iinv_main)
ninv:set_size("main", 9 * 3)
set_shulkerbox_meta(nmeta, imeta)
if minetest.is_creative_enabled(placer:get_player_name()) then
if not ninv:is_empty("main") then
return nil
else
return itemstack
end
else
return nil
end
end,
_on_dispense = function(stack, pos, droppos, dropnode, dropdir)
-- Place shulker box as node
if minetest.registered_nodes[dropnode.name].buildable_to then
minetest.set_node(droppos, { name = small_name, param2 = minetest.dir_to_facedir(dropdir) })
local ninv = minetest.get_inventory({ type = "node", pos = droppos })
local imeta = stack:get_meta()
local iinv_main = minetest.deserialize(imeta:get_string("inv"))
ninv:set_list("main", iinv_main)
ninv:set_size("main", 9 * 3)
set_shulkerbox_meta(minetest.get_meta(droppos), imeta)
stack:take_item()
end
return stack
end,
})
minetest.register_node(small_name, {
description = desc,
_tt_help = S("27 inventory slots") .. "\n" .. S("Can be carried around with its contents"),
_doc_items_create_entry = create_entry,
_doc_items_entry_name = entry_name,
_doc_items_longdesc = longdesc,
_doc_items_usagehelp = usagehelp,
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = { -0.48, -0.5, -0.48, 0.48, 0.489, 0.48 },
},
tiles = { "blank.png^[resize:16x16" },
use_texture_alpha = "clip",
_chest_entity_textures = { mob_texture },
_chest_entity_sound = "mcl_chests_shulker",
_chest_entity_mesh = "mcl_chests_shulker",
_chest_entity_animation_type = "shulker",
groups = {
handy = 1,
pickaxey = 1,
container = 2,
deco_block = 1,
dig_by_piston = 1,
shulker_box = 1,
chest_entity = 1,
not_in_creative_inventory = 1
},
is_ground_content = false,
sounds = mcl_sounds.node_sound_stone_defaults(),
stack_max = 1,
drop = "",
paramtype = "light",
paramtype2 = "facedir",
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("formspec", formspec_shulker_box(nil))
local inv = meta:get_inventory()
inv:set_size("main", 9 * 3)
mcl_chests.create_entity(pos, small_name, { mob_texture }, minetest.get_node(pos).param2, false,
"mcl_chests_shulker", "mcl_chests_shulker", "shulker")
end,
after_place_node = function(pos, placer, itemstack, pointed_thing)
local nmeta = minetest.get_meta(pos)
local imeta = itemstack:get_meta()
-- Convert old itemstacks to not use get_metadata()
if not imeta:contains("inv") and
(itemstack:get_metadata() ~= "") then
imeta:set_string("inv", itemstack:get_metadata())
itemstack:set_metadata("") -- clear
end
local iinv_main = minetest.deserialize(imeta:get_string("inv"))
local ninv = nmeta:get_inventory()
ninv:set_list("main", iinv_main)
ninv:set_size("main", 9 * 3)
set_shulkerbox_meta(nmeta, imeta)
if minetest.is_creative_enabled(placer:get_player_name()) then
if not ninv:is_empty("main") then
return nil
else
return itemstack
end
else
return nil
end
end,
on_rightclick = function(pos, node, clicker)
mcl_chests.player_chest_open(clicker, pos, small_name, { mob_texture }, node.param2, false,
"mcl_chests_shulker", "mcl_chests_shulker", true)
end,
on_receive_fields = function(pos, formname, fields, sender)
if fields.quit then
mcl_chests.player_chest_close(sender)
end
end,
on_destruct = function(pos)
local meta = minetest.get_meta(pos)
local inv = meta:get_inventory()
local items = {}
for i = 1, inv:get_size("main") do
local stack = inv:get_stack("main", i)
items[i] = stack:to_string()
end
local data = minetest.serialize(items)
local boxitem = ItemStack("mcl_chests:" .. color .. "_shulker_box")
local boxitem_meta = boxitem:get_meta()
boxitem_meta:set_string("description", meta:get_string("description"))
boxitem_meta:set_string("name", meta:get_string("name"))
boxitem_meta:set_string("inv", data)
if minetest.is_creative_enabled("") then
if not inv:is_empty("main") then
minetest.add_item(pos, boxitem)
end
else
minetest.add_item(pos, boxitem)
end
end,
allow_metadata_inventory_move = mcl_chests.protection_check_move,
allow_metadata_inventory_take = mcl_chests.protection_check_put_take,
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
local name = player:get_player_name()
if minetest.is_protected(pos, name) then
minetest.record_protection_violation(pos, name)
return 0
end
-- Do not allow to place shulker boxes into shulker boxes
local group = minetest.get_item_group(stack:get_name(), "shulker_box")
if group == 0 or group == nil then
return stack:get_count()
else
return 0
end
end,
on_rotate = mcl_chests.simple_rotate,
_mcl_blast_resistance = 2,
_mcl_hardness = 2,
_mcl_hoppers_on_try_push = function(pos, hop_pos, hop_inv, hop_list)
local meta = minetest.get_meta(pos)
local inv = meta:get_inventory()
return inv, "main",
mcl_util.select_stack(hop_inv, hop_list, inv, "main", mcl_chests.is_not_shulker_box, 1)
end,
})
if doc and not is_canonical then
doc.add_entry_alias("nodes", normal_canonical_name, "nodes", normal_name)
doc.add_entry_alias("nodes", small_canonical_name, "nodes", small_name)
end
minetest.register_craft({
type = "shapeless",
output = normal_name,
recipe = { "group:shulker_box", "mcl_dye:" .. color },
})
end
minetest.register_craft({
output = "mcl_chests:violet_shulker_box",
recipe = {
{ "mcl_mobitems:shulker_shell" },
{ "mcl_chests:chest" },
{ "mcl_mobitems:shulker_shell" },
},
})
-- Save metadata of shulker box when used in crafting
minetest.register_on_craft(function(itemstack, player, old_craft_grid, craft_inv)
if minetest.get_item_group(itemstack:get_name(), "shulker_box") ~= 1 then return end
local original
for i = 1, #old_craft_grid do
local item = old_craft_grid[i]:get_name()
if minetest.get_item_group(item, "shulker_box") == 1 then
original = old_craft_grid[i]
break
end
end
if original then
local ometa = original:get_meta():to_table()
local nmeta = itemstack:get_meta()
nmeta:from_table(ometa)
return itemstack
end
end)
minetest.register_lbm({
label = "Update shulker box formspecs (0.72.0)",
name = "mcl_chests:update_shulker_box_formspecs_0_72_0",
nodenames = { "group:shulker_box" },
run_at_every_load = false,
action = function(pos, node)
local meta = minetest.get_meta(pos)
meta:set_string("formspec", formspec_shulker_box(meta:get_string("name")))
end,
})

View File

@ -1,5 +0,0 @@
# textdomain: mcl_clock
Clocks are tools which shows the current time of day in the Overworld.=Os reloxos son ferramentas que amosan a hora do día no mundo.
The clock contains a rotating disc with a sun symbol (yellow disc) and moon symbol and a little “pointer” which shows the current time of day by estimating the real position of the sun and the moon in the sky. Noon is represented by the sun symbol and midnight is represented by the moon symbol.=O reloxo conten un disco xiratorio cun símbolo do sol (disco amarelo) e un símbolo da lua e un pequeno "punteiro" que amosa a hora actual do día ao estimala posición real do sol e a lua no ceo. O mediodía está representado polo símbolo do sol e a medianoite está representada polo símbolo da lua.
Clock=Reloxo
Displays the time of day in the Overworld=Amosa a hora do día no mundo.

View File

@ -1,10 +0,0 @@
# textdomain: mcl_cocoas
Cocoa Beans=Grans de cacao
Grows at the side of jungle trees=Medra a beira dos árbores da xungla
Cocoa beans can be used to plant cocoa, bake cookies or craft brown dye.=Os grans de cacao podense empregar para prantar cacao, enfornar galletas ou facer tinguiduras marrons.
Right click on the side of a jungle tree trunk (Jungle Wood) to plant a young cocoa.=Faga clic dereito no costado do tronco dun árbol da xungla para prantar un cacao xoven.
Premature Cocoa Pod=Vaiña de cacao prematura
Cocoa pods grow on the side of jungle trees in 3 stages.=As vaiñas de cacao medran a carón das árbores da xungla en 3 etapas.
Medium Cocoa Pod=Vaiña de cacao mediana
Mature Cocoa Pod=Vaiña de cacao madura
A mature cocoa pod grew on a jungle tree to its full size and it is ready to be harvested for cocoa beans. It won't grow any further.=Unha vaiña de cacao madura medrou nunha árbore da xungla o seu tamaño completo e está lista para ser colleitada para os grans de cacao. Non medrará máis.

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