initial everything
This commit is contained in:
parent
c7ae5135f4
commit
f18e089bac
18
caverealms_lite.lua
Normal file
18
caverealms_lite.lua
Normal file
@ -0,0 +1,18 @@
|
||||
spawnit.register({
|
||||
entity_name = "mobs_monster:dungeon_master",
|
||||
chance = 300 * 7000 / 6000,
|
||||
on = {"caverealms:hot_cobble"},
|
||||
max_y = -8000,
|
||||
max_light = 12,
|
||||
max_in_area = 2,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
after_spawn = function(pos, obj)
|
||||
local ent = obj:get_luaentity()
|
||||
ent.hp_max = 70
|
||||
ent.health = 70
|
||||
ent.damage = 5
|
||||
ent.shoot_interval = 1.5
|
||||
ent.dogshoot_switch = 0
|
||||
end,
|
||||
})
|
19
flower_cow.lua
Normal file
19
flower_cow.lua
Normal file
@ -0,0 +1,19 @@
|
||||
local BASE_CHANCE = 300 -- one every 5 minutes
|
||||
local BASE_CHANCE_RATIO = 60 * 8000 -- cow
|
||||
local MAX_IN_AREA = 1
|
||||
|
||||
local DAWN = 4500 / 24000
|
||||
local DUSK = 19500 / 24000
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "flower_cow:flower_cow",
|
||||
chance = BASE_CHANCE * (60 * 80000) / BASE_CHANCE_RATIO,
|
||||
on = { "group:soil" },
|
||||
near = { "group:grass" },
|
||||
min_y = 5,
|
||||
max_y = 200,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
1
mob_core.lua
Normal file
1
mob_core.lua
Normal file
@ -0,0 +1 @@
|
||||
mob_core.spawn_enabled = false -- note that this doesn't disable the ABM, but nothing will spawn
|
200
mobs_animal.lua
200
mobs_animal.lua
@ -0,0 +1,200 @@
|
||||
local f = string.format
|
||||
|
||||
local BASE_CHANCE = 300 -- one every 5 minutes
|
||||
local BASE_CHANCE_RATIO = 60 * 8000 -- cow
|
||||
local MAX_IN_AREA = 5
|
||||
|
||||
local DAWN = 4500 / 24000
|
||||
local DUSK = 19500 / 24000
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_animal:bee",
|
||||
chance = BASE_CHANCE * (60 * 7000) / BASE_CHANCE_RATIO,
|
||||
near = { "group:flower" },
|
||||
on = { "any" },
|
||||
min_y = 3,
|
||||
max_y = 200,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_animal:bunny",
|
||||
chance = BASE_CHANCE * (60 * 8000) / BASE_CHANCE_RATIO,
|
||||
on = { "group:soil" },
|
||||
near = { "group:grass" },
|
||||
min_y = 5,
|
||||
max_y = 200,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_animal:chicken",
|
||||
chance = BASE_CHANCE * (60 * 8000) / BASE_CHANCE_RATIO,
|
||||
on = { "group:soil" },
|
||||
near = { "group:grass" },
|
||||
min_y = 5,
|
||||
max_y = 200,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_animal:cow",
|
||||
chance = BASE_CHANCE * (60 * 8000) / BASE_CHANCE_RATIO,
|
||||
on = { "group:soil" },
|
||||
near = { "group:grass" },
|
||||
min_y = 5,
|
||||
max_y = 200,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_animal:kitten",
|
||||
chance = BASE_CHANCE * (60 * 10000) / BASE_CHANCE_RATIO,
|
||||
on = { "group:soil" },
|
||||
near = { "group:grass" },
|
||||
min_y = 5,
|
||||
max_y = 50,
|
||||
min_time_of_day = DUSK,
|
||||
max_time_of_day = DAWN,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_animal:panda",
|
||||
chance = BASE_CHANCE * (60 * 8000) / BASE_CHANCE_RATIO,
|
||||
on = { "group:soil" },
|
||||
near = { "ethereal:bamboo", "ethereal:bamboo_leaves", "ethereal:bamboo_sprout" },
|
||||
min_y = 10,
|
||||
max_y = 80,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_animal:penguin",
|
||||
chance = BASE_CHANCE * (60 * 20000) / BASE_CHANCE_RATIO,
|
||||
on = { "default:snowblock", "default:ice" },
|
||||
min_y = 0,
|
||||
max_y = 10,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_animal:rat",
|
||||
chance = BASE_CHANCE * (60 * 8000) / BASE_CHANCE_RATIO,
|
||||
min_light = 3,
|
||||
max_light = 9,
|
||||
max_y = 0,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
local function make_child(obj, ent)
|
||||
local textures = ent.base_texture
|
||||
|
||||
-- using specific child texture (if found)
|
||||
if ent.child_texture then
|
||||
textures = ent.child_texture[1]
|
||||
end
|
||||
|
||||
-- and resize to half height (multiplication is faster than division)
|
||||
obj:set_properties({
|
||||
textures = textures,
|
||||
visual_size = {
|
||||
x = ent.base_size.x * .5,
|
||||
y = ent.base_size.y * .5
|
||||
},
|
||||
collisionbox = {
|
||||
ent.base_colbox[1] * .5,
|
||||
ent.base_colbox[2] * .5,
|
||||
ent.base_colbox[3] * .5,
|
||||
ent.base_colbox[4] * .5,
|
||||
ent.base_colbox[5] * .5,
|
||||
ent.base_colbox[6] * .5
|
||||
},
|
||||
selectionbox = {
|
||||
ent.base_selbox[1] * .5,
|
||||
ent.base_selbox[2] * .5,
|
||||
ent.base_selbox[3] * .5,
|
||||
ent.base_selbox[4] * .5,
|
||||
ent.base_selbox[5] * .5,
|
||||
ent.base_selbox[6] * .5
|
||||
}
|
||||
})
|
||||
|
||||
ent.child = true
|
||||
end
|
||||
|
||||
local colors = {
|
||||
black = "#212121b0",
|
||||
brown = "#663300a0",
|
||||
dark_grey = "#444444b0",
|
||||
grey = "#919191b0",
|
||||
white = "#ffffffc0",
|
||||
}
|
||||
|
||||
local function after_spawn_sheep(pos, obj)
|
||||
local ent = obj:get_luaentity()
|
||||
if not ent then
|
||||
return
|
||||
end
|
||||
|
||||
local color = ent.name:match("^mobs_animal:sheep_(.*)$")
|
||||
|
||||
local horns = math.random(400) <= pos.y
|
||||
local lamb = math.random(4) == 1
|
||||
|
||||
if horns and not lamb then
|
||||
local texture = f("mobs_sheep_base.png^mobs_sheep_horns.png^(mobs_sheep_wool.png^[multiply:%s)",
|
||||
colors[color]
|
||||
)
|
||||
|
||||
obj:set_properties({ textures = { texture } })
|
||||
ent.base_texture = { texture }
|
||||
ent.attribute_horns = horns
|
||||
elseif lamb then
|
||||
make_child(obj, ent)
|
||||
end
|
||||
end
|
||||
|
||||
spawnit.register({
|
||||
entity_name = {
|
||||
["mobs_animal:sheep_white"] = 24,
|
||||
["mobs_animal:sheep_black"] = 4,
|
||||
["mobs_animal:sheep_brown"] = 2,
|
||||
["mobs_animal:sheep_grey"] = 1,
|
||||
["mobs_animal:sheep_dark_grey"] = 1,
|
||||
},
|
||||
chance = BASE_CHANCE * (60 * 12000) / BASE_CHANCE_RATIO,
|
||||
cluster = 4,
|
||||
on = { "group:soil" },
|
||||
near = { "group:grass" },
|
||||
min_y = 0,
|
||||
max_y = 400,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
after_spawn = after_spawn_sheep,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_animal:pumba",
|
||||
chance = BASE_CHANCE * (60 * 8000) / BASE_CHANCE_RATIO,
|
||||
on = { "default:dirt_with_dry_grass", "default:dry_dirt_with_dry_grass", "default:dirt_with_rainforest_litter", "ethereal:mushroom_dirt" },
|
||||
near = { "group:mushroom", "group:grass" },
|
||||
min_y = 0,
|
||||
max_y = 200,
|
||||
min_light = 2,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
33
mobs_balrog.lua
Normal file
33
mobs_balrog.lua
Normal file
@ -0,0 +1,33 @@
|
||||
local s = mobs_balrog.settings
|
||||
|
||||
local base_chance = 7200
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_balrog:balrog",
|
||||
chance = base_chance,
|
||||
within = { "breathable" },
|
||||
on = { "node" },
|
||||
min_y = s.min_height,
|
||||
max_y = s.max_height,
|
||||
min_light = s.min_light,
|
||||
max_light = s.max_light,
|
||||
max_in_area = 1,
|
||||
max_in_area_radius = 128,
|
||||
min_player_distance = 24,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_balrog:balrog",
|
||||
chance = base_chance / 2,
|
||||
within = { "breathable" },
|
||||
on = { "node" },
|
||||
min_y = s.min_height,
|
||||
max_y = (3 * s.min_height + s.max_height) / 4,
|
||||
min_light = s.min_light,
|
||||
max_light = s.max_light,
|
||||
max_in_area = 1,
|
||||
max_in_area_radius = 128,
|
||||
min_player_distance = 24,
|
||||
spawn_in_protected = false,
|
||||
})
|
11
mobs_banshee.lua
Normal file
11
mobs_banshee.lua
Normal file
@ -0,0 +1,11 @@
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_banshee:banshee",
|
||||
chance = 300,
|
||||
within = { "breathable" },
|
||||
on = { "any" },
|
||||
near = { "bones:bones"},
|
||||
max_in_area = 1,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
10
mobs_gazer.lua
Normal file
10
mobs_gazer.lua
Normal file
@ -0,0 +1,10 @@
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_gazer:gazer" ,
|
||||
chance = 300,
|
||||
on = { "node" },
|
||||
max_y = -500,
|
||||
max_in_area = 1,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
24
mobs_ghost_redo.lua
Normal file
24
mobs_ghost_redo.lua
Normal file
@ -0,0 +1,24 @@
|
||||
local ghost_bones_only = minetest.settings:get_bool("mobs_ghost_redo_bones_only", false)
|
||||
|
||||
local DAWN = 4500 / 24000
|
||||
local DUSK = 19500 / 24000
|
||||
|
||||
local near
|
||||
if ghost_bones_only then
|
||||
near = {"bones:bones", "mobs_humans:human_bones"}
|
||||
else
|
||||
near = {"any"}
|
||||
end
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_ghost_redo:ghost",
|
||||
chance = 300,
|
||||
within = { "any" },
|
||||
on = { "any" },
|
||||
near = near,
|
||||
max_in_area = 2,
|
||||
min_time_of_day = DUSK,
|
||||
max_time_of_day = DAWN,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
8
mobs_mime.lua
Normal file
8
mobs_mime.lua
Normal file
@ -0,0 +1,8 @@
|
||||
spawnit.register({
|
||||
entity_name = "mobs_mime:mime",
|
||||
chance = 300,
|
||||
max_in_area = 1,
|
||||
within = { "not walkable" },
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
195
mobs_monster.lua
Normal file
195
mobs_monster.lua
Normal file
@ -0,0 +1,195 @@
|
||||
local BASE_CHANCE = 300 -- one every 5 minutes
|
||||
local BASE_CHANCE_RATIO = 6000 -- dirt monster
|
||||
|
||||
local DAWN = 4500 / 24000
|
||||
local DUSK = 19500 / 24000
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_monster:dirt_monster",
|
||||
on = {"group:soil"},
|
||||
chance = BASE_CHANCE * 6000 / BASE_CHANCE_RATIO,
|
||||
min_y = 0,
|
||||
max_light = 7,
|
||||
min_time_of_day = DUSK,
|
||||
max_time_of_day = DAWN,
|
||||
max_in_area = 2,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_monster:dungeon_master",
|
||||
chance = BASE_CHANCE * 9000 / BASE_CHANCE_RATIO,
|
||||
max_y = -70,
|
||||
max_light = 5,
|
||||
max_in_area = 1,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
if yl_spawnit.has.nether and nether.DEPTH_FLOOR > -70 then
|
||||
spawnit.register({
|
||||
entity_name = "mobs_monster:dungeon_master",
|
||||
chance = 300,
|
||||
min_y = nether.DEPTH_FLOOR,
|
||||
max_y = nether.DEPTH_CEILING,
|
||||
max_light = 5,
|
||||
max_in_area = 1,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
end
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_monster:fire_spirit",
|
||||
on = {"default:obsidian", "caverealms:hot_cobble"},
|
||||
near = {"group:fire"},
|
||||
chance = BASE_CHANCE * 1500 / BASE_CHANCE_RATIO,
|
||||
max_y = -150,
|
||||
min_light = 12,
|
||||
max_in_area = 1,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_monster:land_guard",
|
||||
on = {
|
||||
"default:snow", "default:ice", "default:stone",
|
||||
"default:dry_dirt_with_dry_grass", "ethereal:dry_dirt"
|
||||
},
|
||||
chance = BASE_CHANCE * 25000 / BASE_CHANCE_RATIO,
|
||||
min_y = 0,
|
||||
max_light = 7,
|
||||
max_in_area = 1,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_monster:lava_flan",
|
||||
within = {"default:lava_source"},
|
||||
on = { "any" },
|
||||
chance = BASE_CHANCE * 1500 / BASE_CHANCE_RATIO,
|
||||
max_y = 0,
|
||||
max_in_area = 1,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_monster:mese_monster",
|
||||
on = { "any" },
|
||||
near = { "default:mese", "default:stone_with_mese"},
|
||||
chance = BASE_CHANCE * 5000 / BASE_CHANCE_RATIO,
|
||||
max_y = -20,
|
||||
max_light = 7,
|
||||
max_in_area = 1,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_monster:oerkki",
|
||||
on = { "group:cracky", "group:crumbly" },
|
||||
chance = BASE_CHANCE * 6000 / BASE_CHANCE_RATIO,
|
||||
max_y = -10,
|
||||
max_light = 6,
|
||||
max_in_area = 1,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_monster:oerkki",
|
||||
on = { "group:cracky", "group:crumbly" },
|
||||
chance = BASE_CHANCE * 3000 / BASE_CHANCE_RATIO,
|
||||
max_y = -10000,
|
||||
max_light = 6,
|
||||
max_in_area = 1,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_monster:oerkki",
|
||||
on = { "group:cracky", "group:crumbly" },
|
||||
chance = BASE_CHANCE * 1000 / BASE_CHANCE_RATIO,
|
||||
max_y = -25000,
|
||||
max_light = 6,
|
||||
max_in_area = 1,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_monster:sand_monster",
|
||||
on = {"default:desert_sand"},
|
||||
chance = BASE_CHANCE * 7000 / BASE_CHANCE_RATIO,
|
||||
min_y = 0,
|
||||
max_light = 7,
|
||||
max_in_area = 2,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_monster:spider",
|
||||
on = {"default:dirt_with_rainforest_litter", "default:snowblock",
|
||||
"default:snow", "ethereal:crystal_dirt", "ethereal:cold_dirt"},
|
||||
chance = BASE_CHANCE * 7000 / BASE_CHANCE_RATIO,
|
||||
min_y = 25,
|
||||
max_light = 8,
|
||||
max_in_area = 1,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_monster:spider",
|
||||
chance = BASE_CHANCE * 7000 / BASE_CHANCE_RATIO,
|
||||
max_y = -40,
|
||||
max_light = 7,
|
||||
max_in_area = 1,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_monster:stone_monster",
|
||||
chance = BASE_CHANCE * 7000 / BASE_CHANCE_RATIO,
|
||||
on = {"default:stone", "default:desert_stone", "default:sandstone"},
|
||||
max_y = 0,
|
||||
max_light = 7,
|
||||
max_in_area = 1,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_monster:tree_monster",
|
||||
chance = BASE_CHANCE * 7000 / BASE_CHANCE_RATIO,
|
||||
on = {"group:soil"},
|
||||
near = {"group:tree", "group:leaves"},
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
max_light = 6,
|
||||
max_in_area = 1,
|
||||
min_time_of_day = DUSK,
|
||||
max_time_of_day = DAWN,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_monster:tree_monster",
|
||||
chance = BASE_CHANCE * 7000 / BASE_CHANCE_RATIO,
|
||||
on = {"group:leaves"},
|
||||
min_y = 0,
|
||||
max_light = 7,
|
||||
max_in_area = 1,
|
||||
min_time_of_day = DUSK,
|
||||
max_time_of_day = DAWN,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
23
mobs_others.lua
Normal file
23
mobs_others.lua
Normal file
@ -0,0 +1,23 @@
|
||||
local DAWN = 4500 / 24000
|
||||
local DUSK = 19500 / 24000
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "mobs_others:snow_walker",
|
||||
chance = 300,
|
||||
on = {"default:dirt_with_snow",
|
||||
"default:permafrost",
|
||||
"default:permafrost_with_stones",
|
||||
"default:permafrost_with_moss",
|
||||
"default:snow",
|
||||
"default:snowblock",
|
||||
"default:ice",
|
||||
"default:cave_ice"},
|
||||
min_y = -15,
|
||||
max_in_area = 2,
|
||||
min_time_of_day = DUSK,
|
||||
max_time_of_day = DAWN,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
-- the ice monsters are automatically spawned w/ the snow walkers
|
9
mobs_redo.lua
Normal file
9
mobs_redo.lua
Normal file
@ -0,0 +1,9 @@
|
||||
-- here, we try to do the impossible and unregister mobs_redo spawns...
|
||||
|
||||
if minetest.settings:get_bool("mobs_spawn", true) then
|
||||
minetest.settings:set_bool("mobs_spawn", false)
|
||||
if not minetest.settings:write() then
|
||||
error("cannot disable mobs_redo spawning")
|
||||
end
|
||||
error("mobs_redo spawning has been disabled; please restart, this error shouldn't occur again.")
|
||||
end
|
1
mobs_skeletons.lua
Normal file
1
mobs_skeletons.lua
Normal file
@ -0,0 +1 @@
|
||||
-- these are disabled
|
9
mobs_umbra.lua
Normal file
9
mobs_umbra.lua
Normal file
@ -0,0 +1,9 @@
|
||||
spawnit.register({
|
||||
entity_name = "mobs_umbra:umbra",
|
||||
chance = 300,
|
||||
max_y = -300,
|
||||
max_light = 5,
|
||||
max_in_area = 1,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
25
mod.conf
25
mod.conf
@ -1,4 +1,27 @@
|
||||
name = spawn_things
|
||||
version = 2023-07-16
|
||||
depends = fmod, spawnit
|
||||
optional_depends = petz, mobs_animal
|
||||
optional_depends = """
|
||||
caverealms_lite,
|
||||
flower_cow,
|
||||
mob_core,
|
||||
mobs_animal,
|
||||
mobs_balrog,
|
||||
mobs_banshee,
|
||||
mobs_gazer,
|
||||
mobs_ghost_redo,
|
||||
mobs_mime,
|
||||
mobs_monster,
|
||||
mobs_others,
|
||||
mobs_redo,
|
||||
mobs_skeletons,
|
||||
mobs_umbra,
|
||||
nether,
|
||||
petz,
|
||||
nether_monsters,
|
||||
scorpion,
|
||||
water_life,
|
||||
xocean,
|
||||
yl_commons,
|
||||
yl_nether_mobs,
|
||||
"""
|
||||
|
1
nether.lua
Normal file
1
nether.lua
Normal file
@ -0,0 +1 @@
|
||||
-- this space intentionally left blank
|
21
nether_monsters.lua
Normal file
21
nether_monsters.lua
Normal file
@ -0,0 +1,21 @@
|
||||
spawnit.register({
|
||||
entity_name = "nether_mobs:dragon",
|
||||
chance = 150000,
|
||||
cluster = 1,
|
||||
on = {"any"},
|
||||
min_y = nether.DEPTH_FLOOR,
|
||||
max_y = nether.DEPTH_CEILING,
|
||||
min_player_distance = 16,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "nether_mobs:netherman",
|
||||
chance = 15,
|
||||
cluster = 2,
|
||||
on = {"nether:sand", "nether:rack"},
|
||||
min_y = nether.DEPTH_FLOOR,
|
||||
max_y = nether.DEPTH_CEILING,
|
||||
min_player_distance = 5,
|
||||
spawn_in_protected = false,
|
||||
})
|
298
petz.lua
298
petz.lua
@ -8,81 +8,92 @@ local DAWN = 4500 / 24000
|
||||
local DUSK = 19500 / 24000
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:bat",
|
||||
entity_name = "petz:bat",
|
||||
chance = BASE_CHANCE,
|
||||
within = { "breathable airlike" },
|
||||
on = { "any" },
|
||||
max_y = 5000,
|
||||
max_light = 5,
|
||||
min_time_of_day = DUSK,
|
||||
max_time_of_day = DAWN,
|
||||
max_y = 5000,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:beaver",
|
||||
entity_name = "petz:beaver",
|
||||
chance = BASE_CHANCE / 0.6,
|
||||
within = { "default:river_water_source" },
|
||||
on = { "any" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:bunny",
|
||||
entity_name = "petz:bunny",
|
||||
chance = BASE_CHANCE / 0.6,
|
||||
cluster = 3,
|
||||
within = { "breathable" },
|
||||
on = { "group:soil" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:butterfly",
|
||||
entity_name = "petz:butterfly",
|
||||
chance = BASE_CHANCE,
|
||||
within = { "breathable" },
|
||||
on = { "any" },
|
||||
near = { "group:flower" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:calf",
|
||||
entity_name = "petz:calf",
|
||||
chance = BASE_CHANCE / 0.6,
|
||||
cluster = 3,
|
||||
within = { "breathable" },
|
||||
on = { "group:soil" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:camel",
|
||||
entity_name = "petz:camel",
|
||||
chance = BASE_CHANCE / 0.6,
|
||||
within = { "breathable" },
|
||||
on = { "group:sand", "default:desert_sandstone", "default:sandstone" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:chimp",
|
||||
entity_name = "petz:chimp",
|
||||
chance = BASE_CHANCE,
|
||||
within = { "breathable" },
|
||||
on = { "default:dirt_with_rainforest_litter", "ethereal:jungle_dirt", "default:jungleleaves", "moretrees:jungletree_leaves_yellow", "moretrees:jungletree_leaves_red", "ethereal:palmleaves", "moretrees:date_palm_leaves", "moretrees:palm_leaves" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 8,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:clownfish",
|
||||
entity_name = "petz:clownfish",
|
||||
chance = BASE_CHANCE,
|
||||
cluster = 3,
|
||||
within = { "default:water_source" },
|
||||
@ -90,107 +101,115 @@ spawnit.register({
|
||||
near = { "group:coral" },
|
||||
min_y = -100,
|
||||
max_y = 5000,
|
||||
min_light = 2,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:dolphin",
|
||||
entity_name = "petz:dolphin",
|
||||
chance = BASE_CHANCE,
|
||||
cluster = 3,
|
||||
within = { "default:water_source" },
|
||||
on = { "any" },
|
||||
min_y = -100,
|
||||
max_y = 5000,
|
||||
min_light = 2,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:ducky",
|
||||
entity_name = "petz:ducky",
|
||||
chance = BASE_CHANCE / 0.6,
|
||||
within = { "breathable" },
|
||||
on = { "group:soil", "group:water" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:elephant",
|
||||
entity_name = "petz:elephant",
|
||||
chance = BASE_CHANCE,
|
||||
within = { "breathable" },
|
||||
on = { "default:dirt_with_rainforest_litter","default:dirt_with_dry_grass","default:dry_dirt","default:dry_dirt_with_dry_grass","ethereal:dry_dirt","ethereal:jungle_dirt" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:elephant_female",
|
||||
entity_name = "petz:elephant_female",
|
||||
chance = BASE_CHANCE,
|
||||
within = { "breathable" },
|
||||
on = { "default:dirt_with_rainforest_litter","default:dirt_with_dry_grass","default:dry_dirt","default:dry_dirt_with_dry_grass","ethereal:dry_dirt","ethereal:jungle_dirt" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:flamingo",
|
||||
entity_name = "petz:flamingo",
|
||||
chance = BASE_CHANCE / 0.8,
|
||||
within = { "breathable" },
|
||||
on = { "default:dirt_with_coniferous_litter","default:dirt_with_grass","default:dirt_with_dry_grass","default:dry_dirt","default:dry_dirt_with_dry_grass" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:foxy",
|
||||
entity_name = "petz:foxy",
|
||||
chance = BASE_CHANCE / 0.8,
|
||||
within = { "breathable" },
|
||||
on = { "group:soil" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:frog",
|
||||
entity_name = "petz:frog",
|
||||
chance = BASE_CHANCE / 0.6,
|
||||
within = { "breathable" },
|
||||
on = { "default:dirt_with_grass","default:dirt_with_rainforest_litter","ethereal:bamboo_dirt","ethereal:grove_dirt","ethereal:jungle_dirt","ethereal:prairie_dirt","woodsoils:grass_with_leaves_1","woodsoils:grass_with_leaves_2" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 8,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:gecko",
|
||||
entity_name = "petz:gecko",
|
||||
chance = BASE_CHANCE / 0.8,
|
||||
within = { "breathable" },
|
||||
on = { "default:dirt_with_coniferous_litter","default:dirt_with_grass","default:dirt_with_dry_grass","default:dry_dirt","default:dry_dirt_with_dry_grass" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:goat",
|
||||
entity_name = "petz:goat",
|
||||
chance = BASE_CHANCE / 0.6,
|
||||
cluster = 3,
|
||||
within = { "breathable" },
|
||||
on = { "group:soil" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:grizzly",
|
||||
entity_name = "petz:grizzly",
|
||||
chance = BASE_CHANCE,
|
||||
within = { "breathable" },
|
||||
on = { "default:dirt_with_grass","default:dirt_with_rainforest_litter","ethereal:bamboo_dirt","ethereal:grove_dirt","ethereal:jungle_dirt","ethereal:prairie_dirt","woodsoils:grass_with_leaves_1","woodsoils:grass_with_leaves_2" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
@ -198,52 +217,55 @@ spawnit.register({
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:hamster",
|
||||
entity_name = "petz:hamster",
|
||||
chance = BASE_CHANCE,
|
||||
within = { "breathable" },
|
||||
on = { "group:sand","default:desert_sandstone","default:sandstone" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:hen",
|
||||
entity_name = "petz:hen",
|
||||
chance = BASE_CHANCE / 0.6,
|
||||
within = { "breathable" },
|
||||
on = { "group:soil" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:kitty",
|
||||
entity_name = "petz:kitty",
|
||||
chance = BASE_CHANCE / 0.6,
|
||||
within = { "breathable" },
|
||||
on = { "group:soil" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_time_of_day = DUSK,
|
||||
max_time_of_day = DAWN,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:lamb",
|
||||
entity_name = "petz:lamb",
|
||||
chance = BASE_CHANCE / 0.6,
|
||||
cluster = 3,
|
||||
within = { "breathable" },
|
||||
on = { "group:soil" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:leopard",
|
||||
entity_name = "petz:leopard",
|
||||
chance = BASE_CHANCE,
|
||||
within = { "breathable" },
|
||||
on = { "default:dirt_with_dry_grass","default:dry_dirt","default:dry_dirt_with_dry_grass","ethereal:dry_dirt" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
@ -251,11 +273,10 @@ spawnit.register({
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:lion",
|
||||
entity_name = "petz:lion",
|
||||
chance = BASE_CHANCE,
|
||||
within = { "breathable" },
|
||||
on = { "default:dirt_with_dry_grass","default:dry_dirt","default:dry_dirt_with_dry_grass","ethereal:dry_dirt" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
@ -263,19 +284,19 @@ spawnit.register({
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:moth",
|
||||
entity_name = "petz:moth",
|
||||
chance = BASE_CHANCE / 0.8,
|
||||
within = { "breathable" },
|
||||
on = { "any" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:mr_pumpkin",
|
||||
entity_name = "petz:mr_pumpkin",
|
||||
chance = BASE_CHANCE / 0.1,
|
||||
within = { "breathable" },
|
||||
on = { "group:soil","group:stone" },
|
||||
max_y = 5000,
|
||||
min_player_distance = 12,
|
||||
@ -287,64 +308,68 @@ spawnit.register({
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:panda",
|
||||
entity_name = "petz:panda",
|
||||
chance = BASE_CHANCE,
|
||||
within = { "breathable" },
|
||||
on = { "ethereal:bamboo_dirt" },
|
||||
min_y = -32,
|
||||
on = {"group:soil"},
|
||||
near = {"ethereal:bamboo", "ethereal:bamboo_leaves", "ethereal:bamboo_sprout"},
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:parrot",
|
||||
entity_name = "petz:parrot",
|
||||
chance = BASE_CHANCE/ 0.8,
|
||||
within = { "breathable" },
|
||||
on = { "any" },
|
||||
near = { "default:jungleleaves","moretrees:jungletree_leaves_yellow","moretrees:jungletree_leaves_red","ethereal:palmleaves","moretrees:date_palm_leaves","moretrees:palm_leaves" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 10,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:penguin",
|
||||
entity_name = "petz:penguin",
|
||||
chance = BASE_CHANCE,
|
||||
cluster = 3,
|
||||
within = { "breathable" },
|
||||
on = { "default:snowblock","default:ice","default:dirt_with_snow","default:snow" },
|
||||
min_y = -32,
|
||||
on = { "default:snowblock","default:ice" },
|
||||
min_y = 0,
|
||||
max_y = 10,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:pigeon",
|
||||
entity_name = "petz:pigeon",
|
||||
chance = BASE_CHANCE / 0.6,
|
||||
within = { "breathable" },
|
||||
on = { "any" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:piggy",
|
||||
entity_name = "petz:piggy",
|
||||
chance = BASE_CHANCE / 0.6,
|
||||
cluster = 3,
|
||||
within = { "breathable" },
|
||||
on = { "group:soil" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:polar_bear",
|
||||
entity_name = "petz:polar_bear",
|
||||
chance = BASE_CHANCE,
|
||||
within = { "breathable" },
|
||||
on = { "default:snowblock","default:ice","default:dirt_with_snow","default:snow" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
@ -352,51 +377,55 @@ spawnit.register({
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:pony",
|
||||
entity_name = "petz:pony",
|
||||
chance = BASE_CHANCE / 0.6,
|
||||
cluster = 5,
|
||||
within = { "breathable" },
|
||||
on = { "group:soil" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:puppy",
|
||||
entity_name = "petz:puppy",
|
||||
chance = BASE_CHANCE / 0.6,
|
||||
within = { "breathable" },
|
||||
on = { "group:soil" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "petz:queen_ant",
|
||||
chance = BASE_CHANCE / 0.4,
|
||||
on = { "group:soil" },
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:queen_ant",
|
||||
entity_name = "petz:queen_bee",
|
||||
chance = BASE_CHANCE / 0.4,
|
||||
within = { "breathable" },
|
||||
on = { "group:soil" },
|
||||
min_y = -32,
|
||||
max_y = 5000,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:queen_bee",
|
||||
chance = BASE_CHANCE / 0.4,
|
||||
within = { "breathable" },
|
||||
on = { "any" },
|
||||
near = { "group:flower" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:rat",
|
||||
entity_name = "petz:rat",
|
||||
chance = BASE_CHANCE / 0.2,
|
||||
within = { "breathable" },
|
||||
on = { "group:soil","group:stone","rainbow_source:black_water_source" },
|
||||
max_y = 5000,
|
||||
max_light = 10,
|
||||
@ -406,9 +435,8 @@ spawnit.register({
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:santa_killer",
|
||||
entity_name = "petz:santa_killer",
|
||||
chance = BASE_CHANCE / 0.1,
|
||||
within = { "breathable" },
|
||||
on = { "default:snowblock","default:ice","default:dirt_with_snow","default:snow" },
|
||||
min_y = -32,
|
||||
max_y = 10,
|
||||
@ -421,19 +449,17 @@ spawnit.register({
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:silkworm",
|
||||
entity_name = "petz:silkworm",
|
||||
chance = BASE_CHANCE,
|
||||
within = { "breathable" },
|
||||
on = { "group:leaves" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:snow_leopard",
|
||||
entity_name = "petz:snow_leopard",
|
||||
chance = BASE_CHANCE,
|
||||
within = { "breathable" },
|
||||
on = { "default:snowblock","default:ice","default:dirt_with_snow","default:snow" },
|
||||
min_y = 20,
|
||||
max_y = 5000,
|
||||
@ -443,20 +469,21 @@ spawnit.register({
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:squirrel",
|
||||
entity_name = "petz:squirrel",
|
||||
chance = BASE_CHANCE / 0.8,
|
||||
cluster = 3,
|
||||
within = { "breathable" },
|
||||
on = { "group:leaves", "group:tree" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 8,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:tarantula",
|
||||
entity_name = "petz:tarantula",
|
||||
chance = BASE_CHANCE,
|
||||
within = { "breathable" },
|
||||
on = { "group:stone","default:dirt_with_rainforest_litter","ethereal:jungle_dirt","default:jungleleaves","moretrees:jungletree_leaves_yellow","moretrees:jungletree_leaves_red","ethereal:palmleaves","moretrees:date_palm_leaves","moretrees:palm_leaves" },
|
||||
max_y = 5000,
|
||||
min_player_distance = 12,
|
||||
@ -465,44 +492,49 @@ spawnit.register({
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:toucan",
|
||||
entity_name = "petz:toucan",
|
||||
chance = BASE_CHANCE / 0.8,
|
||||
within = { "breathable" },
|
||||
on = { "any" },
|
||||
near = { "default:jungleleaves","moretrees:jungletree_leaves_yellow","moretrees:jungletree_leaves_red","ethereal:palmleaves","moretrees:date_palm_leaves","moretrees:palm_leaves" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:tropicalfish",
|
||||
entity_name = "petz:tropicalfish",
|
||||
chance = BASE_CHANCE,
|
||||
within = { "default:water_source" },
|
||||
on = { "any" },
|
||||
near = { "group:coral" },
|
||||
min_y = -32,
|
||||
min_y = -100,
|
||||
max_y = 5000,
|
||||
min_light = 2,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:turtle",
|
||||
entity_name = "petz:turtle",
|
||||
chance = BASE_CHANCE / 0.6,
|
||||
within = { "group:water" },
|
||||
on = { "any" },
|
||||
min_y = -100,
|
||||
max_y = 5000,
|
||||
min_light = 8,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity = "petz:wolf",
|
||||
entity_name = "petz:wolf",
|
||||
chance = BASE_CHANCE,
|
||||
cluster = 4,
|
||||
within = { "breathable" },
|
||||
on = { "group:soil" },
|
||||
min_y = -32,
|
||||
min_y = 0,
|
||||
max_y = 5000,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
|
34
scorpion.lua
Normal file
34
scorpion.lua
Normal file
@ -0,0 +1,34 @@
|
||||
spawnit.register({
|
||||
entity_name = "scorpion:big",
|
||||
chance = 500,
|
||||
on = {"default:desert_sand"},
|
||||
min_y = -10,
|
||||
max_y = 150,
|
||||
max_light = 14,
|
||||
max_in_area = 5,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "scorpion:boss",
|
||||
chance = 5000,
|
||||
on = {"default:desert_stone"},
|
||||
min_y = 0,
|
||||
max_y = 150,
|
||||
max_light = 10,
|
||||
max_in_area = 1,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "scorpion:little",
|
||||
chance = 300,
|
||||
on = {"default:desert_sand", "default:dirt_with_rainforest_litter", "default:dry_dirt_with_dry_grass"},
|
||||
min_y = -10,
|
||||
max_y = 200,
|
||||
max_in_area = 5,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
255
water_life.lua
Normal file
255
water_life.lua
Normal file
@ -0,0 +1,255 @@
|
||||
local BASE_CHANCE = 300 -- one every 5 minutes
|
||||
|
||||
local DAWN = 4500 / 24000
|
||||
local DUSK = 19500 / 24000
|
||||
|
||||
-- disable all spawns
|
||||
table.insert_all(water_life.no_spawn_table, {
|
||||
"water_life:alligator",
|
||||
"water_life:beaver",
|
||||
"water_life:clams",
|
||||
"water_life:clownfish",
|
||||
"water_life:coralfish",
|
||||
"water_life:croc",
|
||||
"water_life:gecko",
|
||||
"water_life:gull",
|
||||
"water_life:jellyfish",
|
||||
"water_life:piranha",
|
||||
"water_life:fish",
|
||||
"water_life:urchin",
|
||||
"water_life:shark",
|
||||
"water_life:snake",
|
||||
"water_life:whale",
|
||||
})
|
||||
|
||||
if water_life.swampz then
|
||||
spawnit.register({
|
||||
entity_name = "water_life:alligator",
|
||||
chance = BASE_CHANCE * 1,
|
||||
within = {"default:river_water_source"},
|
||||
on = {"default:river_water_source"},
|
||||
min_y = -50,
|
||||
max_y = 150,
|
||||
min_light = 12,
|
||||
max_in_area = 1,
|
||||
max_in_area_radius = 32,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
end
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "water_life:beaver",
|
||||
chance = BASE_CHANCE * 1,
|
||||
within = {"default:river_water_source"},
|
||||
on = {"any"},
|
||||
min_y = 20,
|
||||
max_y = 150,
|
||||
min_light = 12,
|
||||
max_in_area = 1,
|
||||
max_in_area_radius = 32,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "water_life:clams",
|
||||
chance = BASE_CHANCE * 1,
|
||||
within = {"default:water_source"},
|
||||
near = {"water_life:seagrassgreen","water_life:seagrassred"},
|
||||
min_y = -50,
|
||||
max_y = 1,
|
||||
max_in_area = 15,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "water_life:clownfish",
|
||||
chance = BASE_CHANCE * 1,
|
||||
within = {"default:water_source"},
|
||||
on = {"any"},
|
||||
near = {
|
||||
"group:coral",
|
||||
"default:coral_brown",
|
||||
"default:coral_cyan",
|
||||
"default:coral_green",
|
||||
"default:coral_pink",
|
||||
"default:coral_orange",
|
||||
"default:sand_with_kelp",
|
||||
"water_life:kelpbrown",
|
||||
"water_life:kelpgreen",
|
||||
"water_life:seagrassgreen",
|
||||
"water_life:seagrassred",
|
||||
"water_life:coralmagenta",
|
||||
"water_life:coralskyblue",
|
||||
},
|
||||
min_y = -50,
|
||||
max_y = 1,
|
||||
min_light = 12,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "water_life:coralfish",
|
||||
chance = BASE_CHANCE * 1,
|
||||
within = {"default:water_source"},
|
||||
min_y = -50,
|
||||
max_y = 1,
|
||||
max_in_area = 5,
|
||||
on = {"any"},
|
||||
near = {
|
||||
"group:coral",
|
||||
"default:coral_brown",
|
||||
"default:coral_cyan",
|
||||
"default:coral_green",
|
||||
"default:coral_pink",
|
||||
"default:coral_orange",
|
||||
"default:sand_with_kelp",
|
||||
"water_life:kelpbrown",
|
||||
"water_life:kelpgreen",
|
||||
"water_life:seagrassgreen",
|
||||
"water_life:seagrassred",
|
||||
"water_life:coralmagenta",
|
||||
"water_life:coralskyblue",
|
||||
},
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "water_life:croc",
|
||||
chance = BASE_CHANCE * 1,
|
||||
within = {"default:water_source"},
|
||||
on = {"default:water_source"},
|
||||
min_y = -50,
|
||||
max_y = 150,
|
||||
min_light = 12,
|
||||
max_in_area = 1,
|
||||
max_in_area_radius = 32,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "water_life:gecko",
|
||||
chance = BASE_CHANCE * 1,
|
||||
near = {"group:tree","group:leaves","default:junglegrass"},
|
||||
min_y = 0,
|
||||
max_y = 150,
|
||||
min_light = 12,
|
||||
max_in_area = 1,
|
||||
max_in_area_radius = 32,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "water_life:gull",
|
||||
chance = BASE_CHANCE * 1,
|
||||
on = {"any"},
|
||||
min_y = 0,
|
||||
max_y = 150,
|
||||
min_light = 12,
|
||||
max_in_area = 3,
|
||||
max_in_area_radius = 32,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "water_life:jellyfish",
|
||||
chance = BASE_CHANCE * 1,
|
||||
within = {"default:water_source"},
|
||||
on = {"default:water_source"},
|
||||
min_y = -50,
|
||||
max_y = 1,
|
||||
max_in_area = 5,
|
||||
max_in_area_radius = 32,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "water_life:piranha",
|
||||
chance = BASE_CHANCE * 1,
|
||||
within = {"default:river_water_source"},
|
||||
on = {"any"},
|
||||
min_y = 0,
|
||||
max_y = 150,
|
||||
max_in_area = 3,
|
||||
max_in_area_radius = 32,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "water_life:fish",
|
||||
chance = BASE_CHANCE * 1,
|
||||
within = {"default:river_water_source"},
|
||||
on = {"default:river_water_source"},
|
||||
min_y = 0,
|
||||
max_y = 150,
|
||||
max_in_area = 3,
|
||||
max_in_area_radius = 32,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "water_life:urchin",
|
||||
chance = BASE_CHANCE * 1,
|
||||
within = {"default:water_source"},
|
||||
near = {
|
||||
"group:coral",
|
||||
"default:coral_brown",
|
||||
"default:coral_cyan",
|
||||
"default:coral_green",
|
||||
"default:coral_pink",
|
||||
"default:coral_orange",
|
||||
"default:sand_with_kelp",
|
||||
"water_life:kelpbrown",
|
||||
"water_life:kelpgreen",
|
||||
"water_life:seagrassgreen",
|
||||
"water_life:seagrassred",
|
||||
"water_life:coralmagenta",
|
||||
"water_life:coralskyblue",
|
||||
},
|
||||
min_y = -50,
|
||||
max_y = 1,
|
||||
max_in_area = 16,
|
||||
max_in_area_radius = 32,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "water_life:shark",
|
||||
chance = BASE_CHANCE * 1,
|
||||
within = {"default:water_source"},
|
||||
on = {"default:water_source"},
|
||||
min_y = -50,
|
||||
max_y = 1,
|
||||
max_in_area = 1,
|
||||
max_in_area_radius = 32,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "water_life:snake",
|
||||
chance = BASE_CHANCE * 1,
|
||||
on = {
|
||||
"default:dirt_with_dry_grass", "default:dry_dirt_with_dry_grass", "default:dirt_with_rainforest_litter",
|
||||
"default:sand", "default:desert_sand", "default:sandstone", "default:desert_sandstone", "default:desert_stone",
|
||||
},
|
||||
min_y = 0,
|
||||
max_y = 150,
|
||||
min_light = 12,
|
||||
max_in_area = 5,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "water_life:whale",
|
||||
chance = BASE_CHANCE * 1,
|
||||
within = {"default:water_source"},
|
||||
on = {"default:water_source"},
|
||||
min_y = -50,
|
||||
max_y = 1,
|
||||
max_in_area = 1,
|
||||
max_in_area_radius = 32,
|
||||
spawn_in_protected = false,
|
||||
})
|
1
xocean.lua
Normal file
1
xocean.lua
Normal file
@ -0,0 +1 @@
|
||||
-- these are disabled
|
19
yl_commons.lua
Normal file
19
yl_commons.lua
Normal file
@ -0,0 +1,19 @@
|
||||
local BASE_CHANCE = 300 -- one every 5 minutes
|
||||
local BASE_CHANCE_RATIO = 60 * 8000 -- cow
|
||||
local MAX_IN_AREA = 1
|
||||
|
||||
local DAWN = 4500 / 24000
|
||||
local DUSK = 19500 / 24000
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "yl_commons:biome_cow",
|
||||
chance = BASE_CHANCE * (60 * 80000) / BASE_CHANCE_RATIO,
|
||||
on = { "group:soil" },
|
||||
near = { "group:grass" },
|
||||
min_y = 1,
|
||||
max_y = 1000,
|
||||
min_light = 12,
|
||||
min_time_of_day = DAWN,
|
||||
max_time_of_day = DUSK,
|
||||
max_in_area = MAX_IN_AREA,
|
||||
})
|
101
yl_nether_mobs.lua
Normal file
101
yl_nether_mobs.lua
Normal file
@ -0,0 +1,101 @@
|
||||
spawnit.register({
|
||||
entity_name = "yl_nether_mobs:blaze",
|
||||
chance = 30.6,
|
||||
cluster = 4,
|
||||
on = {"nether:lava_crust"},
|
||||
min_y = nether.DEPTH_FLOOR,
|
||||
max_y = nether.DEPTH_CEILING,
|
||||
max_in_area = 6,
|
||||
min_player_distance = 5,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "yl_nether_mobs:iron_golem",
|
||||
chance = 13.7 * 2,
|
||||
cluster = 4,
|
||||
on = {"nether:rack_deep", "nether:rack"},
|
||||
min_y = nether.DEPTH_FLOOR,
|
||||
max_y = nether.DEPTH_CEILING,
|
||||
max_in_area = 6,
|
||||
min_player_distance = 5,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "yl_nether_mobs:ogre",
|
||||
chance = 13.3 * 2,
|
||||
cluster = 5,
|
||||
on = {"nether:rack_deep", "nether:rack"},
|
||||
min_y = nether.DEPTH_FLOOR,
|
||||
max_y = nether.DEPTH_CEILING,
|
||||
max_in_area = 6,
|
||||
min_player_distance = 5,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "yl_nether_mobs:rat",
|
||||
chance = 12.7 * 2,
|
||||
cluster = 3,
|
||||
on = {"nether:rack_deep", "nether:rack"},
|
||||
min_y = nether.DEPTH_FLOOR,
|
||||
max_y = nether.DEPTH_CEILING,
|
||||
max_in_area = 6,
|
||||
min_player_distance = 5,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "yl_nether_mobs:witherskeleton",
|
||||
chance = 20.1 * 2,
|
||||
cluster = 6,
|
||||
on = {"nether:rack", "nether:sand","nether:basalt", "nether:rack_deep"},
|
||||
min_y = nether.DEPTH_FLOOR,
|
||||
max_y = nether.DEPTH_CEILING,
|
||||
max_in_area = 6,
|
||||
min_player_distance = 10,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "yl_nether_mobs:evoker",
|
||||
chance = 27.3,
|
||||
cluster = 3,
|
||||
on = {
|
||||
"nether:rack",
|
||||
"nether:sand",
|
||||
"nether:rack_deep",
|
||||
"yl_nether:rack_deep_with_electrum",
|
||||
"yl_nether:rack_deep_with_electrumite"
|
||||
},
|
||||
min_y = nether.DEPTH_FLOOR,
|
||||
max_y = nether.DEPTH_CEILING,
|
||||
max_in_area = 6,
|
||||
min_player_distance = 10,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "yl_nether_mobs:whip",
|
||||
chance = 20.3,
|
||||
cluster = 5,
|
||||
on = {"nether:rack_deep","yl_nether:rack_deep_with_electrum", "yl_nether:rack_deep_with_electrumite"},
|
||||
min_y = nether.DEPTH_FLOOR,
|
||||
max_y = nether.DEPTH_CEILING,
|
||||
max_in_area = 6,
|
||||
min_player_distance = 9,
|
||||
spawn_in_protected = false,
|
||||
})
|
||||
|
||||
spawnit.register({
|
||||
entity_name = "yl_nether_mobs:wither",
|
||||
chance = 25.7,
|
||||
cluster = 2,
|
||||
on = {"nether:rack", "nether:sand", "nether:rack_deep", "nether:lava_crust"},
|
||||
min_y = nether.DEPTH_FLOOR,
|
||||
max_y = nether.DEPTH_CEILING,
|
||||
max_in_area = 6,
|
||||
min_player_distance = 12,
|
||||
spawn_in_protected = false,
|
||||
})
|
Loading…
Reference in New Issue
Block a user