Más cambios en el instalador

-- Yawin
master
Yawin 2017-02-08 21:19:22 +01:00
parent 00a06541ef
commit c923d8b2df
277 changed files with 7 additions and 9456 deletions

View File

@ -10,12 +10,15 @@ git clone https://github.com/octacian/digicompute.git
git clone https://github.com/octacian/datalib.git
cd ..
git clone https://github.com/bdjnk/mini_sun.git
mkdir yawin
cd yawin
git clone https://gitlab.com/yawin/Mod_Magic.git
git clone https://gitlab.com/yawin/utilities.git
cd ../mods/
rm -f beds boats bucket carts creative datalib default digicompute doors dye farming fire flowers give_initial_stuff killme Mod_Magic Minetest-WorldEdit screwdriver sethome sfinv stairs tnt vessels walls wool xpanes
rm -f beds boats bucket carts creative datalib default digicompute doors dye farming fire flowers give_initial_stuff killme mini-sun Mod_Magic Minetest-WorldEdit screwdriver sethome sfinv stairs tnt utilities vessels walls wool xpanes
ln -s ../referenced-mods/minetest_game/mods/beds/
ln -s ../referenced-mods/minetest_game/mods/boats/
@ -43,4 +46,7 @@ ln -s ../referenced-mods/minetest_game/mods/xpanes/
ln -s ../referenced-mods/octacian/digicompute/
ln -s ../referenced-mods/octacian/datalib/
ln -s ../referenced-mods/mini-sun/
ln -s ../referenced-mods/yawin/Mod_Magic/
ln -s ../referenced-mods/yawin/utilities/

View File

@ -1,14 +0,0 @@
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
Version 2, December 2004
Copyright (C) 2004 Sam Hocevar <sam@hocevar.net>
Everyone is permitted to copy and distribute verbatim or modified
copies of this license document, and changing it is allowed as long
as the name is changed.
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. You just DO WHAT THE FUCK YOU WANT TO.

View File

@ -1,11 +0,0 @@
# Bedrock [`bedrock2`]
Version 1.2.2
## Description
This mod adds an indestructible bedrock layer at the bottom of the world.
## Configuration
This mod recognizes the following minetest.conf setting:
* `bedrock2_y`: Sets the Y coordinate on which the bedrock layer will be created (default: -30912).

View File

@ -1,3 +0,0 @@
default_override
intllib?
mesecons_mvps?

View File

@ -1 +0,0 @@
Adds an indestructable bedrock layer at the bottom of the world.

View File

@ -1,38 +0,0 @@
-- Boilerplate to support localized strings if intllib mod is installed.
local S
if minetest.get_modpath("intllib") then
S = intllib.Getter()
else
S = function(s) return s end
end
local bedrock = {}
bedrock.layer = -1000 -- determined as appropriate by experiment
bedrock.node = {name = "default_override:bedrock"}
local depth = tonumber(minetest.setting_get("bedrock2_y"))
if depth ~= nil then
bedrock.layer = depth
end
minetest.register_on_generated(function(minp, maxp)
if maxp.y >= bedrock.layer and minp.y <= bedrock.layer then
local vm, emin, emax = minetest.get_mapgen_object("voxelmanip")
local data = vm:get_data()
local area = VoxelArea:new({MinEdge=emin, MaxEdge=emax})
local c_bedrock = minetest.get_content_id("default_override:bedrock")
for x = minp.x, maxp.x do
for z = minp.z, maxp.z do
local p_pos = area:index(x, bedrock.layer, z)
data[p_pos] = c_bedrock
end
end
vm:set_data(data)
vm:calc_lighting()
vm:update_liquids()
vm:write_to_map()
end
end)

View File

@ -1,2 +0,0 @@
Bedrock = Grundgestein
Bedrock is a very hard block. It cannot be mined, altered, destroyed or moved by any means. It appears at the bottom of the world in a flat layer. = Grundgestein ist sehr hart. Es kann nicht gegraben, verändert, zerstört oder bewegt werden. Es taucht am Boden der Welt in einer flachen Ebene auf.

View File

@ -1,2 +0,0 @@
Bedrock
Bedrock is a very hard block. It cannot be mined, altered, destroyed or moved by any means. It appears at the bottom of the world in a flat layer.

View File

@ -1 +0,0 @@
name = bedrock2

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

View File

@ -1,2 +0,0 @@
# Sets the height (Y) at which the bedrock layer will be created.
bedrock2_y (Bedrock height) int -1000

Binary file not shown.

Before

Width:  |  Height:  |  Size: 327 B

View File

@ -1,2 +0,0 @@
default
datalib

View File

@ -1,94 +0,0 @@
vanished_players = {}
minetest.register_chatcommand("vanish", {
params = "",
description = "Make user invisible at eye of all",
privs = {admin = true},
func = function(name, param)
local prop
vanished_players[name] = not vanished_players[name]
if vanished_players[name] then
prop = {visual_size = {x=0, y=0}, collisionbox = {0,0,0,0,0,0}}
minetest.chat_send_player(name, "Vannish Command: You are Invisible now")
else
-- default player size
prop = {visual_size = {x=1, y=1},
collisionbox = {-0.35, -1, -0.35, 0.35, 1, 0.35}}
minetest.chat_send_player(name, "Vannish Command: You are Visible now")
end
minetest.get_player_by_name(name):set_properties(prop)
end
})
-- create file
datalib.create(datalib.datapath.."/genesis.txt")
-- Set Genesis Command
minetest.register_chatcommand("setgenesis", {
params = "",
privs = {admin = true},
description = "Set the Genesis point (beginning).",
func = function(name, param)
--Check for proper player [forbids console commands, not really needed]
local player = minetest.get_player_by_name(name)
if not player then
return
end
--Get player position and set genesis just below that just because it looks cooler.
local pos = vector.round(player:getpos())
pos.y = pos.y + 0.5
local pos_str = minetest.pos_to_string(pos)
datalib.write(datalib.datapath.."/genesis.txt", pos_str, false)
--Notify admin who set genesis.
return true, "Genesis point set to position "..pos_str
end,
})
-- Make sure player initializes at set genesis when he hurts himself badly if it exists.
minetest.register_on_respawnplayer(function(player)
if not player then
return
end
local genesis_pos = minetest.string_to_pos(minetest.setting_get("static_genesis"))
if not genesis_pos then
return
end
player:setpos(genesis_pos)
end)
-- Make sure player initializes at set genesis when he joins if it exists.
minetest.register_on_newplayer(function(player)
if not player then
return
end
local genesis_pos = minetest.string_to_pos(minetest.setting_get("static_genesis"))
if not genesis_pos then
return
end
player:setpos(genesis_pos)
end)
-- Make /genesis go to a genesis point set by admins if it exists.
minetest.register_chatcommand("genesis", {
params = "",
privs = {},
description = "Initialize transportation to the Genesis.",
func = function(name, param)
local player = minetest.get_player_by_name(name)
if not player then
return
end
local genesis = datalib.read(datalib.datapath.."/genesis.txt", false)
local genesis_pos = minetest.string_to_pos(genesis)
if not genesis_pos then
return false, "Static genesis point is not set or improperly formatted."
end
player:setpos(genesis_pos)
return true, "Initializing transportation to the Genesis point..."
end
})

View File

