89 lines
2.0 KiB
Lua
89 lines
2.0 KiB
Lua
local function register_pumpboom(sizename, params)
|
|
|
|
mobs:register_mob("nssm:pumpboom_" .. sizename, {
|
|
type = "monster",
|
|
hp_min = params.hp_min,
|
|
hp_max = params.hp_max,
|
|
collisionbox = params.collisionbox,
|
|
visual = "mesh",
|
|
mesh = "pumpboom.x",
|
|
rotate = 270,
|
|
textures = {{"pumpboom.png"}},
|
|
visual_size = params.visual_size,
|
|
explosion_radius = params.boom_radius,
|
|
makes_footstep_sound = true,
|
|
view_range = params.view_range,
|
|
fear_height = 4,
|
|
walk_velocity = 2,
|
|
run_velocity = 2.5,
|
|
sounds = {
|
|
explode = "tnt_explode"
|
|
},
|
|
damage = 1.5,
|
|
jump = true,
|
|
drops = params.drops,
|
|
armor = 100,
|
|
drawtype = "front",
|
|
water_damage = 2,
|
|
lava_damage = 5,
|
|
light_damage = 0,
|
|
group_attack = true,
|
|
attack_animals = true,
|
|
knock_back=2,
|
|
blood_texture = "nssm_blood.png",
|
|
stepheight = 1.1,
|
|
attack_type = "explode",
|
|
animation = {
|
|
speed_normal = 25,
|
|
speed_run = 25,
|
|
stand_start = 1,
|
|
stand_end = 30,
|
|
walk_start = 81,
|
|
walk_end = 97,
|
|
run_start = 81,
|
|
run_end = 97,
|
|
punch_start = 70,
|
|
punch_end = 80
|
|
}
|
|
})
|
|
end
|
|
|
|
register_pumpboom("small",{
|
|
hp_min = 14,
|
|
hp_max = 15,
|
|
visual_size = {x = 3, y = 3},
|
|
collisionbox = {-0.45, -0.3, -0.45, 0.45, 0.45, 0.45},
|
|
boom_radius = 4,
|
|
view_range = 20,
|
|
drops = {
|
|
{name = "nssm:life_energy", chance = 1, min = 1, max = 2},
|
|
{name = "nssm:black_powder", chance = 2, min = 1, max = 2}
|
|
}
|
|
})
|
|
|
|
register_pumpboom("medium",{
|
|
hp_min = 17,
|
|
hp_max = 18,
|
|
visual_size = {x = 5, y = 5},
|
|
collisionbox = {-0.7, -0.3, -0.7, 0.7, 0.7, 0.7},
|
|
boom_radius = 6,
|
|
view_range = 25,
|
|
drops = {
|
|
{name = "nssm:life_energy", chance = 1, min = 2, max = 3},
|
|
{name = "nssm:black_powder", chance = 2, min = 1, max = 3}
|
|
}
|
|
})
|
|
|
|
register_pumpboom("large",{
|
|
hp_min = 19,
|
|
hp_max = 20,
|
|
visual_size = {x = 8, y = 8},
|
|
collisionbox = {-1.2, -0.3, -1.2, 1.2, 1.2, 1.2},
|
|
boom_radius = 8,
|
|
view_range = 30,
|
|
drops = {
|
|
{name = "nssm:life_energy", chance = 1, min = 3, max = 4},
|
|
{name = "nssm:black_powder", chance = 2, min = 2, max = 4}
|
|
}
|
|
})
|