Add 'mobs_monster' mod.
@ -58,6 +58,7 @@ The game includes the mods from the default [minetest_game](https://github.com/m
|
||||
* mobs_aggressive/
|
||||
* [creeper][] ([WTFPL][lic.creeper]) -- version [036666e Git][ver.creeper]
|
||||
* [mobs_goblins][] ([CC-BY-SA / CC-BY / CC0](mods/mobs_aggressive/mobs_goblins/README.md))
|
||||
* [mobs_monster][] ([MIT][lic.mobs_monster]) -- version: [91cbcf7 Git][ver.mobs_monster]
|
||||
* [spidermob][] ([CC-BY-SA / WTFPL / CC0](mods/mobs_aggressive/spidermob/LICENSE))
|
||||
* mobs_passive/
|
||||
* npc/
|
||||
@ -228,6 +229,7 @@ The game includes the mods from the default [minetest_game](https://github.com/m
|
||||
[markers version]: https://github.com/Sokomine/markers/tree/52d1b90b8906b28d4b5ba93cd271b3865b316d00
|
||||
[mesecons]: https://forum.minetest.net/viewtopic.php?t=628
|
||||
[mobs_goblins]: https://forum.minetest.net/viewtopic.php?t=13004
|
||||
[mobs_monster]: https://github.com/tenplus1/mobs_monster
|
||||
[mobs_redo]: https://forum.minetest.net/viewtopic.php?t=9917
|
||||
[moreblocks]: https://forum.minetest.net/viewtopic.php?t=509
|
||||
[moremesecons]: https://forum.minetest.net/viewtopic.php?t=13150
|
||||
@ -306,6 +308,7 @@ The game includes the mods from the default [minetest_game](https://github.com/m
|
||||
[lic.mdoors.1]: mods/mydoors/mdoors/README.txt
|
||||
[lic.mdoors.2]: doc/modpacks/mydoors/licence.txt
|
||||
[lic.mobf]: mods/mobf_core/License.txt
|
||||
[lic.mobs_monster]: mods/mobs_aggressive/mobs_monster/license.txt
|
||||
[lic.playeranim.1]: mods/player_visuals/playeranim/LICENSE.txt
|
||||
[lic.playeranim.2]: mods/player_visuals/playeranim/LICENSE-original.txt
|
||||
[lic.simple_protection]: mods/protection/simple_protection/README.md
|
||||
@ -322,6 +325,7 @@ The game includes the mods from the default [minetest_game](https://github.com/m
|
||||
[ver.creeper]: https://github.com/Rui-Minetest/creeper/tree/036666e2ccd26632a0c11585af0345c6eaa8c72d
|
||||
[ver.homedecor]: https://github.com/minetest-mods/homedecor_modpack/tree/02a4d14
|
||||
[ver.ilights]: https://github.com/minetest-mods/ilights/tree/d5f6900b5a6510f5922a7517ad613633861ce4df
|
||||
[ver.mobs_monster]: https://github.com/tenplus1/mobs_monster/tree/91cbcf7
|
||||
[ver.playeranim]: https://github.com/minetest-mods/playeranim/tree/f1c542e
|
||||
[ver.simple_protection]: https://github.com/SmallJoker/simple_protection/tree/c822e561e0349f02b70bf6a8c28059515603a0be
|
||||
[ver.spawneggs]: https://github.com/thefamilygrog66/spawneggs/tree/46503709bb0a1bff586cd345aac6b36936c4c311
|
||||
|
3
mods/mobs_aggressive/mobs_monster/depends.txt
Normal file
@ -0,0 +1,3 @@
|
||||
default
|
||||
mobs
|
||||
intllib?
|
1
mods/mobs_aggressive/mobs_monster/description.txt
Normal file
@ -0,0 +1 @@
|
||||
Adds many types of monster.
|
58
mods/mobs_aggressive/mobs_monster/dirt_monster.lua
Normal file
@ -0,0 +1,58 @@
|
||||
|
||||
local S = mobs.intllib
|
||||
|
||||
-- Dirt Monster by PilzAdam
|
||||
|
||||
mobs:register_mob("mobs_monster:dirt_monster", {
|
||||
type = "monster",
|
||||
passive = false,
|
||||
attack_type = "dogfight",
|
||||
pathfinding = true,
|
||||
reach = 2,
|
||||
damage = 2,
|
||||
hp_min = 3,
|
||||
hp_max = 27,
|
||||
armor = 100,
|
||||
collisionbox = {-0.4, -1, -0.4, 0.4, 0.8, 0.4},
|
||||
visual = "mesh",
|
||||
mesh = "mobs_stone_monster.b3d",
|
||||
textures = {
|
||||
{"mobs_dirt_monster.png"},
|
||||
},
|
||||
blood_texture = "default_dirt.png",
|
||||
makes_footstep_sound = true,
|
||||
sounds = {
|
||||
random = "mobs_dirtmonster",
|
||||
},
|
||||
view_range = 15,
|
||||
walk_velocity = 1,
|
||||
run_velocity = 3,
|
||||
jump = true,
|
||||
drops = {
|
||||
{name = "default:dirt", chance = 1, min = 3, max = 5},
|
||||
},
|
||||
water_damage = 1,
|
||||
lava_damage = 5,
|
||||
light_damage = 2,
|
||||
fear_height = 4,
|
||||
animation = {
|
||||
speed_normal = 15,
|
||||
speed_run = 15,
|
||||
stand_start = 0,
|
||||
stand_end = 14,
|
||||
walk_start = 15,
|
||||
walk_end = 38,
|
||||
run_start = 40,
|
||||
run_end = 63,
|
||||
punch_start = 40,
|
||||
punch_end = 63,
|
||||
},
|
||||
})
|
||||
|
||||
mobs:register_spawn("mobs_monster:dirt_monster",
|
||||
{"default:dirt_with_grass", "ethereal:gray_dirt"}, 7, 0, 7000, 1, 31000, false)
|
||||
|
||||
mobs:register_egg("mobs_monster:dirt_monster", S("Dirt Monster"), "default_dirt.png", 1)
|
||||
|
||||
-- compatibility
|
||||
mobs:alias_mob("mobs:dirt_monster", "mobs_monster:dirt_monster")
|
94
mods/mobs_aggressive/mobs_monster/dungeon_master.lua
Normal file
@ -0,0 +1,94 @@
|
||||
|
||||
local S = mobs.intllib
|
||||
|
||||
-- Dungeon Master by PilzAdam
|
||||
|
||||
mobs:register_mob("mobs_monster:dungeon_master", {
|
||||
type = "monster",
|
||||
passive = false,
|
||||
damage = 4,
|
||||
attack_type = "dogshoot",
|
||||
dogshoot_switch = 1,
|
||||
dogshoot_count_max = 10,
|
||||
reach = 3,
|
||||
shoot_interval = 2.5,
|
||||
arrow = "mobs_monster:fireball",
|
||||
shoot_offset = 1,
|
||||
hp_min = 12,
|
||||
hp_max = 35,
|
||||
armor = 60,
|
||||
collisionbox = {-0.7, -1, -0.7, 0.7, 1.6, 0.7},
|
||||
visual = "mesh",
|
||||
mesh = "mobs_dungeon_master.b3d",
|
||||
textures = {
|
||||
{"mobs_dungeon_master.png"},
|
||||
{"mobs_dungeon_master2.png"},
|
||||
{"mobs_dungeon_master3.png"},
|
||||
},
|
||||
makes_footstep_sound = true,
|
||||
sounds = {
|
||||
random = "mobs_dungeonmaster",
|
||||
shoot_attack = "mobs_fireball",
|
||||
},
|
||||
walk_velocity = 1,
|
||||
run_velocity = 3,
|
||||
jump = true,
|
||||
view_range = 15,
|
||||
drops = {
|
||||
{name = "default:mese_crystal_fragment", chance = 1, min = 1, max = 3},
|
||||
{name = "default:diamond", chance = 4, min = 1, max = 1},
|
||||
{name = "default:mese_crystal", chance = 2, min = 1, max = 2},
|
||||
{name = "default:diamondblock", chance = 30, min = 1, max = 1},
|
||||
},
|
||||
water_damage = 1,
|
||||
lava_damage = 1,
|
||||
light_damage = 0,
|
||||
fear_height = 3,
|
||||
animation = {
|
||||
stand_start = 0,
|
||||
stand_end = 19,
|
||||
walk_start = 20,
|
||||
walk_end = 35,
|
||||
punch_start = 36,
|
||||
punch_end = 48,
|
||||
shoot_start = 36,
|
||||
shoot_end = 48,
|
||||
speed_normal = 15,
|
||||
speed_run = 15,
|
||||
},
|
||||
})
|
||||
|
||||
mobs:register_spawn("mobs_monster:dungeon_master", {"default:stone"}, 7, 0, 7000, 1, -70)
|
||||
|
||||
mobs:register_egg("mobs_monster:dungeon_master", S("Dungeon Master"), "fire_basic_flame.png", 1, true)
|
||||
|
||||
-- compatibility
|
||||
mobs:alias_mob("mobs:dungeon_master", "mobs_monster:dungeon_master")
|
||||
|
||||
-- fireball (weapon)
|
||||
mobs:register_arrow("mobs_monster:fireball", {
|
||||
visual = "sprite",
|
||||
visual_size = {x = 1, y = 1},
|
||||
textures = {"mobs_fireball.png"},
|
||||
velocity = 6,
|
||||
|
||||
-- direct hit, no fire... just plenty of pain
|
||||
hit_player = function(self, player)
|
||||
player:punch(self.object, 1.0, {
|
||||
full_punch_interval = 1.0,
|
||||
damage_groups = {fleshy = 8},
|
||||
}, nil)
|
||||
end,
|
||||
|
||||
hit_mob = function(self, player)
|
||||
player:punch(self.object, 1.0, {
|
||||
full_punch_interval = 1.0,
|
||||
damage_groups = {fleshy = 8},
|
||||
}, nil)
|
||||
end,
|
||||
|
||||
-- node hit, bursts into flame
|
||||
hit_node = function(self, pos, node)
|
||||
mobs:explosion(pos, 1, 1, 0)
|
||||
end
|
||||
})
|
25
mods/mobs_aggressive/mobs_monster/init.lua
Normal file
@ -0,0 +1,25 @@
|
||||
|
||||
local path = minetest.get_modpath("mobs_monster")
|
||||
|
||||
-- Intllib
|
||||
local S
|
||||
if minetest.get_modpath("intllib") then
|
||||
S = intllib.Getter()
|
||||
else
|
||||
S = function(s) return s end
|
||||
end
|
||||
mobs.intllib = S
|
||||
|
||||
-- Monsters
|
||||
|
||||
dofile(path .. "/dirt_monster.lua") -- PilzAdam
|
||||
dofile(path .. "/dungeon_master.lua")
|
||||
dofile(path .. "/oerkki.lua")
|
||||
dofile(path .. "/sand_monster.lua")
|
||||
dofile(path .. "/stone_monster.lua")
|
||||
dofile(path .. "/tree_monster.lua")
|
||||
dofile(path .. "/lava_flan.lua") -- Zeg9
|
||||
dofile(path .. "/mese_monster.lua")
|
||||
dofile(path .. "/spider.lua") -- AspireMint
|
||||
|
||||
print ("[MOD] Mobs Redo 'Monsters' loaded")
|
142
mods/mobs_aggressive/mobs_monster/lava_flan.lua
Normal file
@ -0,0 +1,142 @@
|
||||
|
||||
local S = mobs.intllib
|
||||
|
||||
-- Lava Flan by Zeg9 (additional textures by JurajVajda)
|
||||
|
||||
mobs:register_mob("mobs_monster:lava_flan", {
|
||||
type = "monster",
|
||||
passive = false,
|
||||
attack_type = "dogfight",
|
||||
reach = 2,
|
||||
damage = 3,
|
||||
hp_min = 10,
|
||||
hp_max = 35,
|
||||
armor = 80,
|
||||
collisionbox = {-0.5, -0.5, -0.5, 0.5, 1.5, 0.5},
|
||||
visual = "mesh",
|
||||
mesh = "zmobs_lava_flan.x",
|
||||
textures = {
|
||||
{"zmobs_lava_flan.png"},
|
||||
{"zmobs_lava_flan2.png"},
|
||||
{"zmobs_lava_flan3.png"},
|
||||
},
|
||||
blood_texture = "fire_basic_flame.png",
|
||||
makes_footstep_sound = false,
|
||||
sounds = {
|
||||
random = "mobs_lavaflan",
|
||||
war_cry = "mobs_lavaflan",
|
||||
},
|
||||
walk_velocity = 0.5,
|
||||
run_velocity = 2,
|
||||
jump = true,
|
||||
view_range = 10,
|
||||
floats = 1,
|
||||
drops = {
|
||||
{name = "mobs:lava_orb", chance = 15, min = 1, max = 1},
|
||||
},
|
||||
water_damage = 5,
|
||||
lava_damage = 0,
|
||||
light_damage = 0,
|
||||
animation = {
|
||||
speed_normal = 15,
|
||||
speed_run = 15,
|
||||
stand_start = 0,
|
||||
stand_end = 8,
|
||||
walk_start = 10,
|
||||
walk_end = 18,
|
||||
run_start = 20,
|
||||
run_end = 28,
|
||||
punch_start = 20,
|
||||
punch_end = 28,
|
||||
},
|
||||
on_die = function(self, pos)
|
||||
minetest.set_node(pos, {name = "fire:basic_flame"})
|
||||
end,
|
||||
})
|
||||
|
||||
mobs:register_spawn("mobs_monster:lava_flan", {"default:lava_source"}, 15, 0, 1000, 2, 0)
|
||||
|
||||
mobs:register_egg("mobs_monster:lava_flan", S("Lava Flan"), "default_lava.png", 1)
|
||||
|
||||
-- compatibility
|
||||
mobs:alias_mob("mobs:lava_flan", "mobs_monster:lava_flan")
|
||||
|
||||
-- lava orb
|
||||
minetest.register_craftitem(":mobs:lava_orb", {
|
||||
description = S("Lava orb"),
|
||||
inventory_image = "zmobs_lava_orb.png",
|
||||
})
|
||||
|
||||
minetest.register_alias("zmobs:lava_orb", "mobs:lava_orb")
|
||||
|
||||
minetest.register_craft({
|
||||
type = "fuel",
|
||||
recipe = "mobs:lava_orb",
|
||||
burntime = 80,
|
||||
})
|
||||
|
||||
-- Lava Pick (digs and smelts at same time)
|
||||
|
||||
local old_handle_node_drops = minetest.handle_node_drops
|
||||
|
||||
function minetest.handle_node_drops(pos, drops, digger)
|
||||
|
||||
-- are we holding Lava Pick?
|
||||
if digger:get_wielded_item():get_name() ~= ("mobs:pick_lava") then
|
||||
return old_handle_node_drops(pos, drops, digger)
|
||||
end
|
||||
|
||||
-- reset new smelted drops
|
||||
local hot_drops = {}
|
||||
|
||||
-- loop through current node drops
|
||||
for _, drop in pairs(drops) do
|
||||
|
||||
-- get cooked output of current drops
|
||||
local stack = ItemStack(drop)
|
||||
local output = minetest.get_craft_result({
|
||||
method = "cooking",
|
||||
width = 1,
|
||||
items = {drop}
|
||||
})
|
||||
|
||||
-- if we have cooked result then add to new list
|
||||
if output
|
||||
and output.item
|
||||
and not output.item:is_empty() then
|
||||
|
||||
table.insert(hot_drops,
|
||||
ItemStack({
|
||||
name = output.item:get_name(),
|
||||
count = output.item:to_table().count,
|
||||
})
|
||||
)
|
||||
else -- if not then return normal drops
|
||||
table.insert(hot_drops, stack)
|
||||
end
|
||||
end
|
||||
|
||||
return old_handle_node_drops(pos, hot_drops, digger)
|
||||
end
|
||||
|
||||
minetest.register_tool(":mobs:pick_lava", {
|
||||
description = S("Lava Pickaxe"),
|
||||
inventory_image = "mobs_pick_lava.png",
|
||||
tool_capabilities = {
|
||||
full_punch_interval = 0.4,
|
||||
max_drop_level=3,
|
||||
groupcaps={
|
||||
cracky = {times={[1]=1.80, [2]=0.90, [3]=0.45}, uses=30, maxlevel=3},
|
||||
},
|
||||
damage_groups = {fleshy=6},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "mobs:pick_lava",
|
||||
recipe = {
|
||||
{"mobs:lava_orb", "mobs:lava_orb", "mobs:lava_orb"},
|
||||
{"", "default:obsidian_shard", ""},
|
||||
{"", "default:obsidian_shard", ""},
|
||||
}
|
||||
})
|
21
mods/mobs_aggressive/mobs_monster/license.txt
Normal file
@ -0,0 +1,21 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2016 TenPlus1
|
||||
|
||||
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.
|
37
mods/mobs_aggressive/mobs_monster/locale/de.txt
Normal file
@ -0,0 +1,37 @@
|
||||
# German Translation for mobs_monster mod
|
||||
# Deutsche Übersetzung der mobs_monster Mod
|
||||
# last update: 2016/June/10
|
||||
# Author: Xanthin
|
||||
|
||||
#dirtmonster.lua
|
||||
Dirt Monster = Erdmonster
|
||||
|
||||
#dungeonmaster.lua
|
||||
Dungeon Master = Kerkermeister
|
||||
|
||||
#init.lua
|
||||
[MOD] Mobs Redo 'Monsters' loaded = [MOD] Mobs Redo 'Monsters' geladen
|
||||
|
||||
#lava_flan.lua
|
||||
Lava Flan = Lavaflan
|
||||
Lava orb = Lavakugel
|
||||
Lava Pickaxe = Lavaspitzhacke
|
||||
|
||||
#mese_monster.lua
|
||||
Mese Monster = Mesemonster
|
||||
|
||||
#oerkki.lua
|
||||
Oerkki = Oerkki
|
||||
|
||||
#sandmonster.lua
|
||||
Sand Monster = Sandmonster
|
||||
|
||||
#spider.lua
|
||||
Spider = Spinne
|
||||
Cobweb = Spinnennetz
|
||||
|
||||
#stonemonster.lua
|
||||
Stone Monster = Steinmonster
|
||||
|
||||
#treemonster.lua
|
||||
Tree Monster = Baummonster
|
35
mods/mobs_aggressive/mobs_monster/locale/template.txt
Normal file
@ -0,0 +1,35 @@
|
||||
# Template for translations of mobs_monster mod
|
||||
# last update: 2016/June/10
|
||||
|
||||
#dirtmonster.lua
|
||||
Dirt Monster =
|
||||
|
||||
#dungeonmaster.lua
|
||||
Dungeon Master =
|
||||
|
||||
#init.lua
|
||||
[MOD] Mobs Redo 'Monsters' loaded =
|
||||
|
||||
#lava_flan.lua
|
||||
Lava Flan =
|
||||
Lava orb =
|
||||
Lava Pickaxe =
|
||||
|
||||
#mese_monster.lua
|
||||
Mese Monster =
|
||||
|
||||
#oerkki.lua
|
||||
Oerkki =
|
||||
|
||||
#sandmonster.lua
|
||||
Sand Monster =
|
||||
|
||||
#spider.lua
|
||||
Spider =
|
||||
Cobweb =
|
||||
|
||||
#stonemonster.lua
|
||||
Stone Monster =
|
||||
|
||||
#treemonster.lua
|
||||
Tree Monster =
|
97
mods/mobs_aggressive/mobs_monster/mese_monster.lua
Normal file
@ -0,0 +1,97 @@
|
||||
|
||||
local S = mobs.intllib
|
||||
|
||||
-- Mese Monster by Zeg9
|
||||
|
||||
mobs:register_mob("mobs_monster:mese_monster", {
|
||||
type = "monster",
|
||||
passive = false,
|
||||
damage = 3,
|
||||
attack_type = "shoot",
|
||||
shoot_interval = 0.5,
|
||||
arrow = "mobs_monster:mese_arrow",
|
||||
shoot_offset = 2,
|
||||
hp_min = 10,
|
||||
hp_max = 25,
|
||||
armor = 80,
|
||||
collisionbox = {-0.5, -1.5, -0.5, 0.5, 0.5, 0.5},
|
||||
visual = "mesh",
|
||||
mesh = "zmobs_mese_monster.x",
|
||||
textures = {
|
||||
{"zmobs_mese_monster.png"},
|
||||
},
|
||||
blood_texture = "default_mese_crystal_fragment.png",
|
||||
makes_footstep_sound = false,
|
||||
sounds = {
|
||||
random = "mobs_mesemonster",
|
||||
},
|
||||
view_range = 10,
|
||||
walk_velocity = 0.5,
|
||||
run_velocity = 2,
|
||||
jump = true,
|
||||
jump_height = 8,
|
||||
fall_damage = 0,
|
||||
fall_speed = -6,
|
||||
stepheight = 2.1,
|
||||
drops = {
|
||||
{name = "default:mese_crystal", chance = 9, min = 1, max = 3},
|
||||
{name = "default:mese_crystal_fragment", chance = 1, min = 1, max = 9},
|
||||
},
|
||||
water_damage = 1,
|
||||
lava_damage = 1,
|
||||
light_damage = 0,
|
||||
animation = {
|
||||
speed_normal = 15,
|
||||
speed_run = 15,
|
||||
stand_start = 0,
|
||||
stand_end = 14,
|
||||
walk_start = 15,
|
||||
walk_end = 38,
|
||||
run_start = 40,
|
||||
run_end = 63,
|
||||
punch_start = 40,
|
||||
punch_end = 63,
|
||||
},
|
||||
})
|
||||
|
||||
mobs:register_spawn("mobs_monster:mese_monster", {"default:stone"}, 7, 0, 5000, 1, -20)
|
||||
|
||||
mobs:register_egg("mobs_monster:mese_monster", S("Mese Monster"), "default_mese_block.png", 1)
|
||||
|
||||
-- compatibility
|
||||
mobs:alias_mob("mobs:mese_monster", "mobs_monster:mese_monster")
|
||||
|
||||
-- mese arrow (weapon)
|
||||
mobs:register_arrow("mobs_monster:mese_arrow", {
|
||||
visual = "sprite",
|
||||
visual_size = {x = 0.5, y = 0.5},
|
||||
textures = {"default_mese_crystal_fragment.png"},
|
||||
velocity = 6,
|
||||
|
||||
hit_player = function(self, player)
|
||||
player:punch(self.object, 1.0, {
|
||||
full_punch_interval = 1.0,
|
||||
damage_groups = {fleshy = 2},
|
||||
}, nil)
|
||||
end,
|
||||
|
||||
hit_mob = function(self, player)
|
||||
player:punch(self.object, 1.0, {
|
||||
full_punch_interval = 1.0,
|
||||
damage_groups = {fleshy = 2},
|
||||
}, nil)
|
||||
end,
|
||||
|
||||
hit_node = function(self, pos, node)
|
||||
end
|
||||
})
|
||||
|
||||
-- 9x mese crystal fragments = 1x mese crystal
|
||||
minetest.register_craft({
|
||||
output = "default:mese_crystal",
|
||||
recipe = {
|
||||
{"default:mese_crystal_fragment", "default:mese_crystal_fragment", "default:mese_crystal_fragment"},
|
||||
{"default:mese_crystal_fragment", "default:mese_crystal_fragment", "default:mese_crystal_fragment"},
|
||||
{"default:mese_crystal_fragment", "default:mese_crystal_fragment", "default:mese_crystal_fragment"},
|
||||
}
|
||||
})
|
1
mods/mobs_aggressive/mobs_monster/mod.conf
Normal file
@ -0,0 +1 @@
|
||||
name = mobs_monster
|
BIN
mods/mobs_aggressive/mobs_monster/models/mobs_dungeon_master.b3d
Normal file
BIN
mods/mobs_aggressive/mobs_monster/models/mobs_oerkki.b3d
Normal file
BIN
mods/mobs_aggressive/mobs_monster/models/mobs_sand_monster.b3d
Normal file
6103
mods/mobs_aggressive/mobs_monster/models/mobs_spider.x
Normal file
BIN
mods/mobs_aggressive/mobs_monster/models/mobs_stone_monster.b3d
Normal file
BIN
mods/mobs_aggressive/mobs_monster/models/mobs_tree_monster.b3d
Normal file
3506
mods/mobs_aggressive/mobs_monster/models/zmobs_lava_flan.x
Normal file
2999
mods/mobs_aggressive/mobs_monster/models/zmobs_mese_monster.x
Normal file
65
mods/mobs_aggressive/mobs_monster/oerkki.lua
Normal file
@ -0,0 +1,65 @@
|
||||
|
||||
local S = mobs.intllib
|
||||
|
||||
-- Oerkki by PilzAdam
|
||||
|
||||
mobs:register_mob("mobs_monster:oerkki", {
|
||||
type = "monster",
|
||||
passive = false,
|
||||
attack_type = "dogfight",
|
||||
pathfinding = true,
|
||||
reach = 2,
|
||||
damage = 4,
|
||||
hp_min = 8,
|
||||
hp_max = 34,
|
||||
armor = 100,
|
||||
collisionbox = {-0.4, -1, -0.4, 0.4, 0.9, 0.4},
|
||||
visual = "mesh",
|
||||
mesh = "mobs_oerkki.b3d",
|
||||
textures = {
|
||||
{"mobs_oerkki.png"},
|
||||
{"mobs_oerkki2.png"},
|
||||
},
|
||||
makes_footstep_sound = false,
|
||||
sounds = {
|
||||
random = "mobs_oerkki",
|
||||
},
|
||||
walk_velocity = 1,
|
||||
run_velocity = 3,
|
||||
view_range = 10,
|
||||
jump = true,
|
||||
drops = {
|
||||
{name = "default:obsidian", chance = 3, min = 1, max = 2},
|
||||
},
|
||||
water_damage = 2,
|
||||
lava_damage = 4,
|
||||
light_damage = 1,
|
||||
fear_height = 4,
|
||||
animation = {
|
||||
stand_start = 0,
|
||||
stand_end = 23,
|
||||
walk_start = 24,
|
||||
walk_end = 36,
|
||||
run_start = 37,
|
||||
run_end = 49,
|
||||
punch_start = 37,
|
||||
punch_end = 49,
|
||||
speed_normal = 15,
|
||||
speed_run = 15,
|
||||
},
|
||||
replace_rate = 5,
|
||||
replace_what = {"default:torch"},
|
||||
replace_with = "air",
|
||||
replace_offset = -1,
|
||||
immune_to = {
|
||||
{"default:sword_wood", 0}, -- no damage
|
||||
{"default:gold_lump", -10}, -- heals by 10 points
|
||||
},
|
||||
})
|
||||
|
||||
mobs:register_spawn("mobs_monster:oerkki", {"default:stone"}, 7, 0, 7000, 1, -10)
|
||||
|
||||
mobs:register_egg("mobs_monster:oerkki", S("Oerkki"), "default_obsidian.png", 1)
|
||||
|
||||
-- compatibility
|
||||
mobs:alias_mob("mobs:oerkki", "mobs_monster:oerkki")
|
38
mods/mobs_aggressive/mobs_monster/readme.md
Normal file
@ -0,0 +1,38 @@
|
||||
|
||||
MONSTER MOBS
|
||||
|
||||
Dirt Monster
|
||||
|
||||
- Spawning at night on green grass (or grey in ethereal) these mobs wander around looking for a player to eat. Drops 1-5 dirt when killed.
|
||||
|
||||
Dungeon Master
|
||||
|
||||
- Spawning below -70 underground DM's have a tendency to hurl fire balls at unsuspecting players and can cause major damage, but get too close and he will switch to dogfight attack. Can drop mese or diamond when killed.
|
||||
|
||||
Lava Flan
|
||||
|
||||
- Cute as they may look lava flan wallow in their namesake (no, not flans) and get curious about players who wander by, forgetting that they can burn you and cause damage. They have a 1 in 5 chance of dropping lava orb when killed.
|
||||
|
||||
Mese Monster
|
||||
|
||||
- These mobs are territorial and spawn below -20 and will fire mese shards at passers by, so best avoided. Will drop mese when killed.
|
||||
|
||||
Oerkki
|
||||
|
||||
- Found in dark areas like most monsters Oerkki wander the caverns stealing away torches on the ground and attacking anyone found in that area. 1 in 3 chance of dropping obsidian.
|
||||
|
||||
Sand Monster
|
||||
|
||||
- The hot deserts are home to these guys who spawn at any time of the day to attack players. They drop 3-5 desert sand when killed.
|
||||
|
||||
Spider
|
||||
|
||||
- Found in dark holes inside desertstone (crystal biomes in ethereal), spiders wait for prey to amble past and strike. They are mostly docile during the day though unless hit. Will drop string when killed.
|
||||
|
||||
Stone Monster
|
||||
|
||||
- Found underground in dark caves these mobs seem to be zombie-like in fashion with a tendency to rush a player in the area. can drop torch, iron or coal when killed.
|
||||
|
||||
Tree Monster
|
||||
|
||||
- Found atop tree's at night time they drop down and look for food in the form of players. Can drop saplings and sometimes an apple or three.
|
63
mods/mobs_aggressive/mobs_monster/sand_monster.lua
Normal file
@ -0,0 +1,63 @@
|
||||
|
||||
local S = mobs.intllib
|
||||
|
||||
-- Sand Monster by PilzAdam
|
||||
|
||||
mobs:register_mob("mobs_monster:sand_monster", {
|
||||
type = "monster",
|
||||
passive = false,
|
||||
attack_type = "dogfight",
|
||||
pathfinding = true,
|
||||
reach = 2,
|
||||
damage = 1,
|
||||
hp_min = 4,
|
||||
hp_max = 20,
|
||||
armor = 100,
|
||||
collisionbox = {-0.4, -1, -0.4, 0.4, 0.8, 0.4},
|
||||
visual = "mesh",
|
||||
mesh = "mobs_sand_monster.b3d",
|
||||
textures = {
|
||||
{"mobs_sand_monster.png"},
|
||||
},
|
||||
makes_footstep_sound = true,
|
||||
sounds = {
|
||||
random = "mobs_sandmonster",
|
||||
},
|
||||
walk_velocity = 1.5,
|
||||
run_velocity = 4,
|
||||
view_range = 15,
|
||||
jump = true,
|
||||
floats = 0,
|
||||
drops = {
|
||||
{name = "default:desert_sand", chance = 1, min = 3, max = 5},
|
||||
},
|
||||
water_damage = 3,
|
||||
lava_damage = 4,
|
||||
light_damage = 0,
|
||||
fear_height = 4,
|
||||
animation = {
|
||||
speed_normal = 15,
|
||||
speed_run = 15,
|
||||
stand_start = 0,
|
||||
stand_end = 39,
|
||||
walk_start = 41,
|
||||
walk_end = 72,
|
||||
run_start = 74,
|
||||
run_end = 105,
|
||||
punch_start = 74,
|
||||
punch_end = 105,
|
||||
},
|
||||
--[[
|
||||
custom_attack = function(self, p)
|
||||
local pos = self.object:getpos()
|
||||
minetest.add_item(pos, "default:sand")
|
||||
end,
|
||||
]]
|
||||
})
|
||||
|
||||
mobs:register_spawn("mobs_monster:sand_monster", {"default:desert_sand"}, 20, 0, 7000, 1, 31000)
|
||||
|
||||
mobs:register_egg("mobs_monster:sand_monster", S("Sand Monster"), "default_desert_sand.png", 1)
|
||||
|
||||
-- compatibility
|
||||
mobs:alias_mob("mobs:sand_monster", "mobs_monster:sand_monster")
|
BIN
mods/mobs_aggressive/mobs_monster/sounds/mobs_dirtmonster.ogg
Normal file
BIN
mods/mobs_aggressive/mobs_monster/sounds/mobs_dungeonmaster.ogg
Normal file
BIN
mods/mobs_aggressive/mobs_monster/sounds/mobs_fireball.ogg
Normal file
BIN
mods/mobs_aggressive/mobs_monster/sounds/mobs_lavaflan.ogg
Normal file
BIN
mods/mobs_aggressive/mobs_monster/sounds/mobs_mesemonster.ogg
Normal file
BIN
mods/mobs_aggressive/mobs_monster/sounds/mobs_oerkki.ogg
Normal file
BIN
mods/mobs_aggressive/mobs_monster/sounds/mobs_sandmonster.ogg
Normal file
BIN
mods/mobs_aggressive/mobs_monster/sounds/mobs_spider.ogg
Normal file
BIN
mods/mobs_aggressive/mobs_monster/sounds/mobs_stonemonster.ogg
Normal file
BIN
mods/mobs_aggressive/mobs_monster/sounds/mobs_treemonster.ogg
Normal file
96
mods/mobs_aggressive/mobs_monster/spider.lua
Normal file
@ -0,0 +1,96 @@
|
||||
|
||||
local S = mobs.intllib
|
||||
|
||||
-- Spider by AspireMint (fishyWET (CC-BY-SA 3.0 license for texture)
|
||||
|
||||
mobs:register_mob("mobs_monster:spider", {
|
||||
docile_by_day = true,
|
||||
group_attack = true,
|
||||
type = "monster",
|
||||
passive = false,
|
||||
attack_type = "dogfight",
|
||||
reach = 2,
|
||||
damage = 3,
|
||||
hp_min = 20,
|
||||
hp_max = 40,
|
||||
armor = 200,
|
||||
collisionbox = {-0.9, -0.01, -0.7, 0.7, 0.6, 0.7},
|
||||
visual = "mesh",
|
||||
mesh = "mobs_spider.x",
|
||||
textures = {
|
||||
{"mobs_spider.png"},
|
||||
},
|
||||
visual_size = {x = 7, y = 7},
|
||||
makes_footstep_sound = false,
|
||||
sounds = {
|
||||
random = "mobs_spider",
|
||||
attack = "mobs_spider",
|
||||
},
|
||||
walk_velocity = 1,
|
||||
run_velocity = 3,
|
||||
jump = true,
|
||||
view_range = 15,
|
||||
floats = 0,
|
||||
drops = {
|
||||
{name = "farming:string", chance = 1, min = 1, max = 2},
|
||||
{name = "ethereal:crystal_spike", chance = 15, min = 1, max = 2},
|
||||
},
|
||||
water_damage = 5,
|
||||
lava_damage = 5,
|
||||
light_damage = 0,
|
||||
animation = {
|
||||
speed_normal = 15,
|
||||
speed_run = 15,
|
||||
stand_start = 1,
|
||||
stand_end = 1,
|
||||
walk_start = 20,
|
||||
walk_end = 40,
|
||||
run_start = 20,
|
||||
run_end = 40,
|
||||
punch_start = 50,
|
||||
punch_end = 90,
|
||||
},
|
||||
})
|
||||
|
||||
mobs:register_spawn("mobs_monster:spider",
|
||||
{"default:desert_stone", "ethereal:crystal_dirt"}, 13, 0, 7000, 1, 71)
|
||||
|
||||
mobs:register_egg("mobs_monster:spider", S("Spider"), "mobs_cobweb.png", 1)
|
||||
|
||||
-- compatibility
|
||||
mobs:alias_mob("mobs:spider", "mobs_monster:spider")
|
||||
|
||||
-- ethereal crystal spike compatibility
|
||||
if not minetest.get_modpath("ethereal") then
|
||||
minetest.register_alias("ethereal:crystal_spike", "default:sandstone")
|
||||
end
|
||||
|
||||
-- cobweb
|
||||
minetest.register_node(":mobs:cobweb", {
|
||||
description = S("Cobweb"),
|
||||
drawtype = "plantlike",
|
||||
visual_scale = 1.1,
|
||||
tiles = {"mobs_cobweb.png"},
|
||||
inventory_image = "mobs_cobweb.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
liquid_viscosity = 11,
|
||||
liquidtype = "source",
|
||||
liquid_alternative_flowing = "mobs:cobweb",
|
||||
liquid_alternative_source = "mobs:cobweb",
|
||||
liquid_renewable = false,
|
||||
liquid_range = 0,
|
||||
walkable = false,
|
||||
groups = {snappy = 1},
|
||||
drop = "farming:cotton",
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "mobs:cobweb",
|
||||
recipe = {
|
||||
{"farming:string", "", "farming:string"},
|
||||
{"", "farming:string", ""},
|
||||
{"farming:string", "", "farming:string"},
|
||||
}
|
||||
})
|
59
mods/mobs_aggressive/mobs_monster/stone_monster.lua
Normal file
@ -0,0 +1,59 @@
|
||||
|
||||
local S = mobs.intllib
|
||||
|
||||
-- Stone Monster by PilzAdam
|
||||
|
||||
mobs:register_mob("mobs_monster:stone_monster", {
|
||||
type = "monster",
|
||||
passive = false,
|
||||
attack_type = "dogfight",
|
||||
pathfinding = true,
|
||||
reach = 2,
|
||||
damage = 3,
|
||||
hp_min = 12,
|
||||
hp_max = 35,
|
||||
armor = 80,
|
||||
collisionbox = {-0.4, -1, -0.4, 0.4, 0.9, 0.4},
|
||||
visual = "mesh",
|
||||
mesh = "mobs_stone_monster.b3d",
|
||||
textures = {
|
||||
{"mobs_stone_monster.png"},
|
||||
{"mobs_stone_monster2.png"}, -- by AMMOnym
|
||||
},
|
||||
makes_footstep_sound = true,
|
||||
sounds = {
|
||||
random = "mobs_stonemonster",
|
||||
},
|
||||
walk_velocity = 1,
|
||||
run_velocity = 2,
|
||||
jump = true,
|
||||
floats = 0,
|
||||
view_range = 10,
|
||||
drops = {
|
||||
{name = "default:torch", chance = 2, min = 3, max = 5},
|
||||
{name = "default:iron_lump", chance = 5, min = 1, max = 2},
|
||||
{name = "default:coal_lump", chance = 3, min = 1, max = 3},
|
||||
},
|
||||
water_damage = 0,
|
||||
lava_damage = 1,
|
||||
light_damage = 0,
|
||||
animation = {
|
||||
speed_normal = 15,
|
||||
speed_run = 15,
|
||||
stand_start = 0,
|
||||
stand_end = 14,
|
||||
walk_start = 15,
|
||||
walk_end = 38,
|
||||
run_start = 40,
|
||||
run_end = 63,
|
||||
punch_start = 40,
|
||||
punch_end = 63,
|
||||
},
|
||||
})
|
||||
|
||||
mobs:register_spawn("mobs_monster:stone_monster", {"default:stone", "default:desert_stone"}, 7, 0, 7000, 1, 0)
|
||||
|
||||
mobs:register_egg("mobs_monster:stone_monster", S("Stone Monster"), "default_stone.png", 1)
|
||||
|
||||
-- compatibility
|
||||
mobs:alias_mob("mobs:stone_monster", "mobs_monster:stone_monster")
|
BIN
mods/mobs_aggressive/mobs_monster/textures/mobs_cobweb.png
Normal file
After Width: | Height: | Size: 144 B |
BIN
mods/mobs_aggressive/mobs_monster/textures/mobs_dirt_monster.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
mods/mobs_aggressive/mobs_monster/textures/mobs_dungeon_master.png
Executable file
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.9 KiB |
BIN
mods/mobs_aggressive/mobs_monster/textures/mobs_fireball.png
Normal file
After Width: | Height: | Size: 293 B |
BIN
mods/mobs_aggressive/mobs_monster/textures/mobs_oerkki.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
mods/mobs_aggressive/mobs_monster/textures/mobs_oerkki2.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
mods/mobs_aggressive/mobs_monster/textures/mobs_pick_lava.png
Normal file
After Width: | Height: | Size: 239 B |
BIN
mods/mobs_aggressive/mobs_monster/textures/mobs_sand_monster.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
mods/mobs_aggressive/mobs_monster/textures/mobs_spider.png
Normal file
After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 3.6 KiB |
BIN
mods/mobs_aggressive/mobs_monster/textures/mobs_tree_monster.png
Normal file
After Width: | Height: | Size: 6.6 KiB |
After Width: | Height: | Size: 4.7 KiB |
BIN
mods/mobs_aggressive/mobs_monster/textures/zmobs_lava_flan.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
mods/mobs_aggressive/mobs_monster/textures/zmobs_lava_flan2.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
mods/mobs_aggressive/mobs_monster/textures/zmobs_lava_flan3.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
mods/mobs_aggressive/mobs_monster/textures/zmobs_lava_orb.png
Normal file
After Width: | Height: | Size: 522 B |
After Width: | Height: | Size: 567 B |
66
mods/mobs_aggressive/mobs_monster/tree_monster.lua
Normal file
@ -0,0 +1,66 @@
|
||||
|
||||
local S = mobs.intllib
|
||||
|
||||
-- Tree Monster (or Tree Gollum) by PilzAdam
|
||||
|
||||
mobs:register_mob("mobs_monster:tree_monster", {
|
||||
type = "monster",
|
||||
passive = false,
|
||||
attack_type = "dogfight",
|
||||
reach = 2,
|
||||
damage = 2,
|
||||
hp_min = 7,
|
||||
hp_max = 33,
|
||||
armor = 100,
|
||||
collisionbox = {-0.4, -1, -0.4, 0.4, 0.8, 0.4},
|
||||
visual = "mesh",
|
||||
mesh = "mobs_tree_monster.b3d",
|
||||
textures = {
|
||||
{"mobs_tree_monster.png"},
|
||||
{"mobs_tree_monster2.png"},
|
||||
},
|
||||
blood_texture = "default_wood.png",
|
||||
makes_footstep_sound = true,
|
||||
sounds = {
|
||||
random = "mobs_treemonster",
|
||||
},
|
||||
walk_velocity = 1,
|
||||
run_velocity = 3,
|
||||
jump = true,
|
||||
view_range = 15,
|
||||
drops = {
|
||||
{name = "ethereal:tree_sapling", chance = 3, min = 1, max = 2},
|
||||
{name = "ethereal:jungle_tree_sapling", chance = 3, min = 1, max = 2},
|
||||
{name = "default:apple", chance = 2, min = 1, max=3},
|
||||
},
|
||||
water_damage = 0,
|
||||
lava_damage = 0,
|
||||
light_damage = 2,
|
||||
fall_damage = 0,
|
||||
animation = {
|
||||
speed_normal = 15,
|
||||
speed_run = 15,
|
||||
stand_start = 0,
|
||||
stand_end = 24,
|
||||
walk_start = 25,
|
||||
walk_end = 47,
|
||||
run_start = 48,
|
||||
run_end = 62,
|
||||
punch_start = 48,
|
||||
punch_end = 62,
|
||||
},
|
||||
})
|
||||
|
||||
mobs:register_spawn("mobs_monster:tree_monster",
|
||||
{"default:leaves", "default:jungleleaves"}, 7, 0, 7000, 1, 31000, false)
|
||||
|
||||
mobs:register_egg("mobs_monster:tree_monster", S("Tree Monster"), "default_tree_top.png", 1)
|
||||
|
||||
-- compatibility
|
||||
mobs:alias_mob("mobs:tree_monster", "mobs_monster:tree_monster")
|
||||
|
||||
-- ethereal sapling compatibility
|
||||
if not minetest.get_modpath("ethereal") then
|
||||
minetest.register_alias("ethereal:tree_sapling", "default:sapling")
|
||||
minetest.register_alias("ethereal:jungle_tree_sapling", "default:junglesapling")
|
||||
end
|