@ -1,26 +0,0 @@
INFO_BLANK = "To find out more about certain items type the command '/info' with the params 'update', 'version', 'creative', 'suprise'"
INFO_VERSION = "0.1"
INFO_UPDATE = "Nothing ATM"
INFO_CREATIVE = "Type the command '/gamemode_'(change the underscore to a space) and use the params '0' or 's' for survival and '1' or 'c' for creative"
minetest.register_chatcommand("info", {
params = "(blank) | update | version | creative | suprise",
description = "To get info on stuff.",
func = function(name, param)
if param == "" then
minetest.chat_send_player(name, INFO_BLANK)
end
if param == "update" then
minetest.chat_send_player(name, INFO_UPDATE)
end
if param == "version" then
minetest.chat_send_player(name, INFO_VERSION)
end
if param == "creative" then
minetest.chat_send_player(name, INFO_CREATIVE)
end
if param == "random" then
minetest.chat_send_player(name, INFO_RANDOM)
end
end
})

View File

@ -1,8 +0,0 @@
local path = minetest.get_modpath("commands")
minetest.register_privilege("admin","Dios en la tierra");
dofile(path.."/info.lua")
dofile(path.."/timeset.lua")
dofile(path.."/gm.lua")
dofile(path.."/kits.lua")

View File

@ -1,13 +0,0 @@
minetest.register_chatcommand("kit", {
params = "",
description = "Add a Kit to player",
privs = {},
func = function(name)
local receiverref = core.get_player_by_name(name)
receiverref:get_inventory():add_item('main', 'default:pick_stone')
receiverref:get_inventory():add_item('main', 'default:shovel_stone')
receiverref:get_inventory():add_item('main', 'default:axe_stone')
receiverref:get_inventory():add_item('main', 'default:sword_stone')
end
})

View File

@ -1,27 +0,0 @@
minetest.register_chatcommand("timeset", {
params = "<0...24000>",
description = "set time of day",
privs = {admin=true},
func = function(name, param)
local newtime = tonumber(param)
if param == "" then
return false, "Missing time."
end
if param == "day" then
minetest.set_timeofday((6000 % 24000) / 24000)
minetest.log("action", name .. " sets time to day")
return true, "Time of day changed."
elseif param == "night" then
minetest.set_timeofday((20000 % 24000) / 24000)
minetest.log("action", name .. " sets time to night")
return true, "Time of day changed."
else
if newtime == nil then
return false, "Invalid time."
end
minetest.set_timeofday((newtime % 24000) / 24000)
minetest.log("action", name .. " sets time to "..newtime)
return true, "Time of day changed."
end
end,
})

View File

@ -1,338 +0,0 @@
-- mods/default_override/crafting.lua
minetest.register_craft({
output = 'default:stick 4',
recipe = {
{'group:wood'},
{'group:wood'},
}
})
minetest.register_craft({
output = 'default:torch 4',
recipe = {
{'default:charcoal_lump'},
{'default:stick'},
}
})
minetest.register_craft({
output = 'default:pick_gold',
recipe = {
{'default:gold_ingot', 'default:gold_ingot', 'default:gold_ingot'},
{'', 'default:stick', ''},
{'', 'default:stick', ''},
}
})
minetest.register_craft({
output = 'default:shovel_gold',
recipe = {
{'default:gold_ingot'},
{'default:stick'},
{'default:stick'},
}
})
minetest.register_craft({
output = 'default:axe_gold',
recipe = {
{'default:gold_ingot', 'default:gold_ingot'},
{'default:gold_ingot', 'default:stick'},
{'', 'default:stick'},
}
})
minetest.register_craft({
output = 'default:sword_gold',
recipe = {
{'default:gold_ingot'},
{'default:gold_ingot'},
{'default:stick'},
}
})
minetest.register_craft({
output = 'default_override:pick_emerald',
recipe = {
{'default_override:emerald', 'default_override:emerald', 'default_override:emerald'},
{'', 'default:stick', ''},
{'', 'default:stick', ''},
}
})
minetest.register_craft({
output = 'default_override:shovel_emerald',
recipe = {
{'', 'default_override:emerald', ''},
{'', 'default:stick', ''},
{'', 'default:stick', ''},
}
})
minetest.register_craft({
output = 'default_override:axe_emerald',
recipe = {
{'default_override:emerald', 'default_override:emerald', ''},
{'default_override:emerald', 'default:stick', ''},
{'', 'default:stick', ''},
}
})
minetest.register_craft({
output = 'default_override:axe_emerald',
recipe = {
{'', 'default_override:emerald', 'default_override:emerald'},
{'', 'default:stick', 'default_override:emerald'},
{'', 'default:stick', ''},
}
})
minetest.register_craft({
output = 'default_override:sword_emerald',
recipe = {
{'', 'default_override:emerald', ''},
{'', 'default_override:emerald', ''},
{'', 'default:stick', ''},
}
})
--minetest.register_craft({
-- output = 'default:flint_and_steel',
-- recipe = {
-- {'default:steel_ingot', ''},
-- {'', 'default:flint'},
-- }
--})
--minetest.register_craft({
-- output = "default:pole",
-- recipe = {
-- {'','','default:stick'},
-- {'','default:stick','farming:string'},
-- {'default:stick','','farming:string'},
-- }
--})
--minetest.register_craft({
-- output = "default:pole",
-- recipe = {
-- {'', '', 'default:stick'},
-- {'', 'default:stick', 'default:string'},
-- {'default:stick', '', 'default:string'},
-- }
--})
minetest.register_craft({
output = 'default:rail 15',
recipe = {
{'default:steel_ingot', '', 'default:steel_ingot'},
{'default:steel_ingot', 'default:stick', 'default:steel_ingot'},
{'default:steel_ingot', '', 'default:steel_ingot'},
}
})
--minetest.register_craft({
-- output = "default:gold_nugget 9",
-- recipe = {{"default:gold_ingot"}},
--})
--minetest.register_craft({
-- output = 'dye:white 3',
-- recipe = {
-- {'default:bone'},
-- }
--})
minetest.register_craft({
output = 'default_override:lapisblock',
recipe = {
{'dye:blue', 'dye:blue', 'dye:blue'},
{'dye:blue', 'dye:blue', 'dye:blue'},
{'dye:blue', 'dye:blue', 'dye:blue'},
}
})
minetest.register_craft({
output = 'dye:blue 9',
recipe = {
{'default_override:lapisblock'},
}
})
minetest.register_craft({
output = "default_override:emeraldblock",
recipe = {
{'default_override:emerald', 'default_override:emerald', 'default_override:emerald'},
{'default_override:emerald', 'default_override:emerald', 'default_override:emerald'},
{'default_override:emerald', 'default_override:emerald', 'default_override:emerald'},
}
})
minetest.register_craft({
output = 'default_override:emerald 9',
recipe = {
{'default_override:emeraldblock'},
}
})
minetest.register_craft({
output = "default_override:glowstone",
recipe = {
{'default_override:glowstone_dust', 'default_override:glowstone_dust'},
{'default_override:glowstone_dust', 'default_override:glowstone_dust'},
}
})
minetest.register_craft({
output = 'default_override:glowstone_dust 4',
recipe = {
{'default_override:glowstone'},
}
})
minetest.register_craft({
output = "default_override:redstoneblock",
recipe = {
{'default_override:redstone_dust','default_override:redstone_dust','default_override:redstone_dust'},
{'default_override:redstone_dust','default_override:redstone_dust','default_override:redstone_dust'},
{'default_override:redstone_dust','default_override:redstone_dust','default_override:redstone_dust'},
}
})
minetest.register_craft({
output = 'default_override:redstone_dust 9',
recipe = {
{'default_override:redstoneblock'},
}
})
--minetest.register_craft({
-- output = 'default_override:redstone_dust',
-- recipe = {{"mesecons:wire_00000000_off"}},
--})
--minetest.register_craft({
-- output = "mesecons:wire_00000000_off",
-- recipe = {{'default_override:redstone_dust'}},
--})
minetest.register_craft({
output = "default_override:apple_gold",
recipe = {
{"default_override:gold_nugget", "default_override:gold_nugget", "default_override:gold_nugget"},
{"default_override:gold_nugget", 'default:apple', "default_override:gold_nugget"},
{"default_override:gold_nugget", "default_override:gold_nugget", "default_override:gold_nugget"},
}
})
minetest.register_craft({
output = "default_override:sugar",
recipe = {
{"default:papyrus"},
}
})
minetest.register_craft({
output = "beds:bed",
recipe = {
{"group:wool", 'group:wool', "group:wool"},
{"group:wood", "group:wood", "group:wood"},
}
})
minetest.register_craft({
output = "stairs:slab_grass 6",
recipe = {
{"default:grass_1", "default:grass_1", "default:grass_1"},
{"default:dirt", "default:dirt", "default:dirt"},
}
})
minetest.register_craft({
output = "stairs:slab_grass 3",
recipe = {
{"default:grass_1", "default:grass_1", "default:grass_1"},
{"stairs:slab_dirt", "stairs:slab_dirt", "stairs:slab_dirt"},
}
})
minetest.register_craft({
type = "shapeless",
output = "default:sandstone 4",
recipe = {"group:sand", "group:sand", "group:sand", "group:sand"}
})
--[[
minetest.register_craft({
output = "stairs:slab_dirt_with_grass",
recipe = {
{"default:dirt_with_grass", "default:dirt_with_grass", "default:dirt_with_grass"},
}
})]]--
--
-- Cooking recipes
--
--minetest.register_craft({
-- type = "cooking",
-- output = "default:fish",
-- recipe = "default:fish_raw",
-- cooktime = 2,
--})
minetest.register_craft({
type = "cooking",
output = "default_override:charcoal_lump",
recipe = "group:tree",
})
minetest.register_craft({
type = "cooking",
output = "default:steel_ingot",
recipe = "default:stone_with_iron",
})
minetest.register_craft({
type = "cooking",
output = "default:gold_ingot",
recipe = "default:stone_with_gold",
})
minetest.register_craft({
type = "shapeless",
output = "farming:flour",
recipe = {"farming:wheat"}
})
minetest.register_craft({
type = "shapeless",
output = "farming:flour 4",
recipe = {"farming:wheat", "farming:wheat", "farming:wheat", "farming:wheat"}
})
--
-- Fuels
--
minetest.register_craft({
type = "fuel",
recipe = "default_override:charcoal_lump",
burntime = 40,
})
minetest.register_craft({
type = "fuel",
recipe = "default:coal_lump",
burntime = 40,
})
--
--Temporary
--
--minetest.register_craft({
-- output = "default:string",
-- recipe = {{"default:paper", "default:paper"}},
--})

