mobs_dolphin/init.lua

97 lines
2.8 KiB
Lua

-- animalworld:stingray was used as the base for this file:
-- https://github.com/Skandarella/animalworld/
local S = minetest.get_translator(minetest.get_current_modname())
mobs:register_mob("mobs_dolphin:dolphin", {
stepheight = 0.0,
type = "animal",
attack_type = "dogfight",
attack_animals = true,
specific_attack = {
"animalworld:beluga", "animalworld:seahorse", "animalworld:squid", "animalworld:trout",
"mobs_fish:clownfish", "mobs_fish:tropical"
},
reach = 3,
damage = 10,
hp_min = 20,
hp_max = 25,
armor = 150,
collisionbox = {-0.75, -0.5, -0.75, 0.75, 0.5, 0.75},
visual = "mesh",
mesh = "mobs_dolphin.b3d",
visual_size = {x = 1.0, y = 1.0},
textures = {
{"dolphin_pink.png"},
{"dolphin_blue.png"},
{"dolphin_white.png"}
},
sounds = {
random = "dolphin"
},
makes_footstep_sound = false,
walk_velocity = 4,
run_velocity = 6,
fly = true,
fall_speed = 0,
runaway = false,
jump = false,
stepheight = 0.0,
stay_near = {
{
"marinara:sand_with_alage", "mcl_ocean:bubble_coral", "mcl_ocean:tubeff_coral",
"mcl_ocean:fire_coral", "mcl_ocean:brain_coral", "mcl_ocean:seagrass_gravel",
"mcl_flowers:waterlily", "marinara:sand_with_seagrass", "default:sand_with_kelp",
"marinara:sand_with_kelp", "marinara:reed_root", "flowers:waterlily_waving",
"naturalbiomes:waterlily", "default:clay"
},
5
},
drops = {
{name = "mobs:meat_raw", chance = 1, min = 1, max = 1},
},
water_damage = 0,
air_damage = 2,
lava_damage = 4,
light_damage = 0,
fear_height = 2,
animation = {
speed_normal = 15,
die_rotate = true,
},
fly_in = "group:water",
floats = 0,
follow = {
"mobs:meat_raw", "animalworld:raw_athropod", "xocean:fish_edible", "ethereal:fish_raw",
"mobs:clownfish_raw", "mobs:bluefish_raw", "fishing:bait_worm", "fishing:clownfish_raw",
"fishing:bluewhite_raw", "fishing:exoticfish_raw", "fishing:fish_raw", "fishing:carp_raw",
"fishing:perch_raw", "water_life:meat_raw", "fishing:shark_raw", "fishing:pike_raw",
"animalworld:rawfish"
},
view_range = 2,
on_rightclick = function(self, clicker)
-- feed or tame
if mobs:feed_tame(self, clicker, 4, false, true) then return end
if mobs:protect(self, clicker) then return end
if mobs:capture_mob(self, clicker, 0, 25, 0, false, nil) then return end
end,
})
mobs:spawn({
name = "mobs_dolphin:dolphin",
nodes = {
"mcl_core:water_source", "default:water_source", "default:river_water_source",
"mcl_core:water_source", "mcl_core:water_flowing"
},
neighbors = {"naturalbiomes:palmbeach_sand", "mcl_core:sand", "mcl_core:gravel"},
min_light = 0,
interval = 60,
active_object_count = 2,
chance = 2000, -- 15000
min_height = -10,
max_height = 5,
})
mobs:register_egg("mobs_dolphin:dolphin", S("Dolphin"), "dolphin_inv.png")