From 341043430e36d5af0e35e6bb100e76465d655186 Mon Sep 17 00:00:00 2001 From: Jaidyn Ann <10477760+JadedCtrl@users.noreply.github.com> Date: Wed, 14 Aug 2024 15:41:25 -0500 Subject: [PATCH] =?UTF-8?q?Rebase=20code=20on=20Animalworld=E2=80=99s=20st?= =?UTF-8?q?ingray?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Also adds mobs dolphins eat as attack-targets. --- depends.txt | 3 - init.lua | 165 +++++++++++++++++++++++++++++++++------------------- mod.conf | 3 + 3 files changed, 109 insertions(+), 62 deletions(-) delete mode 100644 depends.txt create mode 100644 mod.conf diff --git a/depends.txt b/depends.txt deleted file mode 100644 index 0707658..0000000 --- a/depends.txt +++ /dev/null @@ -1,3 +0,0 @@ -default -mobs -ethereal? diff --git a/init.lua b/init.lua index 3c9781b..45bf6b5 100644 --- a/init.lua +++ b/init.lua @@ -1,59 +1,106 @@ -if mobs.mod and mobs.mod == "redo" then - - local l_water_level = minetest.setting_get("water_level") - 1 - - mobs:register_mob("mobs_dolphin:dolphin", { - type = "animal", - attack_type = "dogfight", - damage = 10, - reach = 3, - 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", - textures = { - {"dolphin_pink.png"}, - {"dolphin_blue.png"}, - {"dolphin_white.png"} - }, - sounds = { - random = "dolphin", - }, - drops = { - {name = "mobs:meat_raw", chance = 1, min = 1, max = 1}, - }, - makes_footstep_sound = false, - walk_velocity = 4, - run_velocity = 6, - fly = true, - fly_in = "default:water_source", - fall_speed = 0, - rotate = 0, - view_range = 10, - water_damage = 0, - lava_damage = 10, - light_damage = 0, - animation = { - speed_normal = 15, - speed_run = 15, - stand_start = 66, - stand_end = 90, - walk_start = 0, - walk_end = 40, - run_start = 40, - run_end = 60, - punch_start = 40, - punch_end = 40, - }, - follow = {"ethereal:fish_raw"}, - on_rightclick = function(self, clicker) - mobs:capture_mob(self, clicker, 80, 100, 0, true, nil) - end - }) - --name, nodes, neighbours, minlight, maxlight, interval, chance, active_object_count, min_height, max_height - mobs:spawn_specific("mobs_dolphin:dolphin", {"default:water_source"}, {"default:water_flowing","default:water_source"}, 5, 20, 30, 10000, 2, -31000, l_water_level) - mobs:register_egg("mobs_dolphin:dolphin", "Dolphin", "dolphin_inv.png", 0) - -end +-- 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 = 2, + damage = 6, + hp_min = 15, + hp_max = 65, + armor = 100, + collisionbox = {-0.7, -0.01, -0.7, 0.7, 0.95, 0.7}, + 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 = "animalworld:rawfish", chance = 1, min = 1, max = 1}, + }, + water_damage = 0, + air_damage = 2, + lava_damage = 4, + light_damage = 0, + fear_height = 2, + animation = { + speed_normal = 100, + stand_start = 0, + stand_end = 100, + fly_start = 100, -- swim animation + fly_end = 200, + punch_start = 200, + punch_end = 300, + die_start = 200, + die_end = 300, + die_speed = 50, + die_loop = false, + 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") diff --git a/mod.conf b/mod.conf new file mode 100644 index 0000000..3f9fdfb --- /dev/null +++ b/mod.conf @@ -0,0 +1,3 @@ +name = mobs_dolphin +depends = mobs +description = Adds peaceful dolphins to the oceans.