-- Zombie by BlockMen local drop_coin = nil -- NALC : Drop silver coin if maptools mod local drop_napple = nil -- NALC : Drop nether apple if nether if minetest.get_modpath("maptools") then drop_coin = { name = "maptools:silver_coin", chance = 1, min = 1, max = 1 } end if minetest.get_modpath("nether") then drop_napple = { name = "nether:apple", chance = 8, min = 1, max = 1 } end mobs:register_mob( "zombie:zombie", { -- animal, monster, npc, barbarian type = "monster", -- aggressive, deals 6 damage to player when hit passive = false, attack_type = "dogfight", pathfinding = false, damage = 3, -- health & armor hp_min = 12, hp_max = 35, armor = 150, -- textures and model collisionbox = {-0.25, -1, -0.3, 0.25, 0.75, 0.3}, visual = "mesh", mesh = "mobs_zombie.x", textures = { {"mobs_zombie.png"}, }, visual_size = {x=1, y=1}, blood_texture = "mobs_blood.png", -- sounds makes_footstep_sound = true, sounds = { random = "mobs_zombie", damage = "mobs_zombie_hit", attack = "mobs_zombie_attack", death = "mobs_zombie_death", }, -- speed and jump view_range = 10, walk_velocity = 1, run_velocity = 3, jump = true, floats = 0, -- drops nether fruit and silver coin when dead drops = { {name = "zombie:rotten_flesh", chance = 2, min = 3, max = 5,}, {name = "zombie:zombie_tibia", chance = 10, min = 1, max = 1,}, drop_napple, -- NALC drop_coin -- NALC }, -- damaged by water_damage = 1, lava_damage = 5, light_damage = 2, -- model animation animation = { speed_normal = 10, speed_run = 15, stand_start = 0, stand_end = 79, walk_start = 168, walk_end = 188, run_start = 168, run_end = 188, -- punch_start = 168, punch_end = 188, }, }) mobs:alias_mob("mobs:zombie", "zombie:zombie") -- spawn in nether forest between -1 and 5 light, 1 in 7000 chance, 1 zombie in area up to 31000 in height mobs:spawn_specific("zombie:zombie", {"nether:dirt_top", "default:dirt_with_grass", "default:dirt", "default:stone"}, {"air"}, -1, 5, 30, 7000, 1, -31000, 31000, false) -- register spawn egg mobs:register_egg("zombie:zombie", "Zombie", "mobs_zombie_inv.png", 1) minetest.register_craftitem( "zombie:zombie_tibia", { description = "Zombie Tibia", inventory_image = "mobs_zombie_tibia.png", groups = {magic = 1}, }) minetest.register_alias("mobs:zombie_tibia", "zombie:zombie_tibia") minetest.register_craftitem( "zombie:rotten_flesh", { description = "Rotten Flesh", inventory_image = "mobs_rotten_flesh.png", on_use = function(itemstack, user) -- NALC : Augmente la faim de 5 points mais augmente la vie de 1 point local inv = user:get_inventory() if not inv then return end itemstack:take_item() -- Augmente la vie de 1 point user:set_hp(user:get_hp() + 1) -- Si hbhunger alors augmente la faim de 5 points (Réduction de la barre de faim) if minetest.get_modpath("hbhunger") then local p_hunger = tonumber(hbhunger.hunger[user:get_player_name()]) if not p_hunger then return end p_hunger = p_hunger - 5 if p_hunger < 0 then p_hunger = 0 end hbhunger.hunger[user:get_player_name()] = p_hunger local save_hunger = hbhunger.save_hunger if not save_hunger then save_hunger = hbhunger.set_hunger end save_hunger(user) end return itemstack end }) minetest.register_craft({ type = "cooking", output = "mobs:meat", recipe = "zombie:rotten_flesh", cooktime = 5, }) minetest.log("action", "[zombie] loaded.")