mirror of
https://github.com/sys4-fr/server-nalc.git
synced 2025-01-23 16:30:19 +01:00
Update the mobs mod
- Update to the 0.8 release of TenPlus1 mobs redo mod - Merge the TenPlus1 mobs redo mod changes - Add 2/3 new sounds for each monsters (from the Cyberpangolin mobs sounds) - Small up of the lava_flan mob health
This commit is contained in:
parent
c81fc9903e
commit
3fce25aeab
@ -25,7 +25,8 @@ This mod contains the following additions:
|
|||||||
|
|
||||||
Changelog:
|
Changelog:
|
||||||
|
|
||||||
0.7 - mob.protected switch added to api.lua, when set to 1 mobs no longer spawn in protected areas, also bug fixes
|
0.8 - Added sounds to monster mobs (thanks Cyberpangolin for the sfx) and also chicken sound
|
||||||
|
0.7 - mobs.protected switch added to api.lua, when set to 1 mobs no longer spawn in protected areas, also bug fixes
|
||||||
0.6 - Api now supports multi-textured mobs, e.g oerkki, dungeon master, rats and chickens have random skins when spawning (sheep fix TODO), also new Honey block
|
0.6 - Api now supports multi-textured mobs, e.g oerkki, dungeon master, rats and chickens have random skins when spawning (sheep fix TODO), also new Honey block
|
||||||
0.5 - Mobs now float in water, die from falling, and some code improvements
|
0.5 - Mobs now float in water, die from falling, and some code improvements
|
||||||
0.4 - Dungeon Masters and Mese Monsters have much better aim due to shoot_offset, also they can both shoot through nodes that aren't walkable (flowers, grass etc) plus new sheep sound :)
|
0.4 - Dungeon Masters and Mese Monsters have much better aim due to shoot_offset, also they can both shoot through nodes that aren't walkable (flowers, grass etc) plus new sheep sound :)
|
||||||
|
@ -174,7 +174,7 @@ function mobs:register_mob(name, def)
|
|||||||
end,
|
end,
|
||||||
|
|
||||||
on_step = function(self, dtime)
|
on_step = function(self, dtime)
|
||||||
|
local yaw = 0
|
||||||
if self.type == "monster" and minetest.setting_getbool("only_peaceful_mobs") then
|
if self.type == "monster" and minetest.setting_getbool("only_peaceful_mobs") then
|
||||||
self.object:remove()
|
self.object:remove()
|
||||||
end
|
end
|
||||||
@ -196,7 +196,7 @@ function mobs:register_mob(name, def)
|
|||||||
|
|
||||||
-- drop egg
|
-- drop egg
|
||||||
if self.animaltype == "clucky" then
|
if self.animaltype == "clucky" then
|
||||||
if math.random(1, 1500) < 2
|
if math.random(1, 3000) <= 1
|
||||||
and minetest.get_node(self.object:getpos()).name == "air"
|
and minetest.get_node(self.object:getpos()).name == "air"
|
||||||
and self.state == "stand" then
|
and self.state == "stand" then
|
||||||
minetest.set_node(self.object:getpos(), {name="mobs:egg"})
|
minetest.set_node(self.object:getpos(), {name="mobs:egg"})
|
||||||
@ -458,7 +458,7 @@ function mobs:register_mob(name, def)
|
|||||||
self.set_animation(self, "walk")
|
self.set_animation(self, "walk")
|
||||||
end
|
end
|
||||||
elseif self.state == "walk" then
|
elseif self.state == "walk" then
|
||||||
if math.random(1, 100) < 31 then
|
if math.random(1, 100) <= 30 then
|
||||||
self.object:setyaw(self.object:getyaw()+((math.random(0,360)-180)/180*math.pi))
|
self.object:setyaw(self.object:getyaw()+((math.random(0,360)-180)/180*math.pi))
|
||||||
end
|
end
|
||||||
if self.jump and self.get_velocity(self) <= 0.5 and self.object:getvelocity().y == 0 then
|
if self.jump and self.get_velocity(self) <= 0.5 and self.object:getvelocity().y == 0 then
|
||||||
@ -468,7 +468,7 @@ function mobs:register_mob(name, def)
|
|||||||
end
|
end
|
||||||
self:set_animation("walk")
|
self:set_animation("walk")
|
||||||
self.set_velocity(self, self.walk_velocity)
|
self.set_velocity(self, self.walk_velocity)
|
||||||
if math.random(1, 100) < 31 then
|
if math.random(1, 100) <= 30 then
|
||||||
self.set_velocity(self, 0)
|
self.set_velocity(self, 0)
|
||||||
self.state = "stand"
|
self.state = "stand"
|
||||||
self:set_animation("stand")
|
self:set_animation("stand")
|
||||||
@ -534,7 +534,7 @@ function mobs:register_mob(name, def)
|
|||||||
full_punch_interval=1.0,
|
full_punch_interval=1.0,
|
||||||
damage_groups = {fleshy=self.damage}
|
damage_groups = {fleshy=self.damage}
|
||||||
}, vec)
|
}, vec)
|
||||||
if self.attack.player:get_hp() < 1 then
|
if self.attack.player:get_hp() <= 0 then
|
||||||
self.state = "stand"
|
self.state = "stand"
|
||||||
self:set_animation("stand")
|
self:set_animation("stand")
|
||||||
end
|
end
|
||||||
@ -576,7 +576,7 @@ function mobs:register_mob(name, def)
|
|||||||
self.object:setyaw(yaw)
|
self.object:setyaw(yaw)
|
||||||
self.set_velocity(self, 0)
|
self.set_velocity(self, 0)
|
||||||
|
|
||||||
if self.timer > self.shoot_interval and math.random(1, 100) < 61 then
|
if self.timer > self.shoot_interval and math.random(1, 100) <= 60 then
|
||||||
self.timer = 0
|
self.timer = 0
|
||||||
|
|
||||||
self:set_animation("punch")
|
self:set_animation("punch")
|
||||||
@ -629,7 +629,7 @@ function mobs:register_mob(name, def)
|
|||||||
self.object:set_properties(tmp.textures)
|
self.object:set_properties(tmp.textures)
|
||||||
end]]
|
end]]
|
||||||
end
|
end
|
||||||
if self.lifetimer < 1 and not self.tamed and self.type ~= "npc" then
|
if self.lifetimer <= 0 and not self.tamed and self.type ~= "npc" then
|
||||||
self.object:remove()
|
self.object:remove()
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
@ -801,14 +801,15 @@ function mobs:register_spawn(name, nodes, max_light, min_light, chance, active_o
|
|||||||
end
|
end
|
||||||
|
|
||||||
pos.y = pos.y+1
|
pos.y = pos.y+1
|
||||||
|
if not minetest.get_node_light(pos) then
|
||||||
if not minetest.get_node_light(pos)
|
return
|
||||||
or minetest.get_node_light(pos) > max_light
|
end
|
||||||
or minetest.get_node_light(pos) < min_light then
|
if minetest.get_node_light(pos) > max_light then
|
||||||
--print ("LIGHT", name)
|
return
|
||||||
|
end
|
||||||
|
if minetest.get_node_light(pos) < min_light then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
if pos.y > max_height then
|
if pos.y > max_height then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
@ -867,7 +868,8 @@ function mobs:register_arrow(name, def)
|
|||||||
on_step = function(self, dtime)
|
on_step = function(self, dtime)
|
||||||
local pos = self.object:getpos()
|
local pos = self.object:getpos()
|
||||||
--if minetest.get_node(self.object:getpos()).name ~= "air" then
|
--if minetest.get_node(self.object:getpos()).name ~= "air" then
|
||||||
if minetest.registered_nodes[minetest.get_node(self.object:getpos()).name].walkable then
|
local node = minetest.get_node(self.object:getpos()).name
|
||||||
|
if minetest.registered_nodes[node].walkable then
|
||||||
self.hit_node(self, pos, node)
|
self.hit_node(self, pos, node)
|
||||||
self.object:remove()
|
self.object:remove()
|
||||||
return
|
return
|
||||||
|
@ -12,7 +12,7 @@ mobs:register_mob("mobs:bee", {
|
|||||||
available_textures = {
|
available_textures = {
|
||||||
total = 1,
|
total = 1,
|
||||||
texture_1 = {"mobs_bee.png"},
|
texture_1 = {"mobs_bee.png"},
|
||||||
},
|
},
|
||||||
makes_footstep_sound = false,
|
makes_footstep_sound = false,
|
||||||
walk_velocity = 1,
|
walk_velocity = 1,
|
||||||
armor = 200,
|
armor = 200,
|
||||||
@ -34,7 +34,9 @@ mobs:register_mob("mobs:bee", {
|
|||||||
walk_start = 35,
|
walk_start = 35,
|
||||||
walk_end = 65,
|
walk_end = 65,
|
||||||
},
|
},
|
||||||
|
sounds = {
|
||||||
|
random = "mobs_bee_random01",
|
||||||
|
},
|
||||||
on_rightclick = function(self, clicker)
|
on_rightclick = function(self, clicker)
|
||||||
if clicker:is_player() and clicker:get_inventory() then
|
if clicker:is_player() and clicker:get_inventory() then
|
||||||
clicker:get_inventory():add_item("main", "mobs:bee")
|
clicker:get_inventory():add_item("main", "mobs:bee")
|
||||||
@ -53,7 +55,7 @@ minetest.register_craftitem("mobs:bee", {
|
|||||||
|
|
||||||
on_place = function(itemstack, placer, pointed_thing)
|
on_place = function(itemstack, placer, pointed_thing)
|
||||||
if pointed_thing.above then
|
if pointed_thing.above then
|
||||||
minetest.add_entity(pointed_thing.above, "mobs:bee")
|
minetest.env:add_entity(pointed_thing.above, "mobs:bee")
|
||||||
itemstack:take_item()
|
itemstack:take_item()
|
||||||
end
|
end
|
||||||
return itemstack
|
return itemstack
|
||||||
@ -92,7 +94,7 @@ minetest.register_node("mobs:beehive", {
|
|||||||
after_place_node = function(pos, placer, itemstack)
|
after_place_node = function(pos, placer, itemstack)
|
||||||
if placer:is_player() then
|
if placer:is_player() then
|
||||||
minetest.set_node(pos, {name="mobs:beehive", param2=1})
|
minetest.set_node(pos, {name="mobs:beehive", param2=1})
|
||||||
minetest.add_entity(pos, "mobs:bee")
|
minetest.env:add_entity(pos, "mobs:bee")
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
|
|
||||||
@ -107,22 +109,24 @@ minetest.register_craft({
|
|||||||
|
|
||||||
-- Honey Block
|
-- Honey Block
|
||||||
minetest.register_node("mobs:honey_block", {
|
minetest.register_node("mobs:honey_block", {
|
||||||
description = "Honey Block",
|
description = "Honey Block",
|
||||||
tiles = {"mobs_honey_block.png"},
|
tiles = {"mobs_honey_block.png"},
|
||||||
groups = {snappy=3,flammable=2},
|
groups = {snappy=3,flammable=2},
|
||||||
sounds = default.node_sound_dirt_defaults(),
|
sounds = default.node_sound_dirt_defaults(),
|
||||||
})
|
})
|
||||||
|
|
||||||
minetest.register_craft({
|
minetest.register_craft({
|
||||||
output = "mobs:honey_block",
|
output = "mobs:honey_block",
|
||||||
recipe = {
|
recipe = {
|
||||||
{"mobs:honey", "mobs:honey", "mobs:honey"},
|
{"mobs:honey", "mobs:honey", "mobs:honey"},
|
||||||
{"mobs:honey", "mobs:honey", "mobs:honey"},
|
{"mobs:honey", "mobs:honey", "mobs:honey"},
|
||||||
{"mobs:honey", "mobs:honey", "mobs:honey"},
|
{"mobs:honey", "mobs:honey", "mobs:honey"},
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
minetest.register_craft({
|
minetest.register_craft({
|
||||||
output = "mobs:honey 9",
|
output = "mobs:honey 9",
|
||||||
recipe = {
|
recipe = {
|
||||||
{"mobs:honey_block"},
|
{"mobs:honey_block"},
|
||||||
}
|
}
|
||||||
})
|
})
|
@ -18,9 +18,9 @@ mobs:register_mob("mobs:chicken", {
|
|||||||
texture_2 = {"mobs_chicken_black.png", "mobs_chicken_black.png", "mobs_chicken_black.png",
|
texture_2 = {"mobs_chicken_black.png", "mobs_chicken_black.png", "mobs_chicken_black.png",
|
||||||
"mobs_chicken_black.png", "mobs_chicken_black.png", "mobs_chicken_black.png",
|
"mobs_chicken_black.png", "mobs_chicken_black.png", "mobs_chicken_black.png",
|
||||||
"mobs_chicken_black.png", "mobs_chicken_black.png", "mobs_chicken_black.png"},
|
"mobs_chicken_black.png", "mobs_chicken_black.png", "mobs_chicken_black.png"},
|
||||||
},
|
},
|
||||||
--textures = {"mobs_chicken.png", "mobs_chicken.png", "mobs_chicken.png", "mobs_chicken.png",
|
--textures = {"mobs_chicken.png", "mobs_chicken.png", "mobs_chicken.png", "mobs_chicken.png",
|
||||||
-- "mobs_chicken.png", "mobs_chicken.png", "mobs_chicken.png", "mobs_chicken.png", "mobs_chicken.png"},
|
-- "mobs_chicken.png", "mobs_chicken.png", "mobs_chicken.png", "mobs_chicken.png", "mobs_chicken.png"},
|
||||||
makes_footstep_sound = true,
|
makes_footstep_sound = true,
|
||||||
walk_velocity = 1,
|
walk_velocity = 1,
|
||||||
armor = 200,
|
armor = 200,
|
||||||
@ -46,22 +46,10 @@ mobs:register_mob("mobs:chicken", {
|
|||||||
clicker:get_inventory():add_item("main", "mobs:chicken")
|
clicker:get_inventory():add_item("main", "mobs:chicken")
|
||||||
self.object:remove()
|
self.object:remove()
|
||||||
end
|
end
|
||||||
-- A VOIR POUR RENDRE TAMED/APPRIVOISABLE
|
|
||||||
-- if item:get_name() == "farming:wheat" then
|
|
||||||
-- if not minetest.setting_getbool("creative_mode") then
|
|
||||||
-- item:take_item()
|
|
||||||
-- clicker:set_wielded_item(item)
|
|
||||||
-- end
|
|
||||||
-- self.food = (self.food or 0) + 1
|
|
||||||
-- if self.food >= 4 then
|
|
||||||
-- self.food = 0
|
|
||||||
-- self.tamed = true
|
|
||||||
-- end
|
|
||||||
-- end
|
|
||||||
-- return
|
|
||||||
-- end
|
|
||||||
|
|
||||||
end,
|
end,
|
||||||
|
sounds = {
|
||||||
|
random = "mobs_chicken",
|
||||||
|
},
|
||||||
jump = true,
|
jump = true,
|
||||||
step = 1,
|
step = 1,
|
||||||
blood_texture = "mobs_blood.png",
|
blood_texture = "mobs_blood.png",
|
||||||
@ -78,7 +66,7 @@ minetest.register_craftitem("mobs:chicken", {
|
|||||||
|
|
||||||
on_place = function(itemstack, placer, pointed_thing)
|
on_place = function(itemstack, placer, pointed_thing)
|
||||||
if pointed_thing.above then
|
if pointed_thing.above then
|
||||||
minetest.add_entity(pointed_thing.above, "mobs:chicken")
|
minetest.env:add_entity(pointed_thing.above, "mobs:chicken")
|
||||||
itemstack:take_item()
|
itemstack:take_item()
|
||||||
end
|
end
|
||||||
return itemstack
|
return itemstack
|
||||||
@ -127,7 +115,7 @@ minetest.register_craft({
|
|||||||
-- Chicken (raw and cooked)
|
-- Chicken (raw and cooked)
|
||||||
|
|
||||||
minetest.register_craftitem("mobs:chicken_raw", {
|
minetest.register_craftitem("mobs:chicken_raw", {
|
||||||
description = "Raw Chicken",
|
description = "Raw Chicken",
|
||||||
inventory_image = "mobs_chicken_raw.png",
|
inventory_image = "mobs_chicken_raw.png",
|
||||||
on_use = minetest.item_eat(2),
|
on_use = minetest.item_eat(2),
|
||||||
})
|
})
|
||||||
|
@ -47,6 +47,9 @@ mobs:register_mob("mobs:dirt_monster", {
|
|||||||
punch_start = 40,
|
punch_start = 40,
|
||||||
punch_end = 63,
|
punch_end = 63,
|
||||||
},
|
},
|
||||||
|
sounds = {
|
||||||
|
random = {"mobs_dirtmonster_random01", "mobs_dirtmonster_random02"},
|
||||||
|
},
|
||||||
jump = true,
|
jump = true,
|
||||||
step = 1,
|
step = 1,
|
||||||
blood_texture = "default_dirt.png",
|
blood_texture = "default_dirt.png",
|
||||||
|
@ -74,6 +74,9 @@ mobs:register_mob("mobs:dungeon_master", {
|
|||||||
speed_normal = 15,
|
speed_normal = 15,
|
||||||
speed_run = 15,
|
speed_run = 15,
|
||||||
},
|
},
|
||||||
|
sounds = {
|
||||||
|
random = {"mobs_dungeonmaster_random01", "mobs_dungeonmaster_random02.ogg", "mobs_dungeonmaster_random03.ogg"},
|
||||||
|
},
|
||||||
jump = true,
|
jump = true,
|
||||||
step = 0.5,
|
step = 0.5,
|
||||||
shoot_offset = 0,
|
shoot_offset = 0,
|
||||||
@ -106,11 +109,11 @@ mobs:register_arrow("mobs:fireball", {
|
|||||||
for dy=-1,1 do
|
for dy=-1,1 do
|
||||||
for dz=-1,1 do
|
for dz=-1,1 do
|
||||||
local p = {x=pos.x+dx, y=pos.y+dy, z=pos.z+dz}
|
local p = {x=pos.x+dx, y=pos.y+dy, z=pos.z+dz}
|
||||||
local n = minetest.get_node(p).name
|
local n = minetest.env:get_node(p).name
|
||||||
local excluding = minetest.registered_nodes[n].groups["unbreakable"] ~= nil
|
local excluding = minetest.registered_nodes[n].groups["unbreakable"] ~= nil
|
||||||
or n:split(":")[1] == "nether"
|
or n:split(":")[1] == "nether"
|
||||||
for _,i in ipairs(excluded) do
|
for _,i in ipairs(excluded) do
|
||||||
if i == n then excluding = true end
|
if i == n then including = true end
|
||||||
end
|
end
|
||||||
|
|
||||||
--if p.y < -19600 and including and n:split(":")[1] == "nether" then
|
--if p.y < -19600 and including and n:split(":")[1] == "nether" then
|
||||||
@ -119,9 +122,9 @@ mobs:register_arrow("mobs:fireball", {
|
|||||||
end
|
end
|
||||||
if n ~= "default:obsidian" and n ~= "ethereal:obsidian_brick" then
|
if n ~= "default:obsidian" and n ~= "ethereal:obsidian_brick" then
|
||||||
if minetest.registered_nodes[n].groups.flammable or math.random(1, 100) <= 30 then
|
if minetest.registered_nodes[n].groups.flammable or math.random(1, 100) <= 30 then
|
||||||
minetest.set_node(p, {name="fire:basic_flame"})
|
minetest.env:set_node(p, {name="fire:basic_flame"})
|
||||||
else
|
else
|
||||||
minetest.set_node(p, {name="air"})
|
minetest.env:set_node(p, {name="air"})
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -12,8 +12,8 @@ minetest.register_alias("zmobs:lava_orb", "mobs:lava_orb")
|
|||||||
|
|
||||||
mobs:register_mob("mobs:lava_flan", {
|
mobs:register_mob("mobs:lava_flan", {
|
||||||
type = "monster",
|
type = "monster",
|
||||||
hp_min = 15,
|
hp_min = 20,
|
||||||
hp_max = 30,
|
hp_max = 35,
|
||||||
collisionbox = {-0.5, -0.5, -0.5, 0.5, 1.5, 0.5},
|
collisionbox = {-0.5, -0.5, -0.5, 0.5, 1.5, 0.5},
|
||||||
visual = "mesh",
|
visual = "mesh",
|
||||||
mesh = "zmobs_lava_flan.x",
|
mesh = "zmobs_lava_flan.x",
|
||||||
@ -53,6 +53,9 @@ mobs:register_mob("mobs:lava_flan", {
|
|||||||
punch_start = 20,
|
punch_start = 20,
|
||||||
punch_end = 28,
|
punch_end = 28,
|
||||||
},
|
},
|
||||||
|
sounds = {
|
||||||
|
random = {"mobs_lavaflan_random01", "mobs_lavaflan_random02"},
|
||||||
|
},
|
||||||
jump = true,
|
jump = true,
|
||||||
step = 2,
|
step = 2,
|
||||||
blood_texture = "fire_basic_flame.png",
|
blood_texture = "fire_basic_flame.png",
|
||||||
|
21
mods/mobs/license.txt
Normal file
21
mods/mobs/license.txt
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2014 Krupnov Pavel
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in
|
||||||
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
THE SOFTWARE.
|
@ -65,6 +65,9 @@ mobs:register_mob("mobs:mese_monster", {
|
|||||||
punch_start = 15, -- 40
|
punch_start = 15, -- 40
|
||||||
punch_end = 38, -- 63
|
punch_end = 38, -- 63
|
||||||
},
|
},
|
||||||
|
sounds = {
|
||||||
|
random = {"mobs_mesemonster_random01", "mobs_mesemonster_random02"},
|
||||||
|
},
|
||||||
jump = true,
|
jump = true,
|
||||||
step = 1,
|
step = 1,
|
||||||
shoot_offset = 2,
|
shoot_offset = 2,
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 1.8 KiB |
Binary file not shown.
Before Width: | Height: | Size: 5.1 KiB After Width: | Height: | Size: 1.7 KiB |
@ -49,6 +49,10 @@ mobs:register_mob("mobs:oerkki", {
|
|||||||
speed_normal = 15,
|
speed_normal = 15,
|
||||||
speed_run = 15,
|
speed_run = 15,
|
||||||
},
|
},
|
||||||
|
sounds = {
|
||||||
|
random = {"mobs_oerkki_random01", "mobs_oerkki_random02"},
|
||||||
|
attack = "mobs_oerkki_attack",
|
||||||
|
},
|
||||||
jump = true,
|
jump = true,
|
||||||
step = 1,
|
step = 1,
|
||||||
blood_texture = "mobs_blood.png",
|
blood_texture = "mobs_blood.png",
|
||||||
|
@ -25,6 +25,9 @@ mobs:register_mob("mobs:rat", {
|
|||||||
jump = true,
|
jump = true,
|
||||||
step = 1,
|
step = 1,
|
||||||
passive = true,
|
passive = true,
|
||||||
|
sounds = {
|
||||||
|
random = {"mobs_rat_random01", "mobs_rat_random02"},
|
||||||
|
},
|
||||||
|
|
||||||
on_rightclick = function(self, clicker)
|
on_rightclick = function(self, clicker)
|
||||||
if clicker:is_player() and clicker:get_inventory() then
|
if clicker:is_player() and clicker:get_inventory() then
|
||||||
@ -43,7 +46,7 @@ minetest.register_craftitem("mobs:rat", {
|
|||||||
|
|
||||||
on_place = function(itemstack, placer, pointed_thing)
|
on_place = function(itemstack, placer, pointed_thing)
|
||||||
if pointed_thing.above then
|
if pointed_thing.above then
|
||||||
minetest.add_entity(pointed_thing.above, "mobs:rat")
|
minetest.env:add_entity(pointed_thing.above, "mobs:rat")
|
||||||
itemstack:take_item()
|
itemstack:take_item()
|
||||||
end
|
end
|
||||||
return itemstack
|
return itemstack
|
||||||
|
@ -48,6 +48,9 @@ mobs:register_mob("mobs:sand_monster", {
|
|||||||
punch_start = 74,
|
punch_start = 74,
|
||||||
punch_end = 105,
|
punch_end = 105,
|
||||||
},
|
},
|
||||||
|
sounds = {
|
||||||
|
random = {"mobs_sandmonster_random01", "mobs_sandmonster_random02"},
|
||||||
|
},
|
||||||
jump = true,
|
jump = true,
|
||||||
step = 1,
|
step = 1,
|
||||||
blood_texture = "mobs_blood.png",
|
blood_texture = "mobs_blood.png",
|
||||||
|
BIN
mods/mobs/sounds/mobs_bee_random01.ogg
Normal file
BIN
mods/mobs/sounds/mobs_bee_random01.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_chicken.ogg
Normal file
BIN
mods/mobs/sounds/mobs_chicken.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_dirtmonster_random01.ogg
Normal file
BIN
mods/mobs/sounds/mobs_dirtmonster_random01.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_dirtmonster_random02.ogg
Normal file
BIN
mods/mobs/sounds/mobs_dirtmonster_random02.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_dungeonmaster_random01.ogg
Normal file
BIN
mods/mobs/sounds/mobs_dungeonmaster_random01.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_dungeonmaster_random02.ogg
Normal file
BIN
mods/mobs/sounds/mobs_dungeonmaster_random02.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_dungeonmaster_random03.ogg
Normal file
BIN
mods/mobs/sounds/mobs_dungeonmaster_random03.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_lavaflan_random01.ogg
Normal file
BIN
mods/mobs/sounds/mobs_lavaflan_random01.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_lavaflan_random02.ogg
Normal file
BIN
mods/mobs/sounds/mobs_lavaflan_random02.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_mesemonster_random01.ogg
Normal file
BIN
mods/mobs/sounds/mobs_mesemonster_random01.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_mesemonster_random02.ogg
Normal file
BIN
mods/mobs/sounds/mobs_mesemonster_random02.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_oerkki_random01.ogg
Normal file
BIN
mods/mobs/sounds/mobs_oerkki_random01.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_oerkki_random02.ogg
Normal file
BIN
mods/mobs/sounds/mobs_oerkki_random02.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_rat_random01.ogg
Normal file
BIN
mods/mobs/sounds/mobs_rat_random01.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_rat_random02.ogg
Normal file
BIN
mods/mobs/sounds/mobs_rat_random02.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_sandmonster_random01.ogg
Normal file
BIN
mods/mobs/sounds/mobs_sandmonster_random01.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_sandmonster_random02.ogg
Normal file
BIN
mods/mobs/sounds/mobs_sandmonster_random02.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_spider_random01.ogg
Normal file
BIN
mods/mobs/sounds/mobs_spider_random01.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_spider_random02.ogg
Normal file
BIN
mods/mobs/sounds/mobs_spider_random02.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_stonemonster_random01.ogg
Normal file
BIN
mods/mobs/sounds/mobs_stonemonster_random01.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_stonemonster_random02.ogg
Normal file
BIN
mods/mobs/sounds/mobs_stonemonster_random02.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_treemonster_random01.ogg
Normal file
BIN
mods/mobs/sounds/mobs_treemonster_random01.ogg
Normal file
Binary file not shown.
BIN
mods/mobs/sounds/mobs_treemonster_random02.ogg
Normal file
BIN
mods/mobs/sounds/mobs_treemonster_random02.ogg
Normal file
Binary file not shown.
@ -57,20 +57,16 @@ mobs:register_mob("mobs:spider", {
|
|||||||
punch_start = 50,
|
punch_start = 50,
|
||||||
punch_end = 90,
|
punch_end = 90,
|
||||||
},
|
},
|
||||||
-- jump = true,
|
|
||||||
-- sounds = {},
|
|
||||||
-- step = 1,
|
|
||||||
--})
|
|
||||||
-- },
|
|
||||||
jump = true,
|
|
||||||
step = 1,
|
|
||||||
blood_texture = "mobs_blood.png",
|
|
||||||
sounds = {
|
sounds = {
|
||||||
|
random = {"mobs_spider_random01", "mobs_spider_random02"},
|
||||||
war_cry = "mobs_eerie",
|
war_cry = "mobs_eerie",
|
||||||
death = "mobs_howl",
|
death = "mobs_howl",
|
||||||
attack = "mobs_oerkki_attack",
|
attack = "mobs_oerkki_attack",
|
||||||
},
|
},
|
||||||
|
jump = true,
|
||||||
|
sounds = {},
|
||||||
|
step = 1,
|
||||||
|
blood_texture = "mobs_blood.png",
|
||||||
})
|
})
|
||||||
mobs:register_spawn("mobs:spider", {"default:junglegrass", "default:jungleleaves", "default:jungletree"}, 20, -10, 7000, 1, 31000)
|
mobs:register_spawn("mobs:spider", {"default:junglegrass", "default:jungleleaves", "default:jungletree"}, 20, -10, 7000, 1, 31000)
|
||||||
|
|
||||||
|
@ -56,6 +56,9 @@ mobs:register_mob("mobs:stone_monster", {
|
|||||||
punch_start = 40,
|
punch_start = 40,
|
||||||
punch_end = 63,
|
punch_end = 63,
|
||||||
},
|
},
|
||||||
|
sounds = {
|
||||||
|
random = "mobs_stonemonster_random01", "mobs_stonemonster_random02",
|
||||||
|
},
|
||||||
jump = true,
|
jump = true,
|
||||||
step = 1,
|
step = 1,
|
||||||
blood_texture = "mobs_blood.png",
|
blood_texture = "mobs_blood.png",
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 344 B After Width: | Height: | Size: 513 B |
@ -57,6 +57,10 @@ mobs:register_mob("mobs:tree_monster", {
|
|||||||
punch_start = 48,
|
punch_start = 48,
|
||||||
punch_end = 62,
|
punch_end = 62,
|
||||||
},
|
},
|
||||||
|
sounds = {
|
||||||
|
random = {"mobs_treemonster_random01", "mobs_treemonster_random01"},
|
||||||
|
},
|
||||||
|
step = 0.5,
|
||||||
jump = true,
|
jump = true,
|
||||||
step = 1,
|
step = 1,
|
||||||
blood_texture = "default_wood.png",
|
blood_texture = "default_wood.png",
|
||||||
|
Loading…
Reference in New Issue
Block a user