mapgen stuff

>added two new structures
>added mobs_farmer skin
>improved music frequency
>sword stands work for any direction
master
D00Med 2017-01-26 18:48:02 +10:00
parent f47ca0a19d
commit a96e31ecda
8 changed files with 67 additions and 4 deletions

View File

@ -1753,8 +1753,19 @@ minetest.register_on_generated(function(minp, maxp)
for n = 1, #grass2 do
if math.random(1, village_rarity) == 1 then
local pos = {x = grass2[n].x, y = grass2[n].y, z = grass2[n].z }
local num = math.random(1,3)
if minetest.get_node({x=pos.x, y=pos.y+1, z=pos.z}).name == "air" then
minetest.place_schematic(pos, minetest.get_modpath("hyrule_mapgen").."/schematics/grass_dungeon.mts", random, {}, true)
minetest.place_schematic(pos, minetest.get_modpath("hyrule_mapgen").."/schematics/world"..num..".mts", random, {}, true)
if num == 2 then
local obj = minetest.env:add_entity({x=pos.x+5, y=pos.y+1, z=pos.z+4}, "mobs_npc:npc_custom")
local npc = obj:get_luaentity()
npc.text = "Deku Scrubs have been scaring my animals..."
npc.reward_text = "You killed the Deku Scrubs? Thanks, you can have this"
npc.item = "mobs_animal:bucket_milk"
npc.reward_item = "mobs_loz:deku_nut"
npc.item_count = 10
npc.zdir = -1
end
end
end
end

Binary file not shown.

Binary file not shown.

View File

@ -2438,7 +2438,12 @@ minetest.register_entity("hyruletools:swordent", {
on_activate = function(self)
local pos = self.object:getpos()
local pos_under = {x=pos.x, y=pos.y-0.6, z=pos.z}
local facedir = minetest.get_node(pos_under).param2
local dir = minetest.facedir_to_dir(facedir)
local yaw = math.atan(dir.x/dir.z)
self.object:setyaw(yaw)
if minetest.get_node(pos_under).name ~= "hyruletools:swordstand_used" then
self.object:remove()
end
@ -2456,7 +2461,12 @@ minetest.register_entity("hyruletools:ruby", {
on_activate = function(self)
local pos = self.object:getpos()
local pos_under = {x=pos.x, y=pos.y-0.6, z=pos.z}
local facedir = minetest.get_node(pos_under).param2
local dir = minetest.facedir_to_dir(facedir)
local yaw = math.atan(dir.x/dir.z)
self.object:setyaw(yaw)
if minetest.get_node(pos_under).name ~= "hyruletools:swordstand_ruby" then
self.object:remove()
end
@ -2474,6 +2484,11 @@ minetest.register_entity("hyruletools:sapphire", {
on_activate = function(self)
local pos = self.object:getpos()
local pos_under = {x=pos.x, y=pos.y-0.6, z=pos.z}
local facedir = minetest.get_node(pos_under).param2
local dir = minetest.facedir_to_dir(facedir)
local yaw = math.atan(dir.x/dir.z)
self.object:setyaw(yaw)
if minetest.get_node(pos_under).name ~= "hyruletools:swordstand_sapphire" then
self.object:remove()
@ -2492,6 +2507,11 @@ minetest.register_entity("hyruletools:emerald", {
on_activate = function(self)
local pos = self.object:getpos()
local pos_under = {x=pos.x, y=pos.y-0.6, z=pos.z}
local facedir = minetest.get_node(pos_under).param2
local dir = minetest.facedir_to_dir(facedir)
local yaw = math.atan(dir.x/dir.z)
self.object:setyaw(yaw)
if minetest.get_node(pos_under).name ~= "hyruletools:swordstand_emerald" then
self.object:remove()
@ -2511,6 +2531,10 @@ minetest.register_entity("hyruletools:swordent_mese", {
on_activate = function(self)
local pos = self.object:getpos()
local pos_under = {x=pos.x, y=pos.y-0.6, z=pos.z}
local facedir = minetest.get_node(pos_under).param2
local dir = minetest.facedir_to_dir(facedir)
local yaw = math.atan(dir.x/dir.z)
self.object:setyaw(yaw)
if minetest.get_node(pos_under).name ~= "hyruletools:swordstand_mese" then
self.object:remove()
@ -2530,6 +2554,11 @@ minetest.register_entity("hyruletools:swordent_bronze", {
on_activate = function(self)
local pos = self.object:getpos()
local pos_under = {x=pos.x, y=pos.y-0.6, z=pos.z}
local facedir = minetest.get_node(pos_under).param2
local dir = minetest.facedir_to_dir(facedir)
local yaw = math.atan(dir.x/dir.z)
self.object:setyaw(yaw)
if minetest.get_node(pos_under).name ~= "hyruletools:swordstand_bronze" then
self.object:remove()
@ -2549,6 +2578,11 @@ minetest.register_entity("hyruletools:swordent_diamond", {
on_activate = function(self)
local pos = self.object:getpos()
local pos_under = {x=pos.x, y=pos.y-0.6, z=pos.z}
local facedir = minetest.get_node(pos_under).param2
local dir = minetest.facedir_to_dir(facedir)
local yaw = math.atan(dir.x/dir.z)
self.object:setyaw(yaw)
if minetest.get_node(pos_under).name ~= "hyruletools:swordstand_diamond" then
self.object:remove()
@ -2568,6 +2602,11 @@ minetest.register_entity("hyruletools:swordent_steel", {
on_activate = function(self)
local pos = self.object:getpos()
local pos_under = {x=pos.x, y=pos.y-0.6, z=pos.z}
local facedir = minetest.get_node(pos_under).param2
local dir = minetest.facedir_to_dir(facedir)
local yaw = math.atan(dir.x/dir.z)
self.object:setyaw(yaw)
if minetest.get_node(pos_under).name ~= "hyruletools:swordstand_steel" then
self.object:remove()
@ -2587,6 +2626,11 @@ minetest.register_entity("hyruletools:swordent_stone", {
on_activate = function(self)
local pos = self.object:getpos()
local pos_under = {x=pos.x, y=pos.y-0.6, z=pos.z}
local facedir = minetest.get_node(pos_under).param2
local dir = minetest.facedir_to_dir(facedir)
local yaw = math.atan(dir.x/dir.z)
self.object:setyaw(yaw)
if minetest.get_node(pos_under).name ~= "hyruletools:swordstand_stone" then
self.object:remove()
@ -2606,6 +2650,11 @@ minetest.register_entity("hyruletools:swordent_wood", {
on_activate = function(self)
local pos = self.object:getpos()
local pos_under = {x=pos.x, y=pos.y-0.6, z=pos.z}
local facedir = minetest.get_node(pos_under).param2
local dir = minetest.facedir_to_dir(facedir)
local yaw = math.atan(dir.x/dir.z)
self.object:setyaw(yaw)
if minetest.get_node(pos_under).name ~= "hyruletools:swordstand_wood" then
self.object:remove()
@ -2631,6 +2680,7 @@ minetest.register_node("hyruletools:swordstand", {
"hyruletools_stand_side.png",
},
paramtype = "light",
paramtype2 = "facedir",
groups = {cracky=1},
on_rightclick = function(pos, node, clicker, item, _)
local wield_item = clicker:get_wielded_item():get_name()

View File

@ -1,2 +1,4 @@
mobs_npc_doomed.png - CC-BY-SA 3.0 UNPORTED. Created by D00Med
mobs_npc_toby109tt.png - CC-BY-SA 3.0 UNPORTED. Created by toby109tt aka Tobyplowy
mobs_npc_toby109tt.png - CC-BY-SA 3.0 UNPORTED. Created by toby109tt aka Tobyplowy
mobs_farmer.png - CC BY-SA by julito

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -19,12 +19,12 @@ minetest.register_globalstep(function()
music_name = "BrassFleece"
duration = 105
gain = 0.8
elseif #village_nodes > 5 and math.random(1, 1000) == 1 then
elseif #village_nodes > 5 and math.random(1, 5000) == 1 then
music = true
music_name = "Villageforest"
duration = 93
gain = 1
elseif math.random(1, 2000) == 1 then
elseif math.random(1, 10000) == 1 then
music = true
music_name = "Downtime"
duration = 75