223 lines
4.0 KiB
Lua
Raw Normal View History

2022-11-21 16:12:22 -05:00
-- Pig spawner
minetest.register_node("cops:pig_spawner", {
walkable = false;
--[[on_timer = function(pos)
minetest.add_entity(pos, "cops:cop_regular_female")
return true
end,
on_construct = function(pos)
minetest.get_node_timer(pos):start(20)
end,]]
})
2022-11-21 20:43:08 -05:00
2022-11-21 16:12:22 -05:00
minetest.register_abm({
nodenames = {"cops:pig_spawner"},
interval = 30,
chance = 5,
2022-11-21 16:12:22 -05:00
action = function(pos, node, active_object_count, active_object_count_wider)
local i = math.random(0, 2)
if i == 0 then
minetest.add_entity(pos, "cops:cop_regular_female")
elseif i == 1 then
minetest.add_entity(pos, "cops:cop_regular_male")
elseif i == 2 then
minetest.add_entity(pos, "cops:cop_armedthug")
end
end})
minetest.register_abm({
nodenames = {"main:bricks_stone"},
interval = 40,
chance = 50,
action = function(pos, node, active_object_count, active_object_count_wider)
newPos = {x = pos.x, y = pos.y + 2, z = pos.z}
local i = math.random(0, 2)
if i == 0 then
minetest.add_entity(newPos, "cops:cop_regular_female")
elseif i == 1 then
minetest.add_entity(newPos, "cops:cop_regular_male")
elseif i == 2 then
minetest.add_entity(newPos, "cops:cop_armedthug")
end
2022-11-21 20:43:08 -05:00
end})
2022-11-21 16:12:22 -05:00
-- Cops
mobs:register_mob("cops:cop_regular_female", {
type = "monster",
passive = false,
attack_type = "dogfight",
pathfinding = true,
reach = 2,
damage = 3,
hp_min = 16,
hp_max = 25,
armor = 100,
collisionbox =
{
-.4, 0, -.4, .4, 2, .4
},
pushable = true,
visual = "mesh",
mesh = "character.b3d",
textures =
{
{"cop_regular_female.png"},
},
makes_footstep_sound = true,
sounds =
{
random = "female_noise",
},
walk_velocity = 2,
run_velocity = 8,
jump_height = 1,
stepheight = 0,
floats = 0,
view_range = 45,
fall_damage = true,
drops =
{
{name = "cops:badge", chance = 4, min = 0, max = 1},
{name = "cops:handcuffs", chance = 3, min = 0, max = 1},
{name = "cops:electric_weapon_broken", chance = 3, min = 0, max = 1}
},
animation =
{
speed_normal = 30,
speed_run = 50,
stand_start = 0,
stand_end = 79,
walk_start = 168,
walk_end = 187,
run_start = 168,
run_end = 187,
punch_start = 200,
punch_end = 219
},
})
mobs:register_mob("cops:cop_regular_male", {
type = "monster",
passive = false,
attack_type = "dogfight",
pathfinding = true,
reach = 2,
damage = 3,
hp_min = 21,
hp_max = 25,
armor = 100,
collisionbox =
{
-.4, 0, -.4, .4, 2, .4
},
pushable = true,
visual = "mesh",
mesh = "character.b3d",
textures =
{
{"cop_regular_male.png"},
},
makes_footstep_sound = true,
sounds =
{
random = "male_noise",
},
walk_velocity = 2,
run_velocity = 8,
jump_height = 1,
stepheight = 0,
floats = 0,
view_range = 45,
fall_damage = true,
drops =
{
{name = "cops:badge", chance = 4, min = 0, max = 1},
{name = "cops:handcuffs", chance = 3, min = 0, max = 1},
{name = "cops:electric_weapon_broken", chance = 3, min = 0, max = 1}
},
animation =
{
speed_normal = 30,
speed_run = 50,
stand_start = 0,
stand_end = 79,
walk_start = 168,
walk_end = 187,
run_start = 168,
run_end = 187,
punch_start = 200,
punch_end = 219
},
})
mobs:register_mob("cops:cop_armedthug", {
type = "monster",
passive = false,
attack_type = "dogfight",
pathfinding = true,
reach = 3,
damage = 5,
hp_min = 46,
hp_max = 50,
armor = 100,
collisionbox =
{
-.4, 0, -.4, .4, 2, .4
},
pushable = true,
visual = "mesh",
mesh = "character.b3d",
textures =
{
{"cop_armedthug.png"},
},
makes_footstep_sound = true,
sounds =
{
random = "male_noise",
},
walk_velocity = 2,
run_velocity = 8,
jump_height = 1,
stepheight = 0,
floats = 0,
view_range = 45,
fall_damage = true,
drops =
{
{name = "cops:badge", chance = 3, min = 0, max = 1},
{name = "cops:handcuffs", chance = 4, min = 1, max = 2},
},
animation =
{
speed_normal = 30,
speed_run = 50,
stand_start = 0,
stand_end = 79,
walk_start = 168,
walk_end = 187,
run_start = 168,
run_end = 187,
punch_start = 200,
punch_end = 219
},
})