View File

@ -1,95 +0,0 @@
-- mods/default_override/craftitems.lua
--
-- Crafting items
--
minetest.register_craftitem("default_override:redstone_dust", {
description = "Redstone Dust",
inventory_image = "default_redstone_dust.png",
stack_max = 64,
})
minetest.register_craftitem("default_override:charcoal_lump", {
description = "Charcoal Lump",
inventory_image = "default_charcoal_lump.png",
stack_max = 64,
})
minetest.register_craftitem("default_override:gold_nugget", {
description = "Gold Nugget",
inventory_image = "default_gold_nugget.png",
stack_max = 64,
})
minetest.register_craftitem("default_override:emerald", {
description = "Emerald",
inventory_image = "default_emerald.png",
stack_max = 64,
})
minetest.register_craftitem("default_override:clay_brick", {
description = "Clay Brick",
inventory_image = "default_clay_brick.png",
stack_max = 64,
})
minetest.register_craftitem("default_override:gunpowder", {
description = "Gunpowder",
inventory_image = "default_gunpowder.png",
stack_max = 64,
})
minetest.register_craftitem("default_override:bone", {
description = "Bone",
inventory_image = "default_bone.png",
stack_max = 64,
})
minetest.register_craftitem("default_override:glowstone_dust", {
description = "Glowstone Dust",
inventory_image = "default_glowstone_dust.png",
stack_max = 64,
})
minetest.register_craftitem("default_override:fish_raw", {
description = "Raw Fish",
groups = {},
inventory_image = "default_fish.png",
on_use = minetest.item_eat(2),
stack_max = 64,
})
minetest.register_craftitem("default_override:fish", {
description = "Cooked Fish",
groups = {},
inventory_image = "default_fish_cooked.png",
on_use = minetest.item_eat(4),
stack_max = 64,
})
minetest.register_craftitem("default_override:sugar", {
description = "Sugar",
inventory_image = "default_sugar.png",
stack_max = 64,
})
minetest.register_craftitem("default_override:string",{
description = "String",
inventory_image = "default_string.png",
stack_max = 64,
})
farming.register_hoe(":farming:hoe_gold", {
description = "Gold Hoe",
inventory_image = "farming_tool_goldhoe.png",
max_uses = 350,
material = "default:gold_ingot"
})
minetest.override_item("farming:hoe_gold", {
on_use = function(itemstack, user, pointed_thing)
return itemstack
end,
on_place = function(itemstack, user, pointed_thing)
return farming.hoe_on_use(itemstack, user, pointed_thing, 350)
end,
})

View File

@ -1,6 +0,0 @@
default
dye
fire
farming
stairs
beds

View File

