Update mobs_mc

This commit is contained in:
Wuzzy 2017-09-13 23:13:47 +02:00
parent 15892c6604
commit a4b229e565
63 changed files with 96 additions and 46 deletions

View file

@ -11,9 +11,10 @@ local cow_def = {
collisionbox = {-0.45, -0.01, -0.45, 0.45, 1.39, 0.45}, collisionbox = {-0.45, -0.01, -0.45, 0.45, 1.39, 0.45},
visual = "mesh", visual = "mesh",
mesh = "mobs_mc_cow.b3d", mesh = "mobs_mc_cow.b3d",
textures = { textures = { {
{"mobs_mc_cow.png"}, "mobs_mc_cow.png",
}, "blank.png",
}, },
visual_size = {x=2.8, y=2.8}, visual_size = {x=2.8, y=2.8},
makes_footstep_sound = true, makes_footstep_sound = true,
walk_velocity = 1, walk_velocity = 1,
@ -79,7 +80,7 @@ mobs:register_mob("mobs_mc:cow", cow_def)
local mooshroom_def = table.copy(cow_def) local mooshroom_def = table.copy(cow_def)
mooshroom_def.mesh = "mobs_mc_cow.b3d" mooshroom_def.mesh = "mobs_mc_cow.b3d"
mooshroom_def.textures = { {"mobs_mc_mooshroom.png^mobs_mc_mooshroom_mooshroom.png"}, } mooshroom_def.textures = { {"mobs_mc_mooshroom.png", "mobs_mc_mushroom_red.png"}, }
mooshroom_def.on_rightclick = function(self, clicker) mooshroom_def.on_rightclick = function(self, clicker)
if mobs:feed_tame(self, clicker, 1, true, true) then return end if mobs:feed_tame(self, clicker, 1, true, true) then return end
if mobs:protect(self, clicker) then return end if mobs:protect(self, clicker) then return end

View file

@ -15,8 +15,12 @@ local S, NS = dofile(MP.."/intllib.lua")
--################### --###################
local pr = PseudoRandom(os.time()*(-334)) local pr = PseudoRandom(os.time()*(-334))
local take_frequency = 10
local place_frequency = 10 -- How freqeuntly to take and place blocks, in seconds
local take_frequency_min = 25
local take_frequency_max = 90
local place_frequency_min = 10
local place_frequency_max = 30
-- Create the textures table for the enderman, depending on which kind of block -- Create the textures table for the enderman, depending on which kind of block
-- the enderman holds (if any). -- the enderman holds (if any).
@ -191,14 +195,16 @@ mobs:register_mob("mobs_mc:enderman", {
_taken_node = "", _taken_node = "",
do_custom = function(self, dtime) do_custom = function(self, dtime)
-- Take and put nodes -- Take and put nodes
if not self._take_place_timer then if not self._take_place_timer or not self._next_take_place_time then
self._take_place_timer = 0 self._take_place_timer = 0
self._next_take_place_time = math.random(take_frequency_min, take_frequency_max)
return return
end end
self._take_place_timer = self._take_place_timer + dtime self._take_place_timer = self._take_place_timer + dtime
if (self._taken_node == nil or self._taken_node == "") and self._take_place_timer >= take_frequency then if (self._taken_node == nil or self._taken_node == "") and self._take_place_timer >= self._next_take_place_time then
-- Take random node -- Take random node
self._take_place_timer = 0 self._take_place_timer = 0
self._next_take_place_time = math.random(place_frequency_min, place_frequency_max)
local pos = self.object:getpos() local pos = self.object:getpos()
local takable_nodes = minetest.find_nodes_in_area({x=pos.x-2, y=pos.y-1, z=pos.z-2}, {x=pos.x+2, y=pos.y+1, z=pos.z+2}, mobs_mc.enderman_takable) local takable_nodes = minetest.find_nodes_in_area({x=pos.x-2, y=pos.y-1, z=pos.z-2}, {x=pos.x+2, y=pos.y+1, z=pos.z+2}, mobs_mc.enderman_takable)
if #takable_nodes >= 1 then if #takable_nodes >= 1 then
@ -242,9 +248,10 @@ mobs:register_mob("mobs_mc:enderman", {
end end
end end
end end
elseif self._taken_node ~= nil and self._taken_node ~= "" and self._take_place_timer >= place_frequency then elseif self._taken_node ~= nil and self._taken_node ~= "" and self._take_place_timer >= self._next_take_place_time then
-- Place taken node -- Place taken node
self._take_place_timer = 0 self._take_place_timer = 0
self._next_take_place_time = math.random(take_frequency_min, take_frequency_max)
local pos = self.object:getpos() local pos = self.object:getpos()
local yaw = self.object:get_yaw() local yaw = self.object:get_yaw()
-- Place node at looking direction -- Place node at looking direction

View file

@ -23,7 +23,16 @@ mobs:register_mob("mobs_mc:llama", {
collisionbox = {-0.45, -0.01, -0.45, 0.45, 1.86, 0.45}, collisionbox = {-0.45, -0.01, -0.45, 0.45, 1.86, 0.45},
visual = "mesh", visual = "mesh",
mesh = "mobs_mc_llama.b3d", mesh = "mobs_mc_llama.b3d",
textures = {{"mobs_mc_llama.png"},{"mobs_mc_llama_brown.png"},{"mobs_mc_llama_creamy.png"},{"mobs_mc_llama_white.png"},{"mobs_mc_llama_gray.png"}}, textures = { -- 1: chest -- 2: decor -- 3: llama base texture
{"blank.png", "blank.png", "mobs_mc_llama_brown.png"},
{"blank.png", "blank.png", "mobs_mc_llama_creamy.png"},
{"blank.png", "blank.png", "mobs_mc_llama_gray.png"},
{"blank.png", "blank.png", "mobs_mc_llama_white.png"},
{"blank.png", "blank.png", "mobs_mc_llama.png"},
--{"mobs_mc_llama.png", "blank.png", "mobs_mc_llama.png"}, --lama with chest
--{"blank.png", "mobs_mc_decor_green.png", "mobs_mc_llama.png"}, --lama with decor
--{"mobs_mc_llama.png", "mobs_mc_decor_green.png", "mobs_mc_llama.png"}, --lama with everything
},
visual_size = {x=3, y=3}, visual_size = {x=3, y=3},
makes_footstep_sound = true, makes_footstep_sound = true,
runaway = true, runaway = true,

View file

@ -83,7 +83,7 @@ mobs:register_arrow("mobs_mc:shulkerbullet", {
mobs:register_egg("mobs_mc:shulker", S("Shulker"), "mobs_mc_spawn_icon_shulker.png", 0) mobs:register_egg("mobs_mc:shulker", S("Shulker"), "mobs_mc_spawn_icon_shulker.png", 0)
mobs:spawn_specific("mobs_mc:shulker", mobs_mc.spawn.end_city, {"air"}, 0, minetest.LIGHT_MAX+1, 30, 15000, 2, mobs_mc.spawn_height.end_min, mobs_mc.spawn_height.end_max) mobs:spawn_specific("mobs_mc:shulker", mobs_mc.spawn.end_city, {"air"}, 0, minetest.LIGHT_MAX+1, 30, 5000, 2, mobs_mc.spawn_height.end_min, mobs_mc.spawn_height.end_max)
if minetest.settings:get_bool("log_mods") then if minetest.settings:get_bool("log_mods") then
minetest.log("action", "MC Shulkers loaded") minetest.log("action", "MC Shulkers loaded")

View file

@ -54,10 +54,15 @@ local spider = {
light_damage = 0, light_damage = 0,
fear_height = 4, fear_height = 4,
animation = { animation = {
speed_normal = 25, speed_run = 50, stand_speed = 10,
stand_start = 40, stand_end = 80, walk_speed = 25,
walk_start = 0, walk_end = 40, run_speed = 50,
run_start = 0, run_end = 40, stand_start = 20,
stand_end = 40,
walk_start = 0,
walk_end = 20,
run_start = 0,
run_end = 20,
}, },
blood_amount = 0, blood_amount = 0,
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 404 B

After

Width:  |  Height:  |  Size: 476 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 865 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 396 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 360 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 263 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.6 KiB

After

Width:  |  Height:  |  Size: 9.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 775 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 433 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 277 B

After

Width:  |  Height:  |  Size: 648 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 306 B

After

Width:  |  Height:  |  Size: 439 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 275 B

After

Width:  |  Height:  |  Size: 529 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 321 B

After

Width:  |  Height:  |  Size: 759 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 389 B

After

Width:  |  Height:  |  Size: 750 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 638 B

After

Width:  |  Height:  |  Size: 1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 490 B

After

Width:  |  Height:  |  Size: 866 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 429 B

After

Width:  |  Height:  |  Size: 706 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 489 B

After

Width:  |  Height:  |  Size: 444 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 312 B

After

Width:  |  Height:  |  Size: 855 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 716 B

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 369 B

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 358 B

After

Width:  |  Height:  |  Size: 692 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 442 B

After

Width:  |  Height:  |  Size: 775 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 409 B

After

Width:  |  Height:  |  Size: 629 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 430 B

After

Width:  |  Height:  |  Size: 676 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 433 B

After

Width:  |  Height:  |  Size: 751 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 950 B

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 954 B

After

Width:  |  Height:  |  Size: 2.2 KiB

View file

@ -22,12 +22,30 @@ mobs:register_mob("mobs_mc:villager", {
visual = "mesh", visual = "mesh",
mesh = "mobs_mc_villager.b3d", mesh = "mobs_mc_villager.b3d",
textures = { textures = {
{"mobs_mc_villager.png"}, {
{"mobs_mc_villager_farmer.png"}, "mobs_mc_villager.png",
{"mobs_mc_villager_priest.png"}, "mobs_mc_villager.png", --hat
{"mobs_mc_villager_librarian.png"}, },
{"mobs_mc_villager_butcher.png"}, {
{"mobs_mc_villager_smith.png"}, "mobs_mc_villager_farmer.png",
"mobs_mc_villager_farmer.png", --hat
},
{
"mobs_mc_villager_priest.png",
"mobs_mc_villager_priest.png", --hat
},
{
"mobs_mc_villager_librarian.png",
"mobs_mc_villager_librarian.png", --hat
},
{
"mobs_mc_villager_butcher.png",
"mobs_mc_villager_butcher.png", --hat
},
{
"mobs_mc_villager_smith.png",
"mobs_mc_villager_smith.png", --hat
},
}, },
visual_size = {x=3, y=3}, visual_size = {x=3, y=3},
makes_footstep_sound = true, makes_footstep_sound = true,
@ -42,7 +60,7 @@ mobs:register_mob("mobs_mc:villager", {
}, },
animation = { animation = {
stand_speed = 25, walk_speed = 25, run_speed = 50, stand_speed = 25, walk_speed = 25, run_speed = 50,
stand_start = 0, stand_end = 0, stand_start = 40, stand_end = 59,
walk_start = 0, walk_end = 40, walk_start = 0, walk_end = 40,
run_start = 0, run_end = 40, run_start = 0, run_end = 40,
}, },

View file

@ -22,11 +22,12 @@ mobs:register_mob("mobs_mc:evoker", {
hp_max = 24, hp_max = 24,
collisionbox = {-0.4, -0.01, -0.4, 0.4, 1.95, 0.4}, collisionbox = {-0.4, -0.01, -0.4, 0.4, 1.95, 0.4},
visual = "mesh", visual = "mesh",
mesh = "mobs_mc_evoker.b3d", mesh = "mobs_mc_villager.b3d",
textures = { textures = { {
{"mobs_mc_evoker_base.png"}, "mobs_mc_evoker_base.png",
"blank.png", --no hat
-- TODO: Attack glow -- TODO: Attack glow
}, } },
visual_size = {x=3, y=3}, visual_size = {x=3, y=3},
makes_footstep_sound = true, makes_footstep_sound = true,
damage = 6, damage = 6,
@ -75,11 +76,12 @@ mobs:register_mob("mobs_mc:evoker", {
stand_speed = 5, stand_speed = 5,
walk_start = 0, walk_start = 0,
walk_end = 40, walk_end = 40,
shoot_start = 60, shoot_start = 120,
shoot_end = 80, shoot_end = 140,
-- TODO: Implement and fix death animation -- TODO: Implement and fix death animation
--die_start = 80, --die_start = 190,
--die_end = 130, --die_end = 200,
--die_speed = 15,
--die_loop = false, --die_loop = false,
}, },
water_damage = 0, water_damage = 0,

View file

@ -18,9 +18,11 @@ mobs:register_mob("mobs_mc:illusioner", {
collisionbox = {-0.3, -0.01, -0.3, 0.3, 1.94, 0.3}, collisionbox = {-0.3, -0.01, -0.3, 0.3, 1.94, 0.3},
visual = "mesh", visual = "mesh",
mesh = "mobs_mc_illusioner.b3d", mesh = "mobs_mc_illusioner.b3d",
textures = { textures = { {
{"mobs_mc_illusionist.png^mobs_mc_illusionist_bow.png"}, "mobs_mc_illusionist.png",
}, "mobs_mc_illusionist.png", --hat
"mcl_throwing_bow.png",
}, },
visual_size = {x=3, y=3}, visual_size = {x=3, y=3},
walk_velocity = 0.6, walk_velocity = 0.6,
run_velocity = 2, run_velocity = 2,
@ -32,13 +34,14 @@ mobs:register_mob("mobs_mc:illusioner", {
stand_end = 59, stand_end = 59,
walk_start = 0, walk_start = 0,
walk_end = 40, walk_end = 40,
shoot_start = 90, shoot_start = 150,
shoot_end = 110, shoot_end = 170,
-- TODO: Implement and fix death animation -- TODO: Implement and fix death animation
--die_start = 110, --die_start = 170,
--die_end = 130, --die_end = 180,
--die_speed = 15,
--die_loop = false, --die_loop = false,
-- 60-80 magic arm swinging, 80-90 transition between magic to bow shooting -- 120-140 magic arm swinging, 140-150 transition between magic to bow shooting
}, },
view_range = 16, view_range = 16,
fear_height = 4, fear_height = 4,

View file

@ -23,9 +23,13 @@ mobs:register_mob("mobs_mc:vindicator", {
visual = "mesh", visual = "mesh",
mesh = "mobs_mc_vindicator.b3d", mesh = "mobs_mc_vindicator.b3d",
textures = { textures = {
{"mobs_mc_vindicator_axe.png"}, {
"mobs_mc_vindicator_base.png",
"blank.png", --no hat
"mobs_mc_iron_axe.png",
-- TODO: Glow when attacking (mobs_mc_vindicator.png) -- TODO: Glow when attacking (mobs_mc_vindicator.png)
}, },
},
visual_size = {x=3, y=3}, visual_size = {x=3, y=3},
makes_footstep_sound = true, makes_footstep_sound = true,
damage = 13, damage = 13,
@ -49,18 +53,19 @@ mobs:register_mob("mobs_mc:vindicator", {
damage = "Villagerhurt1", damage = "Villagerhurt1",
}, },
animation = { animation = {
stand_speed = 25,
walk_speed = 25, walk_speed = 25,
run_speed = 25, run_speed = 25,
punch_speed = 25,
stand_start = 40, stand_start = 40,
stand_end = 59, stand_end = 59,
stand_speed = 5,
walk_start = 0, walk_start = 0,
walk_end = 40, walk_end = 40,
punch_start = 90, punch_start = 90,
punch_end = 110, punch_end = 110,
-- TODO: Implement and fix death animation -- TODO: Implement and fix death animation
--die_start = 110, --die_start = 170,
--die_end = 130, --die_end = 180,
--die_loop = false, --die_loop = false,
}, },
water_damage = 1, water_damage = 1,

View file

@ -21,7 +21,7 @@ mobs:register_mob("mobs_mc:villager_zombie", {
armor = 90, armor = 90,
collisionbox = {-0.3, -0.01, -0.3, 0.3, 1.94, 0.3}, collisionbox = {-0.3, -0.01, -0.3, 0.3, 1.94, 0.3},
visual = "mesh", visual = "mesh",
mesh = "mobs_mc_zvillager.b3d", mesh = "mobs_mc_villager_zombie.b3d",
textures = { textures = {
{"mobs_mc_zombie_butcher.png"}, {"mobs_mc_zombie_butcher.png"},
{"mobs_mc_zombie_farmer.png"}, {"mobs_mc_zombie_farmer.png"},