1
0
Fork 0

Compare commits

...

3 Commits

Author SHA1 Message Date
mckaygerhard d209f6eeed update readme and tech info 2024-03-31 16:52:39 -04:00
mckaygerhard 95f03f2abb fix mod path, fix detection of doomed mod, fix missing lava mobs
* modpath current mod name getting only works well with minetest 5.X
  so hardcoded into code to property work in older engines
* missing loading of mese monsters
* detection of mobs_doomed must be at same time of dmobs, cos
  boths provides same mobs
2024-03-31 16:28:29 -04:00
mckaygerhard b719fa7af1 register mod uses jam mod name event original mod name
* provides aliasing cos spawn and eggs and entities
  was not working due the naming conventinos
2024-03-31 16:15:12 -04:00
19 changed files with 190 additions and 99 deletions

14
bee.lua
View File

@ -4,7 +4,7 @@ local S = mobs.intllib_animal
-- Bee by KrupnoPavel (.b3d model by sirrobzeroone)
mobs:register_mob(":mobs_animal:bee", {
mobs:register_mob("mobs_jam:bee", {
type = "animal",
passive = true,
hp_min = 1,
@ -41,7 +41,7 @@ mobs:register_mob(":mobs_animal:bee", {
},
on_rightclick = function(self, clicker)
mobs:capture_mob(self, clicker, 50, 90, 0, true, "mobs_animal:bee")
mobs:capture_mob(self, clicker, 50, 90, 0, true, "mobs_jam:bee")
end,
-- after_activate = function(self, staticdata, def, dtime)
@ -52,7 +52,7 @@ mobs:register_mob(":mobs_animal:bee", {
if not mobs.custom_spawn_animal then
mobs:spawn({
name = ":mobs_animal:bee",
name = "mobs_jam:bee",
nodes = {"group:flower"},
min_light = 14,
interval = 60,
@ -65,11 +65,13 @@ end
-- spawn egg
mobs:register_egg(":mobs_animal:bee", S("Bee"), "mobs_bee_inv.png")
mobs:register_egg("mobs_jam:bee", S("Bee"), "mobs_bee_inv.png")
-- compatibility (only required if moving from old mobs to mobs_redo)
mobs:alias_mob("mobs:bee", "mobs_animal:bee")
mobs:alias_mob("mobs:bee", "mobs_jam:bee")
-- compatibility if removed and changed to mobs_animal
mobs:alias_mob("mobs_animal:bee", "mobs_jam:bee")
-- honey
@ -116,7 +118,7 @@ minetest.register_node(":mobs:beehive", {
minetest.set_node(pos, {name = "mobs:beehive", param2 = 1})
if math.random(4) == 1 then
minetest.add_entity(pos, "mobs_animal:bee")
minetest.add_entity(pos, "mobs_jam:bee")
end
end
end,

View File

@ -4,7 +4,7 @@ local S = mobs.intllib_animal
-- Bunny by ExeterDad
mobs:register_mob(":mobs_animal:bunny", {
mobs:register_mob("mobs_jam:bunny", {
type = "animal",
passive = true,
reach = 1,
@ -136,7 +136,7 @@ end
if not mobs.custom_spawn_animal then
mobs:spawn({
name = ":mobs_animal:bunny",
name = "mobs_jam:bunny",
nodes = {spawn_on},
neighbors = {"group:grass"},
min_light = 14,
@ -149,10 +149,11 @@ if not mobs.custom_spawn_animal then
end
mobs:register_egg(":mobs_animal:bunny", S("Bunny"), "mobs_bunny_inv.png", 0)
mobs:register_egg("mobs_jam:bunny", S("Bunny"), "mobs_bunny_inv.png", 0)
mobs:alias_mob("mobs:bunny", "mobs_animal:bunny") -- compatibility
mobs:alias_mob("mobs:bunny", "mobs_jam:bunny") -- compatibility
mobs:alias_mob("mobs_animal:bunny", "mobs_jam:bunny") -- compatibility
-- raw rabbit

View File

@ -4,7 +4,7 @@ local S = mobs.intllib_animal
-- Chicken by JK Murray and Sirrobzeroone
mobs:register_mob(":mobs_animal:chicken", {
mobs:register_mob(":mobs_jam:chicken", {
stepheight = 0.6,
type = "animal",
passive = true,
@ -29,7 +29,7 @@ mobs:register_mob(":mobs_animal:chicken", {
walk_velocity = 1,
run_velocity = 3,
runaway = true,
runaway_from = {"player", "mobs_animal:pumba"},
runaway_from = {"player", "mobs_jam:pumba"},
drops = {
{name = "mobs:chicken_raw", chance = 1, min = 1, max = 1},
{name = "mobs:chicken_feather", chance = 1, min = 0, max = 2}
@ -123,7 +123,7 @@ end
if not mobs.custom_spawn_animal then
mobs:spawn({
name = ":mobs_animal:chicken",
name = ":mobs_jam:chicken",
nodes = spawn_on,
neighbors = {"group:grass"},
min_light = 14,
@ -136,10 +136,11 @@ if not mobs.custom_spawn_animal then
end
mobs:register_egg(":mobs_animal:chicken", S("Chicken"), "mobs_chicken_inv.png", 0)
mobs:register_egg(":mobs_jam:chicken", S("Chicken"), "mobs_chicken_inv.png", 0)
mobs:alias_mob("mobs:chicken", "mobs_animal:chicken") -- compatibility
mobs:alias_mob("mobs:chicken", "mobs_jam:chicken") -- compatibility
mobs:alias_mob("mobs_animal:chicken", "mobs_jam:chicken") -- compatibility
-- egg entity
@ -181,7 +182,7 @@ mobs:register_arrow(":mobs_animal:egg_entity", {
end
mobs:add_mob(pos, {
name = "mobs_animal:chicken",
name = "mobs_jam:chicken",
child = true,
owner = self.playername,
-- nametag = "Chicky",

View File

@ -4,7 +4,7 @@ local S = mobs.intllib_animal
-- Cow by sirrobzeroone
mobs:register_mob(":mobs_animal:cow", {
mobs:register_mob("mobs_jam:cow", {
type = "animal",
passive = false,
attack_type = "dogfight",
@ -153,7 +153,7 @@ mobs:register_mob(":mobs_animal:cow", {
if not mobs.custom_spawn_animal then
mobs:spawn({
name = ":mobs_animal:cow",
name = "mobs_jam:cow",
nodes = {"default:dirt_with_grass", "ethereal:green_dirt"},
neighbors = {"group:grass"},
min_light = 14,
@ -166,10 +166,11 @@ if not mobs.custom_spawn_animal then
end
mobs:register_egg(":mobs_animal:cow", S("Cow"), "mobs_cow_inv.png")
mobs:register_egg("mobs_jam:cow", S("Cow"), "mobs_cow_inv.png")
mobs:alias_mob("mobs:cow", "mobs_animal:cow") -- compatibility
mobs:alias_mob("mobs:cow", "mobs_jam:cow") -- compatibility
mobs:alias_mob("mobs_animal:cow", "mobs_jam:cow") -- compatibility
-- bucket of milk

View File

@ -13,7 +13,7 @@ end
-- Fire Spirit
mobs:register_mob(":mobs_monster:fire_spirit", {
mobs:register_mob("mobs_jam:fire_spirit", {
type = "monster",
passive = false,
attack_type = "dogfight",
@ -90,7 +90,7 @@ end
if not mobs.custom_spawn_monster then
mobs:spawn({
name = ":mobs_monster:fire_spirit",
name = "mobs_jam:fire_spirit",
nodes = spawnon,
neighbors = {"group:fire"},
min_light = 5,
@ -102,4 +102,7 @@ if not mobs.custom_spawn_monster then
end
mobs:register_egg(":mobs_monster:fire_spirit", S("Fire Spirit"), "fire_basic_flame.png", 1)
mobs:register_egg("mobs_jam:fire_spirit", S("Fire Spirit"), "fire_basic_flame.png", 1)
mobs:alias_mob("mobs_monster:fire_spirit", "mobs_jam:fire_spirit")

13
fox.lua
View File

@ -7,7 +7,7 @@ table.insert(followf, "mobs:meat_raw")
--end
-- Fox
mobs:register_mob(":mobs_doomed:fox", {
mobs:register_mob("mobs_jam:fox", {
type = "monster",
attacks_monsters = true,
reach = 1,
@ -72,7 +72,14 @@ mobs:register_mob(":mobs_doomed:fox", {
})
mobs:register_egg(":mobs_doomed:fox", "Fox", "wool_orange.png", 1)
mobs:register_egg("mobs_jam:fox", "Fox", "wool_orange.png", 1)
mobs:spawn({name = ":mobs_doomed:owl", nodes = {"group:tree"}, neighbor = {},
mobs:spawn({name = "mobs_jam:fox", nodes = {"group:tree"}, neighbor = {},
min_light = 0, max_light = 7, interval = 300, chance = 16000, active_object_count = 2, min_height = 0, max_height = 2000})
mobs:alias_mob("mobs_doomed:fox", "mobs_jam:fox") -- compatibility
mobs:alias_mob("dmobs:fox", "mobs_jam:fox") -- compatibility
mobs:alias_mob("mobs_animal:fox", "mobs_jam:fox") -- compatibility

View File

@ -1,4 +1,4 @@
local path = minetest.get_modpath(minetest.get_current_modname()) .. "/"
local path = minetest.get_modpath("mobs_jam") .. "/"
-- Check for translation method
local S
@ -62,13 +62,14 @@ ddoo("penguin") -- D00Med
ddoo("panda") -- AspireMint
end
if not minetest.get_modpath("mobs_doomed") or not minetest.get_modpath("dmobs") then
if not minetest.get_modpath("mobs_doomed") and not minetest.get_modpath("dmobs") then
dofile(path .. "fox.lua") -- D00Med
dofile(path .. "owl.lua") -- D00Med
dofile(path .. "tortoise.lua") -- D00Med
end
if not minetest.get_modpath("mobs_monster") then
dofile(path .. "mese_monster.lua") -- PilzAdam (WTFPL)
dofile(path .. "fire_spirit.lua") -- tenplus1
dofile(path .. "oerkki.lua") -- Pavel_S and PilzAdam (WTFPL)
dofile(path .. "lava_flan.lua") -- Lava Flan by Zeg9 (additional textures by JurajVajda)

View File

@ -11,10 +11,10 @@ local kitten_types = {
-- Kitten by Jordach / BFD
mobs:register_mob(":mobs_animal:kitten", {
mobs:register_mob("mobs_jam:kitten", {
stepheight = 0.6,
type = "animal",
specific_attack = {"mobs_animal:rat"},
specific_attack = {"mobs_jam:rat"},
damage = 1,
attack_type = "dogfight",
attack_animals = true, -- so it can attack rat
@ -60,7 +60,7 @@ mobs:register_mob(":mobs_animal:kitten", {
stoodup_end = 0,
},
follow = {
"mobs_animal:rat", "group:food_fish_raw",
"mobs_jam:rat", "group:food_fish_raw",
"mobs_fish:tropical", "mobs_fish:clownfish", "xocean:fish_edible"
},
view_range = 8,
@ -145,7 +145,7 @@ end
if not mobs.custom_spawn_animal then
mobs:spawn({
name = ":mobs_animal:kitten",
name = "mobs_jam:kitten",
nodes = {spawn_on},
neighbors = {"group:grass"},
min_light = 14,
@ -158,15 +158,16 @@ if not mobs.custom_spawn_animal then
end
mobs:register_egg(":mobs_animal:kitten", S("Kitten"), "mobs_kitten_inv.png", 0)
mobs:register_egg("mobs_jam:kitten", S("Kitten"), "mobs_kitten_inv.png", 0)
mobs:alias_mob("mobs:kitten", "mobs_animal:kitten") -- compatibility
mobs:alias_mob("mobs:kitten", "mobs_jam:kitten") -- compatibility
mobs:alias_mob("mobs_animal:kitten", "mobs_jam:kitten") -- compatibility only if moved from/to mobs_animal
local hairball_items = {
"default:stick", "default:coal_lump", "default:dry_shrub", "flowers:rose",
"mobs_animal:rat", "default:grass_1", "farming:seed_wheat", "dye:green", "",
"mobs_jam:rat", "default:grass_1", "farming:seed_wheat", "dye:green", "",
"farming:seed_cotton", "default:flint", "default:sapling", "dye:white", "",
"default:clay_lump", "default:paper", "default:dry_grass_1", "dye:red", "",
"farming:string", "mobs:chicken_feather", "default:acacia_bush_sapling", "",

View File

@ -3,7 +3,7 @@ local S = mobs.intllib_animal
-- Lava Flan by Zeg9 (additional textures by JurajVajda)
mobs:register_mob(":mobs_monster:lava_flan", {
mobs:register_mob("mobs_jam:lava_flan", {
type = "monster",
passive = false,
attack_type = "dogfight",
@ -73,7 +73,7 @@ mobs:register_mob(":mobs_monster:lava_flan", {
self.object:remove()
if math.random(4) == 1 then
mobs:add_mob(pos, {name = "mobs_monster:obsidian_flan"})
mobs:add_mob(pos, {name = "mobs_jam:obsidian_flan"})
end
else
mobs:effect(pos, 40, "fire_basic_flame.png", 2, 3, 2, 5, 10, nil)
@ -99,7 +99,7 @@ mobs:register_mob(":mobs_monster:lava_flan", {
if not mobs.custom_spawn_monster then
mobs:spawn({
name = ":mobs_monster:lava_flan",
name = "mobs_jam:lava_flan",
nodes = {"default:lava_source"},
chance = 1500,
active_object_count = 1,
@ -109,11 +109,13 @@ end
-- add spawn egg
mobs:register_egg(":mobs_monster:lava_flan", S("Lava Flan"), "default_lava.png", 1)
mobs:register_egg("mobs_jam:lava_flan", S("Lava Flan"), "default_lava.png", 1)
-- compatibility alias, only needed for servers who used the old mobs mod
mobs:alias_mob("mobs:lava_flan", "mobs_monster:lava_flan")
mobs:alias_mob("mobs:lava_flan", "mobs_jam:lava_flan")
-- compatibility if removed and changed to mobs_monster
mobs:alias_mob("mobs_monster:lava_flan", "mobs_jam:lava_flan")
-- lava orb
@ -222,7 +224,7 @@ end
-- obsidian flan
mobs:register_mob(":mobs_monster:obsidian_flan", {
mobs:register_mob("mobs_jam:obsidian_flan", {
type = "monster",
passive = false,
attack_type = "shoot",
@ -275,8 +277,10 @@ mobs:register_mob(":mobs_monster:obsidian_flan", {
-- add spawn egg
mobs:register_egg(":mobs_monster:obsidian_flan", S("Obsidian Flan"), "default_obsidian.png", 1)
mobs:register_egg("mobs_jam:obsidian_flan", S("Obsidian Flan"), "default_obsidian.png", 1)
-- compatibility if removed and changed to mobs_monster
mobs:alias_mob("mobs_monster:obsidian_flan", "mobs_jam:obsidian_flan")
local mobs_griefing = minetest.settings:get_bool("mobs_griefing") ~= false

View File

@ -134,7 +134,7 @@ local mese_monster_types = {
-- Mese Monster by SirrobZeroone
mobs:register_mob(":mobs_monster:mese_monster", {
mobs:register_mob("mobs_jam:mese_monster", {
type = "monster",
visual_size = {x = 10, y = 10}, -- Got scale wrong in blender by factor of 10 - S01
passive = false,
@ -260,7 +260,7 @@ mobs:register_mob(":mobs_monster:mese_monster", {
for i, obj in ipairs(objects) do
if minetest.is_player(obj)
and obj:get_wielded_item():get_name() == "mobs_monster:mese_monster" then
and obj:get_wielded_item():get_name() == "mobs_jam:mese_monster" then
local degree = (360 + math.deg(obj:get_look_horizontal())) % 360
local compass_sel
@ -288,7 +288,7 @@ mobs:register_mob(":mobs_monster:mese_monster", {
-- mese arrow (weapon)
minetest.register_craftitem("mobs_monster:mese_crystal_fragment_arrow", {
minetest.register_craftitem(":mobs_monster:mese_crystal_fragment_arrow", {
description = S("Mese Monster Arrow"),
inventory_image = "mobs_mese_arrow.png",
groups = {not_in_creative_inventory = 1}
@ -325,7 +325,7 @@ mobs:register_arrow(":mobs_monster:mese_arrow", {
if not mobs.custom_spawn_monster then
mobs:spawn({
name = ":mobs_monster:mese_monster",
name = "mobs_jam:mese_monster",
nodes = {"default:stone"},
max_light = 7,
chance = 4500,
@ -335,10 +335,11 @@ if not mobs.custom_spawn_monster then
end
mobs:register_egg(":mobs_monster:mese_monster", S("Mese Monster"), "default_mese_block.png", 1)
mobs:register_egg("mobs_jam:mese_monster", S("Mese Monster"), "default_mese_block.png", 1)
mobs:alias_mob("mobs:mese_monster", "mobs_monster:mese_monster") -- compatiblity
mobs:alias_mob("mobs:mese_monster", "mobs_jam:mese_monster") -- compatiblity
mobs:alias_mob("mobs_monster:mese_monster", "mobs_jam:mese_monster") -- compatiblity
-- 9x mese crystal fragments = 1x mese crystal

View File

@ -3,7 +3,7 @@ local S = mobs.intllib_animal
-- Oerkki by PilzAdam
mobs:register_mob(":mobs_monster:oerkki", {
mobs:register_mob("mobs_jam:oerkki", {
type = "monster",
passive = false,
attack_type = "dogfight",
@ -63,7 +63,7 @@ mobs:register_mob(":mobs_monster:oerkki", {
if not mobs.custom_spawn_monster then
mobs:spawn({
name = ":mobs_monster:oerkki",
name = "mobs_jam:oerkki",
nodes = {"default:stone"},
max_light = 7,
chance = 5000,
@ -72,7 +72,9 @@ if not mobs.custom_spawn_monster then
end
mobs:register_egg(":mobs_monster:oerkki", S("Oerkki"), "default_obsidian.png", 1)
mobs:register_egg("mobs_jam:oerkki", S("Oerkki"), "default_obsidian.png", 1)
mobs:alias_mob("mobs:oerkki", "mobs_monster:oerkki") -- compatiblity
mobs:alias_mob("mobs:oerkki", "mobs_jam:oerkki") -- compatiblity
mobs:alias_mob("mobs_monster:oerkki", "mobs_jam:oerkki") -- compatiblity only if changes/moved to/from mobs_monster

15
owl.lua
View File

@ -13,7 +13,7 @@ end
if minetest.get_modpath("fireflies") then
table.insert(follow, "fireflies:firefly")
end
if minetest.get_modpath("mobs_animal") then
if minetest.get_modpath("mobs_animal") or minetest.get_modpath("mobs_jam") then
table.insert(follow, "mobs_animal:rat")
table.insert(follow, "mobs_animal:bee")
table.insert(follow, "mobs_animal:bunny")
@ -41,7 +41,7 @@ if minetest.get_modpath("mobs_birds") then
table.insert(follow, "mobs_birds:bird_sm")
end
mobs:register_mob(":mobs_doomed:owl", {
mobs:register_mob("mobs_jam:owl", {
type = "animal",
passive = true,
hp_min = 12,
@ -95,7 +95,14 @@ mobs:register_mob(":mobs_doomed:owl", {
})
mobs:register_egg(":mobs_doomed:owl", "Owl", "default_tree.png", 1)
mobs:register_egg("mobs_jam:owl", "Owl", "default_tree.png", 1)
mobs:spawn({name = ":mobs_doomed:owl", nodes = {"group:tree"}, neighbor = {},
mobs:spawn({name = "mobs_jam:owl", nodes = {"group:tree"}, neighbor = {},
min_light = 0, max_light = 7, interval = 300, chance = 9000, active_object_count = 2, min_height = 0, max_height = 2000})
mobs:alias_mob("mobs:owl", "mobs_jam:owl")
-- compatibility if removed/changed to dmobs
mobs:alias_mob("dmobs:owl", "mobs_jam:owl")
-- compatibility if removed/changed to mobs_doomed
mobs:alias_mob("mobs_doomed:owl", "mobs_jam:owl")

View File

@ -4,7 +4,7 @@ local S = mobs.intllib_animal
-- Panda by AspireMint (CC BY-SA 3.0)
mobs:register_mob(":mobs_animal:panda", {
mobs:register_mob("mobs_jam:panda", {
stepheight = 0.6,
type = "animal",
passive = false,
@ -76,7 +76,7 @@ if minetest.get_modpath("ethereal") then spawn_on = {"ethereal:bamboo_dirt", "de
if minetest.get_modpath("ethereal") and not mobs.custom_spawn_animal then
mobs:spawn({
name = ":mobs_animal:panda",
name = "mobs_jam:panda",
nodes = spawn_on,
neighbors = {"group:grass"},
min_light = 14,
@ -89,4 +89,8 @@ if minetest.get_modpath("ethereal") and not mobs.custom_spawn_animal then
end
mobs:register_egg(":mobs_animal:panda", S("Panda"), "mobs_panda_inv.png")
mobs:register_egg("mobs_jam:panda", S("Panda"), "mobs_panda_inv.png")
-- compatibility if removed and changed to mobs_animal
mobs:alias_mob("mobs_animal:panda", "mobs_jam:panda")

View File

@ -4,7 +4,7 @@ local S = mobs.intllib_animal
-- Penguin by D00Med
mobs:register_mob(":mobs_animal:penguin", {
mobs:register_mob("mobs_jam:penguin", {
stepheight = 0.6,
type = "animal",
passive = true,
@ -64,7 +64,7 @@ stepheight = 0.6,
if not mobs.custom_spawn_animal then
mobs:spawn({
name = ":mobs_animal:penguin",
name = "mobs_jam:penguin",
nodes = {"default:snowblock"},
min_light = 14,
interval = 60,
@ -76,4 +76,7 @@ if not mobs.custom_spawn_animal then
end
mobs:register_egg(":mobs_animal:penguin", S("Penguin"), "mobs_penguin_inv.png")
mobs:register_egg("mobs_jam:penguin", S("Penguin"), "mobs_penguin_inv.png")
-- compatibility if removed and changed to mobs_animal
mobs:alias_mob("mobs_animal:penguin", "mobs_jam:penguin")

13
rat.lua
View File

@ -4,7 +4,7 @@ local S = mobs.intllib_animal
-- Rat by KPavel and PilzAdam (B3D model by sirrobzeroone)
mobs:register_mob(":mobs_animal:rat", {
mobs:register_mob("mobs_jam:rat", {
stepheight = 0.6,
type = "animal",
passive = true,
@ -32,7 +32,7 @@ mobs:register_mob(":mobs_animal:rat", {
fear_height = 2,
on_rightclick = function(self, clicker)
mobs:capture_mob(self, clicker, 50, 90, 0, true, "mobs_animal:rat")
mobs:capture_mob(self, clicker, 50, 90, 0, true, "mobs_jam:rat")
end,
--[[
do_custom = function(self, dtime)
@ -73,7 +73,7 @@ end
if not mobs.custom_spawn_animal then
mobs:spawn({
name = ":mobs_animal:rat",
name = "mobs_jam:rat",
nodes = {"default:stone"},
min_light = 2,
max_light = 10,
@ -85,10 +85,11 @@ if not mobs.custom_spawn_animal then
end
mobs:register_egg(":mobs_animal:rat", S("Rat"), "mobs_rat_inv.png")
mobs:register_egg("mobs_jam:rat", S("Rat"), "mobs_rat_inv.png")
mobs:alias_mob("mobs:rat", "mobs_animal:rat") -- compatibility
mobs:alias_mob("mobs:rat", "mobs_jam:rat") -- compatibility
mobs:alias_mob("mobs_animal:rat", "mobs_jam:rat") -- compatibility
-- cooked rat, yummy!
@ -102,6 +103,6 @@ minetest.register_craftitem(":mobs:rat_cooked", {
minetest.register_craft({
type = "cooking",
output = "mobs:rat_cooked",
recipe = "mobs_animal:rat",
recipe = "mobs_jam:rat",
cooktime = 5
})

View File

@ -1,17 +1,57 @@
# minetest mod mobs_jam
IT add animals for farmin like cows, dogs chicken or cats.
Pack set like mobs, reduced, use if you dont want a buch of mods and only wants one that handles all
## Information
This mod is forked to improve compatibility backguard for 0.4 engine. It also provides some new translatins and ajustments
This mod is forked to improve compatibility and simplifycation, it combines/provide mobs from
"animal", "dmobs" and "monsters" **simplified in one load to reduce calculations on server**.
Reason is the nascisic and petty behaviour of mayority of minetest developers
![](screenshot.png)
## Technical information
It provides mobs:
* `mobs_animal` a mixed from original PilzAdam with the ones of tenplus1
* `bee`
* `chicken`
* `cow`
* `rat`
* `sheep`
* `panda`
* `penguin`
* `kitten`
* `warthog`
* `mobs_monster` disected from original PilzAdam, adapted to mobs_redo
* `fire_spirit`
* `oerkki`
* `mese_monster`
* `mobs_doomed` or `dmobs` from D00Med aka heiselong lazy one
* `fox`
* `owl`
* `tortoise`
It also has backguard compatibility for 0.4 engine. It also provides some new translatins and ajustments
**note** to gain performance equivalent compatibility with original mods are disabled by default,
this mod provides by default aliasing of all items and mobs for backguard compatibility, you
can enable it in settings
**warning** this provides aliasing only for entities that players interacts, not to the rest
by example what does the lava flan shot as attack is not the same as what original lava flan shots,
this is due breking compatibilty and easy mantain code rutines. If you need a mob you can use
the same cos mapgen only mantain the mobs not the items that they shots.
**caution** this mobs try to fit all the items that player handles into their inventory, for
compatibility, but you can diable it to gain performan by not registered so many items in engine.
### Depends
* mobs
* default
* farming
Optionally
@ -20,48 +60,38 @@ Optionally
## Animals:
**Note**: *After breeding, animals need to rest for 4 minutes and baby animals take 4 minutes to grow up, also feeding them helps them grow quicker...*
### Bee
Tends to buzz around flowers and gives honey when killed, you can also right-click a bee to pick it up and place in inventory. 3x bee's in a row can craft a beehive.
---
### Bunny
Bunnies appear in green grass areas (prairie biome in ethereal) and can be tamed with 4 carrots or grass. Can also be picked up and placed in inventory and gives 1 raw rabbit and 1 rabbit hide when killed.
---
### Chicken
Found in green areas (bamboo biome in ethereal) and lays eggs on flat ground, Can be picked up and placed in inventory and gives 1-2 raw chicken when killed. Feed 8x wheat seed to breed.
---
### Cow
Wanders around eating grass/wheat and can be right-clicked with empty bucket to get milk. Cows will defend themselves when hit and can be right-clicked with 8x wheat to tame and breed.
---
### Kitten
Found on green grass these cute cats walk around and can be picked up and placed in inventory as pets or right-clicked with 4x live rats or raw fish (found in ethereal) and tamed. They can sometimes leave you little gifts of a hairball.
---
### Rat
Typically found around stone they can be picked up and cooked for eating.
---
### Sheep
Green grass and wheat munchers that can be clipped using shears to give 1-3 wool when tamed. Feed sheep 8x wheat to regrow wool, tame and breed. Right-click a tamed sheep with dye to change it's colour. Will drop 1-3 raw mutton when killed.
---
### Warthog
Warthogs unlike pigs defend themselves when hit and give 1-3 raw pork when killed, they can also be right-clicked with 8x apples to tame or breed.
---
### Penguin
These little guys can be found in glacier biomes on top of snow and have the ability to swim if they fall into water.
---
### Panda
These monochrome cuties spawn in Ethereal's bamboo biome and can be tamed with bamboo stalks :) Remember they have claws though.
---
*Note: After breeding, animals need to rest for 4 minutes and baby animals take 4 minutes to grow up, also feeding them helps them grow quicker...*
### tortoise
These were extracted from dmobs mod from D00Med and its friendly but pretty slowww
@ -83,8 +113,19 @@ Found in dark areas like most monsters, Oerkki wander the caverns stealing away
### Fire Spirit
Fire Spirits will not tolerate players roaming around their domain and will fiercely attack until their dying puff of smoke. Th
ey will drop their spirit and some fire dust when using ethereal.
Fire Spirits will not tolerate players roaming around their domain and will fiercely attack until their dying puff of smoke.
They will drop their spirit and some fire dust when using ethereal.
#### Lucky Blocks: 20
## LICENSE
CC-BY-SA-NC unless permission of
* Copyright (C) 2022+ PICCORO Lenz MCKAY <mckaygerhard@mail.ru>
* Copyright (C) 2016-2020 tenplus1
* Copyright (C) 2004-2012 Sam Hocevar <sam@hocevar.net>
Check license.txt for art and models

View File

@ -69,7 +69,7 @@ for _, col in ipairs(all_colours) do
return textures
end
mobs:register_mob(":mobs_animal:sheep_" .. col[1], {
mobs:register_mob("mobs_jam:sheep_" .. col[1], {
stay_near = {"farming:straw", 10},
stepheight = 0.6,
type = "animal",
@ -315,12 +315,12 @@ for _, col in ipairs(all_colours) do
-- only dye if colour option available and sheep not same colour
if c[1] == colr
and self.name ~= "mobs_animal:sheep_" .. colr then
and self.name ~= "mobs_jam:sheep_" .. colr then
local pos = self.object:get_pos()
-- add new coloured sheep
local mob = minetest.add_entity(pos, "mobs_animal:sheep_" .. colr)
local mob = minetest.add_entity(pos, "mobs_jam:sheep_" .. colr)
local ent = mob:get_luaentity()
if ent then
@ -371,11 +371,13 @@ for _, col in ipairs(all_colours) do
})
-- spawn egg
mobs:register_egg(":mobs_animal:sheep_"..col[1], S("@1 Sheep", col[2]),
mobs:register_egg("mobs_jam:sheep_"..col[1], S("@1 Sheep", col[2]),
"wool_" .. col[1] .. ".png^mobs_sheep_inv.png")
-- compatibility
mobs:alias_mob("mobs:sheep_" .. col[1], "mobs_animal:sheep_" .. col[1])
mobs:alias_mob("mobs:sheep_" .. col[1], "mobs_jam:sheep_" .. col[1])
-- compatibility only if changed from mobs_animal
mobs:alias_mob("mobs_animal:sheep_" .. col[1], "mobs_jam:sheep_" .. col[1])
end
@ -389,7 +391,7 @@ if not mobs.custom_spawn_animal then
if mod_ethereal then spawn_on = {"default:dirt_with_grass", "ethereal:green_dirt"} end
mobs:spawn({
name = ":mobs_animal:sheep_white",
name = "mobs_jam:sheep_white",
nodes = spawn_on,
neighbors = {"group:grass"},
min_light = 14,
@ -442,7 +444,7 @@ if not mobs.custom_spawn_animal then
-- store returned entity data from mobs:add_mob, "nil" indicates the
-- rules in mobs:add_mob stopped mob from being spawned/created.
local entity = mobs:add_mob(pos,
{name = "mobs_animal:sheep_" .. types, child = lamb})
{name = "mobs_jam:sheep_" .. types, child = lamb})
-- nil check
if not entity then return end
@ -498,7 +500,8 @@ if not mobs.custom_spawn_animal then
end
mobs:alias_mob("mobs:sheep", "mobs_animal:sheep_white") -- compatibility
mobs:alias_mob("mobs:sheep", "mobs_jam:sheep_white") -- compatibility
mobs:alias_mob("mobs_animal:sheep", "mobs_jam:sheep_white") -- compatibility only if moved from/to mobs_animal
-- raw mutton
minetest.register_craftitem(":mobs:mutton_raw", {

View File

@ -10,7 +10,7 @@ if minetest.get_modpath("farming") then
}
end
mobs:register_mob(":mobs_doomed:tortoise", {
mobs:register_mob("mobs_jam:tortoise", {
type = "animal",
passive = false,
reach = 1,
@ -68,7 +68,11 @@ mobs:register_mob(":mobs_doomed:tortoise", {
})
mobs:register_egg(":mobs_doomed:tortoise", "Tortoise", "default_grass.png", 1)
mobs:register_egg("mobs_jam:tortoise", "Tortoise", "default_grass.png", 1)
mobs:spawn({name = ":mobs_doomed:tortoise", nodes = {"default:water_source", "group:sand"}, neighbor = {},
mobs:spawn({name = "mobs_jam:tortoise", nodes = {"default:water_source", "group:sand"}, neighbor = {},
min_light = 5, max_light = 10, interval = 300, chance = 4000, active_object_count = 2, min_height = -100, max_height = 500})
-- compatibility if removed and changed to/from mobs_doomed or dmobs
mobs:alias_mob("dmobs:tortoise", "mobs_jam:tortoise")
mobs:alias_mob("mobs_doomed:tortoise", "mobs_jam:tortoise")

View File

@ -4,7 +4,7 @@ local S = mobs.intllib_animal
-- Warthog originally by KrupnoPavel, B3D model by sirrobzeroone
mobs:register_mob(":mobs_animal:pumba", {
mobs:register_mob(":mobs_jam:pumba", {
stepheight = 0.6,
type = "animal",
passive = false,
@ -83,7 +83,7 @@ end
if not mobs.custom_spawn_animal then
mobs:spawn({
name = ":mobs_animal:pumba",
name = ":mobs_jam:pumba",
nodes = spawn_on,
neighbors = spawn_by,
min_light = 14,
@ -97,10 +97,14 @@ end
-- spawn egg
mobs:register_egg(":mobs_animal:pumba", S("Warthog"), "mobs_pumba_inv.png")
mobs:register_egg(":mobs_jam:pumba", S("Warthog"), "mobs_pumba_inv.png")
mobs:alias_mob("mobs:pumba", "mobs_animal:pumba") -- compatibility
mobs:alias_mob("mobs_animal:pumba", "mobs_jam:pumba") -- compatibility
mobs:alias_mob("mobs:pumba", "mobs_jam:pumba") -- compatibility
mobs:alias_mob("mobs:pumba", "mobs_animal:pumba") -- compatibility, this already are made by mobs_animal
-- raw porkchop