@ -1,333 +0,0 @@
-- mods/default_override/functions.lua
-- Functions
minetest.register_abm({
label = "Grow cactus",
nodenames = {"default:cactus"},
neighbors = {"group:sand"},
interval = 5,
chance = 83,
action = function(...)
default.grow_cactus(...)
end
})
local timber_nodenames={"default:papyrus", "default:cactus"}
minetest.register_on_dignode(function(pos, node)
local i=1
while timber_nodenames[i]~=nil do
if node.name==timber_nodenames[i] then
np={x=pos.x, y=pos.y+1, z=pos.z}
while minetest.env:get_node(np).name==timber_nodenames[i] do
minetest.env:remove_node(np)
minetest.env:add_item(np, timber_nodenames[i])
np={x=np.x, y=np.y+1, z=np.z}
end
end
i=i+1
end
end)
function get_nodedef_field(nodename, fieldname)
if not minetest.registered_nodes[nodename] then
return nil
end
return minetest.registered_nodes[nodename][fieldname]
end
function set_fire(pointed_thing)
local n = minetest.env:get_node(pointed_thing.above)
if n.name ~= "" and n.name == "air" then
minetest.env:add_node(pointed_thing.above, {name="fire:basic_flame"})
end
end
--
-- Fire Particles
--
function add_fire(pos)
local null = {x=0, y=0, z=0}
pos.y = pos.y+0.19
minetest.add_particle(pos, null, null, 1.1,
1.5, true, "default_fire_particle"..tostring(math.random(1,2)) ..".png")
pos.y = pos.y +0.01
minetest.add_particle(pos, null, null, 0.8,
1.5, true, "default_fire_particle"..tostring(math.random(1,2)) ..".png")
end
--
-- Bone Meal
--
local n
local n2
local pos
function apple_leave()
if math.random(0, 10) == 3 then
return {name = "default:apple"}
else
return {name = "default:leaves"}
end
end
function air_leave()
if math.random(0, 50) == 3 then
return {name = "air"}
else
return {name = "default:leaves"}
end
end
function generate_tree(pos, trunk, leaves)
pos.y = pos.y-1
local nodename = minetest.env:get_node(pos).name
pos.y = pos.y+1
if not minetest.env:get_node_light(pos) then
return
end
node = {name = ""}
for dy=1,4 do
pos.y = pos.y+dy
if minetest.env:get_node(pos).name ~= "air" then
return
end
pos.y = pos.y-dy
end
node = {name = "default:tree"}
for dy=0,4 do
pos.y = pos.y+dy
minetest.env:add_node(pos, node)
pos.y = pos.y-dy
end
node = {name = "default:leaves"}
pos.y = pos.y+3
local rarity = 0
if math.random(0, 10) == 3 then
rarity = 1
end
for dx=-2,2 do
for dz=-2,2 do
for dy=0,3 do
pos.x = pos.x+dx
pos.y = pos.y+dy
pos.z = pos.z+dz
if dx == 0 and dz == 0 and dy==3 then
if minetest.env:get_node(pos).name == "air" and math.random(1, 5) <= 4 then
minetest.env:add_node(pos, node)
if rarity == 1 then
minetest.env:add_node(pos, apple_leave())
else
minetest.env:add_node(pos, air_leave())
end
end
elseif dx == 0 and dz == 0 and dy==4 then
if minetest.env:get_node(pos).name == "air" and math.random(1, 5) <= 4 then
minetest.env:add_node(pos, node)
if rarity == 1 then
minetest.env:add_node(pos, apple_leave())
else
minetest.env:add_node(pos, air_leave())
end
end
elseif math.abs(dx) ~= 2 and math.abs(dz) ~= 2 then
if minetest.env:get_node(pos).name == "air" then
minetest.env:add_node(pos, node)
if rarity == 1 then
minetest.env:add_node(pos, apple_leave())
else
minetest.env:add_node(pos, air_leave())
end
end
else
if math.abs(dx) ~= 2 or math.abs(dz) ~= 2 then
if minetest.env:get_node(pos).name == "air" and math.random(1, 5) <= 4 then
minetest.env:add_node(pos, node)
if rarity == 1 then
minetest.env:add_node(pos, apple_leave())
else
minetest.env:add_node(pos, air_leave())
end
end
end
end
pos.x = pos.x-dx
pos.y = pos.y-dy
pos.z = pos.z-dz
end
end
end
end
local plant_tab = {}
local rnd_max = 5
minetest.after(0.5, function()
plant_tab[0] = "air"
plant_tab[1] = "default:grass_1"
plant_tab[2] = "default:grass_2"
plant_tab[3] = "default:grass_3"
plant_tab[4] = "default:grass_4"
plant_tab[5] = "default:grass_5"
if minetest.get_modpath("flowers") ~= nil then
rnd_max = 7
plant_tab[6] = "flowers:dandelion_yellow"
plant_tab[7] = "flowers:rose"
end
end)
function duengen(pointed_thing)
pos = pointed_thing.under
n = minetest.env:get_node(pos)
if n.name == "" then return end
local stage = ""
if n.name == "default:sapling" then
minetest.env:add_node(pos, {name="air"})
generate_tree(pos, "default:tree", "default:leaves")
elseif string.find(n.name, "farming:wheat_") ~= nil then
stage = string.sub(n.name, 15)
if stage == "3" then
minetest.env:add_node(pos, {name="farming:wheat"})
elseif math.random(1,5) < 3 then
minetest.env:add_node(pos, {name="farming:wheat"})
else
minetest.env:add_node(pos, {name="farming:wheat_"..math.random(2,3)})
end
elseif string.find(n.name, "farming:potato_") ~= nil then
stage = tonumber(string.sub(n.name, 16))
if stage == 1 then
minetest.env:add_node(pos, {name="farming:potato_"..math.random(stage,2)})
else
minetest.env:add_node(pos, {name="farming:potato"})
end
elseif string.find(n.name, "farming:carrot_") ~= nil then
stage = tonumber(string.sub(n.name, 16))
if stage == 1 then
minetest.env:add_node(pos, {name="farming:carrot_"..math.random(stage,2)})
else
minetest.env:add_node(pos, {name="farming:carrot"})
end
elseif string.find(n.name, "farming:pumpkin_") ~= nil then
stage = tonumber(string.sub(n.name, 17))
if stage == 1 then
minetest.env:add_node(pos, {name="farming:pumpkin_"..math.random(stage,2)})
else
minetest.env:add_node(pos, {name="farming:pumpkin"})
end
elseif n.name ~= "" and n.name == "default:junglesapling" then
minetest.env:add_node(pos, {name="air"})
generate_tree(pos, "default:jungletree", "default:jungleleaves")
elseif n.name ~="" and n.name == "default:papyrus" then
grow_reeds(pos)
elseif n.name ~="" and n.name == "default:cactus" then
grow_cactus(pos)
elseif n.name == "default:dirt_with_grass" then
for i = -2, 3, 1 do
for j = -3, 2, 1 do
pos = pointed_thing.above
pos = {x=pos.x+i, y=pos.y, z=pos.z+j}
n = minetest.env:get_node(pos)
n2 = minetest.env:get_node({x=pos.x, y=pos.y-1, z=pos.z})
if n.name ~= "" and n.name == "air" and n2.name == "default:dirt_with_grass" then
if math.random(0,5) > 3 then
minetest.env:add_node(pos, {name=plant_tab[math.random(0, rnd_max)]})
else
minetest.env:add_node(pos, {name=plant_tab[math.random(0, 5)]})
end
end
end
end
end
end
--
-- Snowballs
--
snowball_GRAVITY=9
snowball_VELOCITY=19
--Shoot snowball.
snow_shoot_snowball=function (item, player, pointed_thing)
local playerpos=player:getpos()
local obj=minetest.env:add_entity({x=playerpos.x,y=playerpos.y+1.5,z=playerpos.z}, "default_override:snowball_entity")
local dir=player:get_look_dir()
obj:setvelocity({x=dir.x*snowball_VELOCITY, y=dir.y*snowball_VELOCITY, z=dir.z*snowball_VELOCITY})
obj:setacceleration({x=dir.x*-3, y=-snowball_GRAVITY, z=dir.z*-3})
item:take_item()
return item
end
--The snowball Entity
snowball_ENTITY={
physical = false,
timer=0,
textures = {"default_snowball.png"},
lastpos={},
collisionbox = {0,0,0,0,0,0},
}
--Snowball_entity.on_step()--> called when snowball is moving.
snowball_ENTITY.on_step = function(self, dtime)
self.timer=self.timer+dtime
local pos = self.object:getpos()
local node = minetest.env:get_node(pos)
--Become item when hitting a node.
if self.lastpos.x~=nil then --If there is no lastpos for some reason.
if node.name ~= "air" then
self.object:remove()
end
end
self.lastpos={x=pos.x, y=pos.y, z=pos.z} -- Set lastpos-->Node will be added at last pos outside the node
end
minetest.register_entity("default_override:snowball_entity", snowball_ENTITY)
-- Global environment step function
function on_step(dtime)
-- print("on_step")
end
minetest.register_globalstep(on_step)
function on_placenode(p, node)
--print("on_placenode")
end
minetest.register_on_placenode(on_placenode)
function on_dignode(p, node)
--print("on_dignode")
end
minetest.register_on_dignode(on_dignode)
function on_punchnode(p, node)
end
minetest.register_on_punchnode(on_punchnode)
-- END
-- Support old code
function default.spawn_falling_node(p, nodename)
spawn_falling_node(p, nodename)
end
-- Horrible crap to support old code
-- Don't use this and never do what this does, it's completely wrong!
-- (More specifically, the client and the C++ code doesn't get the group)
function default.register_falling_node(nodename, texture)
minetest.log("error", debug.traceback())
minetest.log('error', "WARNING: default.register_falling_node is deprecated")
if minetest.registered_nodes[nodename] then
minetest.registered_nodes[nodename].groups.falling_node = 1
end
end

View File

@ -1,19 +0,0 @@
-- Minetest 0.4 mod: default
-- See README.txt for licensing and other information.
-- The API documentation in here was moved into doc/lua_api.txt
local path = minetest.get_modpath("default_override")
-- Definitions made by this mod that other mods can use too
default_override = {}
-- Load files
dofile(path.."/functions.lua")
dofile(path.."/overrides/node_override.lua")
dofile(path.."/overrides/craftitems_override.lua")
dofile(path.."/nodes.lua")
dofile(path.."/tools.lua")
dofile(path.."/craftitems.lua")
dofile(path.."/crafting.lua")
dofile(path.."/mapgen.lua")

View File

@ -1,133 +0,0 @@
-- mods/default_override/mapgen.lua
-- Ores
function default_override.register_ores()
-- Blob ores
-- These first to avoid other ores in blobs
-- Clay
-- This first to avoid clay in sand blobs
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_diamond",
wherein = "default:stone",
clust_scarcity = 17 * 17 * 17,
clust_num_ores = 4,
clust_size = 3,
y_min = -1000,
y_max = -15,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_gold",
wherein = "default:stone",
clust_scarcity = 15 * 15 * 15,
clust_num_ores = 3,
clust_size = 2,
y_min = -1000,
y_max = -15,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default_override:stone_with_redstone",
wherein = {"default:stone"},
clust_scarcity = 8 * 8 * 8,
clust_size = 5,
y_min = -1000,
y_max = -15,
noise_threshold = 0.0,
noise_params = {
offset = 0.5,
scale = 0.2,
spread = {x = 5, y = 5, z = 5},
seed = -316,
octaves = 1,
persist = 0.0
},
})
minetest.register_ore({
ore_type = "scatter",
ore = "default_override:stone_with_lapis",
wherein = {"default:stone"},
clust_scarcity = 8 * 8 * 8,
clust_size = 5,
y_min = -1000,
y_max = -15,
noise_threshold = 0.0,
noise_params = {
offset = 0.5,
scale = 0.2,
spread = {x = 5, y = 5, z = 5},
seed = -316,
octaves = 1,
persist = 0.0
},
})
minetest.register_ore({
ore_type = "scatter",
ore = "default_override:stone_with_emerald",
wherein = {"default:stone"},
clust_scarcity = 1 * 3 * 2,
clust_size = 2,
y_min = -1000,
y_max = -13,
noise_threshold = 0.0,
noise_params = {
offset = 0.5,
scale = 0.2,
spread = {x = 5, y = 5, z = 5},
seed = -316,
octaves = 1,
persist = 0.0
},
})
end
default_override.register_ores()
--minetest.clear_registered_biomes()
minetest.register_biome({
name = "underground",
--node_dust = "",
--node_top = "",
--depth_top = ,
--node_filler = "",
--depth_filler = ,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
y_min = -31000,
y_max = -13,
heat_point = 50,
humidity_point = 50,
})
minetest.register_biome({
name = "over_grassland",
--node_dust = "",
node_top = "default:dirt_with_grass",
node_filler = "default:dirt",
depth_top = 1,
depth_filler = 1,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:sand",
depth_riverbed = 2,
y_min = 10000,
y_max = 31000,
heat_point = 50,
humidity_point = 35,
})

