diff --git a/mods/ENTITIES/mcl_mobs/api.lua b/mods/ENTITIES/mcl_mobs/api.lua index 2d45bb25..ad112ef5 100644 --- a/mods/ENTITIES/mcl_mobs/api.lua +++ b/mods/ENTITIES/mcl_mobs/api.lua @@ -1931,16 +1931,16 @@ local follow_flop = function(self) if p.x > s.x then yaw = yaw + pi end - set_yaw(self, yaw, 6) + set_yaw(self, yaw, 2.35) -- anyone but standing npc's can move along - if dist > self.reach + if dist > 3 and self.order ~= "stand" then - set_velocity(self, self.walk_velocity) + set_velocity(self, self.follow_velocity) if self.walk_chance ~= 0 then - set_animation(self, "walk") + set_animation(self, "run") end else set_velocity(self, 0) @@ -2179,7 +2179,7 @@ local do_states = function(self, dtime) set_animation(self, "stand") else set_velocity(self, self.run_velocity) - set_animation(self, "walk") + set_animation(self, "run") end -- attack routines (explode, dogfight, shoot, dogshoot) @@ -2639,7 +2639,7 @@ local mob_punch = function(self, hitter, tflp, tool_capabilities, dir) if self.do_punch then -- when false skip going any further - if self.do_punch(self, hitter, tflp, tool_caps, dir) == false then + if self.do_punch(self, hitter, tflp, tool_capabilities, dir) == false then return end end @@ -3472,6 +3472,7 @@ minetest.register_entity(name, { sounds_child = def.sounds_child, explosion_strength = def.explosion_strength, suffocation_timer = 0, + follow_velocity = def.follow_velocity or 2.4, -- End of MCL2 extensions on_spawn = def.on_spawn, diff --git a/mods/ENTITIES/mcl_mobs/api.txt b/mods/ENTITIES/mcl_mobs/api.txt index 17a6a8b0..8b7f7119 100644 --- a/mods/ENTITIES/mcl_mobs/api.txt +++ b/mods/ENTITIES/mcl_mobs/api.txt @@ -241,6 +241,7 @@ functions needed for the mob to work properly which contains the following: dir is mob's aiming direction 'sounds_child' same as sounds, but for childs. If not defined, childs will use same sound as adults but with higher pitch + 'follow_velocity' The speed at which a mob moves toward the player when they're holding the appropriate follow item. Node Replacement diff --git a/mods/ENTITIES/mobs_mc/blaze.lua b/mods/ENTITIES/mobs_mc/blaze.lua index 8231148e..cbba537d 100644 --- a/mods/ENTITIES/mobs_mc/blaze.lua +++ b/mods/ENTITIES/mobs_mc/blaze.lua @@ -22,7 +22,7 @@ mobs:register_mob("mobs_mc:blaze", { textures = { {"mobs_mc_blaze.png"}, }, - armor = { fleshy = 100, snowball_vulnerable = 100 }, + armor = { fleshy = 100, snowball_vulnerable = 100, water_vulnerable = 100 }, visual_size = {x=3, y=3}, sounds = { random = "mobs_mc_blaze_breath", diff --git a/mods/ENTITIES/mobs_mc/cow+mooshroom.lua b/mods/ENTITIES/mobs_mc/cow+mooshroom.lua index cb5bb029..dc231627 100644 --- a/mods/ENTITIES/mobs_mc/cow+mooshroom.lua +++ b/mods/ENTITIES/mobs_mc/cow+mooshroom.lua @@ -35,10 +35,11 @@ local cow_def = { distance = 16, }, animation = { - stand_speed = 25, walk_speed = 25, run_speed = 50, - stand_start = 0, stand_end = 0, - walk_start = 0, walk_end = 40, - run_start = 0, run_end = 40, + stand_speed = 25, walk_speed = 40, + run_speed = 60, stand_start = 0, + stand_end = 0, walk_start = 0, + walk_end = 40, run_start = 0, + run_end = 40, }, follow = mobs_mc.follow.cow, on_rightclick = function(self, clicker) diff --git a/mods/ENTITIES/mobs_mc/enderman.lua b/mods/ENTITIES/mobs_mc/enderman.lua index aab690e0..3ecff4e3 100644 --- a/mods/ENTITIES/mobs_mc/enderman.lua +++ b/mods/ENTITIES/mobs_mc/enderman.lua @@ -520,6 +520,7 @@ mobs:register_mob("mobs_mc:enderman", { end end end, + armor = { fleshy = 100, water_vulnerable = 100 }, water_damage = 8, view_range = 64, fear_height = 4, diff --git a/mods/ENTITIES/mobs_mc/horse.lua b/mods/ENTITIES/mobs_mc/horse.lua index 32ebbc1a..bb4a93e2 100644 --- a/mods/ENTITIES/mobs_mc/horse.lua +++ b/mods/ENTITIES/mobs_mc/horse.lua @@ -96,7 +96,7 @@ local horse = { walk_speed = 25, walk_start = 0, walk_end = 40, - run_speed = 50, + run_speed = 60, run_start = 0, run_end = 40, }, diff --git a/mods/ENTITIES/mobs_mc/llama.lua b/mods/ENTITIES/mobs_mc/llama.lua index 8215dcfd..6391e867 100644 --- a/mods/ENTITIES/mobs_mc/llama.lua +++ b/mods/ENTITIES/mobs_mc/llama.lua @@ -46,6 +46,7 @@ mobs:register_mob("mobs_mc:llama", { runaway = true, walk_velocity = 1, run_velocity = 4.4, + follow_velocity = 4.4, floats = 1, drops = { {name = mobs_mc.items.leather, @@ -61,6 +62,9 @@ mobs:register_mob("mobs_mc:llama", { }, animation = { speed_normal = 24, + run_speed = 60, + run_start = 0, + run_end = 40, stand_start = 0, stand_end = 0, walk_start = 0, diff --git a/mods/ENTITIES/mobs_mc/ocelot.lua b/mods/ENTITIES/mobs_mc/ocelot.lua index 5d7fe3bc..89a41fe4 100644 --- a/mods/ENTITIES/mobs_mc/ocelot.lua +++ b/mods/ENTITIES/mobs_mc/ocelot.lua @@ -41,6 +41,7 @@ local ocelot = { walk_chance = default_walk_chance, walk_velocity = 1, run_velocity = 3, + follow_velocity = 1, floats = 1, runaway = true, fall_damage = 0, @@ -52,7 +53,7 @@ local ocelot = { }, animation = { speed_normal = 25, - speed_run = 50, + run_speed = 50, stand_start = 0, stand_end = 0, walk_start = 0, @@ -105,6 +106,7 @@ cat.order = "roam" -- "sit" or "roam" cat.owner_loyal = true cat.tamed = true cat.runaway = false +cat.follow_velocity = 2.4 -- Automatically teleport cat to owner cat.do_custom = mobs_mc.make_owner_teleport_function(12) cat.sounds = { diff --git a/mods/ENTITIES/mobs_mc/pig.lua b/mods/ENTITIES/mobs_mc/pig.lua index ebb3f7aa..259f45d9 100644 --- a/mods/ENTITIES/mobs_mc/pig.lua +++ b/mods/ENTITIES/mobs_mc/pig.lua @@ -20,6 +20,7 @@ mobs:register_mob("mobs_mc:pig", { makes_footstep_sound = true, walk_velocity = 1, run_velocity = 3, + follow_velocity = 3.4, drops = { {name = mobs_mc.items.porkchop_raw, chance = 1, @@ -36,7 +37,7 @@ mobs:register_mob("mobs_mc:pig", { animation = { stand_speed = 40, walk_speed = 40, - run_speed = 50, + run_speed = 90, stand_start = 0, stand_end = 0, walk_start = 0, @@ -45,7 +46,7 @@ mobs:register_mob("mobs_mc:pig", { run_end = 40, }, follow = mobs_mc.follow.pig, - view_range = 5, + view_range = 8, do_custom = function(self, dtime) -- set needed values if not already present diff --git a/mods/ENTITIES/mobs_mc/rabbit.lua b/mods/ENTITIES/mobs_mc/rabbit.lua index 8c088563..783a24ff 100644 --- a/mods/ENTITIES/mobs_mc/rabbit.lua +++ b/mods/ENTITIES/mobs_mc/rabbit.lua @@ -27,6 +27,7 @@ local rabbit = { makes_footstep_sound = false, walk_velocity = 1, run_velocity = 3.7, + follow_velocity = 1.1, floats = 1, runaway = true, jump = true, diff --git a/mods/ENTITIES/mobs_mc/sheep.lua b/mods/ENTITIES/mobs_mc/sheep.lua index a0c0a8a0..374ea4b5 100644 --- a/mods/ENTITIES/mobs_mc/sheep.lua +++ b/mods/ENTITIES/mobs_mc/sheep.lua @@ -76,8 +76,8 @@ mobs:register_mob("mobs_mc:sheep", { distance = 16, }, animation = { - speed_normal = 25, speed_run = 50, - stand_start = 40, stand_end = 80, + speed_normal = 25, run_speed = 65, + stand_start = 40, stand_end = 80, walk_start = 0, walk_end = 40, run_start = 0, run_end = 40, }, diff --git a/mods/ENTITIES/mobs_mc/shulker.lua b/mods/ENTITIES/mobs_mc/shulker.lua index 4304ef06..0f38f68a 100644 --- a/mods/ENTITIES/mobs_mc/shulker.lua +++ b/mods/ENTITIES/mobs_mc/shulker.lua @@ -75,6 +75,6 @@ mobs:register_arrow("mobs_mc:shulkerbullet", { }) -mobs:register_egg("mobs_mc:shulker", S("Schulker"), "mobs_mc_spawn_icon_shulker.png", 0) +mobs:register_egg("mobs_mc:shulker", S("Shulker"), "mobs_mc_spawn_icon_shulker.png", 0) mobs:spawn_specific("mobs_mc:shulker", mobs_mc.spawn.end_city, {"air"}, 0, minetest.LIGHT_MAX+1, 30, 5000, 2, mobs_mc.spawn_height.end_min, mobs_mc.spawn_height.end_max) diff --git a/mods/ENTITIES/mobs_mc/snowman.lua b/mods/ENTITIES/mobs_mc/snowman.lua index b9686ba5..02c1178e 100644 --- a/mods/ENTITIES/mobs_mc/snowman.lua +++ b/mods/ENTITIES/mobs_mc/snowman.lua @@ -31,6 +31,7 @@ mobs:register_mob("mobs_mc:snowman", { fall_damage = 0, water_damage = 4, rain_damage = 4, + armor = { fleshy = 100, water_vulnerable = 100 }, attacks_monsters = true, collisionbox = {-0.35, -0.01, -0.35, 0.35, 1.89, 0.35}, visual = "mesh", diff --git a/mods/ENTITIES/mobs_mc/wolf.lua b/mods/ENTITIES/mobs_mc/wolf.lua index e9985365..058c5715 100644 --- a/mods/ENTITIES/mobs_mc/wolf.lua +++ b/mods/ENTITIES/mobs_mc/wolf.lua @@ -125,6 +125,7 @@ dog.owner = "" -- TODO: Start sitting by default dog.order = "roam" dog.owner_loyal = true +dog.follow_velocity = 3.2 -- Automatically teleport dog to owner dog.do_custom = mobs_mc.make_owner_teleport_function(12) dog.follow = mobs_mc.follow.dog diff --git a/mods/ENTITIES/mobs_mc_gameconfig/init.lua b/mods/ENTITIES/mobs_mc_gameconfig/init.lua index bcac2256..5f4e37c4 100644 --- a/mods/ENTITIES/mobs_mc_gameconfig/init.lua +++ b/mods/ENTITIES/mobs_mc_gameconfig/init.lua @@ -129,9 +129,10 @@ mobs_mc.override.items = { }, } +--Horses, Llamas, and Wolves shouldn't follow, but leaving this alone until leads are implemented. mobs_mc.override.follow = { chicken = { "mcl_farming:wheat_seeds", "mcl_farming:melon_seeds", "mcl_farming:pumpkin_seeds", "mcl_farming:beetroot_seeds", }, - parrot = { "mcl_farming:seed_wheat", "mcl_farming:seed_beetroot", "mcl_farming:seed_pumpkin", "mcl_farming:seed_melon" }, -- seeds in general + parrot = { "mcl_farming:wheat_seeds", "mcl_farming:melon_seeds", "mcl_farming:pumpkin_seeds", "mcl_farming:beetroot_seeds", }, pig = { mobs_mc.override.items.potato, mobs_mc.override.items.carrot, "mcl_farming:beetroot_item", mobs_mc.override.items.carrot_on_a_stick}, ocelot = { mobs_mc.override.items.fish_raw, mobs_mc.override.items.salmon_raw, mobs_mc.override.items.clownfish_raw, mobs_mc.override.items.pufferfish_raw, }, sheep = { mobs_mc.override.items.wheat }, diff --git a/mods/HUD/mcl_inventory/locale/mcl_inventory.de.tr b/mods/HUD/mcl_inventory/locale/mcl_inventory.de.tr index a2aa355d..d565240d 100644 --- a/mods/HUD/mcl_inventory/locale/mcl_inventory.de.tr +++ b/mods/HUD/mcl_inventory/locale/mcl_inventory.de.tr @@ -7,6 +7,7 @@ Building Blocks=Baublöcke Decoration Blocks=Dekoblöcke Redstone=Redstone Transportation=Transport +Brewing=Gebräu Miscellaneous=Sonstiges Search Items=Gegenstände durchsuchen Foodstuffs=Lebensmittel diff --git a/mods/HUD/mcl_inventory/locale/mcl_inventory.es.tr b/mods/HUD/mcl_inventory/locale/mcl_inventory.es.tr index b8160256..d097daa1 100644 --- a/mods/HUD/mcl_inventory/locale/mcl_inventory.es.tr +++ b/mods/HUD/mcl_inventory/locale/mcl_inventory.es.tr @@ -7,6 +7,7 @@ Building Blocks=Bloques de construcción Decoration Blocks=Bloques de decoración Redstone=Redstone Transportation=Transporte +Brewing= Miscellaneous=Variado Search Items=Buscar artículos Foodstuffs=Productos alimenticios diff --git a/mods/HUD/mcl_inventory/locale/mcl_inventory.fr.tr b/mods/HUD/mcl_inventory/locale/mcl_inventory.fr.tr index e15a422a..edb15a77 100644 --- a/mods/HUD/mcl_inventory/locale/mcl_inventory.fr.tr +++ b/mods/HUD/mcl_inventory/locale/mcl_inventory.fr.tr @@ -7,6 +7,7 @@ Building Blocks=Blocs de Construction Decoration Blocks=Blocs de Décoration Redstone=Redstone Transportation=Transport +Brewing= Miscellaneous=Divers Search Items=Rechercher des objets Foodstuffs=Denrées alimentaires diff --git a/mods/HUD/mcl_inventory/locale/mcl_inventory.ru.tr b/mods/HUD/mcl_inventory/locale/mcl_inventory.ru.tr index 124fa3c8..ab1c9a42 100644 --- a/mods/HUD/mcl_inventory/locale/mcl_inventory.ru.tr +++ b/mods/HUD/mcl_inventory/locale/mcl_inventory.ru.tr @@ -7,6 +7,7 @@ Building Blocks=Строительные блоки Decoration Blocks=Декоративные блоки Redstone=Редстоун (красный камень) Transportation=Транспорт +Brewing= Miscellaneous=Прочее Search Items=Искать предметы Foodstuffs=Продовольствие diff --git a/mods/HUD/mcl_inventory/locale/template.txt b/mods/HUD/mcl_inventory/locale/template.txt index 649f3958..7f1c9769 100644 --- a/mods/HUD/mcl_inventory/locale/template.txt +++ b/mods/HUD/mcl_inventory/locale/template.txt @@ -7,6 +7,7 @@ Building Blocks= Decoration Blocks= Redstone= Transportation= +Brewing= Miscellaneous= Search Items= Foodstuffs= diff --git a/mods/ITEMS/mcl_brewing/init.lua b/mods/ITEMS/mcl_brewing/init.lua index 717e660e..848c2e9b 100644 --- a/mods/ITEMS/mcl_brewing/init.lua +++ b/mods/ITEMS/mcl_brewing/init.lua @@ -1,4 +1,4 @@ -local S = minetest.get_translator("mcl_brewing_stand") +local S = minetest.get_translator("mcl_brewing") local function active_brewing_formspec(fuel_percent, brew_percent) @@ -310,8 +310,11 @@ if minetest.get_modpath("screwdriver") then end local doc_string = - S("To use an brewing_stand, rightclick it.").."\n" - S("To brew, place fuel first and/or your ingredient last!") + S("To use a brewing stand, rightclick it.").."\n".. + S("To brew, you need blaze powder as fuel, a brewing material and at least 1 glass bottle filled with a liquid.").."\n".. + S("Place the blaze powder in the left slot, the brewing material in the middle slot and 1-3 bottles in the remaining slots.").."\n".. + S("When you have found a good comination, the brewing will commence automatically and steam starts to appear, using up the fuel and brewing material. The potions will soon be ready.").."\n".. + S("Different combinations of brewing materials and liquids will give different results. Try to experiment!") local tiles = {"mcl_brewing_top.png", --top "mcl_brewing_base.png", --bottom diff --git a/mods/ITEMS/mcl_brewing/locale/mcl_brewing.de.tr b/mods/ITEMS/mcl_brewing/locale/mcl_brewing.de.tr new file mode 100644 index 00000000..69aa23c1 --- /dev/null +++ b/mods/ITEMS/mcl_brewing/locale/mcl_brewing.de.tr @@ -0,0 +1,10 @@ +# textdomain: mcl_brewing +Brewing Stand=Braustand +Inventory=Inventar +To use a brewing stand, rightclick it.=Um einen Braustand zu benutzen, rechtsklicken Sie ihn. +To brew, you need blaze powder as fuel, a brewing material and at least 1 glass bottle filled with a liquid.=Zum Brauen benötigt man Lohenstaub als Brennstoff, ein Braumaterial und mindestens 1 Glasflasche, die mit einer Flüssigkeit gefüllt ist. +Place the blaze powder in the left slot, the brewing material in the middle slot and 1-3 bottles in the remaining slots.=Platzieren Sie den Lohenstaub in den linken Plartz, das Braumaterial in den mittleren Platz und 1-3 Glasflaschen in die übrigen Plätze. +When you have found a good comination, the brewing will commence automatically and steam starts to appear, using up the fuel and brewing material. The potions will soon be ready.=Wenn Sie eine gute Kombination gefunden haben, beginnt der Brauvorgang automatisch, und es entsteht Dampf. Der Brennstoff und das Brühmaterial wird aufbraucht. Die Tränke werden bald fertig sein. +Different combinations of brewing materials and liquids will give different results. Try to experiment!=Unterschiedliche Kombinationen von Braumaterialien und Flüssigkeiten werden zu unterschiedlichen Ergebnissen führen. Experimentieren Sie! +The stand allows you to brew potions!=Der Stand ermöglicht das Brauen von Tränken. +Brew Potions=Tränke brauen diff --git a/mods/ITEMS/mcl_brewing/locale/mcl_brewing.ru.tr b/mods/ITEMS/mcl_brewing/locale/mcl_brewing.ru.tr index 0ccc09fe..d8d32a3a 100644 --- a/mods/ITEMS/mcl_brewing/locale/mcl_brewing.ru.tr +++ b/mods/ITEMS/mcl_brewing/locale/mcl_brewing.ru.tr @@ -1,3 +1,10 @@ # textdomain: mcl_brewing Brewing Stand=Варочный стенд -The brewing stand allows the creating of potions for the benefit of various effects. Stay tuned for developments, as you can only view the stand and interact with it, but not create potions.=Варочный стенд позволяет создавать зелья для достижения различных эффектов. Следите за разработкой, а пока вы можете только просматривать стенд и взаимодействовать с ним, но не создавать зелья. +Inventory= +To use a brewing stand, rightclick it.= +To brew, you need blaze powder as fuel, a brewing material and at least 1 glass bottle filled with a liquid.= +Place the blaze powder in the left slot, the brewing material in the middle slot and 1-3 bottles in the remaining slots.= +When you have found a good comination, the brewing will commence automatically and steam starts to appear, using up the fuel and brewing material. The potions will soon be ready.= +Different combinations of brewing materials and liquids will give different results. Try to experiment!= +The stand allows you to brew potions!= +Brew Potions= diff --git a/mods/ITEMS/mcl_brewing/locale/template.txt b/mods/ITEMS/mcl_brewing/locale/template.txt index 56cf672a..17278815 100644 --- a/mods/ITEMS/mcl_brewing/locale/template.txt +++ b/mods/ITEMS/mcl_brewing/locale/template.txt @@ -1,3 +1,10 @@ # textdomain: mcl_brewing Brewing Stand= -The brewing stand allows the creating of potions for the benefit of various effects. Stay tuned for developments, as you can only view the stand and interact with it, but not create potions. +Inventory= +To use a brewing stand, rightclick it.= +To brew, you need blaze powder as fuel, a brewing material and at least 1 glass bottle filled with a liquid.= +Place the blaze powder in the left slot, the brewing material in the middle slot and 1-3 bottles in the remaining slots.= +When you have found a good comination, the brewing will commence automatically and steam starts to appear, using up the fuel and brewing material. The potions will soon be ready.= +Different combinations of brewing materials and liquids will give different results. Try to experiment!= +The stand allows you to brew potions!= +Brew Potions= diff --git a/mods/ITEMS/mcl_end/chorus_plant.lua b/mods/ITEMS/mcl_end/chorus_plant.lua index f85fdcd8..1363debf 100644 --- a/mods/ITEMS/mcl_end/chorus_plant.lua +++ b/mods/ITEMS/mcl_end/chorus_plant.lua @@ -134,7 +134,7 @@ minetest.register_node("mcl_end:chorus_flower", { node_box = chorus_flower_box, selection_box = { type = "regular" }, sounds = mcl_sounds.node_sound_wood_defaults(), - groups = {handy=1,axey=1, deco_block = 1, not_in_creative_inventory = 1, dig_by_piston = 1, destroy_by_lava_flow = 1,chorus_plant = 1}, + groups = {handy=1,axey=1, deco_block = 1, dig_by_piston = 1, destroy_by_lava_flow = 1,chorus_plant = 1}, node_placement_prediction = "", on_place = function(itemstack, placer, pointed_thing) @@ -207,7 +207,6 @@ minetest.register_node("mcl_end:chorus_flower", { minetest.register_node("mcl_end:chorus_flower_dead", { description = S("Dead Chorus Flower"), - _tt_help = S("Grows on end stone"), _doc_items_longdesc = S("This is a part of a chorus plant. It doesn't grow. Chorus flowers die of old age or when they are unable to grow. A dead chorus flower can be harvested to obtain a fresh chorus flower which is able to grow again."), tiles = { "mcl_end_chorus_flower_dead.png", @@ -224,7 +223,7 @@ minetest.register_node("mcl_end:chorus_flower_dead", { selection_box = { type = "regular" }, sounds = mcl_sounds.node_sound_wood_defaults(), drop = "mcl_end:chorus_flower", - groups = {handy=1,axey=1, deco_block = 1, dig_by_piston = 1, destroy_by_lava_flow = 1,chorus_plant = 1}, + groups = {handy=1,axey=1, deco_block = 1, dig_by_piston = 1, destroy_by_lava_flow = 1,chorus_plant = 1, not_in_creative_inventory=1}, after_dig_node = mcl_end.check_detach_chorus_plant, on_blast = mcl_end.check_blast_chorus_plant, _mcl_blast_resistance = 2, diff --git a/mods/ITEMS/mcl_fire/init.lua b/mods/ITEMS/mcl_fire/init.lua index 9ae8ce99..3212d743 100644 --- a/mods/ITEMS/mcl_fire/init.lua +++ b/mods/ITEMS/mcl_fire/init.lua @@ -212,6 +212,9 @@ minetest.register_node("mcl_fire:eternal_fire", { while #airs > 0 do local r = math.random(1, #airs) if minetest.find_node_near(airs[r], 1, {"group:flammable"}) then + local node = minetest.get_node(airs[r]) + local age = node.param2 + local age_next = math.min(15, age + math.random(0, 1)) spawn_fire(airs[r], age_next) break else diff --git a/mods/ITEMS/mcl_potions/depends.txt b/mods/ITEMS/mcl_potions/depends.txt deleted file mode 100644 index 1dba2975..00000000 --- a/mods/ITEMS/mcl_potions/depends.txt +++ /dev/null @@ -1,7 +0,0 @@ -mcl_core -mcl_farming -mcl_mobitems -mcl_fishing -mcl_bows -mcl_end -playerphysics diff --git a/mods/ITEMS/mcl_potions/functions.lua b/mods/ITEMS/mcl_potions/functions.lua index ef6ae622..7d61f2c8 100644 --- a/mods/ITEMS/mcl_potions/functions.lua +++ b/mods/ITEMS/mcl_potions/functions.lua @@ -597,6 +597,10 @@ function mcl_potions.healing_func(player, hp) if obj and obj.harmed_by_heal then hp = -hp end if hp > 0 then + -- at least 1 HP + if hp < 1 then + hp = 1 + end if obj and obj._cmi_is_mob then obj.health = math.max(obj.health + hp, obj.hp_max) @@ -604,7 +608,10 @@ function mcl_potions.healing_func(player, hp) player:set_hp(math.min(player:get_hp() + hp, player:get_properties().hp_max), { type = "set_hp", other = "healing" }) end - else + elseif hp < 0 then + if hp > -1 then + hp = -1 + end if obj and obj._cmi_is_mob then obj.health = obj.health + hp @@ -813,6 +820,46 @@ function mcl_potions.night_vision_func(player, null, duration) end +function mcl_potions._extinguish_nearby_fire(pos, radius) + local epos = {x=pos.x, y=pos.y+0.5, z=pos.z} + local dnode = minetest.get_node({x=pos.x,y=pos.y-0.5,z=pos.z}) + if minetest.get_item_group(dnode.name, "fire") ~= 0 then + epos.y = pos.y - 0.5 + end + local exting = false + -- No radius: Splash, extinguish epos and 4 nodes around + if not radius then + local dirs = { + {x=0,y=0,z=0}, + {x=0,y=0,z=-1}, + {x=0,y=0,z=1}, + {x=-1,y=0,z=0}, + {x=1,y=0,z=0}, + } + for d=1, #dirs do + local tpos = vector.add(epos, dirs[d]) + local node = minetest.get_node(tpos) + if minetest.get_item_group(node.name, "fire") ~= 0 then + minetest.sound_play("fire_extinguish_flame", {pos = tpos, gain = 0.25, max_hear_distance = 16}, true) + minetest.remove_node(tpos) + exting = true + end + end + -- Has radius: lingering, extinguish all nodes in area + else + local nodes = minetest.find_nodes_in_area( + {x=epos.x-radius,y=epos.y,z=epos.z-radius}, + {x=epos.x+radius,y=epos.y,z=epos.z+radius}, + {"group:fire"}) + for n=1, #nodes do + minetest.sound_play("fire_extinguish_flame", {pos = nodes[n], gain = 0.25, max_hear_distance = 16}, true) + minetest.remove_node(nodes[n]) + exting = true + end + end + return exting +end + -- ░█████╗░██╗░░██╗░█████╗░████████╗  ░█████╗░░█████╗░███╗░░░███╗███╗░░░███╗░█████╗░███╗░░██╗██████╗░░██████╗ -- ██╔══██╗██║░░██║██╔══██╗╚══██╔══╝  ██╔══██╗██╔══██╗████╗░████║████╗░████║██╔══██╗████╗░██║██╔══██╗██╔════╝ @@ -822,17 +869,17 @@ end -- ░╚════╝░╚═╝░░╚═╝╚═╝░░╚═╝░░░╚═╝░░░  ░╚════╝░░╚════╝░╚═╝░░░░░╚═╝╚═╝░░░░░╚═╝╚═╝░░╚═╝╚═╝░░╚══╝╚═════╝░╚═════╝░ -local get_function = {} +local get_chat_function = {} -get_function["poison"] = mcl_potions.poison_func -get_function["regeneration"] = mcl_potions.regeneration_func -get_function["invisibility"] = mcl_potions.invisiblility_func -get_function["fire_resistance"] = mcl_potions.fire_resistance_func -get_function["night_vision"] = mcl_potions.night_vision_func -get_function["water_breathing"] = mcl_potions.water_breathing_func -get_function["leaping"] = mcl_potions.leaping_func -get_function["swiftness"] = mcl_potions.swiftness_func -get_function["heal"] = mcl_potions.healing_func +get_chat_function["poison"] = mcl_potions.poison_func +get_chat_function["regeneration"] = mcl_potions.regeneration_func +get_chat_function["invisibility"] = mcl_potions.invisiblility_func +get_chat_function["fire_resistance"] = mcl_potions.fire_resistance_func +get_chat_function["night_vision"] = mcl_potions.night_vision_func +get_chat_function["water_breathing"] = mcl_potions.water_breathing_func +get_chat_function["leaping"] = mcl_potions.leaping_func +get_chat_function["swiftness"] = mcl_potions.swiftness_func +get_chat_function["heal"] = mcl_potions.healing_func minetest.register_chatcommand("potion",{ params = "", @@ -851,10 +898,10 @@ minetest.register_chatcommand("potion",{ P[3] = P[2] end - if get_function[P[1]] then - get_function[P[1]](minetest.get_player_by_name(name), tonumber(P[2]), tonumber(P[3])) + if get_chat_function[P[1]] then + get_chat_function[P[1]](minetest.get_player_by_name(name), tonumber(P[2]), tonumber(P[3])) else - minetest.chat_send_player(name, P[1].." is not an available potion effect.") + minetest.chat_send_player(name, P[1].." is not an available potion effect. Use /help potion as needed.") end end , diff --git a/mods/ITEMS/mcl_potions/init.lua b/mods/ITEMS/mcl_potions/init.lua index 18df5b39..045664b6 100644 --- a/mods/ITEMS/mcl_potions/init.lua +++ b/mods/ITEMS/mcl_potions/init.lua @@ -31,8 +31,7 @@ minetest.register_craftitem("mcl_potions:fermented_spider_eye", { _doc_items_longdesc = brewhelp, wield_image = "mcl_potions_spider_eye_fermented.png", inventory_image = "mcl_potions_spider_eye_fermented.png", - -- TODO: Reveal item when it's actually useful - groups = { brewitem = 1, not_in_creative_inventory = 0, not_in_craft_guide = 0 }, + groups = { brewitem = 1, }, stack_max = 64, }) @@ -277,15 +276,44 @@ minetest.register_craftitem("mcl_potions:river_water", { }) --- TODO: Extinguish fire, damage mobs -mcl_potions.register_splash("water", S("Splash Water Bottle"), "#0022FF", {tt="No effect", potion_fun=function() end}) -mcl_potions.register_lingering("water", S("Lingering Water Bottle"), "#0022FF", {tt="No effect", potion_fun=function() end}) +-- Hurt mobs +local water_splash = function(obj, damage) + if not obj then + return + end + if not damage or (damage > 0 and damage < 1) then + damage = 1 + end + -- Damage mobs that are vulnerable to water + local lua = obj:get_luaentity() + if lua and lua._cmi_is_mob then + obj:punch(obj, 1.0, { + full_punch_interval = 1.0, + damage_groups = {water_vulnerable=damage}, + }, nil) + end +end + +mcl_potions.register_splash("water", S("Splash Water Bottle"), "#0022FF", { + tt=S("Extinguishes fire and hurts some mobs"), + longdesc=S("A throwable water bottle that will shatter on impact, where it extinguishes nearby fire and hurts mobs that are vulnerable to water."), + no_effect=true, + potion_fun=water_splash, + effect=1 +}) +mcl_potions.register_lingering("water", S("Lingering Water Bottle"), "#0022FF", { + tt=S("Extinguishes fire and hurts some mobs"), + longdesc=S("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."), + no_effect=true, + potion_fun=water_splash, + effect=1 +}) minetest.register_craftitem("mcl_potions:speckled_melon", { description = S("Glistering Melon"), _doc_items_longdesc = S("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."), stack_max = 64, - groups = { brewitem = 1, not_in_creative_inventory = 0, not_in_craft_guide = 0 }, + groups = { brewitem = 1, }, inventory_image = "mcl_potions_melon_speckled.png", }) @@ -324,7 +352,6 @@ local awkward_table = { ["mcl_mobitems:ghast_tear"] = "mcl_potions:regeneration", ["mcl_mobitems:spider_eye"] = "mcl_potions:poison", ["mcl_mobitems:rabbit_foot"] = "mcl_potions:leaping", - ["mcl_end:chorus_flower"] = "mcl_potions:dragon_breath", -- temporary until dragon's breath is obtainable } local output_table = { diff --git a/mods/ITEMS/mcl_potions/lingering.lua b/mods/ITEMS/mcl_potions/lingering.lua index 318d51a6..f6c0bd47 100644 --- a/mods/ITEMS/mcl_potions/lingering.lua +++ b/mods/ITEMS/mcl_potions/lingering.lua @@ -10,9 +10,9 @@ end local lingering_effect_at = {} -local function add_lingering_effect(pos, color, def) +local function add_lingering_effect(pos, color, def, is_water) - lingering_effect_at[pos] = {color = color, timer = 30, def = def} + lingering_effect_at[pos] = {color = color, timer = 30, def = def, is_water = is_water} end @@ -27,32 +27,46 @@ minetest.register_globalstep(function(dtime) vals.timer = vals.timer - lingering_timer local d = 4 * (vals.timer / 30.0) - + local texture + if vals.is_water then + texture = "mcl_potions_droplet.png" + else + texture = "mcl_potions_sprite.png" + end minetest.add_particlespawner({ - amount = 10 * d^2, - time = 1, - minpos = {x=pos.x-d, y=pos.y+0.5, z=pos.z-d}, - maxpos = {x=pos.x+d, y=pos.y+1, z=pos.z+d}, - minvel = {x=-0.5, y=0, z=-0.5}, - maxvel = {x=0.5, y=0.5, z=0.5}, - minacc = {x=-0.2, y=0, z=-0.2}, - maxacc = {x=0.2, y=.05, z=0.2}, - minexptime = 1, - maxexptime = 2, - minsize = 2, - maxsize = 4, - collisiondetection = true, - vertical = false, - texture = "mcl_potions_sprite.png^[colorize:"..vals.color..":127", - }) + amount = 10 * d^2, + time = 1, + minpos = {x=pos.x-d, y=pos.y+0.5, z=pos.z-d}, + maxpos = {x=pos.x+d, y=pos.y+1, z=pos.z+d}, + minvel = {x=-0.5, y=0, z=-0.5}, + maxvel = {x=0.5, y=0.5, z=0.5}, + minacc = {x=-0.2, y=0, z=-0.2}, + maxacc = {x=0.2, y=.05, z=0.2}, + minexptime = 1, + maxexptime = 2, + minsize = 2, + maxsize = 4, + collisiondetection = true, + vertical = false, + texture = texture.."^[colorize:"..vals.color..":127", + }) + -- Extinguish fire if water bottle + if vals.is_water then + if mcl_potions._extinguish_nearby_fire(pos, d) then + vals.timer = vals.timer - 3.25 + end + end + + -- Affect players and mobs for _, obj in pairs(minetest.get_objects_inside_radius(pos, d)) do local entity = obj:get_luaentity() if obj:is_player() or entity._cmi_is_mob then vals.def.potion_fun(obj) - vals.timer = vals.timer / 2 + -- TODO: Apply timer penalty only if the potion effect was acutally applied + vals.timer = vals.timer - 3.25 end end @@ -112,32 +126,46 @@ function mcl_potions.register_lingering(name, descr, color, def) textures = {lingering_image(color)}, hp_max = 1, visual_size = {x=w/2,y=w/2}, - collisionbox = {0,0,0,0,0,0}, + collisionbox = {-0.1,-0.1,-0.1,0.1,0.1,0.1}, + pointable = false, on_step = function(self, dtime) - local pos = self.object:getpos() + local pos = self.object:get_pos() local node = minetest.get_node(pos) local n = node.name local d = 4 if n ~= "air" and n ~= "mcl_portals:portal" and n ~= "mcl_portals:portal_end" or mcl_potions.is_obj_hit(self, pos) then minetest.sound_play("mcl_potions_breaking_glass", {pos = pos, max_hear_distance = 16, gain = 1}) - add_lingering_effect(pos, color, def) + add_lingering_effect(pos, color, def, name == "water") + local texture, minacc, maxacc + if name == "water" then + texture = "mcl_potions_droplet.png" + minacc = {x=-0.2, y=-0.05, z=-0.2} + maxacc = {x=0.2, y=0.05, z=0.2} + else + texture = "mcl_potions_sprite.png" + minacc = {x=-0.2, y=0, z=-0.2} + maxacc = {x=0.2, y=.05, z=0.2} + end minetest.add_particlespawner({ - amount = 40, - time = 1, - minpos = {x=pos.x-d, y=pos.y+0.5, z=pos.z-d}, - maxpos = {x=pos.x+d, y=pos.y+1, z=pos.z+d}, - minvel = {x=-0.5, y=0, z=-0.5}, - maxvel = {x=0.5, y=0.5, z=0.5}, - minacc = {x=-0.2, y=0, z=-0.2}, - maxacc = {x=0.2, y=.05, z=0.2}, - minexptime = 1, - maxexptime = 2, - minsize = 1, - maxsize = 2, - collisiondetection = true, - vertical = false, - texture = "mcl_potions_sprite.png^[colorize:"..color..":127", - }) + amount = 40, + time = 1, + minpos = {x=pos.x-d, y=pos.y+0.5, z=pos.z-d}, + maxpos = {x=pos.x+d, y=pos.y+1, z=pos.z+d}, + minvel = {x=-0.5, y=0, z=-0.5}, + maxvel = {x=0.5, y=0.5, z=0.5}, + minacc = minacc, + maxacc = maxacc, + minexptime = 1, + maxexptime = 2, + minsize = 1, + maxsize = 2, + collisiondetection = true, + vertical = false, + texture = texture.."^[colorize:"..color..":127", + }) + if name == "water" then + mcl_potions._extinguish_nearby_fire(pos, d) + end self.object:remove() end end, diff --git a/mods/ITEMS/mcl_potions/locale/mcl_potions.de.tr b/mods/ITEMS/mcl_potions/locale/mcl_potions.de.tr index 7d0c9f3e..c20a61d1 100644 --- a/mods/ITEMS/mcl_potions/locale/mcl_potions.de.tr +++ b/mods/ITEMS/mcl_potions/locale/mcl_potions.de.tr @@ -1,25 +1,124 @@ # textdomain: mcl_potions -Put this item in an item frame for decoration. It's useless otherwise.=Platizeren Sie diesen Gegenstand in einen Rahmen als Deko. Ansonsten ist er nutzlos. Fermented Spider Eye=Fermentiertes Spinnenauge Glass Bottle=Glasflasche +Liquid container=Flüssigkeitsbehälter + A glass bottle is used as a container for liquids and can be used to collect water directly.=Eine Glasflasche wird als Behälter von Flüssigkeiten benutzt und kann Wasser direkt aufsammeln. -To collect water, use it on a cauldron with water (which removes a level of water) or any water source (which removes no water).=Um Wasser aufzusammen, benutzen Sie sie an einem Kessel mit Wasser (was etwas Wasser entfernt) oder einer Wasserquelle (was kein Wasser entfernt). + +To collect water, use it on a cauldron with water (which removes a level of water) or any water source (which removes no water).=Um Wasser aufzusammeln, benutzen Sie sie an einem Kessel mit Wasser (was etwas Wasser entfernt) oder einer Wasserquelle (was kein Wasser entfernt). + Water Bottle=Wasserflasche Water bottles can be used to fill cauldrons. Drinking water has no effect.=Wasserflaschen können benutzt werden, um Kessel aufzufüllen. Trinken hat keine Wirkung. -Rightclick to drink. Rightclick a cauldron to pour the water into the cauldron.=Rechtsklicken zum Trinken. Auf einem Kessel rechtsklicken, um das Wasser in den Kessel zu schütten. + +Use the “Place” key to drink. Place this item on a cauldron to pour the water into the cauldron.=Benutzen Sie die „Platzieren“-Taste zum Trinken. Platzieren Sie diesen Gegenstand auf einen Kessel, um das Wasser in den Kessel zu schütten. + River Water Bottle=Flusswasserflasche River water bottles can be used to fill cauldrons. Drinking it has no effect.=Flusswasserflaschen können benutzt werden, um Kessel aufzufüllen. Trinken hat keine Wirkung. -Awkward Potion=Seltsamer Trank -This potion has an awkward taste and is used for brewing more potions. Drinking it has no effect.=Dieser Trank schmeckt komisch. Er wird zum Brauen von Tränken benutzt. Trinken hat keine Wirkung. -Mundane Potion=Klarer Trank -This potion has a clean taste and is used for brewing more potions. Drinking it has no effect.=Dieser Trank hat einen klaren Geschmack und wird zum Brauen von Tränken benutzt. Trinken hat keine Wirkung. -Thick Potion=Bitterer Trank -This potion has a bitter taste and is used for brewing more potions. Drinking it has no effect.=Dieser Trank hat einen bitteren Geschmack und wird zum Brauen von Tränken benutzt. Trinken hat keine Wirkung. -Glistering Melon=Glitzermelone -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.=Diese glänzende Melone ist voller winziger Goldnuggets und sähe ganz nett in einem Rahmen aus. Er ist nicht essbar und auch sonst zu nichts zu gebrauchen. -Dragon's Breath=Drachenatem -Use the “Place” key to drink it.=Benutzen Sie die „Platzieren“-Taste zum Trinken. -Use the “Place” key to drink. Place this item on a cauldron to pour the water into the cauldron.=Benutzen Sie die „Platzieren“-Taste zum Trinken. Platzieren Sie diesen Gegenstand auf einen Kessel, um das Wasser in den Kessel zu schütten. + Use the “Place” key to drink. Place this item on a cauldron to pour the river water into the cauldron.=Benutzen Sie die „Platzieren“-Taste zum Trinken. Platzieren Sie diesen Gegenstand auf einen Kessel, um das Flusswasser in den Kessel zu schütten. -Liquid container=Flüssigkeitsbehälter + +Splash Water Bottle=Wurfwasserflasche +Extinguishes fire and hurts some mobs=Löscht Feuer und verletzt einige Mobs + +A throwable water bottle that will shatter on impact, where it extinguishes nearby fire and hurts mobs that are vulnerable to water.=Eine werfbare Wasserflasche, die beim Einschlag zerbrechen wird und nahes Feuer löschen und einige wasserempfindliche Mobs verletzen wird. + +Lingering Water Bottle=Verweilwasserflasche + +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.=Eine werfbare Wasserflasche, die beim Einschlag zerbrechen und eine Wolke aus Wasserdunst erzeugen wird, welche Feuer löscht und wasserempfindliche Mobs verletzt. + + +Glistering Melon=Glitzermelone + +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.=Diese glänzende Melone ist voller winziger Goldnuggets und sähe ganz nett in einem Rahmen aus. Er ist nicht essbar und auch sonst zu nichts zu gebrauchen. + +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.=Ein werfbarer Trank, der bei Kollision zerbrechen wird, wo er eine magische Wolke erzeugt, die für eine gewisse Zeit verweilen wird. Jeder Spieler und jede Mob in der Wolke wird die Trankwirkung erhalten, möglicherweise mehrmals. + +Lingering Weakness Potion=Schwächeverweiltrank +Lingering Weakness Potion +=Schwächeverweiltrank + +Lingering Strength Potion=Stärkeverweiltrank +Lingering Strength Potion II=Stärkeverweiltrank II +Lingering Strength Potion +=Stärkeverweiltrank + +Use the “Punch” key to throw it.=Benutzen Sie die „Schlagen“-Taste zum Werfen. +Use the “Place” key to drink it.=Benutzen Sie die „Platzieren“-Taste zum Trinken. +Drinking a potion gives you a particular effect.=Das Trinken eines Tranks gibt Ihnen einen bestimmten Effekt. +1 HP/@1s | @2=1 TP/@1s | @2 +@1 HP=@1 TP +@1 Potion=Trank der @1 +Splash @1 Potion=Wurftrank der @1 +Lingering @1 Potion=Verweiltrank der @1 +Arrow of @1=Pfeil der @1 + II= II + IV= IV +@1 Potion@2=Trank der @1@2 +Splash @1@2 Potion=Wurftrank der @1@2 +Lingering @1@2 Potion=Verweiltrank der @1@2 +Arrow of @1@2=Pfeil der @1@2 +@1 + Potion=Trank der @1 + +Splash @1 + Potion=Wurftrank der @1 + +Lingering @1 + Potion=Verweiltrank der @1 + +Arrow of @1 +=Pfeil der @1 +Awkward Potion=Seltsamer Trank +Awkward Splash Potion=Seltsamer Wurftrank +Awkward Lingering Potion=Seltsamer Verweiltrank +Has an awkward taste and is used for brewing potions.=Hat einen seltsamen Geschmack und wird in der Trankherstellung benutzt. +Mundane Potion=Klarer Trank +Mundane Splash Potion=Klarer Wurftrank +Mundane Lingering Potion=Klarer Verweiltrank +Has a terrible taste and is not useful for brewing potions.=Hat einen furchtbaren Geschmack und ist nicht für die Trankherstellung brauchbar. +Thick Potion=Bitterer Trank +Thick Splash Potion=Bitterer Wurftrank +Thick Lingering Potion=Bitterer Verweiltrank +Has a bitter taste and is not useful for brewing potions.=Hat einen bitteren Geschmack und ist nicht für die Trankherstellung brauchbar. +Dragon's Breath=Drachenatem + +This item is used in brewing and can be combined with splash potions to create lingering potions.=Dieser Objekt wird für die Trankherstellung benutzt und kann mit Wurftränken kombiniert werden, um Verweiltränke herzustellen. + +Healing=Heilung ++4 HP=+4 TP ++8 HP=+8 TP +Instantly heals.=Heilt sofort. +Harming=Verletzung +-6 HP=-6 TP +-12 HP=-12 TP +Instantly deals damage.=Richtet sofort Schaden an. +Night Vision=Nachtsicht +Grants the ability to see in darkness.=Gibt die Fähigkeit, in der Dunkelheit zu sehen. +Swiftness=Schnelligkeit +Increases walking speed.=Erhöht Gehgeschwindigkeit. +Slowness=Langsamkeit +Decreases walking speed.=Verringert Gehgeschwindigkeit. +Leaping=Sprungkraft +Increases jump strength.=Erhöht Sprungstärke. +Poison=Vergiftung +Applies the poison effect which deals damage at a regular interval.=Gibt den Gifteffekt, der Schaden in regelmäßigen Abständen anrichtet. +Regeneration=Regenerierung +Regenerates health over time.=Regeneriert Gesundheit mit der Zeit. +Invisibility=Unsichtbarkeit +Grants invisibility.=Gibt Unsichtbarkeit. +Water Breathing=Wasseratmung +Grants limitless breath underwater.=Gibt unbegrenzten Atem im Wasser. +Fire Resistance=Feuerresistenz +Grants immunity to damage from heat sources like fire.=Gibt Immunität gegenüber Schaden von Hitzequellen wie Feuer. +Weakness=Schwäche +-4 HP damage | 1:30=-4 HP Schaden | 1:30 +Weakness +=Schwäche + +-4 HP damage | 4:00=-4 HP Schaden | 4:00 +Strength=Stärke ++3 HP damage | 3:00=+3 HP Schaden | 3:00 +Strength II=Stärke II ++6 HP damage | 1:30=+6 HP Schaden | 1:30 +Strength +=Stärke + ++3 HP damage | 8:00=+3 HP Schaden | 8:00 +Try different combinations to create potions.=Probieren Sie Kombinationen aus, um Tränke herzustellen. No effect=Keine Wirkung + +A throwable potion that will shatter on impact, where it gives all nearby players and mobs a status effect.=Ein werfbarer Trank, der bei Kollision zerbrechen wird, wo er allen nahen Spielern und Mobs einen Statuseffekt geben wird. + +Weakness Splash Potion=Schwächewurftrank +Weakness Splash Potion +=Schwächewurftrank + +Strength Splash Potion=Stärkewurftrank +Strength Splash Potion II=Stärkewurftrank II +Strength Splash Potion +=Stärkewurftrank + + +This particular arrow is tipped and will give an effect when it hits a player or mob.=Diese Pfeilspitze dieses Pfeils in einem Trank getränkt und gibt einen Effekt, wenn er einen Spieler oder einen Mob trifft. + diff --git a/mods/ITEMS/mcl_potions/locale/mcl_potions.es.tr b/mods/ITEMS/mcl_potions/locale/mcl_potions.es.tr index 434fc814..9b5bc6a8 100644 --- a/mods/ITEMS/mcl_potions/locale/mcl_potions.es.tr +++ b/mods/ITEMS/mcl_potions/locale/mcl_potions.es.tr @@ -1,23 +1,123 @@ # textdomain: mcl_potions -Put this item in an item frame for decoration. It's useless otherwise.=Pon este artículo en un marco de artículo para la decoración. Fermented Spider Eye=Ojo de araña fermentado Glass Bottle=Frasco de cristal +Liquid container= + A glass bottle is used as a container for liquids and can be used to collect water directly.=El frasco de cristal se usa como recipiente para líquidos y se puede usar para recoger agua directamente. + To collect water, use it on a cauldron with water (which removes a level of water) or any water source (which removes no water).=Para recoger agua, colóquela en un caldero con agua (que elimina un nivel de agua) o cualquier fuente de agua (que no elimine agua). + Water Bottle=Frasco de cristal con agua Water bottles can be used to fill cauldrons. Drinking water has no effect.=Las botellas de agua se pueden usar para llenar calderos. El agua potable no tiene efecto. -Rightclick to drink. Rightclick a cauldron to pour the water into the cauldron.=Haga clic derecho para beber. Haga clic derecho en un caldero para verter el agua en el caldero. + +Use the “Place” key to drink. Place this item on a cauldron to pour the water into the cauldron.=Use la tecla "Acción" para beber. Coloque este artículo en un caldero para verter el agua en el caldero. + River Water Bottle=Frasco de cristal con agua de rio River water bottles can be used to fill cauldrons. Drinking it has no effect.=Las botellas de agua de río se pueden usar para llenar calderos. Beberlo no tiene ningún efecto. -Awkward Potion=Poción incomoda -This potion has an awkward taste and is used for brewing more potions. Drinking it has no effect.=Esta poción tiene un sabor extraño y se usa para preparar más pociones. Beberlo no tiene ningún efecto. -Mundane Potion=Poción Mundana -This potion has a clean taste and is used for brewing more potions. Drinking it has no effect.=Esta poción tiene un sabor limpio y se usa para preparar más pociones. Beberlo no tiene ningún efecto. -Thick Potion=Poción densa -This potion has a bitter taste and is used for brewing more potions. Drinking it has no effect.=Esta poción tiene un sabor amargo y se usa para preparar más pociones. Beberlo no tiene ningún efecto. -Glistering Melon=Rodaja de sandía reluciente -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.=Esta sandía brillante está llena de pequeñas pepitas de oro y sería bueno en un marco de artículo. No es comestible y no es útil para nada más. -Dragon's Breath=Aliento de dragón -Use the “Place” key to drink it.=Use la tecla "Colocar" para beberlo. -Use the “Place” key to drink. Place this item on a cauldron to pour the water into the cauldron.=Use la tecla "Acción" para beber. Coloque este artículo en un caldero para verter el agua en el caldero. + Use the “Place” key to drink. Place this item on a cauldron to pour the river water into the cauldron.=Use la tecla "Acción" para beber. Coloque este artículo en un caldero para verter el agua de río en el caldero. + +Splash Water Bottle= +Extinguishes fire and hurts some mobs= + +A throwable water bottle that will shatter on impact, where it extinguishes nearby fire and hurts mobs that are vulnerable to water.= + +Lingering Water Bottle= + +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.= + +Glistering Melon=Rodaja de sandía reluciente + +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.=Esta sandía brillante está llena de pequeñas pepitas de oro y sería bueno en un marco de artículo. No es comestible y no es útil para nada más. + +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.= + +Lingering Weakness Potion= +Lingering Weakness Potion += +Lingering Strength Potion= +Lingering Strength Potion II= +Lingering Strength Potion += +Use the “Punch” key to throw it.= +Use the “Place” key to drink it.=Use la tecla "Colocar" para beberlo. +Drinking a potion gives you a particular effect.= +1 HP/@1s | @2= +@1 HP= +@1 Potion= +Splash @1 Potion= +Lingering @1 Potion= +Arrow of @1= + II= + IV= +@1 Potion@2= +Splash @1@2 Potion= +Lingering @1@2 Potion= +Arrow of @1@2= +@1 + Potion= +Splash @1 + Potion= +Lingering @1 + Potion= +Arrow of @1 += +Awkward Potion=Poción incomoda +Awkward Splash Potion= +Awkward Lingering Potion= +Has an awkward taste and is used for brewing potions.= +Mundane Potion=Poción Mundana +Mundane Splash Potion= +Mundane Lingering Potion= +Has a terrible taste and is not useful for brewing potions.= +Thick Potion=Poción densa +Thick Splash Potion= +Thick Lingering Potion= +Has a bitter taste and is not useful for brewing potions.= +Dragon's Breath=Aliento de dragón + +This item is used in brewing and can be combined with splash potions to create lingering potions.= + +Healing= ++4 HP= ++8 HP= +Instantly heals.= +Harming= +-6 HP= +-12 HP= +Instantly deals damage.= +Night Vision= +Grants the ability to see in darkness.= +Swiftness= +Increases walking speed.= +Slowness= +Decreases walking speed.= +Leaping= +Increases jump strength.= +Poison= +Applies the poison effect which deals damage at a regular interval.= +Regeneration= +Regenerates health over time.= +Invisibility= +Grants invisibility.= +Water Breathing= +Grants limitless breath underwater.= +Fire Resistance= +Grants immunity to damage from heat sources like fire.= +Weakness= +-4 HP damage | 1:30= +Weakness += +-4 HP damage | 4:00= +Strength= ++3 HP damage | 3:00= +Strength II= ++6 HP damage | 1:30= +Strength += ++3 HP damage | 8:00= +Try different combinations to create potions.= +No effect= + +A throwable potion that will shatter on impact, where it gives all nearby players and mobs a status effect.= + +Weakness Splash Potion= +Weakness Splash Potion += +Strength Splash Potion= +Strength Splash Potion II= +Strength Splash Potion += + +This particular arrow is tipped and will give an effect when it hits a player or mob.= + diff --git a/mods/ITEMS/mcl_potions/locale/mcl_potions.fr.tr b/mods/ITEMS/mcl_potions/locale/mcl_potions.fr.tr index c196c6cb..ce149320 100644 --- a/mods/ITEMS/mcl_potions/locale/mcl_potions.fr.tr +++ b/mods/ITEMS/mcl_potions/locale/mcl_potions.fr.tr @@ -1,25 +1,123 @@ # textdomain: mcl_potions -Put this item in an item frame for decoration. It's useless otherwise.=Mettez cet élément dans un cadre à élément pour la décoration. C'est inutile sinon. Fermented Spider Eye=Oeil d'araignée fermenté Glass Bottle=Bouteille en verre +Liquid container=Récipient de liquide + A glass bottle is used as a container for liquids and can be used to collect water directly.=Une bouteille en verre est utilisée comme récipient pour les liquides et peut être utilisée pour collecter l'eau directement. + To collect water, use it on a cauldron with water (which removes a level of water) or any water source (which removes no water).=Pour collecter l'eau, poser la sur un chaudron avec de l'eau (qui enlève un niveau d'eau) ou toute source d'eau (qui n'enlève pas d'eau). + Water Bottle=Bouteille d'eau Water bottles can be used to fill cauldrons. Drinking water has no effect.=Les bouteilles d'eau peuvent être utilisées pour remplir les chaudrons. L'eau potable n'a aucun effet. -Rightclick to drink. Rightclick a cauldron to pour the water into the cauldron.=Clic droit pour boire. Clic droit sur un chaudron pour verser l'eau dans le chaudron. + +Use the “Place” key to drink. Place this item on a cauldron to pour the water into the cauldron.=Utilisez la touche "Utiliser" pour boire. Placez cet article sur un chaudron pour verser l'eau dans le chaudron. + River Water Bottle=Bouteille d'eau de rivière River water bottles can be used to fill cauldrons. Drinking it has no effect.=Les bouteilles d'eau de rivière peuvent être utilisées pour remplir les chaudrons. Le boire n'a aucun effet. -Awkward Potion=Potion maladroite -This potion has an awkward taste and is used for brewing more potions. Drinking it has no effect.=Cette potion a un goût gênant et est utilisée pour préparer plus de potions. Le boire n'a aucun effet. -Mundane Potion=Potion mondaine -This potion has a clean taste and is used for brewing more potions. Drinking it has no effect.=Cette potion a un goût propre et est utilisée pour préparer plus de potions. Le boire n'a aucun effet. -Thick Potion=Potion épaisse -This potion has a bitter taste and is used for brewing more potions. Drinking it has no effect.=Cette potion a un goût amer et est utilisée pour préparer plus de potions. Le boire n'a aucun effet. -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. -Dragon's Breath=Le souffle du dragon -Use the “Place” key to drink it.=Utilisez la touche "Utiliser" pour le boire. -Use the “Place” key to drink. Place this item on a cauldron to pour the water into the cauldron.=Utilisez la touche "Utiliser" pour boire. Placez cet article sur un chaudron pour verser l'eau 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. -Liquid container=Récipient de liquide + +Splash Water Bottle= +Extinguishes fire and hurts some mobs= + +A throwable water bottle that will shatter on impact, where it extinguishes nearby fire and hurts mobs that are vulnerable to water.= + +Lingering Water Bottle= + +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.= + +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. + +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.= + +Lingering Weakness Potion= +Lingering Weakness Potion += +Lingering Strength Potion= +Lingering Strength Potion II= +Lingering Strength Potion += +Use the “Punch” key to throw it.= +Use the “Place” key to drink it.=Utilisez la touche "Utiliser" pour le boire. +Drinking a potion gives you a particular effect.= +1 HP/@1s | @2= +@1 HP= +@1 Potion= +Splash @1 Potion= +Lingering @1 Potion= +Arrow of @1= + II= + IV= +@1 Potion@2= +Splash @1@2 Potion= +Lingering @1@2 Potion= +Arrow of @1@2= +@1 + Potion= +Splash @1 + Potion= +Lingering @1 + Potion= +Arrow of @1 += +Awkward Potion=Potion maladroite +Awkward Splash Potion= +Awkward Lingering Potion= +Has an awkward taste and is used for brewing potions.= +Mundane Potion=Potion mondaine +Mundane Splash Potion= +Mundane Lingering Potion= +Has a terrible taste and is not useful for brewing potions.= +Thick Potion=Potion épaisse +Thick Splash Potion= +Thick Lingering Potion= +Has a bitter taste and is not useful for brewing potions.= +Dragon's Breath=Le souffle du dragon + +This item is used in brewing and can be combined with splash potions to create lingering potions.= + +Healing= ++4 HP= ++8 HP= +Instantly heals.= +Harming= +-6 HP= +-12 HP= +Instantly deals damage.= +Night Vision= +Grants the ability to see in darkness.= +Swiftness= +Increases walking speed.= +Slowness= +Decreases walking speed.= +Leaping= +Increases jump strength.= +Poison= +Applies the poison effect which deals damage at a regular interval.= +Regeneration= +Regenerates health over time.= +Invisibility= +Grants invisibility.= +Water Breathing= +Grants limitless breath underwater.= +Fire Resistance= +Grants immunity to damage from heat sources like fire.= +Weakness= +-4 HP damage | 1:30= +Weakness += +-4 HP damage | 4:00= +Strength= ++3 HP damage | 3:00= +Strength II= ++6 HP damage | 1:30= +Strength += ++3 HP damage | 8:00= +Try different combinations to create potions.= No effect=Aucun effet + +A throwable potion that will shatter on impact, where it gives all nearby players and mobs a status effect.= + +Weakness Splash Potion= +Weakness Splash Potion += +Strength Splash Potion= +Strength Splash Potion II= +Strength Splash Potion += + +This particular arrow is tipped and will give an effect when it hits a player or mob.= + diff --git a/mods/ITEMS/mcl_potions/locale/mcl_potions.ru.tr b/mods/ITEMS/mcl_potions/locale/mcl_potions.ru.tr index b1016bb2..92ea08b8 100644 --- a/mods/ITEMS/mcl_potions/locale/mcl_potions.ru.tr +++ b/mods/ITEMS/mcl_potions/locale/mcl_potions.ru.tr @@ -1,25 +1,123 @@ # textdomain: mcl_potions -Put this item in an item frame for decoration. It's useless otherwise.=Положите этот предмет в рамку для красоты. Для всего остального он бесполезен. Fermented Spider Eye=Прокисший паучий глаз Glass Bottle=Стеклянная бутылка +Liquid container=Контейнер для жидкостей + A glass bottle is used as a container for liquids and can be used to collect water directly.=Стеклянная бутылка используется для хранения жидкостей, её также можно использовать для сбора воды. + To collect water, use it on a cauldron with water (which removes a level of water) or any water source (which removes no water).=Воду в бутылку можно набрать из котла с помощью команды [Использовать] (это уменьшает уровень воды в котле) или из другого источника (уровень которого не уменьшится). + Water Bottle=Бутылка с водой Water bottles can be used to fill cauldrons. Drinking water has no effect.=Бутылки с водой можно использовать для наполнения котлов. Выпивание воды не даст никакого эффекта. -Rightclick to drink. Rightclick a cauldron to pour the water into the cauldron.=Кликните правой, чтобы выпить. Правый клик по котлу выльет воду из бутылки в котёл. + +Use the “Place” key to drink. Place this item on a cauldron to pour the water into the cauldron.=Используйте клавишу “Разместить”, чтобы выпить это. Поместите этот предмет на котёл, чтобы вылить воду в котёл. + River Water Bottle=Бутылка с речной водой River water bottles can be used to fill cauldrons. Drinking it has no effect.=Бутылки с речной водой можно использовать для наполнения котлов. Выпивание воды не даст никакого эффекта. -Awkward Potion=Невкусное зелье -This potion has an awkward taste and is used for brewing more potions. Drinking it has no effect.=Невкусное зелье используется для приготовления других зелий. Приём внутрь не даёт никакого эффекта. -Mundane Potion=Успокоительное зелье -This potion has a clean taste and is used for brewing more potions. Drinking it has no effect.=Успокоительное зелье имеет чистый вкус и используется для приготовления других зелий. Приём внутрь не даёт никакого эффекта. -Thick Potion=Густое зелье -This potion has a bitter taste and is used for brewing more potions. Drinking it has no effect.=Густое зелье имеет горький вкус и используется для приготовления других зелий. Приём внутрь не даёт никакого эффекта. -Glistering Melon=Искрящаяся дыня -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.=Искрящаяся дыня полна маленьких золотых самородков и может отлично смотреться в рамке. Она несъедобна и не годится больше ни для чего. -Dragon's Breath=Дыхание дракона -Use the “Place” key to drink it.=Используйте клавишу “Разместить”, чтобы выпить это. -Use the “Place” key to drink. Place this item on a cauldron to pour the water into the cauldron.=Используйте клавишу “Разместить”, чтобы выпить это. Поместите этот предмет на котёл, чтобы вылить воду в котёл. + Use the “Place” key to drink. Place this item on a cauldron to pour the river water into the cauldron.=Используйте клавишу “Разместить”, чтобы выпить это. Поместите этот предмет на котёл, чтобы вылить речную воду в котёл. -Liquid container=Контейнер для жидкостей + +Splash Water Bottle= +Extinguishes fire and hurts some mobs= + +A throwable water bottle that will shatter on impact, where it extinguishes nearby fire and hurts mobs that are vulnerable to water.= + +Lingering Water Bottle= + +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.= + +Glistering Melon=Искрящаяся дыня + +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.=Искрящаяся дыня полна маленьких золотых самородков и может отлично смотреться в рамке. Она несъедобна и не годится больше ни для чего. + +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.= + +Lingering Weakness Potion= +Lingering Weakness Potion += +Lingering Strength Potion= +Lingering Strength Potion II= +Lingering Strength Potion += +Use the “Punch” key to throw it.= +Use the “Place” key to drink it.=Используйте клавишу “Разместить”, чтобы выпить это. +Drinking a potion gives you a particular effect.= +1 HP/@1s | @2= +@1 HP= +@1 Potion= +Splash @1 Potion= +Lingering @1 Potion= +Arrow of @1= + II= + IV= +@1 Potion@2= +Splash @1@2 Potion= +Lingering @1@2 Potion= +Arrow of @1@2= +@1 + Potion= +Splash @1 + Potion= +Lingering @1 + Potion= +Arrow of @1 += +Awkward Potion=Невкусное зелье +Awkward Splash Potion= +Awkward Lingering Potion= +Has an awkward taste and is used for brewing potions.= +Mundane Potion=Успокоительное зелье +Mundane Splash Potion= +Mundane Lingering Potion= +Has a terrible taste and is not useful for brewing potions.= +Thick Potion=Густое зелье +Thick Splash Potion= +Thick Lingering Potion= +Has a bitter taste and is not useful for brewing potions.= +Dragon's Breath=Дыхание дракона + +This item is used in brewing and can be combined with splash potions to create lingering potions.= + +Healing= ++4 HP= ++8 HP= +Instantly heals.= +Harming= +-6 HP= +-12 HP= +Instantly deals damage.= +Night Vision= +Grants the ability to see in darkness.= +Swiftness= +Increases walking speed.= +Slowness= +Decreases walking speed.= +Leaping= +Increases jump strength.= +Poison= +Applies the poison effect which deals damage at a regular interval.= +Regeneration= +Regenerates health over time.= +Invisibility= +Grants invisibility.= +Water Breathing= +Grants limitless breath underwater.= +Fire Resistance= +Grants immunity to damage from heat sources like fire.= +Weakness= +-4 HP damage | 1:30= +Weakness += +-4 HP damage | 4:00= +Strength= ++3 HP damage | 3:00= +Strength II= ++6 HP damage | 1:30= +Strength += ++3 HP damage | 8:00= +Try different combinations to create potions.= No effect=Не оказывает эффекта + +A throwable potion that will shatter on impact, where it gives all nearby players and mobs a status effect.= + +Weakness Splash Potion= +Weakness Splash Potion += +Strength Splash Potion= +Strength Splash Potion II= +Strength Splash Potion += + +This particular arrow is tipped and will give an effect when it hits a player or mob.= + diff --git a/mods/ITEMS/mcl_potions/locale/template.txt b/mods/ITEMS/mcl_potions/locale/template.txt index 7d0ee7f6..28797e65 100644 --- a/mods/ITEMS/mcl_potions/locale/template.txt +++ b/mods/ITEMS/mcl_potions/locale/template.txt @@ -1,25 +1,123 @@ # textdomain: mcl_potions -Put this item in an item frame for decoration. It's useless otherwise.= Fermented Spider Eye= Glass Bottle= +Liquid container= + A glass bottle is used as a container for liquids and can be used to collect water directly.= + To collect water, use it on a cauldron with water (which removes a level of water) or any water source (which removes no water).= + Water Bottle= Water bottles can be used to fill cauldrons. Drinking water has no effect.= -Rightclick to drink. Rightclick a cauldron to pour the water into the cauldron.= + +Use the “Place” key to drink. Place this item on a cauldron to pour the water into the cauldron.= + River Water Bottle= River water bottles can be used to fill cauldrons. Drinking it has no effect.= -Awkward Potion= -This potion has an awkward taste and is used for brewing more potions. Drinking it has no effect.= -Mundane Potion= -This potion has a clean taste and is used for brewing more potions. Drinking it has no effect.= -Thick Potion= -This potion has a bitter taste and is used for brewing more potions. Drinking it has no effect.= -Glistering Melon= -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.= -Dragon's Breath= -Use the “Place” key to drink it.= -Use the “Place” key to drink. Place this item on a cauldron to pour the water into the cauldron.= + Use the “Place” key to drink. Place this item on a cauldron to pour the river water into the cauldron.= -Liquid container= + +Splash Water Bottle= +Extinguishes fire and hurts some mobs= + +A throwable water bottle that will shatter on impact, where it extinguishes nearby fire and hurts mobs that are vulnerable to water.= + +Lingering Water Bottle= + +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.= + +Glistering Melon= + +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.= + +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.= + +Lingering Weakness Potion= +Lingering Weakness Potion += +Lingering Strength Potion= +Lingering Strength Potion II= +Lingering Strength Potion += +Use the “Punch” key to throw it.= +Use the “Place” key to drink it.= +Drinking a potion gives you a particular effect.= +1 HP/@1s | @2= +@1 HP= +@1 Potion= +Splash @1 Potion= +Lingering @1 Potion= +Arrow of @1= + II= + IV= +@1 Potion@2= +Splash @1@2 Potion= +Lingering @1@2 Potion= +Arrow of @1@2= +@1 + Potion= +Splash @1 + Potion= +Lingering @1 + Potion= +Arrow of @1 += +Awkward Potion= +Awkward Splash Potion= +Awkward Lingering Potion= +Has an awkward taste and is used for brewing potions.= +Mundane Potion= +Mundane Splash Potion= +Mundane Lingering Potion= +Has a terrible taste and is not useful for brewing potions.= +Thick Potion= +Thick Splash Potion= +Thick Lingering Potion= +Has a bitter taste and is not useful for brewing potions.= +Dragon's Breath= + +This item is used in brewing and can be combined with splash potions to create lingering potions.= + +Healing= ++4 HP= ++8 HP= +Instantly heals.= +Harming= +-6 HP= +-12 HP= +Instantly deals damage.= +Night Vision= +Grants the ability to see in darkness.= +Swiftness= +Increases walking speed.= +Slowness= +Decreases walking speed.= +Leaping= +Increases jump strength.= +Poison= +Applies the poison effect which deals damage at a regular interval.= +Regeneration= +Regenerates health over time.= +Invisibility= +Grants invisibility.= +Water Breathing= +Grants limitless breath underwater.= +Fire Resistance= +Grants immunity to damage from heat sources like fire.= +Weakness= +-4 HP damage | 1:30= +Weakness += +-4 HP damage | 4:00= +Strength= ++3 HP damage | 3:00= +Strength II= ++6 HP damage | 1:30= +Strength += ++3 HP damage | 8:00= +Try different combinations to create potions.= No effect= + +A throwable potion that will shatter on impact, where it gives all nearby players and mobs a status effect.= + +Weakness Splash Potion= +Weakness Splash Potion += +Strength Splash Potion= +Strength Splash Potion II= +Strength Splash Potion += + +This particular arrow is tipped and will give an effect when it hits a player or mob.= + diff --git a/mods/ITEMS/mcl_potions/mod.conf b/mods/ITEMS/mcl_potions/mod.conf new file mode 100644 index 00000000..0fe50a64 --- /dev/null +++ b/mods/ITEMS/mcl_potions/mod.conf @@ -0,0 +1,2 @@ +name = mcl_potions +depends = mcl_core, mcl_farming, mcl_mobitems, mcl_fishing, mcl_bows, mcl_end, playerphysics diff --git a/mods/ITEMS/mcl_potions/potions.lua b/mods/ITEMS/mcl_potions/potions.lua index e1628a0a..b7608bd8 100644 --- a/mods/ITEMS/mcl_potions/potions.lua +++ b/mods/ITEMS/mcl_potions/potions.lua @@ -67,10 +67,10 @@ local function register_potion(def) if effect and def.is_dur then _tt = perc_string(effect).." | "..time_string(dur) if def.name == "poison" or def.name == "regeneration" then - _tt = "1/2 heart/"..effect.."s | "..time_string(dur) + _tt = S("1 HP/@1s | @2", effect, time_string(dur)) end elseif def.name == "healing" or def.name == "harming" then - _tt = ((effect / 2) - ((effect / 2)% 0.5)).." hearts" + _tt = S("@1 HP", effect) else _tt = tt or time_string(dur) or S("No effect") end @@ -109,7 +109,11 @@ local function register_potion(def) local desc if not def.no_potion then - desc = S("@1 Potion", def.description) + if def.description_potion then + desc = def.description_potion + else + desc = S("@1 Potion", def.description) + end else desc = def.description end @@ -173,8 +177,19 @@ local function register_potion(def) } if def.color and not def.no_throwable then - mcl_potions.register_splash(def.name, S("Splash @1 Potion", def.description), def.color, splash_def) - mcl_potions.register_lingering(def.name, S("Lingering @1 Potion", def.description), def.color, ling_def) + local desc + if def.description_splash then + desc = def.description_splash + else + desc = S("Splash @1 Potion", def.description) + end + mcl_potions.register_splash(def.name, desc, def.color, splash_def) + if def.description_lingering then + desc = def.description_lingering + else + desc = S("Lingering @1 Potion", def.description) + end + mcl_potions.register_lingering(def.name, desc, def.color, ling_def) if not def.no_arrow then mcl_potions.register_arrow(def.name, S("Arrow of @1", def.description), def.color, arrow_def) end @@ -357,7 +372,9 @@ end local awkward_def = { name = "awkward", - description = S("Awkward"), + description_potion = S("Awkward Potion"), + description_splash = S("Awkward Splash Potion"), + description_lingering = S("Awkward Lingering Potion"), no_arrow = true, no_effect = true, _tt = S("No effect"), @@ -369,7 +386,9 @@ local awkward_def = { local mundane_def = { name = "mundane", - description = S("Mundane"), + description_potion = S("Mundane Potion"), + description_splash = S("Mundane Splash Potion"), + description_lingering = S("Mundane Lingering Potion"), no_arrow = true, no_effect = true, _tt = S("No effect"), @@ -380,7 +399,9 @@ local mundane_def = { local thick_def = { name = "thick", - description = S("Thick"), + description_potion = S("Thick Potion"), + description_splash = S("Thick Splash Potion"), + description_lingering = S("Thick Lingering Potion"), no_arrow = true, no_effect = true, _tt = S("No effect"), @@ -406,8 +427,8 @@ local dragon_breath_def = { local healing_def = { name = "healing", description = S("Healing"), - _tt = S("+2 hearts"), - _tt_2 = S("+4 hearts"), + _tt = S("+4 HP"), + _tt_2 = S("+8 HP"), _longdesc = S("Instantly heals."), color = "#CC0000", effect = 4, @@ -419,8 +440,8 @@ local healing_def = { local harming_def = { name = "harming", description = S("Harming"), - _tt = S("-3 hearts"), - _tt_II = S("-6 hearts"), + _tt = S("-6 HP"), + _tt_II = S("-12 HP"), _longdesc = S("Instantly deals damage."), color = "#660099", effect = -6, diff --git a/mods/ITEMS/mcl_potions/splash.lua b/mods/ITEMS/mcl_potions/splash.lua index 779c75ac..75ab6d6e 100644 --- a/mods/ITEMS/mcl_potions/splash.lua +++ b/mods/ITEMS/mcl_potions/splash.lua @@ -1,4 +1,5 @@ local S = minetest.get_translator("mcl_potions") +local GRAVITY = tonumber(minetest.settings:get("movement_gravity")) local splash_image = function(colorstring, opacity) if not opacity then @@ -54,32 +55,45 @@ function mcl_potions.register_splash(name, descr, color, def) textures = {splash_image(color)}, hp_max = 1, visual_size = {x=w/2,y=w/2}, - collisionbox = {0,0,0,0,0,0}, + collisionbox = {-0.1,-0.1,-0.1,0.1,0.1,0.1}, + pointable = false, on_step = function(self, dtime) - local pos = self.object:getpos() + local pos = self.object:get_pos() local node = minetest.get_node(pos) local n = node.name - local d = 2 + local d = 0.1 local redux_map = {7/8,0.5,0.25} if n ~= "air" and n ~= "mcl_portals:portal" and n ~= "mcl_portals:portal_end" or mcl_potions.is_obj_hit(self, pos) then minetest.sound_play("mcl_potions_breaking_glass", {pos = pos, max_hear_distance = 16, gain = 1}) + local texture, acc + if name == "water" then + texture = "mcl_potions_droplet.png" + acc = {x=0, y=-GRAVITY, z=0} + else + texture = "mcl_potions_sprite.png" + acc = {x=0, y=0, z=0} + end minetest.add_particlespawner({ - amount = 50, - time = 2, - minpos = {x=pos.x-d, y=pos.y+0.5, z=pos.z-d}, - maxpos = {x=pos.x+d, y=pos.y+d, z=pos.z+d}, - minvel = {x=-1, y=0, z=-1}, - maxvel = {x=1, y=0.5, z=1}, - minacc = {x=-0.5, y=0, z=-0.5}, - maxacc = {x=0.5, y=.2, z=0.5}, - minexptime = 1, - maxexptime = 3, - minsize = 2, - maxsize = 4, - collisiondetection = true, - vertical = false, - texture = "mcl_potions_sprite.png^[colorize:"..color..":127", - }) + amount = 50, + time = 0.1, + minpos = {x=pos.x-d, y=pos.y+0.5, z=pos.z-d}, + maxpos = {x=pos.x+d, y=pos.y+0.5+d, z=pos.z+d}, + minvel = {x=-2, y=0, z=-2}, + maxvel = {x=2, y=2, z=2}, + minacc = acc, + maxacc = acc, + minexptime = 0.5, + maxexptime = 1.25, + minsize = 1, + maxsize = 2, + collisiondetection = true, + vertical = false, + texture = texture.."^[colorize:"..color..":127" + }) + + if name == "water" then + mcl_potions._extinguish_nearby_fire(pos) + end self.object:remove() for _,obj in pairs(minetest.get_objects_inside_radius(pos, 4)) do diff --git a/mods/ITEMS/mcl_potions/textures/mcl_potions_droplet.png b/mods/ITEMS/mcl_potions/textures/mcl_potions_droplet.png new file mode 100644 index 00000000..e85767d3 Binary files /dev/null and b/mods/ITEMS/mcl_potions/textures/mcl_potions_droplet.png differ diff --git a/mods/ITEMS/mcl_potions/tipped_arrow.lua b/mods/ITEMS/mcl_potions/tipped_arrow.lua index b338a18e..483b621a 100644 --- a/mods/ITEMS/mcl_potions/tipped_arrow.lua +++ b/mods/ITEMS/mcl_potions/tipped_arrow.lua @@ -32,16 +32,17 @@ local how_to_shoot = minetest.registered_items["mcl_bows:arrow"]._doc_items_usag local mod_awards = minetest.get_modpath("awards") and minetest.get_modpath("mcl_achievements") local mod_button = minetest.get_modpath("mesecons_button") +local arrow_longdesc = minetest.registered_items["mcl_bows:arrow"]._doc_items_longdesc or "" +local arrow_tt = minetest.registered_items["mcl_bows:arrow"]._tt_help or "" + function mcl_potions.register_arrow(name, desc, color, def) local longdesc = def.longdesc or "" minetest.register_craftitem("mcl_potions:"..name.."_arrow", { description = desc, - _tt_help = S("Ammunition").."\n"..S("Damage from bow: 1-10").."\n"..S("Damage from dispenser: 3").."\n"..def.tt, - _doc_items_longdesc = S("Arrows are ammunition for bows and dispensers.").."\n".. - S("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.").."\n".. - S("Arrows might get stuck on solid blocks and can be retrieved again. They are also capable of pushing wooden buttons.").."\n".. - S("This particular arrow is tipped and will give an effect when it hits a player or mob.").."\n".. + _tt_help = arrow_tt .. "\n" .. def.tt, + _doc_items_longdesc = arrow_longdesc .. "\n" .. + S("This particular arrow is tipped and will give an effect when it hits a player or mob.") .. "\n" .. longdesc, _doc_items_usagehelp = how_to_shoot, inventory_image = "mcl_bows_arrow_inv.png^(mcl_potions_arrow_inv.png^[colorize:"..color..":100)", diff --git a/mods/MISC/mcl_temp_helper_recipes/init.lua b/mods/MISC/mcl_temp_helper_recipes/init.lua index fdde8004..f9a6ec0e 100644 --- a/mods/MISC/mcl_temp_helper_recipes/init.lua +++ b/mods/MISC/mcl_temp_helper_recipes/init.lua @@ -116,3 +116,11 @@ minetest.register_craft({ output = "mcl_core:gold_ingot 9", recipe = {{ "mcl_core:emerald" }}, }) + +minetest.register_craft({ + output = "mcl_potions:dragon_breath 3", + recipe = { + {"","mcl_end:chorus_flower",""}, + {"mcl_potions:glass_bottle","mcl_potions:glass_bottle","mcl_potions:glass_bottle"}, + } +})