mirror of
https://git.minetest.land/VoxeLibre/VoxeLibre.git
synced 2024-12-24 00:49:34 +01:00
Merge branch 'master' of https://git.minetest.land/Wuzzy/MineClone2
This commit is contained in:
commit
b0c1aea881
20 changed files with 344 additions and 110 deletions
|
@ -21,7 +21,8 @@ mobs:register_mob("mobs_mc:creeper", {
|
||||||
visual = "mesh",
|
visual = "mesh",
|
||||||
mesh = "mobs_mc_creeper.b3d",
|
mesh = "mobs_mc_creeper.b3d",
|
||||||
textures = {
|
textures = {
|
||||||
{"mobs_mc_creeper.png"},
|
{"mobs_mc_creeper.png",
|
||||||
|
"mobs_mc_empty.png"},
|
||||||
},
|
},
|
||||||
visual_size = {x=3, y=3},
|
visual_size = {x=3, y=3},
|
||||||
sounds = {
|
sounds = {
|
||||||
|
@ -127,6 +128,127 @@ mobs:register_mob("mobs_mc:creeper", {
|
||||||
view_range = 16,
|
view_range = 16,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
mobs:register_mob("mobs_mc:creeper_charged", {
|
||||||
|
type = "monster",
|
||||||
|
spawn_class = "hostile",
|
||||||
|
hp_min = 20,
|
||||||
|
hp_max = 20,
|
||||||
|
xp_min = 5,
|
||||||
|
xp_max = 5,
|
||||||
|
collisionbox = {-0.3, -0.01, -0.3, 0.3, 1.69, 0.3},
|
||||||
|
pathfinding = 1,
|
||||||
|
visual = "mesh",
|
||||||
|
mesh = "mobs_mc_creeper.b3d",
|
||||||
|
textures = {
|
||||||
|
{"mobs_mc_creeper.png",
|
||||||
|
"mobs_mc_creeper_charge.png"},
|
||||||
|
},
|
||||||
|
visual_size = {x=3, y=3},
|
||||||
|
sounds = {
|
||||||
|
attack = "tnt_ignite",
|
||||||
|
death = "mobs_mc_creeper_death",
|
||||||
|
damage = "mobs_mc_creeper_hurt",
|
||||||
|
fuse = "tnt_ignite",
|
||||||
|
explode = "tnt_explode",
|
||||||
|
distance = 16,
|
||||||
|
},
|
||||||
|
makes_footstep_sound = true,
|
||||||
|
walk_velocity = 1.05,
|
||||||
|
run_velocity = 2.1,
|
||||||
|
runaway_from = { "mobs_mc:ocelot", "mobs_mc:cat" },
|
||||||
|
attack_type = "explode",
|
||||||
|
|
||||||
|
explosion_strength = 5,
|
||||||
|
explosion_radius = 8,
|
||||||
|
explosion_damage_radius = 8,
|
||||||
|
explosiontimer_reset_radius = 6,
|
||||||
|
reach = 3,
|
||||||
|
explosion_timer = 1.5,
|
||||||
|
allow_fuse_reset = true,
|
||||||
|
stop_to_explode = true,
|
||||||
|
|
||||||
|
-- Force-ignite creeper with flint and steel and explode after 1.5 seconds.
|
||||||
|
-- TODO: Make creeper flash after doing this as well.
|
||||||
|
-- TODO: Test and debug this code.
|
||||||
|
on_rightclick = function(self, clicker)
|
||||||
|
if self._forced_explosion_countdown_timer ~= nil then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
local item = clicker:get_wielded_item()
|
||||||
|
if item:get_name() == mobs_mc.items.flint_and_steel then
|
||||||
|
if not minetest.is_creative_enabled(clicker:get_player_name()) then
|
||||||
|
-- Wear tool
|
||||||
|
local wdef = item:get_definition()
|
||||||
|
item:add_wear(1000)
|
||||||
|
-- Tool break sound
|
||||||
|
if item:get_count() == 0 and wdef.sound and wdef.sound.breaks then
|
||||||
|
minetest.sound_play(wdef.sound.breaks, {pos = clicker:get_pos(), gain = 0.5}, true)
|
||||||
|
end
|
||||||
|
clicker:set_wielded_item(item)
|
||||||
|
end
|
||||||
|
self._forced_explosion_countdown_timer = self.explosion_timer
|
||||||
|
minetest.sound_play(self.sounds.attack, {pos = self.object:get_pos(), gain = 1, max_hear_distance = 16}, true)
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
do_custom = function(self, dtime)
|
||||||
|
if self._forced_explosion_countdown_timer ~= nil then
|
||||||
|
self._forced_explosion_countdown_timer = self._forced_explosion_countdown_timer - dtime
|
||||||
|
if self._forced_explosion_countdown_timer <= 0 then
|
||||||
|
mobs:boom(self, mcl_util.get_object_center(self.object), self.explosion_strength)
|
||||||
|
self.object:remove()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
on_die = function(self, pos, cmi_cause)
|
||||||
|
-- Drop a random music disc when killed by skeleton or stray
|
||||||
|
if cmi_cause and cmi_cause.type == "punch" then
|
||||||
|
local luaentity = cmi_cause.puncher and cmi_cause.puncher:get_luaentity()
|
||||||
|
if luaentity and luaentity.name:find("arrow") then
|
||||||
|
local shooter_luaentity = luaentity._shooter and luaentity._shooter:get_luaentity()
|
||||||
|
if shooter_luaentity and (shooter_luaentity.name == "mobs_mc:skeleton" or shooter_luaentity.name == "mobs_mc:stray") then
|
||||||
|
minetest.add_item({x=pos.x, y=pos.y+1, z=pos.z}, mobs_mc.items.music_discs[math.random(1, #mobs_mc.items.music_discs)])
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
maxdrops = 2,
|
||||||
|
drops = {
|
||||||
|
{name = mobs_mc.items.gunpowder,
|
||||||
|
chance = 1,
|
||||||
|
min = 0,
|
||||||
|
max = 2,
|
||||||
|
looting = "common",},
|
||||||
|
|
||||||
|
-- Head
|
||||||
|
-- TODO: Only drop if killed by charged creeper
|
||||||
|
{name = mobs_mc.items.head_creeper,
|
||||||
|
chance = 200, -- 0.5%
|
||||||
|
min = 1,
|
||||||
|
max = 1,},
|
||||||
|
},
|
||||||
|
animation = {
|
||||||
|
speed_normal = 24,
|
||||||
|
speed_run = 48,
|
||||||
|
stand_start = 0,
|
||||||
|
stand_end = 23,
|
||||||
|
walk_start = 24,
|
||||||
|
walk_end = 49,
|
||||||
|
run_start = 24,
|
||||||
|
run_end = 49,
|
||||||
|
hurt_start = 110,
|
||||||
|
hurt_end = 139,
|
||||||
|
death_start = 140,
|
||||||
|
death_end = 189,
|
||||||
|
look_start = 50,
|
||||||
|
look_end = 108,
|
||||||
|
},
|
||||||
|
floats = 1,
|
||||||
|
fear_height = 4,
|
||||||
|
view_range = 16,
|
||||||
|
--Having trouble when fire is placed with lightning
|
||||||
|
fire_resistant = true,
|
||||||
|
glow = 3,
|
||||||
|
})
|
||||||
|
|
||||||
mobs:spawn_specific("mobs_mc:creeper", mobs_mc.spawn.solid, {"air"}, 0, 7, 20, 16500, 2, mobs_mc.spawn_height.overworld_min, mobs_mc.spawn_height.overworld_max)
|
mobs:spawn_specific("mobs_mc:creeper", mobs_mc.spawn.solid, {"air"}, 0, 7, 20, 16500, 2, mobs_mc.spawn_height.overworld_min, mobs_mc.spawn_height.overworld_max)
|
||||||
|
|
||||||
|
|
Binary file not shown.
BIN
mods/ENTITIES/mobs_mc/textures/mobs_mc_creeper_charge.png
Normal file
BIN
mods/ENTITIES/mobs_mc/textures/mobs_mc_creeper_charge.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.7 KiB |
BIN
mods/ENTITIES/mobs_mc/textures/mobs_mc_empty.png
Normal file
BIN
mods/ENTITIES/mobs_mc/textures/mobs_mc_empty.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 475 B |
|
@ -159,10 +159,13 @@ lightning.strike = function(pos)
|
||||||
obj = minetest.add_entity(pos2, "mobs_mc:witch")
|
obj = minetest.add_entity(pos2, "mobs_mc:witch")
|
||||||
obj:set_yaw(rot)
|
obj:set_yaw(rot)
|
||||||
]]
|
]]
|
||||||
-- TODO: creeper → charged creeper (no damage)
|
-- charged creeper
|
||||||
elseif lua.name == "mobs_mc:creeper" then
|
elseif lua.name == "mobs_mc:creeper" then
|
||||||
|
local rot = obj:get_yaw()
|
||||||
-- Other mobs: Just damage
|
obj:remove()
|
||||||
|
obj = minetest.add_entity(pos2, "mobs_mc:creeper_charged")
|
||||||
|
obj:set_yaw(rot)
|
||||||
|
-- Other mobs: Just damage
|
||||||
else
|
else
|
||||||
obj:set_hp(obj:get_hp()-5, { type = "punch", from = "mod" })
|
obj:set_hp(obj:get_hp()-5, { type = "punch", from = "mod" })
|
||||||
end
|
end
|
||||||
|
@ -256,4 +259,3 @@ minetest.register_chatcommand("lightning", {
|
||||||
return true
|
return true
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@ Building Blocks=Blocs de Construction
|
||||||
Decoration Blocks=Blocs de Décoration
|
Decoration Blocks=Blocs de Décoration
|
||||||
Redstone=Redstone
|
Redstone=Redstone
|
||||||
Transportation=Transport
|
Transportation=Transport
|
||||||
Brewing=
|
Brewing=Potion
|
||||||
Miscellaneous=Divers
|
Miscellaneous=Divers
|
||||||
Search Items=Rechercher des objets
|
Search Items=Rechercher des objets
|
||||||
Foodstuffs=Denrées alimentaires
|
Foodstuffs=Denrées alimentaires
|
||||||
|
|
|
@ -13,8 +13,7 @@ Command Block=Bloc de Commande
|
||||||
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.=Les blocs de commande sont des composants redstone puissants qui sont capables de modifier la réalité elle-même. En d'autres termes, ils obligent le serveur à exécuter des commandes serveur lorsqu'ils sont alimentés en redstone.
|
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.=Les blocs de commande sont des composants redstone puissants qui sont capables de modifier la réalité elle-même. En d'autres termes, ils obligent le serveur à exécuter des commandes serveur lorsqu'ils sont alimentés en redstone.
|
||||||
Everyone can activate a command block and look at its commands, but not everyone can edit and place them.=Tout le monde peut activer un bloc de commandes et consulter ses commandes, mais tout le monde ne peut pas les modifier et les placer.
|
Everyone can activate a command block and look at its commands, but not everyone can edit and place them.=Tout le monde peut activer un bloc de commandes et consulter ses commandes, mais tout le monde ne peut pas les modifier et les placer.
|
||||||
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.=Pour afficher les commandes dans un bloc de commandes, utilisez-le. Pour activer le bloc de commande, il suffit de l'alimenter en redstone. Cela exécutera les commandes une fois. Pour exécuter à nouveau les commandes, éteignez puis rallumez le Redstone.
|
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.=Pour afficher les commandes dans un bloc de commandes, utilisez-le. Pour activer le bloc de commande, il suffit de l'alimenter en redstone. Cela exécutera les commandes une fois. Pour exécuter à nouveau les commandes, éteignez puis rallumez le Redstone.
|
||||||
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.=
|
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.=Pour pouvoir placer un bloc de commande et modifier les commandes, vous devez être en mode créatif et avoir le privilège "maphack". Un nouveau bloc de commande n'a aucune commande et ne fait rien. Utilisez le bloc de commande (en mode créatif!) Pour modifier ses commandes. Lisez l'entrée d'aide "Utilisation avancée> Commandes du serveur" pour comprendre le fonctionnement des commandes. Chaque ligne contient une seule commande. Vous les entrez comme vous le feriez dans la console, mais sans la barre oblique principale. Les commandes seront exécutées de haut en bas.
|
||||||
# ^ OLD TRANSLATION: Pour pouvoir placer un bloc de commande et modifier les commandes, vous devez être en mode créatif et avoir le privilège "maphack". Un nouveau bloc de commandes n'a aucune commande et ne fait rien. Utilisez le bloc de commande (en mode créatif!) Pour modifier ses commandes. Lisez l'entrée d'aide "Rubriques avancées> Commandes du serveur" pour comprendre le fonctionnement des commandes. Chaque ligne contient une seule commande. Vous les entrez comme vous le feriez dans la console, mais sans la barre oblique principale. Les commandes seront exécutées de haut en bas.
|
|
||||||
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.=Toutes les commandes seront exécutées au nom du joueur qui a placé le bloc de commande, comme si le joueur avait tapé les commandes. Ce joueur est appelé le "commandant" du bloc.
|
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.=Toutes les commandes seront exécutées au nom du joueur qui a placé le bloc de commande, comme si le joueur avait tapé les commandes. Ce joueur est appelé le "commandant" du bloc.
|
||||||
Command blocks support placeholders, insert one of these placeholders and they will be replaced by some other text:=Les blocs de commande prennent en charge les espaces réservés, insérez l'un de ces espaces réservés et ils seront remplacés par un autre texte:
|
Command blocks support placeholders, insert one of these placeholders and they will be replaced by some other text:=Les blocs de commande prennent en charge les espaces réservés, insérez l'un de ces espaces réservés et ils seront remplacés par un autre texte:
|
||||||
• “@@c”: commander of this command block=• “@@c”: commandant de ce bloc que commande
|
• “@@c”: commander of this command block=• “@@c”: commandant de ce bloc que commande
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 167 B After Width: | Height: | Size: 374 B |
Binary file not shown.
Before Width: | Height: | Size: 149 B After Width: | Height: | Size: 393 B |
100
mods/ITEMS/mcl_enchanting/locale/mcl_enchanting.fr.tr
Normal file
100
mods/ITEMS/mcl_enchanting/locale/mcl_enchanting.fr.tr
Normal file
|
@ -0,0 +1,100 @@
|
||||||
|
# textdomain: mcl_enchanting
|
||||||
|
Aqua Affinity=Affinité aquatique
|
||||||
|
Increases underwater mining speed.=Augmente la vitesse de minage sous-marine.
|
||||||
|
Bane of Arthropods=Fléau des arthropodes
|
||||||
|
Increases damage and applies Slowness IV to arthropod mobs (spiders, cave spiders, silverfish and endermites).=Augmente les dégâts et applique la lenteur IV aux mobs arthropodes (araignées, araignées des cavernes, lépismes argentés et endermites).
|
||||||
|
Blast Protection=Protection contre les explosions
|
||||||
|
Reduces explosion damage and knockback.=Réduit les dégâts d'explosion et de recul.
|
||||||
|
Channeling=Canalisation
|
||||||
|
Channels a bolt of lightning toward a target. Works only during thunderstorms and if target is unobstructed with opaque blocks.=Canalise un éclair vers une cible. Fonctionne uniquement pendant les orages et si la cible n'est pas obstruée par des blocs opaques.
|
||||||
|
Curse of Binding=Malédiction du lien éterne
|
||||||
|
Item cannot be removed from armor slots except due to death, breaking or in Creative Mode.=L'objet ne peut pas être retiré des emplacements d'armure sauf en cas de mort, de rupture ou en mode créatif.
|
||||||
|
Curse of Vanishing=Malédiction de disparition
|
||||||
|
Item destroyed on death.=Objet détruit à la mort.
|
||||||
|
Depth Strider=Agilité aquatique
|
||||||
|
Increases underwater movement speed.=Augmente la vitesse de déplacement sous l'eau.
|
||||||
|
Efficiency=Efficacité
|
||||||
|
Increases mining speed.=Augmente la vitesse de minage.
|
||||||
|
Feather Falling=Chute amortie
|
||||||
|
Reduces fall damage.=Reduit les dégats de chute.
|
||||||
|
Fire Aspect=Aura de feu
|
||||||
|
Sets target on fire.=Définit la cible en feu.
|
||||||
|
Fire Protection=Protection contre le feu
|
||||||
|
Reduces fire damage.=Reduit les dégats de feu.
|
||||||
|
Flame=Flamme
|
||||||
|
Arrows set target on fire.=Les flèches mettent le feu à la cible.
|
||||||
|
Fortune=Fortune
|
||||||
|
Increases certain block drops.=Multiplie les items droppés
|
||||||
|
Frost Walker=Semelles givrantes
|
||||||
|
Turns water beneath the player into frosted ice and prevents the damage from magma blocks.=Transforme l'eau sous le joueur en glace givrée et empêche les dommages causés par les blocs de magma.
|
||||||
|
Impaling=Empalement
|
||||||
|
Trident deals additional damage to ocean mobs.=Trident inflige des dégâts supplémentaires aux mobs océaniques.
|
||||||
|
Infinity=Infinité
|
||||||
|
Shooting consumes no regular arrows.=Le tir ne consomme pas de flèches standard.
|
||||||
|
Knockback=Recul
|
||||||
|
Increases knockback.=Augmente le recul.
|
||||||
|
Looting=Butin
|
||||||
|
Increases mob loot.=Augmente le butin des mobs.
|
||||||
|
Loyalty=Loyauté
|
||||||
|
Trident returns after being thrown. Higher levels reduce return time.=Trident revient après avoir été jeté. Des niveaux plus élevés réduisent le temps de retour.
|
||||||
|
Luck of the Sea=Chance de la mer
|
||||||
|
Increases rate of good loot (enchanting books, etc.)=Augmente le taux de bon butin (livres enchanteurs, etc.)
|
||||||
|
Lure=Appât
|
||||||
|
Decreases time until rod catches something.=Diminue le temps jusqu'à ce qu'un poisson ne morde à l'hameçon.
|
||||||
|
Mending=Raccommodage
|
||||||
|
Repair the item while gaining XP orbs.=Réparez l'objet tout en gagnant des points d'XP.
|
||||||
|
Multishot=Tir multiple
|
||||||
|
Shoot 3 arrows at the cost of one.=Tirez sur 3 flèches au prix d'une.
|
||||||
|
Piercing=Perforation
|
||||||
|
Arrows passes through multiple objects.=Les flèches traversent plusieurs objets.
|
||||||
|
Power=Puissance
|
||||||
|
Increases arrow damage.=Augmente les dégâts des flèches.
|
||||||
|
Projectile Protection=Protection contre les projectiles
|
||||||
|
Reduces projectile damage.=Réduit les dommages causés par les projectiles.
|
||||||
|
Protection=Protection
|
||||||
|
Reduces most types of damage by 4% for each level.=éduit la plupart des types de dégâts de 4% pour chaque niveau.
|
||||||
|
Punch=Frappe
|
||||||
|
Increases arrow knockback.=Augmente le recul de la flèche.
|
||||||
|
Quick Charge=Charge rapide
|
||||||
|
Decreases crossbow charging time.=Diminue le temps de chargement de l'arbalète.
|
||||||
|
Respiration=Apnée
|
||||||
|
Extends underwater breathing time.=Prolonge le temps de respiration sous l'eau.
|
||||||
|
Riptide=Impulsion
|
||||||
|
Trident launches player with itself when thrown. Works only in water or rain.=Trident lance le joueur avec lui-même lorsqu'il est lancé. Fonctionne uniquement sous l'eau ou sous la pluie.
|
||||||
|
Sharpness=Tranchant
|
||||||
|
Increases damage.=Augmente les dégâts.
|
||||||
|
Silk Touch=Toucher de soie
|
||||||
|
Mined blocks drop themselves.=Les blocs minés tombent d'eux-mêmes.
|
||||||
|
Smite=Châtiment
|
||||||
|
Increases damage to undead mobs.=Augmente les dégâts infligés aux monstres morts-vivants.
|
||||||
|
Soul Speed=Agilité des âmes
|
||||||
|
Increases walking speed on soul sand.=Augmente la vitesse de marche sur le sable de l'âme.
|
||||||
|
Sweeping Edge=Affilage
|
||||||
|
Increases sweeping attack damage.=Augmente les dégâts de l'épée
|
||||||
|
Thorns=Épines
|
||||||
|
Reflects some of the damage taken when hit, at the cost of reducing durability with each proc.=Reflète une partie des dégâts subis lors de la frappe, au prix d'une réduction de la durabilité à chaque déclenchement.
|
||||||
|
Unbreaking=Solidité
|
||||||
|
Increases item durability.=Augmente la durabilité des objets.
|
||||||
|
Inventory=Inventaire
|
||||||
|
@1 × Lapis Lazuli=@1 × Lapis Lazuli
|
||||||
|
Enchantment levels: @1=Niveaux d'enchantement: @1
|
||||||
|
Level requirement: @1=Niveau requis: @1
|
||||||
|
Enchant an item=Enchanter un objet
|
||||||
|
<player> <enchantment> [<level>]=<joueur> <enchantement> [<niveau>]
|
||||||
|
Usage: /enchant <player> <enchantment> [<level>]=Usage: /enchant <joueur> <enchantement> [<niveau>]
|
||||||
|
Player '@1' cannot be found.=Le joueur '@1' est introuvable.
|
||||||
|
There is no such enchantment '@1'.=Il n'y a pas un tel enchantement '@1'.
|
||||||
|
The target doesn't hold an item.=La cible ne contient aucun élément.
|
||||||
|
The selected enchantment can't be added to the target item.=L'enchantement sélectionné ne peut pas être ajouté à la cible.
|
||||||
|
'@1' is not a valid number='@1' n'est pas un nombre valide
|
||||||
|
The number you have entered (@1) is too big, it must be at most @2.=Le nombre que vous avez entré (@1) est trop grand, il doit être au plus de @2.
|
||||||
|
The number you have entered (@1) is too small, it must be at least @2.=Le nombre que vous avez entré (@1) est trop petit, il doit être au moins de @2.
|
||||||
|
@1 can't be combined with @2.=@1 ne peut pas être combiné avec @2.
|
||||||
|
Enchanting succeded.=L'enchantement a réussi.
|
||||||
|
Forcefully enchant an item=Enchantement forcé d'un objet
|
||||||
|
Usage: /forceenchant <player> <enchantment> [<level>]=Usage: /forceenchant <joueur> <enchantrment> [<niveau>]
|
||||||
|
The target item is not enchantable.=L'objet cible n'est pas enchantable.
|
||||||
|
'@1' is not a valid number.='@1' n'est pas un nombre valide.
|
||||||
|
Enchanted Book=Livre enchanté
|
||||||
|
Enchanting Table=Table d'enchantement
|
||||||
|
Enchant=Enchantement
|
|
@ -115,7 +115,7 @@ minetest.register_tool("mcl_farming:hoe_stone", {
|
||||||
damage_groups = { fleshy = 1, },
|
damage_groups = { fleshy = 1, },
|
||||||
punch_attack_uses = uses.stone,
|
punch_attack_uses = uses.stone,
|
||||||
},
|
},
|
||||||
_repair_material = "mcl_core:cobblestone",
|
_repair_material = "mcl_core:cobble",
|
||||||
})
|
})
|
||||||
|
|
||||||
minetest.register_craft({
|
minetest.register_craft({
|
||||||
|
|
|
@ -17,11 +17,9 @@ Fern=Fougère
|
||||||
Ferns are small plants which occur naturally in jungles and taigas. They can be harvested for wheat seeds. By using bone meal, a fern can be turned into a large fern which is two blocks high.=Les fougères sont de petites plantes qui se produisent naturellement dans les jungles et les taigas. Ils peuvent être récoltés pour les graines de blé. En utilisant de la farine d'os, une fougère peut être transformée en une grande fougère haute de deux blocs.
|
Ferns are small plants which occur naturally in jungles and taigas. They can be harvested for wheat seeds. By using bone meal, a fern can be turned into a large fern which is two blocks high.=Les fougères sont de petites plantes qui se produisent naturellement dans les jungles et les taigas. Ils peuvent être récoltés pour les graines de blé. En utilisant de la farine d'os, une fougère peut être transformée en une grande fougère haute de deux blocs.
|
||||||
(Top Part)=(Partie supérieure)
|
(Top Part)=(Partie supérieure)
|
||||||
Peony=Pivoine
|
Peony=Pivoine
|
||||||
A peony is a large plant which occupies two blocks. It is mainly used in dye production.=
|
A peony is a large plant which occupies two blocks. It is mainly used in dye production.=Une pivoine est une grande plante qui occupe deux blocs. Principalement utilisé dans la production de colorants.
|
||||||
# ^^^ OLD TRANSLATION FOR ABOVE: Une pivoine est une grande plante qui occupe deux blocs. Il est principalement utilisé dans la protection des colorants.
|
|
||||||
Rose Bush=Rosier
|
Rose Bush=Rosier
|
||||||
A rose bush is a large plant which occupies two blocks. It is safe to touch it. Rose bushes are mainly used in dye production.=
|
A rose bush is a large plant which occupies two blocks. It is safe to touch it. Rose bushes are mainly used in dye production.=Un rosier est une grande plante qui occupe deux blocs. Il n'y a rien a craindre à le toucher. Les rosiers sont principalement utilisés dans la production de teinture.
|
||||||
# ^^^ OLD TRANSLATION FOR ABOVE: Un rosier est une grande plante qui occupe deux blocs. Il n'y a pas de danger à le toucher. Les rosiers sont principalement utilisés dans la protection des colorants.
|
|
||||||
Lilac=Lilas
|
Lilac=Lilas
|
||||||
A lilac is a large plant which occupies two blocks. It is mainly used in dye production.=Un lilas est une grande plante qui occupe deux blocs. Il est principalement utilisé dans la production de colorants.
|
A lilac is a large plant which occupies two blocks. It is mainly used in dye production.=Un lilas est une grande plante qui occupe deux blocs. Il est principalement utilisé dans la production de colorants.
|
||||||
Sunflower=Tournesol
|
Sunflower=Tournesol
|
||||||
|
|
|
@ -40,7 +40,7 @@ Removes all status effects=Supprime tous les effets de statut!
|
||||||
|
|
||||||
Milk is very refreshing and can be obtained by using a bucket on a cow. Drinking it will remove all status effects, but restores no hunger points.=Le lait est très rafraîchissant et peut être obtenu en utilisant un seau sur une vache. Le boire supprimera tous les effets de statut, mais ne restaure aucun point de faim.
|
Milk is very refreshing and can be obtained by using a bucket on a cow. Drinking it will remove all status effects, but restores no hunger points.=Le lait est très rafraîchissant et peut être obtenu en utilisant un seau sur une vache. Le boire supprimera tous les effets de statut, mais ne restaure aucun point de faim.
|
||||||
|
|
||||||
Use the placement key to drink the milk.=
|
Use the placement key to drink the milk.=Utilisez la clé de placement pour boire le lait.
|
||||||
Spider Eye=Oeil d'Araignée
|
Spider Eye=Oeil d'Araignée
|
||||||
Poisonous=Toxique
|
Poisonous=Toxique
|
||||||
|
|
||||||
|
@ -78,7 +78,7 @@ Saddle=Selle
|
||||||
Can be placed on animals to ride them=Peut être placé sur les animaux pour les monter
|
Can be placed on animals to ride them=Peut être placé sur les animaux pour les monter
|
||||||
Saddles can be put on some animals in order to mount them.=Des selles peuvent être posées sur certains animaux afin de les monter.
|
Saddles can be put on some animals in order to mount them.=Des selles peuvent être posées sur certains animaux afin de les monter.
|
||||||
|
|
||||||
Use the placement key with the saddle in your hand to try to put on the saddle. Saddles fit on horses, mules, donkeys and pigs. Horses, mules and donkeys need to be tamed first, otherwise they'll reject the saddle. Saddled animals can be mounted by using the placement key on them again.=
|
Use the placement key with the saddle in your hand to try to put on the saddle. Saddles fit on horses, mules, donkeys and pigs. Horses, mules and donkeys need to be tamed first, otherwise they'll reject the saddle. Saddled animals can be mounted by using the placement key on them again.=Utilisez la clé de placement avec la selle à la main pour essayer de mettre la selle. Les selles conviennent aux chevaux, mulets, ânes et cochons. Les chevaux, les mulets et les ânes doivent d'abord être apprivoisés, sinon ils rejetteront la selle. Les animaux sellés peuvent être montés en utilisant à nouveau la clé de placement.
|
||||||
|
|
||||||
Rabbit Stew=Ragout de Lapin
|
Rabbit Stew=Ragout de Lapin
|
||||||
Rabbit stew is a very nutricious food item.=Le ragoût de lapin est un aliment très nutritif.
|
Rabbit stew is a very nutricious food item.=Le ragoût de lapin est un aliment très nutritif.
|
||||||
|
|
|
@ -8,11 +8,8 @@ NOTE: The End dimension is currently incomplete and might change in future versi
|
||||||
End Portal Frame with Eye of Ender=Cadre de portail de l'End avec Oeil d'Ender
|
End Portal Frame with Eye of Ender=Cadre de portail de l'End avec Oeil d'Ender
|
||||||
Nether Portal=Portail du Nether
|
Nether Portal=Portail du Nether
|
||||||
A Nether portal teleports creatures and objects to the hot and dangerous Nether dimension (and back!). Enter at your own risk!=A Nether portal teleports creatures and objects to the hot and dangerous Nether dimension (and back!). Enter at your own risk!
|
A Nether portal teleports creatures and objects to the hot and dangerous Nether dimension (and back!). Enter at your own risk!=A Nether portal teleports creatures and objects to the hot and dangerous Nether dimension (and back!). Enter at your own risk!
|
||||||
Stand in the portal for a moment to activate the teleportation. Entering a Nether portal for the first time will also create a new portal in the other dimension. If a Nether portal has been built in the Nether, it will lead to the Overworld. A Nether portal is destroyed if the any of the obsidian which surrounds it is destroyed, or if it was caught in an explosion.=Tenez-vous un instant dans le portail pour activer la téléportation. Entrer pour la première fois sur un portail Nether créera également un nouveau portail dans l'autre dimension. Si un portail du Nether a été construit dans le Nether, il mènera à l'Overworld. Un portail du Nether est détruit si l'une des obsidiennes qui l'entourent est détruit, ou s'il a été pris dans une explosion.
|
Stand in the portal for a moment to activate the teleportation. Entering a Nether portal for the first time will also create a new portal in the other dimension. If a Nether portal has been built in the Nether, it will lead to the Overworld. A Nether portal is destroyed if the any of the obsidian which surrounds it is destroyed, or if it was caught in an explosion.=Tenez-vous un instant dans le portail pour activer la téléportation. Entrer pour la première fois sur un portail Nether créera également un nouveau portail dans l'Overworld. Si un portail du Nether a été construit dans le Nether, il mènera à l'Overworld. Un portail du Nether est détruit si l'une des obsidiennes qui l'entourent est détruit, ou s'il a été pris dans une explosion.
|
||||||
Obsidian is also used as the frame of Nether portals.=Obsidian is also used as the frame of Nether portals.
|
Obsidian is also used as the frame of Nether portals.=Obsidian is also used as the frame of Nether portals.
|
||||||
To open a Nether portal, place an upright frame of obsidian with a width of at least 4 blocks and a height of 5 blocks, leaving only air in the center. After placing this frame, light a fire in the obsidian frame. Nether portals only work in the Overworld and the Nether.=
|
To open a Nether portal, place an upright frame of obsidian with a width of at least 4 blocks and a height of 5 blocks, leaving only air in the center. After placing this frame, light a fire in the obsidian frame. Nether portals only work in the Overworld and the Nether.=Pour ouvrir un portail du Nether, placez un cadre vertical d'obsidienne d'une largeur d'au moins 4 blocs et d'une hauteur de 5 blocs, ne laissant que de l'air au centre. Après avoir placé ce cadre, allumez un feu dans le cadre d'obsidienne. Les portails du Nether ne fonctionnent que dans l'Overworld et le Nether.
|
||||||
Once placed, an eye of ender can not be taken back.=Une fois placé, un œil d'ender ne peut pas être repris.
|
Once placed, an eye of ender can not be taken back.=Une fois placé, un œil d'ender ne peut pas être repris.
|
||||||
Used to construct end portals=Utilisé pour construire des portails d'End
|
Used to construct end portals=Utilisé pour construire des portails d'End
|
||||||
|
|
||||||
# OUTDATED:
|
|
||||||
#To open a Nether portal, place an upright frame of obsidian with a width of 4 blocks and a height of 5 blocks, leaving only air in the center. After placing this frame, light a fire in the obsidian frame. Nether portals only work in the Overworld and the Nether.=Pour ouvrir un portail du Nether, placez un cadre vertical d'obsidienne d'une largeur de 4 blocs et d'une hauteur de 5 blocs, ne laissant que de l'air au centre. Après avoir placé ce cadre, allumez un feu dans le cadre en obsidienne. Les portails du Nether ne fonctionnent que dans l'Overworld et le Nether.
|
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
# textdomain: mcl_potions
|
# textdomain: mcl_potions
|
||||||
<effect> <duration> [<factor>]=
|
<effect> <duration> [<factor>]=<effet> <durée> [<facteurr>]
|
||||||
|
|
||||||
Add a status effect to yourself. Arguments: <effect>: name of status effect, e.g. poison. <duration>: duration in seconds. <factor>: effect strength multiplier (1 @= 100%)=
|
Add a status effect to yourself. Arguments: <effect>: name of status effect, e.g. poison. <duration>: duration in seconds. <factor>: effect strength multiplier (1 @= 100%)=Ajoutez-vous un effet de statut. Arguments: <effet>: nom de l'effet de statut, par ex. poison. <duration>: durée en secondes. <facteur>: multiplicateur de force d'effet (1 @ = 100%)
|
||||||
|
|
||||||
Missing effect parameter!=
|
Missing effect parameter!=Paramètre d'effet manquant!
|
||||||
Missing or invalid duration parameter!=
|
Missing or invalid duration parameter!=Paramètre durée manquant ou invalide!
|
||||||
Invalid factor parameter!=
|
Invalid factor parameter!=Paramètre facteur invalide!
|
||||||
@1 is not an available status effect.=
|
@1 is not an available status effect.=@1 n'est pas un effet disponible.
|
||||||
Fermented Spider Eye=Oeil d'araignée fermenté
|
Fermented Spider Eye=Oeil d'araignée fermenté
|
||||||
Glass Bottle=Bouteille en verre
|
Glass Bottle=Bouteille en verre
|
||||||
Liquid container=Récipient de liquide
|
Liquid container=Récipient de liquide
|
||||||
|
@ -25,91 +25,91 @@ River water bottles can be used to fill cauldrons. Drinking it has no effect.=Le
|
||||||
|
|
||||||
Use the “Place” key to drink. Place this item on a cauldron to pour the river water into the cauldron.=Utilisez la touche "Utiliser" pour boire. Placez cet objet sur un chaudron pour verser l'eau de la rivière dans le chaudron.
|
Use the “Place” key to drink. Place this item on a cauldron to pour the river water into the cauldron.=Utilisez la touche "Utiliser" pour boire. Placez cet objet sur un chaudron pour verser l'eau de la rivière dans le chaudron.
|
||||||
|
|
||||||
Splash Water Bottle=
|
Splash Water Bottle=Bouteille d'eau jetable
|
||||||
Extinguishes fire and hurts some mobs=
|
Extinguishes fire and hurts some mobs=Éteint le feu et blesse certains mobs
|
||||||
|
|
||||||
A throwable water bottle that will shatter on impact, where it extinguishes nearby fire and hurts mobs that are vulnerable to water.=
|
A throwable water bottle that will shatter on impact, where it extinguishes nearby fire and hurts mobs that are vulnerable to water.=Une bouteille d'eau jetable qui se brisera à l'impact, où elle éteint le feu à proximité et blesse les mobs vulnérables à l'eau.
|
||||||
|
|
||||||
Lingering Water Bottle=
|
Lingering Water Bottle=Bouteille d'eau persistante
|
||||||
|
|
||||||
A throwable water bottle that will shatter on impact, where it creates a cloud of water vapor that lingers on the ground for a while. This cloud extinguishes fire and hurts mobs that are vulnerable to water.=
|
A throwable water bottle that will shatter on impact, where it creates a cloud of water vapor that lingers on the ground for a while. This cloud extinguishes fire and hurts mobs that are vulnerable to water.=Une bouteille d'eau jetable qui se brisera à l'impact, où elle crée un nuage de vapeur d'eau qui s'attarde au sol pendant un moment. Ce nuage éteint le feu et blesse les mobs vulnérables à l'eau.
|
||||||
|
|
||||||
Glistering Melon=Melon étincelant
|
Glistering Melon=Melon étincelant
|
||||||
|
|
||||||
This shiny melon is full of tiny gold nuggets and would be nice in an item frame. It isn't edible and not useful for anything else.=Ce melon brillant est plein de minuscules pépites d'or et serait bien dans un cadre d'objet. Il n'est pas comestible et n'est utile à rien d'autre.
|
This shiny melon is full of tiny gold nuggets and would be nice in an item frame. It isn't edible and not useful for anything else.=Ce melon brillant est plein de minuscules pépites d'or et serait bien dans un cadre d'objet. Il n'est pas comestible et n'est utile à rien d'autre.
|
||||||
|
|
||||||
A throwable potion that will shatter on impact, where it creates a magic cloud that lingers around for a while. Any player or mob inside the cloud will receive the potion's effect, possibly repeatedly.=
|
A throwable potion that will shatter on impact, where it creates a magic cloud that lingers around for a while. Any player or mob inside the cloud will receive the potion's effect, possibly repeatedly.=Une potion jetable qui se brisera à l'impact, où elle crée un nuage magique qui persiste pendant un moment. Tout joueur ou mob à l'intérieur du nuage recevra l'effet de la potion, peut-être à plusieurs reprises.
|
||||||
|
|
||||||
Use the “Punch” key to throw it.=
|
Use the “Punch” key to throw it.=Utilisez la touche "Frapper" pour le lancer.
|
||||||
Use the “Place” key to drink it.=Utilisez la touche "Utiliser" pour le boire.
|
Use the “Place” key to drink it.=Utilisez la touche "Utiliser" pour le boire.
|
||||||
Drinking a potion gives you a particular effect.=
|
Drinking a potion gives you a particular effect.=Boire une potion vous donne un effet particulier.
|
||||||
1 HP/@1s | @2=
|
1 HP/@1s | @2=1 HP/@1s | @2
|
||||||
@1 HP=
|
@1 HP=@1 HP
|
||||||
@1 Potion=
|
@1 Potion=Potion @1
|
||||||
Splash @1 Potion=
|
Splash @1 Potion=Potion @1 jettable
|
||||||
Lingering @1 Potion=
|
Lingering @1 Potion=Potion @1 persistante
|
||||||
Arrow of @1=
|
Arrow of @1=Flêche de @1
|
||||||
II=
|
II= II
|
||||||
IV=
|
IV= IV
|
||||||
@1 Potion@2=
|
@1 Potion@2=@1 Potion@2
|
||||||
Splash @1@2 Potion=
|
Splash @1@2 Potion=Potion @1@2 jettable
|
||||||
Lingering @1@2 Potion=
|
Lingering @1@2 Potion=Potion @1@2 persistante
|
||||||
Arrow of @1@2=
|
Arrow of @1@2=Flêche de @1@2
|
||||||
@1 + Potion=
|
@1 + Potion=@1 + Potion
|
||||||
Splash @1 + Potion=
|
Splash @1 + Potion=Potion @1 + jettable
|
||||||
Lingering @1 + Potion=
|
Lingering @1 + Potion=Potion @1 + persistante
|
||||||
Arrow of @1 +=
|
Arrow of @1 +=Flêche de @1 +
|
||||||
Awkward Potion=Potion maladroite
|
Awkward Potion=Potion étrange
|
||||||
Awkward Splash Potion=
|
Awkward Splash Potion=Potion étrange jetable
|
||||||
Awkward Lingering Potion=
|
Awkward Lingering Potion=Potion étrange persistante
|
||||||
Has an awkward taste and is used for brewing potions.=
|
Has an awkward taste and is used for brewing potions.=A un goût étrange et est utilisé pour préparer des potions.
|
||||||
Mundane Potion=Potion mondaine
|
Mundane Potion=Potion banale
|
||||||
Mundane Splash Potion=
|
Mundane Splash Potion=Potion banale jetable
|
||||||
Mundane Lingering Potion=
|
Mundane Lingering Potion=Potion banale persistante
|
||||||
Has a terrible taste and is not useful for brewing potions.=
|
Has a terrible taste and is not useful for brewing potions.=A un goût terrible et n'est pas utile pour préparer des potions.
|
||||||
Thick Potion=Potion épaisse
|
Thick Potion=Potion épaisse
|
||||||
Thick Splash Potion=
|
Thick Splash Potion=Potion épaisse jetable
|
||||||
Thick Lingering Potion=
|
Thick Lingering Potion=Potion épaisse persistante
|
||||||
Has a bitter taste and is not useful for brewing potions.=
|
Has a bitter taste and is not useful for brewing potions.=A un goût amer et n'est pas utile pour préparer des potions.
|
||||||
Dragon's Breath=Le souffle du dragon
|
Dragon's Breath=Souffle du dragon
|
||||||
|
|
||||||
This item is used in brewing and can be combined with splash potions to create lingering potions.=
|
This item is used in brewing and can be combined with splash potions to create lingering potions.=Cet objet est utilisé dans le brassage et peut être combiné avec des potions d'éclaboussures pour créer des potions persistantes.
|
||||||
|
|
||||||
Healing=
|
Healing=Guérison
|
||||||
+4 HP=
|
+4 HP=+4 HP
|
||||||
+8 HP=
|
+8 HP=+8 HP
|
||||||
Instantly heals.=
|
Instantly heals.=Guérit instantanément.
|
||||||
Harming=
|
Harming=Dégâts
|
||||||
-6 HP=
|
-6 HP=-6 HP
|
||||||
-12 HP=
|
-12 HP=-12 HP
|
||||||
Instantly deals damage.=
|
Instantly deals damage.=Instantly deals damage.
|
||||||
Night Vision=
|
Night Vision=Vision Nocturne
|
||||||
Increases the perceived brightness of light under a dark sky.=
|
Increases the perceived brightness of light under a dark sky.=Augmente la luminosité perçue de la lumière sous un ciel sombre.
|
||||||
Swiftness=
|
Swiftness=Rapidité
|
||||||
Increases walking speed.=
|
Increases walking speed.=Augmente la vitesse de marche.
|
||||||
Slowness=
|
Slowness=Lenteur
|
||||||
Decreases walking speed.=
|
Decreases walking speed.=Diminue la vitesse de marche.
|
||||||
Leaping=
|
Leaping=Saut
|
||||||
Increases jump strength.=
|
Increases jump strength.=Augmente la force de saut.
|
||||||
Poison=
|
Poison=Poison
|
||||||
Applies the poison effect which deals damage at a regular interval.=
|
Applies the poison effect which deals damage at a regular interval.=Applique l'effet de poison qui inflige des dégâts à intervalle régulier.
|
||||||
Regeneration=
|
Regeneration=Régénération
|
||||||
Regenerates health over time.=
|
Regenerates health over time.=Régénère la santé au fil du temps.
|
||||||
Invisibility=
|
Invisibility=Invisibilité
|
||||||
Grants invisibility.=
|
Grants invisibility.=Accorde l'invisibilité.
|
||||||
Water Breathing=
|
Water Breathing=Respiration Aquatique
|
||||||
Grants limitless breath underwater.=
|
Grants limitless breath underwater.=Donne une respiration illimitée sous l'eau.
|
||||||
Fire Resistance=
|
Fire Resistance=Résistance au Feu
|
||||||
Grants immunity to damage from heat sources like fire.=
|
Grants immunity to damage from heat sources like fire.=Confère une immunité aux dommages causés par des sources de chaleur comme le feu.
|
||||||
Weakness=
|
Weakness=Faiblesse
|
||||||
Weakness +=
|
Weakness +=Faiblesse +
|
||||||
Strength=
|
Strength=Force
|
||||||
Strength II=
|
Strength II=Force II
|
||||||
Strength +=
|
Strength +=Force +
|
||||||
Try different combinations to create potions.=
|
Try different combinations to create potions.=Essayez différentes combinaisons pour créer des potions.
|
||||||
No effect=Aucun effet
|
No effect=Aucun effet
|
||||||
|
|
||||||
A throwable potion that will shatter on impact, where it gives all nearby players and mobs a status effect.=
|
A throwable potion that will shatter on impact, where it gives all nearby players and mobs a status effect.=Une potion jetable qui se brisera à l'impact, où elle donne à tous les joueurs et créatures proches un effet de statut.
|
||||||
|
|
||||||
This particular arrow is tipped and will give an effect when it hits a player or mob.=
|
This particular arrow is tipped and will give an effect when it hits a player or mob.=Cette flèche particulière est enchantée et donnera un effet lorsqu'elle touche un joueur ou un mob.
|
||||||
|
|
||||||
|
|
|
@ -154,8 +154,12 @@ minetest.register_globalstep(function(dtime)
|
||||||
animation_speed_mod = animation_speed_mod / 2
|
animation_speed_mod = animation_speed_mod / 2
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- ask if player is in a place which he should crawl
|
||||||
|
node_in_feet = minetest.registered_nodes[mcl_playerinfo[name].node_feet]
|
||||||
-- ask if player is swiming
|
-- ask if player is swiming
|
||||||
local standing_on_water = minetest.get_item_group(mcl_playerinfo[name].node_stand, "water") ~= 0
|
standing_on_water = minetest.get_item_group(mcl_playerinfo[name].node_stand, "water") ~= 0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- Apply animations based on what the player is doing
|
-- Apply animations based on what the player is doing
|
||||||
if player:get_hp() == 0 then
|
if player:get_hp() == 0 then
|
||||||
|
|
|
@ -24,11 +24,19 @@ minetest.register_globalstep(function(dtime)
|
||||||
name = player:get_player_name()
|
name = player:get_player_name()
|
||||||
|
|
||||||
-- controls head bone
|
-- controls head bone
|
||||||
pitch = degrees(player:get_look_vertical()) * -1
|
local pitch = degrees(player:get_look_vertical()) * -1
|
||||||
|
|
||||||
if controls.LMB then
|
local node_in_feet = minetest.registered_nodes[mcl_playerinfo[name].node_feet]
|
||||||
|
|
||||||
|
-- controls right and left arms pitch when shooting a bow or punching
|
||||||
|
if string.find(player:get_wielded_item():get_name(), "mcl_bows:bow") and controls.RMB and not controls.up and not controls.down and not controls.left and not controls.right then
|
||||||
|
player:set_bone_position("Arm_Right_Pitch_Control", vector.new(-3,5.785,0), vector.new(pitch+90,-30,pitch * -1 * .35))
|
||||||
|
player:set_bone_position("Arm_Left_Pitch_Control", vector.new(3.5,5.785,0), vector.new(pitch+90,43,pitch * .35))
|
||||||
|
elseif controls.LMB then
|
||||||
player:set_bone_position("Arm_Right_Pitch_Control", vector.new(-3,5.785,0), vector.new(pitch,0,0))
|
player:set_bone_position("Arm_Right_Pitch_Control", vector.new(-3,5.785,0), vector.new(pitch,0,0))
|
||||||
|
player:set_bone_position("Arm_Left_Pitch_Control", vector.new(3,5.785,0), vector.new(0,0,0))
|
||||||
else
|
else
|
||||||
|
player:set_bone_position("Arm_Left_Pitch_Control", vector.new(3,5.785,0), vector.new(0,0,0))
|
||||||
player:set_bone_position("Arm_Right_Pitch_Control", vector.new(-3,5.785,0), vector.new(0,0,0))
|
player:set_bone_position("Arm_Right_Pitch_Control", vector.new(-3,5.785,0), vector.new(0,0,0))
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -36,19 +44,19 @@ minetest.register_globalstep(function(dtime)
|
||||||
-- controls head pitch when sneaking
|
-- controls head pitch when sneaking
|
||||||
player:set_bone_position("Head", vector.new(0,6.3,0), vector.new(pitch+36,0,0))
|
player:set_bone_position("Head", vector.new(0,6.3,0), vector.new(pitch+36,0,0))
|
||||||
-- sets eye height, and nametag color accordingly
|
-- sets eye height, and nametag color accordingly
|
||||||
player:set_properties({eye_height = 1.35, nametag_color = { r = 225, b = 225, a = 0, g = 225 }})
|
player:set_properties({collisionbox = {-0.35,0,-0.35,0.35,1.8,0.35}, eye_height = 1.35, nametag_color = { r = 225, b = 225, a = 0, g = 225 }})
|
||||||
|
|
||||||
elseif minetest.get_item_group(mcl_playerinfo[name].node_stand, "water") ~= 0 and player:get_attach() == nil then
|
elseif minetest.get_item_group(mcl_playerinfo[name].node_stand, "water") ~= 0 and player:get_attach() == nil then
|
||||||
-- controls head pitch when swiming
|
-- controls head pitch when swiming
|
||||||
player:set_bone_position("Head", vector.new(0,6.3,0), vector.new(pitch+90,0,0))
|
player:set_bone_position("Head", vector.new(0,6.3,0), vector.new(pitch+90,0,0))
|
||||||
-- sets eye height, and nametag color accordingly
|
-- sets eye height, and nametag color accordingly
|
||||||
player:set_properties({eye_height = 1.65, nametag_color = { r = 225, b = 225, a = 225, g = 225 }})
|
player:set_properties({collisionbox = {-0.35,1,-0.35,0.35,1.8,0.35}, eye_height = 1.65, nametag_color = { r = 225, b = 225, a = 225, g = 225 }})
|
||||||
|
|
||||||
else
|
else
|
||||||
-- controls head pitch when not sneaking
|
-- controls head pitch when not sneaking
|
||||||
player:set_bone_position("Head", vector.new(0,6.3,0), vector.new(pitch,0,0))
|
player:set_bone_position("Head", vector.new(0,6.3,0), vector.new(pitch,0,0))
|
||||||
-- sets eye height, and nametag color accordingly
|
-- sets eye height, and nametag color accordingly
|
||||||
player:set_properties({eye_height = 1.65, nametag_color = { r = 225, b = 225, a = 225, g = 225 }})
|
player:set_properties({collisionbox = {-0.35,0,-0.35,0.35,1.8,0.35}, eye_height = 1.65, nametag_color = { r = 225, b = 225, a = 225, g = 225 }})
|
||||||
end
|
end
|
||||||
|
|
||||||
if mcl_playerplus_internal[name].jump_cooldown > 0 then
|
if mcl_playerplus_internal[name].jump_cooldown > 0 then
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
# Output indicator
|
# Output indicator
|
||||||
# !< Indicates a text line without '=' in template.txt
|
# !< Indicates a text line without '=' in template.txt
|
||||||
# << Indicates an untranslated line in template.txt
|
# << Indicates an untranslated line in template.txt or an extra line in translate file (.tr)
|
||||||
# !> Indicates a text line without '=' in translate file (.tr)
|
# !> Indicates a text line without '=' in translate file (.tr)
|
||||||
# >> Indicates an unknown translated line in translate file (.tr)
|
# >> Indicates an unknown translated line in translate file (.tr)
|
||||||
|
# >= Indicate an untrannslated entry in translate file (.tr)
|
||||||
# >> Missing file: Indicates a missing translate file (.tr)
|
# >> Missing file: Indicates a missing translate file (.tr)
|
||||||
|
|
||||||
import os
|
import os
|
||||||
|
@ -15,7 +16,7 @@ args = parser.parse_args()
|
||||||
path = "../mods/"
|
path = "../mods/"
|
||||||
code_lang = args.language
|
code_lang = args.language
|
||||||
|
|
||||||
def LoadTranslateFile(filename, direction):
|
def LoadTranslateFile(filename, direction, ref=None):
|
||||||
result = set()
|
result = set()
|
||||||
file = open(filename, 'r', encoding="utf-8")
|
file = open(filename, 'r', encoding="utf-8")
|
||||||
for line in file:
|
for line in file:
|
||||||
|
@ -23,15 +24,18 @@ def LoadTranslateFile(filename, direction):
|
||||||
if line.startswith('#') or line == '':
|
if line.startswith('#') or line == '':
|
||||||
continue
|
continue
|
||||||
if '=' in line:
|
if '=' in line:
|
||||||
result.add(line.split('=')[0])
|
parts = line.split('=')
|
||||||
|
result.add(parts[0])
|
||||||
|
if ref is not None and parts[1] == '' and parts[1] not in ref :
|
||||||
|
print ('>= ' + parts[0])
|
||||||
else:
|
else:
|
||||||
print (direction + line)
|
print (direction + line)
|
||||||
|
|
||||||
return result
|
return result
|
||||||
|
|
||||||
def CompareFiles(f1, f2):
|
def CompareFiles(f1, f2):
|
||||||
r1 = LoadTranslateFile(f1, "!> ")
|
r1 = LoadTranslateFile(f1, "!< ")
|
||||||
r2 = LoadTranslateFile(f2, "!< ")
|
r2 = LoadTranslateFile(f2, "!> ", r1)
|
||||||
|
|
||||||
for key in r1.difference(r2):
|
for key in r1.difference(r2):
|
||||||
print (">> " + key )
|
print (">> " + key )
|
||||||
|
@ -57,5 +61,5 @@ for root, directories, files in os.walk(path):
|
||||||
print("Compare files %s with %s" % (template, language))
|
print("Compare files %s with %s" % (template, language))
|
||||||
CompareFiles(template, language)
|
CompareFiles(template, language)
|
||||||
else:
|
else:
|
||||||
LoadTranslateFile(filename, "!> ")
|
LoadTranslateFile(template, "!< ")
|
||||||
print(">> Missing file = " + language)
|
print(">> Missing file = " + language)
|
||||||
|
|
Loading…
Reference in a new issue