View File

@ -1,4 +0,0 @@
[Dolphin]
PreviewsShown=true
Timestamp=2017,1,10,2,43,49
Version=3

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

File diff suppressed because it is too large Load Diff

View File

@ -1,152 +0,0 @@
-- mods/default_override/nodes.lua
minetest.register_node("default_override:stone_with_redstone", {
description = "Redstone Ore",
tiles = {"default_stone.png^default_mineral_redstone.png"},
is_ground_content = false,
stack_max = 64,
groups = {cracky=2},
drop = "default_override:redstone_dust 5",
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("default_override:stone_with_lapis", {
description = "Lapis Lazuli Ore",
tiles = {"default_stone.png^default_mineral_lapis.png"},
is_ground_content = false,
stack_max = 64,
groups = {cracky=2},
drop = {
max_items = 2,
items = {
{items = {'dye:blue 5'},rarity = 16},
{items = {'dye:blue 4'},rarity = 12},
{items = {'dye:blue 3'},rarity = 8},
{items = {'dye:blue 2'},rarity = 6},
{items = {'dye:blue 1'}},
}
},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("default_override:stone_with_emerald", {
description = "Emerald Ore",
tiles = {"default_stone.png^default_mineral_emerald.png"},
is_ground_content = false,
stack_max = 64,
groups = {cracky=2},
sounds = default.node_sound_stone_defaults(),
drop = "default_override:emerald"
})
minetest.register_node("default_override:bedrock", {
description = "Bedrock",
tiles = {"default_bedrock.png"},
stack_max = 64,
groups = {cracky=9},
drop = "",
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("default_override:lapisblock", {
description = "Lapis Lazul Block",
tiles = {"default_lapis_block.png"},
stack_max = 64,
groups = {cracky=1},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("default_override:emeraldblock", {
description = "Emerald Block",
tiles = {"default_emerald_block.png"},
stack_max = 64,
groups = {cracky=1},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("default_override:redstoneblock", {
description = "Redstone Block",
tiles = {"default_redstone_block.png"},
stack_max = 64,
groups = {cracky=1},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("default_override:apple_gold", {
description = "Golden Apple",
drawtype = "plantlike",
visual_scale = 1.0,
tiles = {"default_apple_gold.png"},
inventory_image = "default_apple_gold.png",
paramtype = "light",
sunlight_propagates = true,
walkable = false,
selection_box = {
type = "fixed",
fixed = {-0.2, -0.5, -0.2, 0.2, 0, 0.2}
},
stack_max = 64,
groups = {fleshy=3,dig_immediate=3,flammable=2},
on_use = minetest.item_eat(8),
sounds = default.node_sound_defaults(),
})
minetest.register_node("default_override:glowstone", {
description = "Glowstone",
tiles = {"default_glowstone.png"},
is_ground_content = true,
stack_max = 64,
groups = {cracky=3,oddly_breakable_by_hand=2},
drop = 'default_override:glowstone_dust ',--..math.random(1,9),
light_source = 12,
})
minetest.register_node("default_override:sponge", {
description = "Sponge",
drawtype = "normal",
tiles = {"default_sponge.png"},
paramtype = 'light',
sunlight_propagates = true,
walkable = true,
pointable = true,
diggable = true,
buildable_to = false,
stack_max = 64,
groups = {snappy=2, flammable=1},
})
stairs.register_stair_and_slab(
"gravel",
"default:gravel",
{crumbly = 2, falling_node = 1},
{"default_gravel.png"},
"Gravel Stair",
"Gravel Slab",
default.node_sound_gravel_defaults()
)
stairs.register_stair_and_slab(
"dirt",
"default:dirt",
{crumbly = 3, soil = 1},
{"default_dirt.png"},
"Dirt Stair",
"Dirt Slab",
default.node_sound_dirt_defaults()
)
stairs.register_stair_and_slab(
"grass",
"default:dirt_with_grass",
{crumbly = 3, soil = 1},
{"default_grass.png", "default_grass_slab_side.png"},
"Grass Stair",
"Grass Slab",
default.node_sound_dirt_defaults()
)
--[[walls.register("walls:sandstonebrick", "Sandstonebrick Wall", "default_sandstone_brick.png",
"default:sandstonebrick", default.node_sound_stone_defaults())
]]--

View File

@ -1,118 +0,0 @@
-- mods/default_override/craftitems_override.lua
minetest.override_item("default:stick", {
stack_max = 64,
})
minetest.override_item("default:paper", {
stack_max = 64,
})
minetest.override_item("default:book", {
stack_max = 64,
})
minetest.override_item("default:book_written", {
stack_max = 1,
})
minetest.override_item("default:coal_lump", {
stack_max = 64,
})
minetest.override_item("default:iron_lump", {
stack_max = 64,
})
minetest.override_item("default:copper_lump", {
stack_max = 64,
})
minetest.override_item("default:mese_crystal", {
stack_max = 64,
})
minetest.override_item("default:gold_lump", {
stack_max = 64,
})
minetest.override_item("default:diamond", {
stack_max = 64,
})
minetest.override_item("default:clay_lump", {
stack_max = 64,
})
minetest.override_item("default:steel_ingot", {
stack_max = 64,
})
minetest.override_item("default:copper_ingot", {
stack_max = 64,
})
minetest.override_item("default:bronze_ingot", {
stack_max = 64,
})
minetest.override_item("default:gold_ingot", {
stack_max = 64,
})
minetest.override_item("default:mese_crystal_fragment", {
stack_max = 64,
})
minetest.override_item("default:clay_brick", {
stack_max = 64,
})
minetest.override_item("default:obsidian_shard", {
stack_max = 64,
})
minetest.override_item("default:flint", {
stack_max = 64,
})
minetest.override_item("farming:hoe_wood", {
on_use = function(itemstack, user, pointed_thing)
return itemstack
end,
on_place = function(itemstack, user, pointed_thing)
return farming.hoe_on_use(itemstack, user, pointed_thing, 30)
end,
})
minetest.override_item("farming:hoe_stone", {
on_use = function(itemstack, user, pointed_thing)
return itemstack
end,
on_place = function(itemstack, user, pointed_thing)
return farming.hoe_on_use(itemstack, user, pointed_thing, 90)
end,
})
minetest.override_item("farming:hoe_steel", {
on_use = function(itemstack, user, pointed_thing)
return itemstack
end,
on_place = function(itemstack, user, pointed_thing)
return farming.hoe_on_use(itemstack, user, pointed_thing, 200)
end,
})
minetest.override_item("farming:hoe_diamond", {
on_use = function(itemstack, user, pointed_thing)
return itemstack
end,
on_place = function(itemstack, user, pointed_thing)
return farming.hoe_on_use(itemstack, user, pointed_thing, 500)
end,
})
--minetest.override_item("farming:bread", {
-- on_use = "",
-- on_place = minetest.item_eat(5),
--})

View File

@ -1,736 +0,0 @@
-- mods/default_override/nodes_override.lua
minetest.override_item("default:stone", {
is_ground_content = true,
stack_max = 64,
})
minetest.override_item("default:cobble", {
stack_max = 64,
})
minetest.override_item("default:stonebrick", {
stack_max = 64,
})
minetest.override_item("default:stone_block", {
stack_max = 64,
})
minetest.override_item("default:mossycobble", {
stack_max = 64,
})
minetest.override_item("default:desert_stone", {
stack_max = 64,
})
minetest.override_item("default:desert_cobble", {
stack_max = 64,
})
minetest.override_item("default:desert_stonebrick", {
stack_max = 64,
})
minetest.override_item("default:desert_stone_block", {
stack_max = 64,
})
minetest.override_item("default:sandstone", {
stack_max = 64,
})
minetest.override_item("default:sandstonebrick", {
stack_max = 64,
})
minetest.override_item("default:sandstone_block", {
stack_max = 64,
})
minetest.override_item("default:obsidian", {
stack_max = 64,
})
minetest.override_item("default:obsidianbrick", {
stack_max = 64,
})
minetest.override_item("default:obsidian_block", {
stack_max = 64,
})
minetest.override_item("default:dirt", {
stack_max = 64,
})
minetest.override_item("default:dirt_with_grass", {
stack_max = 64,
})
minetest.override_item("default:dirt_with_grass_footsteps", {
stack_max = 64,
})
minetest.override_item("default:dirt_with_dry_grass", {
stack_max = 64,
})
minetest.override_item("default:dirt_with_snow", {
stack_max = 64,
})
minetest.override_item("default:sand", {
stack_max = 64,
})
minetest.override_item("default:desert_sand", {
stack_max = 64,
})
minetest.override_item("default:silver_sand", {
stack_max = 64,
})
minetest.override_item("default:gravel", {
stack_max = 64,
})
minetest.override_item("default:clay", {
stack_max = 64,
})
minetest.override_item("default:snow", {
stack_max = 64,
})
minetest.override_item("default:snowblock", {
stack_max = 64,
})
minetest.override_item("default:ice", {
stack_max = 64,
--on_destruct = function(pos)
-- minetest.set_node(pos, {name = "default:water_source"})
--end,
})
minetest.override_item("default:tree", {
stack_max = 64,
})
minetest.override_item("default:wood", {
stack_max = 64,
})
minetest.override_item("default:sapling", {
stack_max = 64,
})
minetest.override_item("default:leaves", {
stack_max = 64,
})
minetest.override_item("default:apple", {
stack_max = 64,
})
minetest.override_item("default:jungletree", {
stack_max = 64,
})
minetest.override_item("default:junglewood", {
stack_max = 64,
})
minetest.override_item("default:jungleleaves", {
stack_max = 64,
})
minetest.override_item("default:junglesapling", {
stack_max = 64,
})
minetest.override_item("default:pine_tree", {
stack_max = 64,
})
minetest.override_item("default:pine_wood", {
stack_max = 64,
})
minetest.override_item("default:pine_needles",{
stack_max = 64,
})
minetest.override_item("default:pine_sapling", {
stack_max = 64,
})
minetest.override_item("default:acacia_tree", {
stack_max = 64,
})
minetest.override_item("default:acacia_wood", {
stack_max = 64,
})
minetest.override_item("default:acacia_leaves", {
stack_max = 64,
})
minetest.override_item("default:acacia_sapling", {
stack_max = 64,
})
minetest.override_item("default:aspen_tree", {
stack_max = 64,
})
minetest.override_item("default:aspen_wood", {
stack_max = 64,
})
minetest.override_item("default:aspen_leaves", {
stack_max = 64,
})
minetest.override_item("default:aspen_sapling", {
stack_max = 64,
})
minetest.override_item("default:stone_with_coal", {
stack_max = 64,
})
minetest.override_item("default:coalblock", {
stack_max = 64,
})
minetest.override_item("default:stone_with_iron", {
stack_max = 64,
drop="stone_with_iron",
})
minetest.override_item("default:steelblock", {
description = "Iron Block",
stack_max = 64,
})
minetest.override_item("default:stone_with_copper", {
stack_max = 64,
})
minetest.override_item("default:copperblock", {
stack_max = 64,
})
minetest.override_item("default:bronzeblock", {
stack_max = 64,
})
minetest.override_item("default:stone_with_mese", {
stack_max = 64,
})
minetest.override_item("default:mese", {
stack_max = 64,
})
minetest.override_item("default:stone_with_gold", {
stack_max = 64,
drop="default:stone_with_gold",
})
minetest.override_item("default:goldblock", {
stack_max = 64,
})
minetest.override_item("default:stone_with_diamond", {
stack_max = 64,
})
minetest.override_item("default:diamondblock", {
stack_max = 64,
})
minetest.override_item("default:cactus", {
drawtype = "nodebox",
tiles = {"default_cactus_top.png", "default_cactus_bottom.png", "default_cactus_side.png","default_cactus_side.png","default_cactus_side.png","default_cactus_side.png"},
stack_max = 64,
groups = {snappy=1,choppy=3,flammable=2},
paramtype = "light",
node_box = {
type = "fixed",
fixed = {
{-7/16, -8/16, -7/16, 7/16, 8/16, 7/16}, -- Main Body
{-8/16, -8/16, -7/16, 8/16, 8/16, -7/16}, -- Spikes
{-8/16, -8/16, 7/16, 8/16, 8/16, 7/16}, -- Spikes
{-7/16, -8/16, -8/16, -7/16, 8/16, 8/16}, -- Spikes
{7/16, -8/16, 8/16, 7/16, 8/16, -8/16}, -- Spikes
},
},
selection_box = {
type = "fixed",
fixed = {
{-7/16, -8/16, -7/16, 7/16, 8/16, 7/16},
},
},
})
minetest.override_item("default:papyrus", {
description = "Sugarcane",
inventory_image = "default_sugar_cane.png",
wield_image = "default_sugar_cane.png",
is_ground_content = true,
node_box = {
type = "fixed",
fixed = {
{-7/16, -8/16, -7/16, 7/16, 8/16, 7/16}, -- Main Body
{-8/16, -8/16, -7/16, 8/16, 8/16, -7/16}, -- Spikes
{-8/16, -8/16, 7/16, 8/16, 8/16, 7/16}, -- Spikes
{-7/16, -8/16, -8/16, -7/16, 8/16, 8/16}, -- Spikes
{7/16, -8/16, 8/16, 7/16, 8/16, -8/16}, -- Spikes
},
},
selection_box = {
type = "fixed",
fixed = {
{-7/16, -8/16, -7/16, 7/16, 8/16, 7/16},
},
},
stack_max = 64,
})
minetest.override_item("default:dry_shrub", {
stack_max = 64,
})
minetest.override_item("default:junglegrass", {
stack_max = 64,
})
minetest.override_item("default:grass_1", {
stack_max = 64,
})
for i = 2, 5 do
minetest.override_item("default:grass_" .. i, {
stack_max = 64,
})
end
minetest.override_item("default:dry_grass_1", {
stack_max = 64,
})
for i = 2, 5 do
minetest.override_item("default:dry_grass_" .. i, {
stack_max = 64,
})
end
minetest.override_item("default:bush_stem", {
stack_max = 64,
})
minetest.override_item("default:bush_leaves", {
stack_max = 64,
})
minetest.override_item("default:acacia_bush_stem", {
stack_max = 64,
})
minetest.override_item("default:acacia_bush_leaves", {
stack_max = 64,
})
minetest.override_item("default:coral_brown", {
stack_max = 64,
})
minetest.override_item("default:coral_orange", {
stack_max = 64,
})
minetest.override_item("default:coral_skeleton", {
stack_max = 64,
})
minetest.override_item("default:water_source", {
stack_max = 64,
})
minetest.override_item("default:river_water_source", {
stack_max = 64,
})
minetest.override_item("default:lava_source", {
stack_max = 64,
})
minetest.override_item("default:chest",{
stack_max = 64,
can_dig = function(pos,player)
return true
end,
on_dig = function(pos)
local meta = minetest.get_meta(pos)
local inv = meta:get_inventory("main");
for i,stack in ipairs(inv:get_list("main")) do
local x = math.random(-4, 4)/10
local z = math.random(-4, 4)/10
pos.x = pos.x + x
pos.z = pos.z + z
minetest.env:add_item(pos, stack)
stack:clear()
inv:set_stack("main", i, stack)
pos.x = pos.x - x
pos.z = pos.z - z
end
minetest.env:add_item(pos, minetest.get_node(pos))
minetest.remove_node(pos)
return
end,
})
minetest.override_item("default:chest_locked", {
stack_max = 64,
can_dig = function(pos,player)
local meta = minetest.get_meta(pos)
if has_locked_chest_privilege(meta, clicker) then
return true;
end
return false;
end,
on_dig = function(pos)
local meta = minetest.get_meta(pos)
local inv = meta:get_inventory("main");
for i,stack in ipairs(inv:get_list("main")) do
local x = math.random(-4, 4)/10
local z = math.random(-4, 4)/10
pos.x = pos.x + x
pos.z = pos.z + z
minetest.env:add_item(pos, stack)
stack:clear()
inv:set_stack("main", i, stack)
pos.x = pos.x - x
pos.z = pos.z - z
end
minetest.env:add_item(pos, minetest.get_node(pos))
minetest.remove_node(pos)
return
end,
})
minetest.override_item("default:bookshelf", {
stack_max = 64,
})
minetest.override_item("default:sign_wall_wood", {
stack_max = 64,
})
minetest.override_item("default:sign_wall_steel", {
stack_max = 64,
})
minetest.override_item("default:ladder_wood", {
stack_max = 64,
})
minetest.override_item("default:ladder_steel", {
stack_max = 64,
})
minetest.override_item("default:fence_wood", {
stack_max = 64,
})
minetest.override_item("default:fence_acacia_wood", {
stack_max = 64,
})
minetest.override_item("default:fence_junglewood", {
stack_max = 64,
})
minetest.override_item("default:fence_pine_wood", {
stack_max = 64,
})
minetest.override_item("default:fence_aspen_wood", {
stack_max = 64,
})
minetest.override_item("default:glass", {
stack_max = 64,
})
minetest.override_item("default:obsidian_glass", {
stack_max = 64,
})
minetest.override_item("default:brick", {
stack_max = 64,
})
minetest.override_item("default:meselamp", {
stack_max = 64,
})
--[[local function get_chest_neighborpos(pos, param2, side)
if side == "right" then
if param2 == 0 then
return {x=pos.x-1, y=pos.y, z=pos.z}
elseif param2 == 1 then
return {x=pos.x, y=pos.y, z=pos.z+1}
elseif param2 == 2 then
return {x=pos.x+1, y=pos.y, z=pos.z}
elseif param2 == 3 then
return {x=pos.x, y=pos.y, z=pos.z-1}
end
else
if param2 == 0 then
return {x=pos.x+1, y=pos.y, z=pos.z}
elseif param2 == 1 then
return {x=pos.x, y=pos.y, z=pos.z-1}
elseif param2 == 2 then
return {x=pos.x-1, y=pos.y, z=pos.z}
elseif param2 == 3 then
return {x=pos.x, y=pos.y, z=pos.z+1}
end
end
end
local function hacky_swap_node(pos,name, param2)
local node = minetest.env:get_node(pos)
local meta = minetest.env:get_meta(pos)
if node.name == name then
return
end
node.name = name
node.param2 = param2 or node.param2
local meta0 = meta:to_table()
minetest.env:set_node(pos,node)
meta = minetest.env:get_meta(pos)
meta:from_table(meta0)
end
minetest.register_node(":default:chest", {
description = "Chest",
tiles = {"default_chest_top.png", "default_chest_top.png", "default_chest_side.png",
"default_chest_side.png", "default_chest_side.png", "default_chest_front.png"},
paramtype2 = "facedir",
stack_max = 64,
groups = {choppy=2,oddly_breakable_by_hand=2},
legacy_facedir_simple = true,
sounds = default.node_sound_wood_defaults(),
on_construct = function(pos)
local param2 = minetest.env:get_node(pos).param2
local meta = minetest.env:get_meta(pos)
if minetest.env:get_node(get_chest_neighborpos(pos, param2, "right")).name == "default:chest" then
minetest.env:set_node(pos, {name="default_override:chest_right",param2=param2})
local p = get_chest_neighborpos(pos, param2, "right")
meta:set_string("formspec",
"size[9,11.5]"..
"list[nodemeta:"..p.x..","..p.y..","..p.z..";main;0,0;9,3;]"..
"list[current_name;main;0,3;9,3;]"..
"list[current_player;main;0,7;9,3;9]"..
"list[current_player;main;0,10.24;9,1;]")
meta:set_string("infotext", "Large Chest")
hacky_swap_node(p, "default_override:chest_left", param2)
local m = minetest.env:get_meta(p)
m:set_string("formspec",
"size[9,11.5]"..
"list[current_name;main;0,0;9,3;]"..
"list[nodemeta:"..pos.x..","..pos.y..","..pos.z..";main;0,3;9,3;]"..
"list[current_player;main;0,7;9,3;9]"..
"list[current_player;main;0,10.24;9,1;]")
m:set_string("infotext", "Large Chest")
elseif minetest.env:get_node(get_chest_neighborpos(pos, param2, "left")).name == "default:chest" then
minetest.env:set_node(pos, {name="default_override:chest_left",param2=param2})
local p = get_chest_neighborpos(pos, param2, "left")
meta:set_string("formspec",
"size[9,11.5]"..
"list[current_name;main;0,0;9,3;]"..
"list[nodemeta:"..p.x..","..p.y..","..p.z..";main;0,3;9,3;]"..
"list[current_player;main;0,7;9,3;9]"..
"list[current_player;main;0,10.24;9,1;]")
meta:set_string("infotext", "Large Chest")
hacky_swap_node(p, "default_override:chest_right", param2)
local m = minetest.env:get_meta(p)
m:set_string("formspec",
"size[9,11.5]"..
"list[nodemeta:"..pos.x..","..pos.y..","..pos.z..";main;0,0;9,3;]"..
"list[current_name;main;0,3;9,3;]"..
"list[current_player;main;0,7;9,3;9]"..
"list[current_player;main;0,10.24;9,1;]")
m:set_string("infotext", "Large Chest")
else
meta:set_string("formspec",
"size[9,8.5]"..
"list[current_name;main;0,0;9,3;]"..
"list[current_player;main;0,4;9,3;9]"..
"list[current_player;main;0,7.24;9,1;]")
meta:set_string("infotext", "Chest")
end
local inv = meta:get_inventory()
inv:set_size("main", 9*3)
end,
after_dig_node = function(pos, oldnode, oldmetadata, digger)
local meta = minetest.env:get_meta(pos)
local meta2 = meta
meta:from_table(oldmetadata)
local inv = meta:get_inventory()
for i=1,inv:get_size("main") do
local stack = inv:get_stack("main", i)
if not stack:is_empty() then
local p = {x=pos.x+math.random(0, 10)/10-0.5, y=pos.y, z=pos.z+math.random(0, 10)/10-0.5}
minetest.env:add_item(p, stack)
end
end
meta:from_table(meta2:to_table())
end,
on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
minetest.log("action", player:get_player_name()..
" moves stuff in chest at "..minetest.pos_to_string(pos))
end,
on_metadata_inventory_put = function(pos, listname, index, stack, player)
minetest.log("action", player:get_player_name()..
" moves stuff to chest at "..minetest.pos_to_string(pos))
end,
on_metadata_inventory_take = function(pos, listname, index, stack, player)
minetest.log("action", player:get_player_name()..
" takes stuff from chest at "..minetest.pos_to_string(pos))
end,
})
minetest.register_node("default_override:chest_left", {
tiles = {"default_chest_top_big.png", "default_chest_top_big.png", "default_chest_side.png",
"default_chest_side.png", "default_chest_side_big.png^[transformFX", "default_chest_front_big.png"},
paramtype2 = "facedir",
groups = {choppy=2,oddly_breakable_by_hand=2,not_in_creative_inventory=1},
drop = "default:chest",
sounds = default.node_sound_wood_defaults(),
on_destruct = function(pos)
local m = minetest.env:get_meta(pos)
if m:get_string("infotext") == "Chest" then
return
end
local param2 = minetest.env:get_node(pos).param2
local p = get_chest_neighborpos(pos, param2, "left")
if not p or minetest.env:get_node(p).name ~= "default_override:chest_right" then
return
end
local meta = minetest.env:get_meta(p)
meta:set_string("formspec",
"size[9,8.5]"..
"list[current_name;main;0,0;9,3;]"..
"list[current_player;main;0,4;9,3;9]"..
"list[current_player;main;0,7.24;9,1;]")
meta:set_string("infotext", "Chest")
hacky_swap_node(p, "default:chest")
end,
after_dig_node = function(pos, oldnode, oldmetadata, digger)
local meta = minetest.env:get_meta(pos)
local meta2 = meta
meta:from_table(oldmetadata)
local inv = meta:get_inventory()
for i=1,inv:get_size("main") do
local stack = inv:get_stack("main", i)
if not stack:is_empty() then
local p = {x=pos.x+math.random(0, 10)/10-0.5, y=pos.y, z=pos.z+math.random(0, 10)/10-0.5}
minetest.env:add_item(p, stack)
end
end
meta:from_table(meta2:to_table())
end,
on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
minetest.log("action", player:get_player_name()..
" moves stuff in chest at "..minetest.pos_to_string(pos))
end,
on_metadata_inventory_put = function(pos, listname, index, stack, player)
minetest.log("action", player:get_player_name()..
" moves stuff to chest at "..minetest.pos_to_string(pos))
end,
on_metadata_inventory_take = function(pos, listname, index, stack, player)
minetest.log("action", player:get_player_name()..
" takes stuff from chest at "..minetest.pos_to_string(pos))
end,
})
minetest.register_node("default_override:chest_right", {
tiles = {"default_chest_top_big.png^[transformFX", "default_chest_top_big.png^[transformFX", "default_chest_side.png",
"default_chest_side.png", "default_chest_side_big.png", "default_chest_front_big.png^[transformFX"},
paramtype2 = "facedir",
groups = {choppy=2,oddly_breakable_by_hand=2,not_in_creative_inventory=1},
drop = "default:chest",
sounds = default.node_sound_wood_defaults(),
on_destruct = function(pos)
local m = minetest.env:get_meta(pos)
if m:get_string("infotext") == "Chest" then
return
end
local param2 = minetest.env:get_node(pos).param2
local p = get_chest_neighborpos(pos, param2, "right")
if not p or minetest.env:get_node(p).name ~= "default_override:chest_left" then
return
end
local meta = minetest.env:get_meta(p)
meta:set_string("formspec",
"size[9,8.5]"..
"list[current_name;main;0,0;9,3;]"..
"list[current_player;main;0,4;9,3;9]"..
"list[current_player;main;0,7.24;9,1;]")
meta:set_string("infotext", "Chest")
hacky_swap_node(p, "default:chest")
end,
after_dig_node = function(pos, oldnode, oldmetadata, digger)
local meta = minetest.env:get_meta(pos)
local meta2 = meta
meta:from_table(oldmetadata)
local inv = meta:get_inventory()
for i=1,inv:get_size("main") do
local stack = inv:get_stack("main", i)
if not stack:is_empty() then
local p = {x=pos.x+math.random(0, 10)/10-0.5, y=pos.y, z=pos.z+math.random(0, 10)/10-0.5}
minetest.env:add_item(p, stack)
end
end
meta:from_table(meta2:to_table())
end,
on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
minetest.log("action", player:get_player_name()..
" moves stuff in chest at "..minetest.pos_to_string(pos))
end,
on_metadata_inventory_put = function(pos, listname, index, stack, player)
minetest.log("action", player:get_player_name()..
" moves stuff to chest at "..minetest.pos_to_string(pos))
end,
on_metadata_inventory_take = function(pos, listname, index, stack, player)
minetest.log("action", player:get_player_name()..
" takes stuff from chest at "..minetest.pos_to_string(pos))
end,
})
]]--

View File

@ -1,4 +0,0 @@
[Dolphin]
PreviewsShown=true
Timestamp=2016,12,30,1,11,30
Version=3

Binary file not shown.

Before

Width:  |  Height:  |  Size: 240 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 411 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 293 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 469 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 328 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 352 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 586 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 658 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 187 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 939 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 718 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 659 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 567 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 555 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 495 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 515 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 496 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 736 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 360 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 372 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 118 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 530 B

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