123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- local S = mobs.intllib_monster
- local mob_drops = {
- {name = "fireflies:firefly", chance = 1, min = 1, max = 1}
- }
- if minetest.get_modpath("ethereal") then
- table.insert(mob_drops,
- {name = "ethereal:fire_dust", chance = 1, min = 1, max = 1})
- end
- -- Fire Spirit
- mobs:register_mob("mobs_monster:fire_spirit", {
- type = "monster",
- passive = false,
- attack_type = "dogfight",
- pathfinding = true,
- reach = 2,
- damage = 4,
- hp_min = 25,
- hp_max = 45,
- armor = 100,
- collisionbox = {-0.1, -0.1, -0.1, 0.1, 0.1, 0.1},
- visual_scale = {x = 0.5, y = 0.5, z = 0.5},
- visual = "sprite",
- textures = {
- {"mobs_fire_spirit.png"}
- },
- glow = 14,
- blood_texture = "fire_basic_flame.png",
- immune_to = {
- {"bucket:bucket_water", 1},
- {"bucket:bucket_river_water", 1},
- {"all"}
- },
- makes_footstep_sound = false,
- sounds = {
- random = "fire_fire",
- damage = "fire_extinguish_flame",
- death = "fire_extinguish_flame"
- },
- view_range = 14,
- walk_velocity = 2,
- run_velocity = 3,
- jump = true,
- jump_height = 6,
- drops = mob_drops,
- water_damage = 1,
- lava_damage = 0,
- fire_damage = 0,
- light_damage = 0,
- fall_damage = false,
- fear_height = 8,
- animation = {},
- on_die = function(self, pos)
- mobs:effect(pos, 20, "tnt_smoke.png", 3, 5, 2, 0.5, nil, false)
- self.object:remove()
- end,
- do_custom = function(self, dtime)
- self.flame_timer = (self.flame_timer or 0) + dtime
- if self.flame_timer < 0.25 then
- return
- end
- self.flame_timer = 0
- local pos = self.object:get_pos()
- -- pos, amount, texture, min_size, max_size, radius, gravity, glow, fall
- mobs:effect(pos, 5, "fire_basic_flame.png", 1, 2, 0.1, 0.2, 14, nil)
- end
- })
- if not mobs.custom_spawn_monster then
- mobs:spawn({
- name = "mobs_monster:fire_spirit",
- nodes = {"default:obsidian", "caverealms:hot_cobble"},
- neighbors = {"group:fire"},
- min_light = 12,
- max_light = 15,
- chance = 1500,
- active_object_count = 1,
- max_height = -150
- })
- end
- mobs:register_egg("mobs_monster:fire_spirit", S("Fire Spirit"), "fire_basic_flame.png", 1)
|