Compare commits

...

5 Commits

Author SHA1 Message Date
Glunggi 6aa9353b5b Disable treespawning on mapgen 2016-06-06 16:00:20 +02:00
Glunggi 00d136c340 guitexture 2016-03-16 14:19:12 +01:00
Glunggi 53e5667206 chances some depraced stuff 2016-01-19 09:43:23 +01:00
Glunggi cece0e786c add farming (former framing_plus)fruits 2015-11-29 23:29:51 +01:00
Glunggi 2655089126 rework mobs a bit 2015-11-15 07:52:15 +01:00
111 changed files with 72754 additions and 342 deletions

View File

@ -5,8 +5,8 @@ minetest.register_ore({
clust_scarcity = 1 * 1 * 1,
clust_num_ores = 5,
clust_size = 2,
height_min = -30912, -- Engine changes can modify this value.
height_max = -30656, -- This ensures the bottom of the world is not even loaded.
y_min = -30912, -- Engine changes can modify this value.
y_max = -30656, -- This ensures the bottom of the world is not even loaded.
})
minetest.register_ore({
@ -16,13 +16,13 @@ minetest.register_ore({
clust_scarcity = 1 * 1 * 1,
clust_num_ores = 5,
clust_size = 2,
height_min = -30656,
height_max = -30000,
y_min = -30656,
y_max = -30000,
})
minetest.register_node("bedrock:bedrock", {
description = "Bedrock",
tile_images = {"bedrock_bedrock.png"},
tiles = {"bedrock_bedrock.png"},
drop = "",
groups = {unbreakable = 1, not_in_creative_inventory = 1}, -- For Map Tools' admin pickaxe.
sounds = default.node_sound_stone_defaults(),
@ -30,7 +30,7 @@ minetest.register_node("bedrock:bedrock", {
minetest.register_node("bedrock:deepstone", {
description = "Deepstone",
tile_images = {"bedrock_deepstone.png"},
tiles = {"bedrock_deepstone.png"},
drop = "default:stone", -- Intended.
groups = {cracky = 1},
sounds = default.node_sound_stone_defaults(),

View File

@ -24,14 +24,14 @@ minetest.register_alias("mapgen_sandstone", "default:tuff")
-- Flora
minetest.register_alias("mapgen_tree", "default:cobble")
minetest.register_alias("mapgen_leaves", "default:cobble")
minetest.register_alias("mapgen_apple", "default:cobble")
minetest.register_alias("mapgen_jungletree", "default:cobble")
minetest.register_alias("mapgen_jungleleaves", "default:cobble")
minetest.register_alias("mapgen_junglegrass", "default:cobble")
minetest.register_alias("mapgen_pine_tree", "default:cobble")
minetest.register_alias("mapgen_pine_needles", "default:cobble")
minetest.register_alias("mapgen_tree", "air")
minetest.register_alias("mapgen_leaves", "air")
minetest.register_alias("mapgen_apple", "air")
minetest.register_alias("mapgen_jungletree", "air")
minetest.register_alias("mapgen_jungleleaves", "air")
minetest.register_alias("mapgen_junglegrass", "air")
minetest.register_alias("mapgen_pine_tree", "air")
minetest.register_alias("mapgen_pine_needles", "air")
-- Dungeons
@ -42,7 +42,7 @@ minetest.register_alias("mapgen_sandstonebrick", "default:sandstonebrick")
minetest.register_alias("mapgen_stair_sandstonebrick", "stairs:stair_sandstonebrick")
minetest.register_on_mapgen_init(function(mgparams)
minetest.set_mapgen_params({mgname="v6", mg_flags={"nodungeons", "notrees", "caves"}, mgv6_spflags={"mudflow", "nosnowbiomes", "nojungles"}, "water_level=-5"})
minetest.set_mapgen_params({mgname="v6", mg_flags={"nodungeons", "notrees", "caves"}, mgv6_spflags={"mudflow", "nosnowbiomes", "notrees", "nojungles"}, "water_level=-5"})
end)
--
@ -56,8 +56,8 @@ minetest.register_ore({
clust_scarcity = 24*24*24,
clust_num_ores = 1,
clust_size = 2,
height_min = -31000,
height_max = 20,
y_min = -31000,
y_max = 20,
})
minetest.register_ore({
@ -67,8 +67,8 @@ minetest.register_ore({
clust_scarcity =16*16*16,
clust_num_ores = 2,
clust_size = 3,
height_min = -31000,
height_max = -50,
y_min = -31000,
y_max = -50,
flags = "absheight",
})
@ -79,8 +79,8 @@ minetest.register_ore({
clust_scarcity = 24*24*24,
clust_num_ores = 1,
clust_size = 2,
height_min = -31000,
height_max = -300,
y_min = -31000,
y_max = -300,
})
minetest.register_ore({
@ -90,8 +90,8 @@ minetest.register_ore({
clust_scarcity =16*16*16,
clust_num_ores = 2,
clust_size = 3,
height_min = -31000,
height_max = -550,
y_min = -31000,
y_max = -550,
flags = "absheight",
})
@ -102,8 +102,8 @@ minetest.register_ore({
clust_scarcity = 24*24*24,
clust_num_ores = 1,
clust_size = 2,
height_min = -31000,
height_max = -1200,
y_min = -31000,
y_max = -1200,
})
minetest.register_ore({
@ -113,8 +113,8 @@ minetest.register_ore({
clust_scarcity =16*16*16,
clust_num_ores = 2,
clust_size = 3,
height_min = -31000,
height_max = -5000,
y_min = -31000,
y_max = -5000,
flags = "absheight",
})
@ -125,8 +125,8 @@ minetest.register_ore({
clust_scarcity = 24*24*24,
clust_num_ores = 1,
clust_size = 2,
height_min = -31000,
height_max = -900,
y_min = -31000,
y_max = -900,
})
minetest.register_ore({
@ -136,8 +136,8 @@ minetest.register_ore({
clust_scarcity =16*16*16,
clust_num_ores = 2,
clust_size = 3,
height_min = -31000,
height_max = -3000,
y_min = -31000,
y_max = -3000,
flags = "absheight",
})
@ -148,8 +148,8 @@ minetest.register_ore({
clust_scarcity = 8*8*8,
clust_num_ores = 8,
clust_size = 3,
height_min = -31000,
height_max = 64,
y_min = -31000,
y_max = 64,
flags = "absheight",
})
@ -161,8 +161,8 @@ minetest.register_ore({
clust_scarcity = 12*12*12,
clust_num_ores = 16,
clust_size = 6,
height_min = -31000,
height_max = 0,
y_min = -31000,
y_max = 0,
flags = "absheight",
})
@ -173,8 +173,8 @@ minetest.register_ore({
clust_scarcity = 24*24*24,
clust_num_ores = 27,
clust_size = 6,
height_min = -31000,
height_max = -3000,
y_min = -31000,
y_max = -3000,
flags = "absheight",
})
@ -186,8 +186,8 @@ minetest.register_ore({
clust_scarcity = 12*12*12,
clust_num_ores = 3,
clust_size = 2,
height_min = -25,
height_max = -2,
y_min = -25,
y_max = -2,
})
@ -198,8 +198,8 @@ minetest.register_ore({
clust_scarcity = 9*9*9,
clust_num_ores = 3,
clust_size = 3,
height_min = -63,
height_max = -26,
y_min = -63,
y_max = -26,
})
@ -210,8 +210,8 @@ minetest.register_ore({
clust_scarcity = 7*7*7,
clust_num_ores = 5,
clust_size = 3,
height_min = -31000,
height_max = -64,
y_min = -31000,
y_max = -64,
flags = "absheight",
})
@ -223,8 +223,8 @@ minetest.register_ore({
clust_scarcity = 24*24*24,
clust_num_ores = 27,
clust_size = 6,
height_min = -31000,
height_max = -800,
y_min = -31000,
y_max = -800,
flags = "absheight",
})
@ -236,8 +236,8 @@ minetest.register_ore({
clust_scarcity = 18*18*18,
clust_num_ores = 2,
clust_size = 2,
height_min = -355,
height_max = -204,
y_min = -355,
y_max = -204,
flags = "absheight",
})
@ -249,8 +249,8 @@ minetest.register_ore({
clust_scarcity = 14*14*14,
clust_num_ores = 3,
clust_size = 2,
height_min = -31000,
height_max = -356,
y_min = -31000,
y_max = -356,
flags = "absheight",
})
@ -262,8 +262,8 @@ minetest.register_ore({
clust_scarcity = 36*36*36,
clust_num_ores = 5,
clust_size = 2,
height_min = -31000,
height_max = -5000,
y_min = -31000,
y_max = -5000,
flags = "absheight",
})
@ -275,8 +275,8 @@ minetest.register_ore({
clust_scarcity = 15*15*15,
clust_num_ores = 1,
clust_size = 2,
height_min = -666,
height_max = -333,
y_min = -666,
y_max = -333,
})
@ -287,8 +287,8 @@ minetest.register_ore({
clust_scarcity = 13*13*13,
clust_num_ores = 5,
clust_size = 3,
height_min = -31000,
height_max = -666,
y_min = -31000,
y_max = -666,
flags = "absheight",
})
@ -299,8 +299,8 @@ minetest.register_ore({
clust_scarcity = 15*15*15,
clust_num_ores = 4,
clust_size = 3,
height_min = -31000,
height_max = -10000,
y_min = -31000,
y_max = -10000,
flags = "absheight",
})
@ -311,8 +311,8 @@ minetest.register_ore({
clust_scarcity = 15*15*15,
clust_num_ores = 4,
clust_size = 3,
height_min = -31000,
height_max = -10000,
y_min = -31000,
y_max = -10000,
flags = "absheight",
})
@ -323,8 +323,8 @@ minetest.register_ore({
clust_scarcity = 15*15*15,
clust_num_ores = 4,
clust_size = 3,
height_min = -31000,
height_max = -10000,
y_min = -31000,
y_max = -10000,
flags = "absheight",
})
@ -335,8 +335,8 @@ minetest.register_ore({
clust_scarcity = 15*15*15,
clust_num_ores = 4,
clust_size = 3,
height_min = -31000,
height_max = -10000,
y_min = -31000,
y_max = -10000,
flags = "absheight",
})
@ -347,8 +347,8 @@ minetest.register_ore({
clust_scarcity = 12*12*12,
clust_num_ores = 4,
clust_size = 3,
height_min = -163,
height_max = -116,
y_min = -163,
y_max = -116,
})
@ -359,8 +359,8 @@ minetest.register_ore({
clust_scarcity = 9*9*9,
clust_num_ores = 5,
clust_size = 3,
height_min = -31000,
height_max = -164,
y_min = -31000,
y_max = -164,
flags = "absheight",
})
@ -371,8 +371,8 @@ minetest.register_ore({
clust_scarcity = 9*9*9,
clust_num_ores = 5,
clust_size = 3,
height_min = -31000,
height_max = -1900,
y_min = -31000,
y_max = -1900,
flags = "absheight",
})
@ -383,8 +383,8 @@ minetest.register_ore({
clust_scarcity = 12*12*12,
clust_num_ores = 4,
clust_size = 3,
height_min = -163,
height_max = -116,
y_min = -163,
y_max = -116,
})
@ -395,8 +395,8 @@ minetest.register_ore({
clust_scarcity = 9*9*9,
clust_num_ores = 5,
clust_size = 3,
height_min = -31000,
height_max = -164,
y_min = -31000,
y_max = -164,
flags = "absheight",
})
@ -407,8 +407,8 @@ minetest.register_ore({
clust_scarcity = 9*9*9,
clust_num_ores = 5,
clust_size = 3,
height_min = -31000,
height_max = -1900,
y_min = -31000,
y_max = -1900,
flags = "absheight",
})
@ -423,7 +423,7 @@ minetest.register_ore({
clust_size = 5,
y_min = -10,
y_max = 31000,
noise_threshhold = 0.0,
noise_threshold = 0.0,
noise_params = {
offset = 0.5,
scale = 0.2,
@ -442,8 +442,8 @@ minetest.register_ore({
clust_scarcity = 20*20*20,
clust_num_ores = 5*5*3,
clust_size = 5,
height_min = -120,
height_max = 31000,
y_min = -120,
y_max = 31000,
})
@ -455,8 +455,8 @@ minetest.register_ore({
clust_scarcity = 25*25*25,
clust_num_ores = 10000,
clust_size = 12,
height_min = -100,
height_max = 31000,
y_min = -100,
y_max = 31000,
})
minetest.register_ore({
@ -467,8 +467,8 @@ minetest.register_ore({
clust_scarcity = 10*10*10,
clust_num_ores = 50,
clust_size = 10,
height_min = -149,
height_max = 10,
y_min = -149,
y_max = 10,
flags = "absheight",
})
@ -480,8 +480,8 @@ minetest.register_ore({
clust_scarcity = 20*20*20,
clust_num_ores = 550,
clust_size = 10,
height_min = -31000,
height_max = -150,
y_min = -31000,
y_max = -150,
flags = "absheight",
})
@ -493,8 +493,8 @@ minetest.register_ore({
clust_scarcity = 20*20*20,
clust_num_ores = 650,
clust_size = 10,
height_min = -31000,
height_max = -10000,
y_min = -31000,
y_max = -10000,
flags = "absheight",
})
@ -506,8 +506,8 @@ minetest.register_ore({
clust_scarcity = 10*10*10,
clust_num_ores = 50,
clust_size = 5,
height_min = -350,
height_max = -300,
y_min = -350,
y_max = -300,
})
minetest.register_ore({
@ -518,8 +518,8 @@ minetest.register_ore({
clust_scarcity = 10*10*10,
clust_num_ores = 500,
clust_size = 10,
height_min = -31000,
height_max = -600,
y_min = -31000,
y_max = -600,
flags = "absheight",
})
@ -531,8 +531,8 @@ minetest.register_ore({
clust_scarcity = 20*10*20,
clust_num_ores = 950,
clust_size = 10,
height_min = -31000,
height_max = -10000,
y_min = -31000,
y_max = -10000,
flags = "absheight",
})
@ -544,8 +544,8 @@ minetest.register_ore({
clust_scarcity = 20*5*20,
clust_num_ores = 150,
clust_size = 10,
height_min = -10,
height_max = 0,
y_min = -10,
y_max = 0,
})
minetest.register_ore({
@ -556,8 +556,8 @@ minetest.register_ore({
clust_scarcity = 20*5*20,
clust_num_ores = 350,
clust_size = 10,
height_min = -70,
height_max = -50,
y_min = -70,
y_max = -50,
})
minetest.register_ore({
@ -568,8 +568,8 @@ minetest.register_ore({
clust_scarcity = 20*10*20,
clust_num_ores = 500,
clust_size = 10,
height_min = -140,
height_max = -120,
y_min = -140,
y_max = -120,
})
-- Underground springs
@ -581,8 +581,8 @@ minetest.register_ore({
clust_scarcity = 25*25*25,
clust_num_ores = 8,
clust_size = 3,
height_min = -10000,
height_max = -10,
y_min = -10000,
y_max = -10,
})
minetest.register_ore({
@ -593,7 +593,7 @@ minetest.register_ore({
clust_size = 10,
y_min = -30000,
y_max = -10,
noise_threshhold = 0.2,
noise_threshold = 0.2,
noise_params = {
offset = 0.5,
scale = 0.2,
@ -603,55 +603,6 @@ minetest.register_ore({
persist = 0.0
},
})
-- end
function default.generate_ore(name, wherein, minp, maxp, seed, chunks_per_volume, chunk_size, ore_per_chunk, height_min, height_max)
minetest.log('action', "WARNING: default.generate_ore is deprecated")
if maxp.y < height_min or minp.y > height_max then
return
end
local y_min = math.max(minp.y, height_min)
local y_max = math.min(maxp.y, height_max)
if chunk_size >= y_max - y_min + 1 then
return
end
local volume = (maxp.x-minp.x+1)*(y_max-y_min+1)*(maxp.z-minp.z+1)
local pr = PseudoRandom(seed)
local num_chunks = math.floor(chunks_per_volume * volume)
local inverse_chance = math.floor(chunk_size*chunk_size*chunk_size / ore_per_chunk)
--print("generate_ore num_chunks: "..dump(num_chunks))
for i=1,num_chunks do
local y0 = pr:next(y_min, y_max-chunk_size+1)
if y0 >= height_min and y0 <= height_max then
local x0 = pr:next(minp.x, maxp.x-chunk_size+1)
local z0 = pr:next(minp.z, maxp.z-chunk_size+1)
local p0 = {x=x0, y=y0, z=z0}
for x1=0,chunk_size-1 do
for y1=0,chunk_size-1 do
for z1=0,chunk_size-1 do
if pr:next(1,inverse_chance) == 1 then
local x2 = x0+x1
local y2 = y0+y1
local z2 = z0+z1
local p2 = {x=x2, y=y2, z=z2}
if minetest.get_node(p2).name == wherein then
minetest.set_node(p2, {name=name})
end
end
end
end
end
end
end
--print("generate_ore done")
end
--DECO
@ -770,168 +721,6 @@ end
minetest.register_on_generated(function(minp, maxp, seed)
if maxp.y >= 2 and minp.y <= 0 then
-- Generate papyrus
local perlin1 = minetest.get_perlin(354, 3, 0.7, 100)
-- Assume X and Z lengths are equal
local divlen = 8
local divs = (maxp.x-minp.x)/divlen+1;
for divx=0,divs-1 do
for divz=0,divs-1 do
local x0 = minp.x + math.floor((divx+0)*divlen)
local z0 = minp.z + math.floor((divz+0)*divlen)
local x1 = minp.x + math.floor((divx+1)*divlen)
local z1 = minp.z + math.floor((divz+1)*divlen)
-- Determine papyrus amount from perlin noise
local papyrus_amount = math.floor(perlin1:get2d({x=x0, y=z0}) * 45 - 20)
-- Find random positions for papyrus based on this random
local pr = PseudoRandom(seed+1)
for i=0,papyrus_amount do
local x = pr:next(x0, x1)
local z = pr:next(z0, z1)
if minetest.get_node({x=x,y=1,z=z}).name == "default:dirt_with_grass" and
minetest.find_node_near({x=x,y=1,z=z}, 1, "default:water_source") then
default.make_papyrus({x=x,y=2,z=z}, pr:next(2, 4))
end
end
end
end
-- Generate cactuses
local perlin1 = minetest.get_perlin(230, 3, 0.6, 100)
-- Assume X and Z lengths are equal
local divlen = 16
local divs = (maxp.x-minp.x)/divlen+1;
for divx=0,divs-1 do
for divz=0,divs-1 do
local x0 = minp.x + math.floor((divx+0)*divlen)
local z0 = minp.z + math.floor((divz+0)*divlen)
local x1 = minp.x + math.floor((divx+1)*divlen)
local z1 = minp.z + math.floor((divz+1)*divlen)
-- Determine cactus amount from perlin noise
local cactus_amount = math.floor(perlin1:get2d({x=x0, y=z0}) * 6 - 3)
-- Find random positions for cactus based on this random
local pr = PseudoRandom(seed+1)
for i=0,cactus_amount do
local x = pr:next(x0, x1)
local z = pr:next(z0, z1)
-- Find ground level (0...15)
local ground_y = nil
for y=30,0,-1 do
if minetest.get_node({x=x,y=y,z=z}).name ~= "air" then
ground_y = y
break
end
end
-- If desert sand, make cactus
-- if ground_y and minetest.get_node({x=x,y=ground_y,z=z}).name == "default:desert_sand" then
-- default.make_cactus({x=x,y=ground_y+1,z=z}, pr:next(2, 3))
-- end
end
end
end
-- Generate grass
local perlin1 = minetest.get_perlin(329, 3, 0.6, 100)
-- Assume X and Z lengths are equal
local divlen = 16
local divs = (maxp.x-minp.x)/divlen+1;
for divx=0,divs-1 do
for divz=0,divs-1 do
local x0 = minp.x + math.floor((divx+0)*divlen)
local z0 = minp.z + math.floor((divz+0)*divlen)
local x1 = minp.x + math.floor((divx+1)*divlen)
local z1 = minp.z + math.floor((divz+1)*divlen)
-- Determine grass amount from perlin noise
local grass_amount = math.floor(perlin1:get2d({x=x0, y=z0}) ^ 3 * 9)
-- Find random positions for grass based on this random
local pr = PseudoRandom(seed+1)
for i=0,grass_amount do
local x = pr:next(x0, x1)
local z = pr:next(z0, z1)
-- Find ground level (0...15)
local ground_y = nil
for y=30,0,-1 do
if minetest.get_node({x=x,y=y,z=z}).name ~= "air" then
ground_y = y
break
end
end
if ground_y then
local p = {x=x,y=ground_y+1,z=z}
local nn = minetest.get_node(p).name
-- Check if the node can be replaced
if minetest.registered_nodes[nn] and
minetest.registered_nodes[nn].buildable_to then
nn = minetest.get_node({x=x,y=ground_y,z=z}).name
-- If desert sand, add dry shrub
if nn == "default:desert_sand" then
minetest.set_node(p,{name="default:dry_shrub"})
-- If dirt with grass, add grass
elseif nn == "default:dirt_with_grass" then
minetest.set_node(p,{name="default:grass_"..pr:next(1, 5)})
end
end
end
end
end
end
end
-- Generate nyan cats
generate_nyancats(seed, minp, maxp)
end)
minetest.register_on_generated(function(minp, maxp, seed)
if maxp.y >= 4 and minp.y <= 0 then
local perlin1 = minetest.get_perlin(330, 3, 0.6, 100)
-- Assume X and Z lengths are equal
local divlen = 16
local divs = (maxp.x-minp.x)/divlen+1;
for divx=0,divs-1 do
for divz=0,divs-1 do
local x0 = minp.x + math.floor((divx+0)*divlen)
local z0 = minp.z + math.floor((divz+0)*divlen)
local x1 = minp.x + math.floor((divx+1)*divlen)
local z1 = minp.z + math.floor((divz+1)*divlen)
-- Determine dry_shrub amount from perlin noise
local dry_shrub_amount = math.floor(perlin1:get2d({x=x0, y=z0}) ^ 3 * 9)
-- Find random positions for dry_shrub based on this random
local pr = PseudoRandom(seed+2)
for i=0,dry_shrub_amount do
local x = pr:next(x0, x1)
local z = pr:next(z0, z1)
-- Find ground level (0...15)
local ground_y = nil
for y=40,0,-1 do
if minetest.get_node({x=x,y=y,z=z}).name ~= "air" then
ground_y = y
break
end
end
if ground_y then
local p = {x=x,y=ground_y+1,z=z}
local nn = minetest.get_node(p).name
-- Check if the node can be replaced
if minetest.registered_nodes[nn] and
minetest.registered_nodes[nn].buildable_to then
nn = minetest.get_node({x=x,y=ground_y,z=z}).name
if nn == "default:desert_sand" then
minetest.set_node(p,{name="default:dry_shrub"})
end
end
end
end
end
end
end
end)

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

@ -12,7 +12,7 @@ Details: Adds several items for lighting, made out of glowing crystals - a bette
minetest.register_node( "glowcrystals:glowcrystal_ore", {
description = "Glowing Crystal Ore",
tile_images = { "default_essexit.png^glowcrystals_ore_glowcrystal.png" },
tiles = { "default_essexit.png^glowcrystals_ore_glowcrystal.png" },
is_ground_content = true,
paramtype = "light",
sunlight_propagates = true,
@ -24,7 +24,7 @@ minetest.register_node( "glowcrystals:glowcrystal_ore", {
minetest.register_node( "glowcrystals:glowcrystal_block", {
description = "Glowing Crystal Block",
tile_images = { "glowcrystals_block_glowcrystal.png" },
tiles = { "glowcrystals_block_glowcrystal.png" },
is_ground_content = true,
paramtype = "light",
sunlight_propagates = true,
@ -171,8 +171,8 @@ minetest.register_ore({
clust_scarcity = 9*9*9,
clust_num_ores = 4,
clust_size = 3,
height_min = -31000,
height_max = -5000,
y_min = -31000,
y_max = -5000,
})
minetest.register_ore({
@ -182,8 +182,8 @@ minetest.register_ore({
clust_scarcity = 24*24*24,
clust_num_ores = 27,
clust_size = 6,
height_min = -31000,
height_max = -10000,
y_min = -31000,
y_max = -10000,
flags = "absheight",
})
--/////////

View File

@ -63,6 +63,10 @@ overwrite("default:tomatosalad", 6)
overwrite("default:tomato_potato_salad", 8)
if minetest.get_modpath("farming") ~= nil then
overwrite("farming:bread", 4)
overwrite("farming:strawberry", 2)
overwrite("farming:potato", 0)
overwrite("farming:tomato", 2)
overwrite("farming:spice", 0)
end

34
mods/mobs/README.txt Normal file
View File

@ -0,0 +1,34 @@
-= MOBS-MOD for MINETEST =-
by PilzAdam, KrupnovPavel, Zeg9 and TenPlus1
This mod contains the following additions:
- Giant Spiders (found in desert caves, drop string when killed)
- Bee's (found around flowers, drop honey when killed, right-click to pick up, also Beehives)
- Chicken (lays eggs, added fried egg, raw & cooked chicken, right-click to pick up)
- Cow (right-click with empty bucket to get bucket of milk, feed 8 wheat to replenish milk)
- Sheep (right-click for wool, feed 8 wheat to replenish wool)
- Warthog (the local pig that gives raw and cooked port)
- Rats (right-click to pick up and place, cook for a tasty treat)
- Sand, Dirt, Stone, Tree Monsters, Oerkki and Dungeon Masters as standard
- Lava Flan, Mese Monsters added to spice things up a bit
- Cook milk in furnace to get cheese wedge, 9 wedges make 1 cheese block
..with the following new features:
- Hitting a mob has knock-back effect like in minecraft, and with blood effect
- Mobs float in water, so monsters can still chase you
- Mobs can die from falling from a height
- Mobs have better health and drops
- Hitting a mob also puts them into fight mode (apart from animals)
- Compatible with Ethereal mod, mobs now spawn on ethereal worlds
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.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.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.3 - Added LOTT's Spider mob, made Cobwebs, added KPavel's Bee with Honey and Beehives (made texture), Warthogs now have sound and can be tamed, taming of shaved sheep or milked cow with 8 wheat so it will not despawn, many bug fixes :)
0.2 - Cooking bucket of milk into cheese now returns empty bucket
0.1 - Initial Release

1039
mods/mobs/api.lua Normal file

File diff suppressed because it is too large Load Diff

1
mods/mobs/depends.txt Normal file
View File

@ -0,0 +1 @@
default

110
mods/mobs/dungeonmaster.lua Normal file
View File

@ -0,0 +1,110 @@
-- Dungeon Master (This one spits out fireballs at you)
mobs:register_mob("mobs:dungeon_master", {
type = "monster",
hp_min = 25,
hp_max = 35,
collisionbox = {-0.7, -0.01, -0.7, 0.7, 2.6, 0.7},
visual = "mesh",
mesh = "mobs_dungeon_master.x",
--textures = {"mobs_dungeon_master.png"},
available_textures = {
total = 1,
texture_1 = {"mobs_dungeon_master.png"},
},
visual_size = {x=8, y=8},
makes_footstep_sound = true,
sounds = {
random = "mobs_dungeonmaster",
attack = "mobs_dungeonmaster",
},
view_range = 15,
walk_velocity = 1,
run_velocity = 3,
damage = 4,
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:mese",
chance = 30,
min = 1,
max = 1,},
},
armor = 60,
drawtype = "front",
water_damage = 1,
lava_damage = 1,
light_damage = 0,
on_rightclick = nil,
attack_type = "shoot",
arrow = "mobs:fireball",
shoot_interval = 2.5,
sounds = {
attack = "mobs_fireball",
},
animation = {
stand_start = 0,
stand_end = 19,
walk_start = 20,
walk_end = 35,
punch_start = 36,
punch_end = 48,
speed_normal = 15,
speed_run = 15,
},
jump = true,
step = 0.5,
shoot_offset = 0,
blood_texture = "mobs_blood.png",
})
mobs:spawn_specific("mobs:dungeon_master", {"default:stone"}, "air", 0, 1, 100, 7000, 1, -10000, -1000)
-- Fireball (weapon)
mobs:register_arrow("mobs:fireball", {
visual = "sprite",
visual_size = {x=1, y=1},
textures = {"mobs_fireball.png"},
velocity = 5,
-- direct hit, no fire... just plenty of pain
hit_player = function(self, player)
local s = self.object:getpos()
local p = player:getpos()
player:punch(self.object, 1.0, {
full_punch_interval=1.0,
damage_groups = {fleshy=8},
}, 0) -- {x=s.x-p.x, y=s.y-p.y, z=s.z-p.z})
end,
-- node hit, bursts into flame (cannot blast through obsidian)
hit_node = function(self, pos, node)
for dx=-1,1 do
for dy=-1,1 do
for dz=-1,1 do
local p = {x=pos.x+dx, y=pos.y+dy, z=pos.z+dz}
local n = minetest.env:get_node(p).name
if n ~= "default:obsidian" and n ~= "ethereal:obsidian_brick" then
if minetest.registered_nodes[n].groups.flammable or math.random(1, 100) <= 30 then
-- minetest.env:set_node(p, {name="fire:basic_flame"})
else
minetest.env:set_node(p, {name="air"})
end
end
end
end
end
end
})

View File

@ -0,0 +1,72 @@
-- Dungeon Master (This one spits out fireballs at you)
mobs:register_mob("mobs:dungeon_master2", {
type = "monster",
hp_min = 25,
hp_max = 35,
collisionbox = {-0.7, -0.01, -0.7, 0.7, 2.6, 0.7},
visual = "mesh",
mesh = "mobs_dungeon_master.x",
--textures = {"mobs_dungeon_master.png"},
available_textures = {
total = 1,
texture_1 = {"mobs_dungeon_master2.png"},
},
visual_size = {x=8, y=8},
makes_footstep_sound = true,
sounds = {
random = "mobs_dungeonmaster",
attack = "mobs_dungeonmaster",
},
view_range = 15,
walk_velocity = 1,
run_velocity = 3,
damage = 4,
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:mese",
chance = 30,
min = 1,
max = 1,},
},
armor = 60,
drawtype = "front",
water_damage = 1,
lava_damage = 1,
light_damage = 0,
on_rightclick = nil,
attack_type = "shoot",
arrow = "mobs:fireball",
shoot_interval = 2.0,
sounds = {
attack = "mobs_fireball",
},
animation = {
stand_start = 0,
stand_end = 19,
walk_start = 20,
walk_end = 35,
punch_start = 36,
punch_end = 48,
speed_normal = 15,
speed_run = 15,
},
jump = true,
step = 0.5,
shoot_offset = 0,
blood_texture = "mobs_blood.png",
})
mobs:spawn_specific("mobs:dungeon_master2", {"default:stone"}, "air", 0, 1, 100, 7000, 1, -30000, -7500)

60
mods/mobs/init.lua Normal file
View File

@ -0,0 +1,60 @@
-- Mob Api (10th Dec 2014)
dofile(minetest.get_modpath("mobs").."/api.lua")
-- Animals inc. Krupnovpavel's warthog/bee and JKmurray's chicken
-- dofile(minetest.get_modpath("mobs").."/chicken.lua")
-- dofile(minetest.get_modpath("mobs").."/cow.lua")
-- dofile(minetest.get_modpath("mobs").."/rat.lua")
-- dofile(minetest.get_modpath("mobs").."/sheep.lua")
-- dofile(minetest.get_modpath("mobs").."/warthog.lua")
-- dofile(minetest.get_modpath("mobs").."/bee.lua")
-- Monsters
-- dofile(minetest.get_modpath("mobs").."/dirtmonster.lua")
dofile(minetest.get_modpath("mobs").."/dungeonmaster.lua")
dofile(minetest.get_modpath("mobs").."/dungeonmaster2.lua")
dofile(minetest.get_modpath("mobs").."/oerkki.lua")
dofile(minetest.get_modpath("mobs").."/sandmonster.lua")
dofile(minetest.get_modpath("mobs").."/stonemonster.lua")
dofile(minetest.get_modpath("mobs").."/stonemonster2.lua")
-- dofile(minetest.get_modpath("mobs").."/treemonster.lua")
-- Zmobs by Zeg9
-- dofile(minetest.get_modpath("mobs").."/lava_flan.lua")
dofile(minetest.get_modpath("mobs").."/mese_monster.lua")
dofile(minetest.get_modpath("mobs").."/mese_monster2.lua")
-- Spider from Lord of the Test - https://forum.minetest.net/viewtopic.php?pid=127538
dofile(minetest.get_modpath("mobs").."/spider.lua")
dofile(minetest.get_modpath("mobs").."/spider2.lua")
dofile(minetest.get_modpath("mobs").."/spider3.lua")
dofile(minetest.get_modpath("mobs").."/spider4.lua")
-- Meat & Cooked Meat
--minetest.register_craftitem("mobs:meat_raw", {
--description = "Raw Meat",
--inventory_image = "mobs_meat_raw.png",
--on_use = minetest.item_eat(3),
--})
--minetest.register_craftitem("mobs:meat", {
--description = "Meat",
--inventory_image = "mobs_meat.png",
--on_use = minetest.item_eat(8),
--})
--minetest.register_craft({
--type = "cooking",
--output = "mobs:meat",
--recipe = "mobs:meat_raw",
--cooktime = 5,
--})
if minetest.setting_get("log_mods") then
minetest.log("action", "mobs loaded")
end

21
mods/mobs/license.txt Normal file
View 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.

View File

@ -0,0 +1,95 @@
--= Mese Monster by Zeg9
-- 9 mese crystal fragments = 1 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"},
}
})
-- Mese Monster
mobs:register_mob("mobs:mese_monster", {
type = "monster",
hp_min = 20,
hp_max = 30,
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"},
available_textures = {
total = 1,
texture_1 = {"zmobs_mese_monster.png"},
},
visual_size = {x=1, y=1},
makes_footstep_sound = true,
sounds = {
random = "mobs_mesemonster",
attack = "mobs_mesemonster",
},
view_range = 10,
walk_velocity = 0.5,
run_velocity = 2,
damage = 3,
drops = {
{name = "default:mese_crystal",
chance = 9,
min = 1,
max = 3,},
{name = "default:mese_crystal_fragment",
chance = 1,
min = 1,
max = 9,},
},
light_resistant = true,
armor = 80,
drawtype = "front",
water_damage = 0,
lava_damage = 0,
light_damage = 0,
attack_type = "shoot",
arrow = "mobs:mese_arrow",
shoot_interval = .5,
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 = 15, -- 40
punch_end = 38, -- 63
},
jump = true,
step = 0.5,
shoot_offset = 2,
blood_texture = "default_mese_crystal_fragment.png",
})
mobs:spawn_specific("mobs:mese_monster", {"default:stone"}, "air", 0, 4, 70, 7000, 1, -10000, -250)
-- Mese Monster Crystal Shards (weapon)
mobs:register_arrow("mobs:mese_arrow", {
visual = "sprite",
visual_size = {x=.5, y=.5},
textures = {"default_mese_crystal_fragment.png"},
velocity = 5,
hit_player = function(self, player)
local s = self.object:getpos()
local p = player:getpos()
player:punch(self.object, 1.0, {
full_punch_interval=1.0,
damage_groups = {fleshy=1},
}, 0) -- {x=s.x-p.x, y=s.y-p.y, z=s.z-p.z})
end,
hit_node = function(self, pos, node)
end
})

View File

@ -0,0 +1,64 @@
--= Mese Monster by Zeg9
-- Mese Monster
mobs:register_mob("mobs:mese_monster2", {
type = "monster",
hp_min = 30,
hp_max = 45,
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"},
available_textures = {
total = 1,
texture_1 = {"zmobs_mese_monster2.png"},
},
visual_size = {x=1, y=1},
makes_footstep_sound = true,
sounds = {
random = "mobs_mesemonster",
attack = "mobs_mesemonster",
},
view_range = 10,
walk_velocity = 0.5,
run_velocity = 2,
damage = 3,
drops = {
{name = "default:mese_crystal",
chance = 9,
min = 1,
max = 3,},
{name = "default:mese_crystal_fragment",
chance = 1,
min = 1,
max = 9,},
},
light_resistant = true,
armor = 80,
drawtype = "front",
water_damage = 0,
lava_damage = 0,
light_damage = 0,
attack_type = "shoot",
arrow = "mobs:mese_arrow",
shoot_interval = .5,
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 = 15, -- 40
punch_end = 38, -- 63
},
jump = true,
step = 0.5,
shoot_offset = 2,
blood_texture = "default_mese_crystal_fragment.png",
})
mobs:spawn_specific("mobs:mese_monster2", {"default:stone"}, "air", 0, 4, 70, 7000, 1, -30000, -5000)

3080
mods/mobs/models/chicken.x Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

7645
mods/mobs/models/mobs_bee.x Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 948 B

7420
mods/mobs/models/mobs_cow.x Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

699
mods/mobs/models/mobs_rat.x Normal file
View File

@ -0,0 +1,699 @@
xof 0303txt 0032
Frame Root {
FrameTransformMatrix {
1.000000, 0.000000, 0.000000, 0.000000,
0.000000, 0.000000, 1.000000, 0.000000,
0.000000, 1.000000,-0.000000, 0.000000,
0.000000, 0.000000, 0.000000, 1.000000;;
}
Frame Cube_004 {
FrameTransformMatrix {
1.000000, 0.000000, 0.000000, 0.000000,
0.000000, 1.000000, 0.000000, 0.000000,
0.000000, 0.000000, 1.000000, 0.000000,
0.000000, 0.000000,-0.000000, 1.000000;;
}
Mesh { //Cube_005 Mesh
176;
0.336296; 1.101631; 1.340231;,
1.524099; 1.101631; 1.348138;,
1.516191; 1.101631; 2.535941;,
0.328389; 1.101631; 2.528034;,
0.328389; 1.101631; 2.528034;,
0.336296; 1.101631; 1.340231;,
0.336296; 1.101631; 1.340231;,
0.328389; 1.101631; 2.528034;,
1.524099; 1.101631; 1.348138;,
1.516191; 1.101631; 2.535941;,
1.516191; 1.101631; 2.535941;,
1.524099; 1.101631; 1.348138;,
1.516191; 1.101631; 2.535941;,
0.328389; 1.101631; 2.528034;,
0.328389; 1.101631; 2.528034;,
1.516191; 1.101631; 2.535941;,
0.336296; 1.101631; 1.340231;,
1.524099; 1.101631; 1.348138;,
1.524099; 1.101631; 1.348138;,
0.336296; 1.101631; 1.340231;,
-1.564649; 0.817637; 1.334045;,
-1.564649; 1.101631; 1.334045;,
-1.596119; 1.101631; 2.521457;,
-1.596119; 0.817637; 2.521457;,
-1.564649; 1.101631; 1.334045;,
-0.377237; 1.101631; 1.365515;,
-0.408707; 1.101631; 2.552927;,
-1.596119; 1.101631; 2.521457;,
-0.377237; 1.101631; 1.365515;,
-0.377237; 0.817638; 1.365515;,
-0.408707; 0.817638; 2.552928;,
-0.408707; 1.101631; 2.552927;,
-0.377237; 0.817638; 1.365515;,
-1.564649; 0.817637; 1.334045;,
-1.596119; 0.817637; 2.521457;,
-0.408707; 0.817638; 2.552928;,
-0.377237; 0.817638; 1.365515;,
-0.377237; 1.101631; 1.365515;,
-1.564649; 1.101631; 1.334045;,
-1.564649; 0.817637; 1.334045;,
-1.596119; 0.817637; 2.521457;,
-1.596119; 1.101631; 2.521457;,
-0.408707; 1.101631; 2.552927;,
-0.408707; 0.817638; 2.552928;,
0.336296; 0.817638; 1.340231;,
0.336296; 1.101631; 1.340231;,
0.328389; 1.101631; 2.528034;,
0.328389; 0.817638; 2.528034;,
1.524099; 1.101631; 1.348138;,
1.524099; 0.817637; 1.348139;,
1.516192; 0.817637; 2.535942;,
1.516191; 1.101631; 2.535941;,
1.524099; 0.817637; 1.348139;,
0.336296; 0.817638; 1.340231;,
0.328389; 0.817638; 2.528034;,
1.516192; 0.817637; 2.535942;,
1.524099; 0.817637; 1.348139;,
1.524099; 1.101631; 1.348138;,
0.336296; 1.101631; 1.340231;,
0.336296; 0.817638; 1.340231;,
0.328389; 0.817638; 2.528034;,
0.328389; 1.101631; 2.528034;,
1.516191; 1.101631; 2.535941;,
1.516192; 0.817637; 2.535942;,
-0.117394;-5.732621; 0.182654;,
-0.186090;-2.477838; 0.265415;,
-0.186090;-2.477838; 0.668304;,
-0.117394;-5.732621; 0.448150;,
-0.186090;-2.477838; 0.265415;,
0.216799;-2.477838; 0.265415;,
0.216799;-2.477838; 0.668304;,
-0.186090;-2.477838; 0.668304;,
0.216799;-2.477838; 0.265415;,
0.148102;-5.732621; 0.182654;,
0.148102;-5.732621; 0.448150;,
0.216799;-2.477838; 0.668304;,
0.148102;-5.732621; 0.182654;,
-0.117394;-5.732621; 0.182654;,
-0.117394;-5.732621; 0.448150;,
0.148102;-5.732621; 0.448150;,
0.148102;-5.732621; 0.182654;,
0.216799;-2.477838; 0.265415;,
-0.186090;-2.477838; 0.265415;,
-0.117394;-5.732621; 0.182654;,
-0.117394;-5.732621; 0.448150;,
-0.186090;-2.477838; 0.668304;,
0.216799;-2.477838; 0.668304;,
0.148102;-5.732621; 0.448150;,
-0.933130;-2.573576; 0.130200;,
-0.933130; 0.667430; 0.130200;,
-0.933130; 0.667430; 2.038438;,
-0.933130;-2.573576; 2.038438;,
-0.933130; 0.667430; 0.130200;,
0.963839; 0.667430; 0.130200;,
0.963839; 0.667430; 2.038438;,
-0.933130; 0.667430; 2.038438;,
0.963839; 0.667430; 0.130200;,
0.963839;-2.573576; 0.130200;,
0.963839;-2.573576; 2.038438;,
0.963839; 0.667430; 2.038438;,
0.963839;-2.573576; 0.130200;,
-0.933130;-2.573576; 0.130200;,
-0.933130;-2.573576; 2.038438;,
0.963839;-2.573576; 2.038438;,
0.963839;-2.573576; 0.130200;,
0.963839; 0.667430; 0.130200;,
-0.933130; 0.667430; 0.130200;,
-0.933130;-2.573576; 0.130200;,
-0.933130;-2.573576; 2.038438;,
-0.933130; 0.667430; 2.038438;,
0.963839; 0.667430; 2.038438;,
0.963839;-2.573576; 2.038438;,
-0.694354; 0.619175; 0.175005;,
-0.469990; 2.744857; 0.240792;,
-0.469990; 2.744857; 1.874725;,
-0.694354; 0.619175; 1.814122;,
0.015354; 2.744857; 0.240792;,
0.500698; 2.744857; 0.240792;,
0.500698; 2.744857; 1.874725;,
0.015354; 2.744857; 1.874725;,
0.500698; 2.744857; 0.240792;,
0.725062; 0.619175; 0.175005;,
0.725062; 0.619175; 1.814122;,
0.500698; 2.744857; 1.874725;,
0.015354; 0.619175; 0.175005;,
-0.694354; 0.619175; 0.175005;,
-0.694354; 0.619175; 1.814122;,
0.015354; 0.619175; 1.814122;,
0.725062; 0.619175; 0.175005;,
0.500698; 2.744857; 0.240792;,
0.015354; 2.744857; 0.240792;,
0.015354; 0.619175; 0.175005;,
-0.694354; 0.619175; 1.814122;,
-0.469990; 2.744857; 1.874725;,
0.015354; 2.744857; 1.874725;,
0.015354; 0.619175; 1.814122;,
-0.281961; 2.574486; 0.745273;,
-0.281961; 3.169116; 0.745273;,
-0.281961; 3.169116; 1.339903;,
-0.281961; 2.574486; 1.339903;,
-0.281961; 3.169116; 0.745273;,
0.312669; 3.169116; 0.745273;,
0.312669; 3.169116; 1.339903;,
-0.281961; 3.169116; 1.339903;,
0.312669; 3.169116; 0.745273;,
0.312669; 2.574486; 0.745273;,
0.312669; 2.574486; 1.339903;,
0.312669; 3.169116; 1.339903;,
0.312669; 2.574486; 0.745273;,
-0.281961; 2.574486; 0.745273;,
-0.281961; 2.574486; 1.339903;,
0.312669; 2.574486; 1.339903;,
0.312669; 2.574486; 0.745273;,
0.312669; 3.169116; 0.745273;,
-0.281961; 3.169116; 0.745273;,
-0.281961; 2.574486; 0.745273;,
-0.281961; 2.574486; 1.339903;,
-0.281961; 3.169116; 1.339903;,
0.312669; 3.169116; 1.339903;,
0.312669; 2.574486; 1.339903;,
-0.469990; 2.744857; 0.240792;,
0.015354; 2.744857; 0.240792;,
0.015354; 2.744857; 1.874725;,
-0.469990; 2.744857; 1.874725;,
0.725062; 0.619175; 0.175005;,
0.015354; 0.619175; 0.175005;,
0.015354; 0.619175; 1.814122;,
0.725062; 0.619175; 1.814122;,
0.015354; 0.619175; 0.175005;,
0.015354; 2.744857; 0.240792;,
-0.469990; 2.744857; 0.240792;,
-0.694354; 0.619175; 0.175005;,
0.015354; 0.619175; 1.814122;,
0.015354; 2.744857; 1.874725;,
0.500698; 2.744857; 1.874725;,
0.725062; 0.619175; 1.814122;;
44;
4;0;1;2;3;,
4;4;5;6;7;,
4;8;9;10;11;,
4;12;13;14;15;,
4;16;17;18;19;,
4;20;21;22;23;,
4;24;25;26;27;,
4;28;29;30;31;,
4;32;33;34;35;,
4;36;37;38;39;,
4;40;41;42;43;,
4;44;45;46;47;,
4;48;49;50;51;,
4;52;53;54;55;,
4;56;57;58;59;,
4;60;61;62;63;,
4;64;65;66;67;,
4;68;69;70;71;,
4;72;73;74;75;,
4;76;77;78;79;,
4;80;81;82;83;,
4;84;85;86;87;,
4;88;89;90;91;,
4;92;93;94;95;,
4;96;97;98;99;,
4;100;101;102;103;,
4;104;105;106;107;,
4;108;109;110;111;,
4;112;113;114;115;,
4;116;117;118;119;,
4;120;121;122;123;,
4;124;125;126;127;,
4;128;129;130;131;,
4;132;133;134;135;,
4;136;137;138;139;,
4;140;141;142;143;,
4;144;145;146;147;,
4;148;149;150;151;,
4;152;153;154;155;,
4;156;157;158;159;,
4;160;161;162;163;,
4;164;165;166;167;,
4;168;169;170;171;,
4;172;173;174;175;;
MeshNormals { //Cube_005 Normals
176;
0.000000; 1.000000; 0.000000;,
0.000000; 1.000000; 0.000000;,
0.000000; 1.000000; 0.000000;,
0.000000; 1.000000; 0.000000;,
0.000000; 0.000000; 0.000000;,
0.000000; 0.000000; 0.000000;,
0.000000; 0.000000; 0.000000;,
0.000000; 0.000000; 0.000000;,
0.000000; 0.000000; 0.000000;,
0.000000; 0.000000; 0.000000;,
0.000000; 0.000000; 0.000000;,
0.000000; 0.000000; 0.000000;,
0.000000; 0.000000; 0.000000;,
0.000000; 0.000000; 0.000000;,
0.000000; 0.000000; 0.000000;,
0.000000; 0.000000; 0.000000;,
0.000000; 0.000000; 0.000000;,
0.000000; 0.000000; 0.000000;,
0.000000; 0.000000; 0.000000;,
0.000000; 0.000000; 0.000000;,
-0.999649; 0.000000;-0.026494;,
-0.999649; 0.000000;-0.026494;,
-0.999649; 0.000000;-0.026494;,
-0.999649; 0.000000;-0.026494;,
-0.000000; 1.000000; 0.000000;,
-0.000000; 1.000000; 0.000000;,
-0.000000; 1.000000; 0.000000;,
-0.000000; 1.000000; 0.000000;,
0.999649; 0.000001; 0.026494;,
0.999649; 0.000001; 0.026494;,
0.999649; 0.000001; 0.026494;,
0.999649; 0.000001; 0.026494;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.026494; 0.000000;-0.999649;,
0.026494; 0.000000;-0.999649;,
0.026494; 0.000000;-0.999649;,
0.026494; 0.000000;-0.999649;,
-0.026494; 0.000000; 0.999649;,
-0.026494; 0.000000; 0.999649;,
-0.026494; 0.000000; 0.999649;,
-0.026494; 0.000000; 0.999649;,
-0.999978;-0.000000;-0.006657;,
-0.999978;-0.000000;-0.006657;,
-0.999978;-0.000000;-0.006657;,
-0.999978;-0.000000;-0.006657;,
0.999978; 0.000001; 0.006657;,
0.999978; 0.000001; 0.006657;,
0.999978; 0.000001; 0.006657;,
0.999978; 0.000001; 0.006657;,
-0.000000;-1.000000;-0.000000;,
-0.000000;-1.000000;-0.000000;,
-0.000000;-1.000000;-0.000000;,
-0.000000;-1.000000;-0.000000;,
0.006657; 0.000000;-0.999978;,
0.006657; 0.000000;-0.999978;,
0.006657; 0.000000;-0.999978;,
0.006657; 0.000000;-0.999978;,
-0.006657; 0.000000; 0.999978;,
-0.006657; 0.000000; 0.999978;,
-0.006657; 0.000000; 0.999978;,
-0.006657; 0.000000; 0.999978;,
-0.999777;-0.021102; 0.000000;,
-0.999777;-0.021102; 0.000000;,
-0.999777;-0.021102; 0.000000;,
-0.999777;-0.021102; 0.000000;,
0.000000; 1.000000;-0.000000;,
0.000000; 1.000000;-0.000000;,
0.000000; 1.000000;-0.000000;,
0.000000; 1.000000;-0.000000;,
0.999777;-0.021102; 0.000000;,
0.999777;-0.021102; 0.000000;,
0.999777;-0.021102; 0.000000;,
0.999777;-0.021102; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000; 0.025419;-0.999677;,
0.000000; 0.025419;-0.999677;,
0.000000; 0.025419;-0.999677;,
0.000000; 0.025419;-0.999677;,
0.000000;-0.067486; 0.997720;,
0.000000;-0.067486; 0.997720;,
0.000000;-0.067486; 0.997720;,
0.000000;-0.067486; 0.997720;,
-1.000000; 0.000000; 0.000000;,
-1.000000; 0.000000; 0.000000;,
-1.000000; 0.000000; 0.000000;,
-1.000000; 0.000000; 0.000000;,
0.000000; 1.000000;-0.000000;,
0.000000; 1.000000;-0.000000;,
0.000000; 1.000000;-0.000000;,
0.000000; 1.000000;-0.000000;,
1.000000; 0.000000;-0.000000;,
1.000000; 0.000000;-0.000000;,
1.000000; 0.000000;-0.000000;,
1.000000; 0.000000;-0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
-0.000000; 0.000000;-1.000000;,
-0.000000; 0.000000;-1.000000;,
-0.000000; 0.000000;-1.000000;,
-0.000000; 0.000000;-1.000000;,
-0.000000; 0.000000; 1.000000;,
-0.000000; 0.000000; 1.000000;,
-0.000000; 0.000000; 1.000000;,
-0.000000; 0.000000; 1.000000;,
-0.994476; 0.104966; 0.000000;,
-0.994476; 0.104966; 0.000000;,
-0.994476; 0.104966; 0.000000;,
-0.994476; 0.104966; 0.000000;,
0.000000; 1.000000;-0.000000;,
0.000000; 1.000000;-0.000000;,
0.000000; 1.000000;-0.000000;,
0.000000; 1.000000;-0.000000;,
0.994476; 0.104966; 0.000000;,
0.994476; 0.104966; 0.000000;,
0.994476; 0.104966; 0.000000;,
0.994476; 0.104966; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000; 0.030934;-0.999521;,
0.000000; 0.030934;-0.999521;,
0.000000; 0.030934;-0.999521;,
0.000000; 0.030934;-0.999521;,
0.000000;-0.028498; 0.999594;,
0.000000;-0.028498; 0.999594;,
0.000000;-0.028498; 0.999594;,
0.000000;-0.028498; 0.999594;,
-1.000000; 0.000000; 0.000000;,
-1.000000; 0.000000; 0.000000;,
-1.000000; 0.000000; 0.000000;,
-1.000000; 0.000000; 0.000000;,
0.000000; 1.000000;-0.000000;,
0.000000; 1.000000;-0.000000;,
0.000000; 1.000000;-0.000000;,
0.000000; 1.000000;-0.000000;,
1.000000; 0.000000;-0.000000;,
1.000000; 0.000000;-0.000000;,
1.000000; 0.000000;-0.000000;,
1.000000; 0.000000;-0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
-0.000000; 0.000000;-1.000000;,
-0.000000; 0.000000;-1.000000;,
-0.000000; 0.000000;-1.000000;,
-0.000000; 0.000000;-1.000000;,
-0.000000; 0.000000; 1.000000;,
-0.000000; 0.000000; 1.000000;,
-0.000000; 0.000000; 1.000000;,
-0.000000; 0.000000; 1.000000;,
0.000000; 1.000000;-0.000000;,
0.000000; 1.000000;-0.000000;,
0.000000; 1.000000;-0.000000;,
0.000000; 1.000000;-0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000;-1.000000; 0.000000;,
0.000000; 0.030934;-0.999521;,
0.000000; 0.030934;-0.999521;,
0.000000; 0.030934;-0.999521;,
0.000000; 0.030934;-0.999521;,
0.000000;-0.028498; 0.999594;,
0.000000;-0.028498; 0.999594;,
0.000000;-0.028498; 0.999594;,
0.000000;-0.028498; 0.999594;;
44;
4;0;1;2;3;,
4;4;5;6;7;,
4;8;9;10;11;,
4;12;13;14;15;,
4;16;17;18;19;,
4;20;21;22;23;,
4;24;25;26;27;,
4;28;29;30;31;,
4;32;33;34;35;,
4;36;37;38;39;,
4;40;41;42;43;,
4;44;45;46;47;,
4;48;49;50;51;,
4;52;53;54;55;,
4;56;57;58;59;,
4;60;61;62;63;,
4;64;65;66;67;,
4;68;69;70;71;,
4;72;73;74;75;,
4;76;77;78;79;,
4;80;81;82;83;,
4;84;85;86;87;,
4;88;89;90;91;,
4;92;93;94;95;,
4;96;97;98;99;,
4;100;101;102;103;,
4;104;105;106;107;,
4;108;109;110;111;,
4;112;113;114;115;,
4;116;117;118;119;,
4;120;121;122;123;,
4;124;125;126;127;,
4;128;129;130;131;,
4;132;133;134;135;,
4;136;137;138;139;,
4;140;141;142;143;,
4;144;145;146;147;,
4;148;149;150;151;,
4;152;153;154;155;,
4;156;157;158;159;,
4;160;161;162;163;,
4;164;165;166;167;,
4;168;169;170;171;,
4;172;173;174;175;;
} //End of Cube_005 Normals
MeshMaterialList { //Cube_005 Material List
1;
44;
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0;;
Material Material_001 {
0.640000; 0.640000; 0.640000; 1.000000;;
96.078431;
0.500000; 0.500000; 0.500000;;
0.000000; 0.000000; 0.000000;;
}
} //End of Cube_005 Material List
MeshTextureCoords { //Cube_005 UV Coordinates
176;
0.635817; 0.275819;,
0.635817; 0.046728;,
0.864908; 0.046728;,
0.864908; 0.275819;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.864346; 0.986031;,
0.783570; 0.986031;,
0.783570; 0.648180;,
0.864346; 0.648180;,
0.635817; 0.274669;,
0.635817; 0.045578;,
0.864908; 0.045578;,
0.864908; 0.274669;,
0.863901; 0.987104;,
0.783126; 0.987104;,
0.783126; 0.649254;,
0.863901; 0.649254;,
0.991231; 0.987104;,
0.653381; 0.987104;,
0.653381; 0.649254;,
0.991232; 0.649254;,
0.991232; 0.777658;,
0.991232; 0.858433;,
0.653381; 0.858433;,
0.653381; 0.777658;,
0.655529; 0.859063;,
0.655529; 0.778288;,
0.993379; 0.778288;,
0.993379; 0.859063;,
0.335443; 0.861158;,
0.265926; 0.861158;,
0.265926; 0.570397;,
0.335443; 0.570397;,
0.334205; 0.859816;,
0.264688; 0.859816;,
0.264688; 0.569055;,
0.334205; 0.569055;,
0.444367; 0.858474;,
0.153606; 0.858474;,
0.153606; 0.567713;,
0.444367; 0.567713;,
0.333996; 0.859816;,
0.264479; 0.859816;,
0.264479; 0.569055;,
0.333996; 0.569055;,
0.264228; 0.568595;,
0.333745; 0.568595;,
0.333745; 0.859357;,
0.264228; 0.859357;,
0.910309; 0.067094;,
0.990888; 0.067068;,
0.991634; 0.077574;,
0.911094; 0.077574;,
0.910309; 0.024149;,
0.921538; 0.024149;,
0.921538; 0.035379;,
0.910309; 0.035379;,
0.990708; 0.067037;,
0.910309; 0.067041;,
0.910896; 0.056534;,
0.991418; 0.056534;,
0.928966; 0.035379;,
0.921565; 0.035379;,
0.921565; 0.027979;,
0.928966; 0.027979;,
0.910595; 0.035408;,
0.990869; 0.035406;,
0.990583; 0.045937;,
0.910309; 0.045939;,
0.910597; 0.045966;,
0.990951; 0.045966;,
0.990662; 0.056507;,
0.910309; 0.056507;,
0.461795; 0.725720;,
0.002369; 0.725720;,
0.002369; 0.455219;,
0.461795; 0.455219;,
0.728915; 0.630399;,
0.460011; 0.630399;,
0.460011; 0.359898;,
0.728915; 0.359898;,
0.459622; 0.999805;,
0.000195; 0.999805;,
0.000195; 0.729304;,
0.459622; 0.729304;,
0.990155; 1.001469;,
0.721251; 1.001469;,
0.721251; 0.730968;,
0.990155; 0.730968;,
0.000987; 0.351616;,
0.460413; 0.351616;,
0.460413; 0.620520;,
0.000987; 0.620520;,
0.728915; 0.540378;,
0.728915; 0.999805;,
0.460011; 0.999805;,
0.460011; 0.540378;,
0.006594; 0.353635;,
0.507556; 0.369053;,
0.507556; 0.596553;,
0.006594; 0.737794;,
0.752538; 0.533913;,
0.752538; 0.647662;,
0.525038; 0.647662;,
0.525038; 0.533913;,
0.509703; 0.731028;,
0.008741; 0.746446;,
0.008741; 0.362287;,
0.509703; 0.503529;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.003201; 0.349292;,
0.501634; 0.401876;,
0.501634; 0.515626;,
0.003201; 0.515626;,
0.529333; 0.186216;,
0.171158; 0.150188;,
0.171083; 0.071516;,
0.529224; 0.071176;,
0.636995; 0.428681;,
0.636995; 0.545208;,
0.520468; 0.545208;,
0.520468; 0.428681;,
0.340480; 0.361873;,
0.452832; 0.361873;,
0.452832; 0.474224;,
0.340480; 0.474224;,
0.453577; 0.475130;,
0.341226; 0.475130;,
0.341226; 0.362779;,
0.453577; 0.362779;,
0.453737; 0.472732;,
0.341386; 0.472732;,
0.341386; 0.360381;,
0.453737; 0.360381;,
0.454483; 0.362033;,
0.454483; 0.474384;,
0.342132; 0.474384;,
0.342132; 0.362033;,
0.342132; 0.472732;,
0.342132; 0.360381;,
0.454483; 0.360381;,
0.454483; 0.472732;,
0.752538; 0.420163;,
0.752538; 0.533913;,
0.525038; 0.533913;,
0.525038; 0.420163;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.000000; 1.000000;,
0.003201; 0.515626;,
0.501634; 0.515626;,
0.501634; 0.629375;,
0.003201; 0.681959;,
0.529223; 0.070318;,
0.171082; 0.070658;,
0.171157; 0.149330;,
0.529332; 0.185358;;
} //End of Cube_005 UV Coordinates
} //End of Cube_005 Mesh
} //End of Cube_004
} //End of Root Frame

Binary file not shown.

After

Width:  |  Height:  |  Size: 834 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

61
mods/mobs/oerkki.lua Normal file
View File

@ -0,0 +1,61 @@
-- Oerkki
mobs:register_mob("mobs:oerkki", {
type = "monster",
hp_min = 10,
hp_max = 15,
collisionbox = {-0.4, -0.01, -0.4, 0.4, 1.9, 0.4},
visual = "mesh",
mesh = "mobs_oerkki.x",
--textures = {"mobs_oerkki.png"},
available_textures = {
total = 2,
texture_1 = {"mobs_oerkki.png"},
texture_2 = {"mobs_oerkki2.png"},
},
visual_size = {x=5, y=5},
makes_footstep_sound = false,
sounds = {
random = "mobs_oerkki",
attack = "mobs_oerkki",
},
view_range = 15,
walk_velocity = 1,
run_velocity = 3,
damage = 4,
drops = {
{name = "default:obsidian",
chance = 3,
min = 1,
max = 2,},
{name = "default:gold_lump",
chance = 5,
min = 1,
max = 2,},
},
armor = 100,
drawtype = "front",
light_resistant = true,
water_damage = 1,
lava_damage = 1,
light_damage = 0,
attack_type = "dogfight",
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,
},
jump = true,
step = 0.5,
blood_texture = "mobs_blood.png",
})
mobs:register_spawn("mobs:oerkki", {"default:stone"}, 0, -1, 10000, 2, -1200)
mobs:register_spawn("mobs:oerkki", {"default:stone"}, 1, -1, 10000, 3, -10000)

66
mods/mobs/sandmonster.lua Normal file
View File

@ -0,0 +1,66 @@
-- Sand Monster
mobs:register_mob("mobs:sand_monster", {
type = "monster",
hp_min = 15,
hp_max = 20,
collisionbox = {-0.4, -0.01, -0.4, 0.4, 1.9, 0.4},
visual = "mesh",
mesh = "mobs_sand_monster.x",
--textures = {"mobs_sand_monster.png"},
available_textures = {
total = 3,
texture_1 = {"mobs_sand_monster.png"},
texture_2 = {"mobs_sand_monster2.png"},
texture_3 = {"mobs_sand_monster3.png"},
},
visual_size = {x=8,y=8},
makes_footstep_sound = true,
sounds = {
--random = "mobs_mutant",
attack = "mobs_mutant",
},
view_range = 15,
walk_velocity = 1.5,
run_velocity = 4,
damage = 1,
drops = {
{name = "default:sand",
chance = 2,
min = 3,
max = 5,},
{name = "default:iron_lump",
chance=9,
min=1,
max=2,},
{name = "default:apple",
chance=4,
min=1,
max=2,},
},
light_resistant = true,
armor = 100,
drawtype = "front",
water_damage = 3,
lava_damage = 1,
light_damage = 0,
attack_type = "dogfight",
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,
},
jump = true,
step = 0.5,
blood_texture = "mobs_blood.png",
})
mobs:register_spawn("mobs:sand_monster", {"default:sand"}, 20, -1, 16000, 1, 31000)
mobs:register_spawn("mobs:sand_monster", {"default:sand"}, 5, -1, 6000, 3, 31000)

Binary file not shown.

View File

@ -0,0 +1 @@
mobs_mutant = creature Zombie 2 from Game Wasteland by Blockmen

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

100
mods/mobs/spider.lua Normal file
View File

@ -0,0 +1,100 @@
-- Glowtest Spider
mobs:register_mob("mobs:spider", {
type = "monster",
hp_min = 20,
hp_max = 25,
collisionbox = {-0.9, -0.01, -0.7, 0.7, 0.6, 0.7},
--textures = {"mobs_spider.png"},
available_textures = {
total = 1,
texture_1 = {"mobs_spider.png"},
},
visual_size = {x=7,y=7},
visual = "mesh",
mesh = "mobs_spider.x",
makes_footstep_sound = true,
sounds = {
random = "mobs_spider",
attack = "mobs_spider",
},
view_range = 15,
walk_velocity = 1,
run_velocity = 3,
armor = 150,
damage = 3,
replace_rate = 15000,
replace_what = {"air"},
replace_with = "mobs:cobweb",
drops = {
{name = "farming:string",
chance = 1,
min = 1,
max = 5,},
{name = "farming:string",
chance = 15,
min = 2,
max = 6,},
},
light_resistant = false,
drawtype = "front",
water_damage = 5,
lava_damage = 5,
light_damage = 0,
on_rightclick = nil,
attack_type = "dogfight",
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,
},
jump = true,
sounds = {},
step = 1,
})
mobs:spawn_specific("mobs:spider", {"default:tuff", "default:stone"}, "air", 0, 4, 50, 7000, 1, -100, 31000)
-- 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 = "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=2,liquid=3},
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", "farming:string"},
{"farming:string", "farming:string", "farming:string"},
}
})

70
mods/mobs/spider2.lua Normal file
View File

@ -0,0 +1,70 @@
-- Glowtest Spider
mobs:register_mob("mobs:spider2", {
type = "monster",
hp_min = 30,
hp_max = 40,
collisionbox = {-0.9, -0.01, -0.7, 0.7, 0.6, 0.7},
--textures = {"mobs_spider.png"},
available_textures = {
total = 1,
texture_1 = {"mobs_spider2.png"},
},
visual_size = {x=7,y=7},
visual = "mesh",
mesh = "mobs_spider.x",
makes_footstep_sound = true,
sounds = {
random = "mobs_spider",
attack = "mobs_spider",
},
view_range = 15,
walk_velocity = 1,
run_velocity = 3,
armor = 150,
damage = 3,
replace_rate = 15000,
replace_what = {"air"},
replace_with = "mobs:cobweb",
drops = {
{name = "farming:string",
chance = 1,
min = 1,
max = 5,},
{name = "farming:string",
chance = 15,
min = 2,
max = 6,},
},
light_resistant = false,
drawtype = "front",
water_damage = 5,
lava_damage = 5,
light_damage = 0,
on_rightclick = nil,
attack_type = "dogfight",
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,
},
jump = true,
sounds = {},
step = 1,
})
mobs:spawn_specific("mobs:spider2", {"default:tuff", "default:stone"}, "air", 0, 4, 50, 7000, 1, -7500, -100)
-- Ethereal crystal spike compatibility
if not minetest.get_modpath("ethereal") then
minetest.register_alias("ethereal:crystal_spike", "default:sandstone")
end

70
mods/mobs/spider3.lua Normal file
View File

@ -0,0 +1,70 @@
-- Glowtest Spider
mobs:register_mob("mobs:spider3", {
type = "monster",
hp_min = 40,
hp_max = 50,
collisionbox = {-0.9, -0.01, -0.7, 0.7, 0.6, 0.7},
--textures = {"mobs_spider.png"},
available_textures = {
total = 1,
texture_1 = {"mobs_spider3.png"},
},
visual_size = {x=7,y=7},
visual = "mesh",
mesh = "mobs_spider.x",
makes_footstep_sound = true,
sounds = {
random = "mobs_spider",
attack = "mobs_spider",
},
view_range = 15,
walk_velocity = 1,
run_velocity = 3,
armor = 150,
damage = 3,
replace_rate = 15000,
replace_what = {"air"},
replace_with = "mobs:cobweb",
drops = {
{name = "farming:string",
chance = 1,
min = 1,
max = 5,},
{name = "farming:string",
chance = 15,
min = 2,
max = 6,},
},
light_resistant = false,
drawtype = "front",
water_damage = 5,
lava_damage = 5,
light_damage = 0,
on_rightclick = nil,
attack_type = "dogfight",
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,
},
jump = true,
sounds = {},
step = 1,
})
mobs:spawn_specific("mobs:spider3", {"default:tuff", "default:stone"}, "air", 0, 4, 50, 7000, 1, -15000, -5000)
-- Ethereal crystal spike compatibility
if not minetest.get_modpath("ethereal") then
minetest.register_alias("ethereal:crystal_spike", "default:sandstone")
end

70
mods/mobs/spider4.lua Normal file
View File

@ -0,0 +1,70 @@
-- Glowtest Spider
mobs:register_mob("mobs:spider4", {
type = "monster",
hp_min = 50,
hp_max = 75,
collisionbox = {-0.9, -0.01, -0.7, 0.7, 0.6, 0.7},
--textures = {"mobs_spider.png"},
available_textures = {
total = 1,
texture_1 = {"mobs_spider4.png"},
},
visual_size = {x=7,y=7},
visual = "mesh",
mesh = "mobs_spider.x",
makes_footstep_sound = true,
sounds = {
random = "mobs_spider",
attack = "mobs_spider",
},
view_range = 15,
walk_velocity = 1,
run_velocity = 3,
armor = 150,
damage = 3,
replace_rate = 15000,
replace_what = {"air"},
replace_with = "mobs:cobweb",
drops = {
{name = "farming:string",
chance = 1,
min = 1,
max = 5,},
{name = "farming:string",
chance = 15,
min = 2,
max = 6,},
},
light_resistant = false,
drawtype = "front",
water_damage = 5,
lava_damage = 5,
light_damage = 0,
on_rightclick = nil,
attack_type = "dogfight",
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,
},
jump = true,
sounds = {},
step = 1,
})
mobs:spawn_specific("mobs:spider4", {"default:tuff", "default:stone"}, "air", 0, 4, 50, 7000, 1, -30000, -10000)
-- Ethereal crystal spike compatibility
if not minetest.get_modpath("ethereal") then
minetest.register_alias("ethereal:crystal_spike", "default:sandstone")
end

View File

@ -0,0 +1,63 @@
-- Stone Monster
mobs:register_mob("mobs:stone_monster", {
type = "monster",
hp_min = 15,
hp_max = 25,
collisionbox = {-0.4, -0.01, -0.4, 0.4, 1.9, 0.4},
visual = "mesh",
mesh = "mobs_stone_monster.x",
--textures = {"mobs_stone_monster.png"},
available_textures = {
total = 1,
texture_1 = {"mobs_stone_monster.png"},
},
visual_size = {x=3, y=2.6},
makes_footstep_sound = true,
sounds = {
random = "mobs_stonemonster",
attack = "mobs_stonemonster",
},
view_range = 10,
walk_velocity = 0.5,
run_velocity = 2,
damage = 3,
drops = {
{name = "default:stone",
chance = 2,
min = 3,
max = 5,},
{name = "default:chondrit",
chance=3,
min=1,
max=2,},
{name = "default:coal_lump",
chance=5,
min=1,
max=3,},
},
light_resistant = true,
armor = 80,
drawtype = "front",
water_damage = 0,
lava_damage = 0,
light_damage = 0,
attack_type = "dogfight",
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,
},
jump = true,
step = 0.5,
blood_texture = "mobs_blood.png",
})
mobs:spawn_specific("mobs:stone_monster", {"default:stone"}, "air", 0, 3, 90, 7000, 1, -5000, -50)

View File

@ -0,0 +1,63 @@
-- Stone Monster
mobs:register_mob("mobs:stone_monster2", {
type = "monster",
hp_min = 25,
hp_max = 35,
collisionbox = {-0.4, -0.01, -0.4, 0.4, 1.9, 0.4},
visual = "mesh",
mesh = "mobs_stone_monster.x",
--textures = {"mobs_stone_monster.png"},
available_textures = {
total = 1,
texture_1 = {"mobs_stone_monster2.png"},
},
visual_size = {x=3, y=2.6},
makes_footstep_sound = true,
sounds = {
random = "mobs_stonemonster",
attack = "mobs_stonemonster",
},
view_range = 10,
walk_velocity = 0.5,
run_velocity = 2,
damage = 3,
drops = {
{name = "default:stone",
chance = 2,
min = 3,
max = 5,},
{name = "default:chondrit",
chance=3,
min=1,
max=2,},
{name = "default:coal_lump",
chance=5,
min=1,
max=3,},
},
light_resistant = true,
armor = 80,
drawtype = "front",
water_damage = 0,
lava_damage = 0,
light_damage = 0,
attack_type = "dogfight",
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,
},
jump = true,
step = 0.5,
blood_texture = "mobs_blood.png",
})
mobs:spawn_specific("mobs:stone_monster2", {"default:stone"}, "air", 0, 3, 90, 7000, 1, -30000, -2500)

Binary file not shown.

After

Width:  |  Height:  |  Size: 934 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 513 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 267 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 241 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 247 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 609 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 216 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 235 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 166 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 369 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 239 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 293 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 272 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 301 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 411 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 426 B

Some files were not shown because too many files have changed in this diff Show More