diff --git a/minetestforfun_game/README.txt b/minetestforfun_game/README.txt index 8c85d66..b59b7f9 100755 --- a/minetestforfun_game/README.txt +++ b/minetestforfun_game/README.txt @@ -50,4 +50,4 @@ Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) http://creativecommons.org/licenses/by-sa/3.0/ License of menu/header.png -Copyright (C) 2013 BlockMen CC BY-3.0 +Copyright (C) 2015 paramat CC BY-SA 3.0 diff --git a/minetestforfun_game/game_api.txt b/minetestforfun_game/game_api.txt index 9c717e7..8ab4430 100755 --- a/minetestforfun_game/game_api.txt +++ b/minetestforfun_game/game_api.txt @@ -163,7 +163,7 @@ on_rotate(pos, node, user, mode, new_param2) Stairs API ---------- The stairs API lets you register stairs and slabs and ensures that they are registered the same way as those -delivered with minetest_game, to keep them compatible with other mods. +delivered with Minetest Game, to keep them compatible with other mods. stairs.register_stair(subname, recipeitem, groups, images, description, sounds) -> Registers a stair. diff --git a/minetestforfun_game/menu/header.png b/minetestforfun_game/menu/header.png index 6806207..2ecda83 100755 Binary files a/minetestforfun_game/menu/header.png and b/minetestforfun_game/menu/header.png differ diff --git a/minetestforfun_game/mods/beds/functions.lua b/minetestforfun_game/mods/beds/functions.lua index 59b2248..5b2f540 100755 --- a/minetestforfun_game/mods/beds/functions.lua +++ b/minetestforfun_game/mods/beds/functions.lua @@ -1,3 +1,4 @@ +local pi = math.pi local player_in_bed = 0 local is_sp = minetest.is_singleplayer() local enable_respawn = minetest.setting_getbool("enable_bed_respawn") @@ -11,13 +12,13 @@ end local function get_look_yaw(pos) local n = minetest.get_node(pos) if n.param2 == 1 then - return 7.9, n.param2 + return pi/2, n.param2 elseif n.param2 == 3 then - return 4.75, n.param2 + return -pi/2, n.param2 elseif n.param2 == 0 then - return 3.15, n.param2 + return pi, n.param2 else - return 6.28, n.param2 + return 0, n.param2 end end diff --git a/minetestforfun_game/mods/default/craftitems.lua b/minetestforfun_game/mods/default/craftitems.lua index 3100720..9761be5 100755 --- a/minetestforfun_game/mods/default/craftitems.lua +++ b/minetestforfun_game/mods/default/craftitems.lua @@ -33,7 +33,8 @@ local function book_on_use(itemstack, user, pointed_thing) formspec = "size[8,8]"..default.gui_bg.. "label[0.5,0.5;by "..owner.."]".. "label[0.5,0;"..minetest.formspec_escape(title).."]".. - "textarea[0.5,1.5;7.5,7;;"..minetest.formspec_escape(text)..";]" + "tableoptions[background=#00000000;highlight=#00000000;border=false]".. + "table[0.5,1.5;7.5,7;;"..minetest.formspec_escape(text):gsub("\n", ",")..";1]" end minetest.show_formspec(user:get_player_name(), "default:book", formspec) end diff --git a/minetestforfun_game/mods/default/functions.lua b/minetestforfun_game/mods/default/functions.lua index 2a4f016..31d34d7 100755 --- a/minetestforfun_game/mods/default/functions.lua +++ b/minetestforfun_game/mods/default/functions.lua @@ -351,7 +351,12 @@ minetest.register_abm({ default.leafdecay_trunk_find_allow_accumulator - 1 -- Assume ignore is a trunk, to make the thing -- work at the border of the active area - local p1 = minetest.find_node_near(p0, d, {"ignore", "group:tree"}) + local p1 + if n0.name == "moretrees:palm_leaves" then + p1 = minetest.find_node_near(p0, d, {"ignore", "moretrees:palm_trunk"}) + else + p1 = minetest.find_node_near(p0, d, {"ignore", "group:tree"}) + end if p1 then do_preserve = true if default.leafdecay_enable_cache then diff --git a/minetestforfun_game/mods/default/mapgen.lua b/minetestforfun_game/mods/default/mapgen.lua index b672e59..9c551ed 100755 --- a/minetestforfun_game/mods/default/mapgen.lua +++ b/minetestforfun_game/mods/default/mapgen.lua @@ -669,9 +669,9 @@ function default.register_biomes() minetest.register_biome({ name = "glacier_ocean", node_dust = "default:snowblock", - node_top = "default:gravel", + node_top = "default:sand", depth_top = 1, - node_filler = "default:gravel", + node_filler = "default:sand", depth_filler = 2, --node_stone = "", --node_water_top = "", @@ -810,26 +810,8 @@ function default.register_biomes() --depth_water_top = , --node_water = "", --node_river_water = "", - y_min = 9, - y_max = 31000, - heat_point = 45, - humidity_point = 75, - }) - - minetest.register_biome({ - name = "coniferous_forest_dunes", - --node_dust = "", - node_top = "default:sand", - depth_top = 1, - node_filler = "default:sand", - depth_filler = 2, - --node_stone = "", - --node_water_top = "", - --depth_water_top = , - --node_water = "", - --node_river_water = "", y_min = 5, - y_max = 8, + y_max = 31000, heat_point = 45, humidity_point = 75, }) @@ -1245,7 +1227,7 @@ local function register_grass_decoration(offset, scale, length) persist = 0.6 }, biomes = {"stone_grassland", "sandstone_grassland", - "deciduous_forest", "coniferous_forest", "coniferous_forest_dunes"}, + "deciduous_forest", "coniferous_forest"}, y_min = 1, y_max = 31000, decoration = "default:grass_"..length, diff --git a/minetestforfun_game/mods/default/trees.lua b/minetestforfun_game/mods/default/trees.lua index b1bdd19..b12106f 100755 --- a/minetestforfun_game/mods/default/trees.lua +++ b/minetestforfun_game/mods/default/trees.lua @@ -16,6 +16,10 @@ local function can_grow(pos) if is_soil == 0 then return false end + local ll = minetest.get_node_light(pos) + if not ll or ll < 13 then -- Minimum light level for growth + return false -- matches grass, wheat and cotton + end return true end diff --git a/minetestforfun_game/mods/sethome/init.lua b/minetestforfun_game/mods/sethome/init.lua index d1378e9..2e8a6f2 100755 --- a/minetestforfun_game/mods/sethome/init.lua +++ b/minetestforfun_game/mods/sethome/init.lua @@ -14,33 +14,42 @@ home.sethome = function(name) p_status = "nether" end - home.homepos[p_status][name] = pos - minetest.chat_send_player(name, "Home set!") - local output = io.open(home.homes_file[p_status], "w") - output:write(minetest.serialize(home.homepos[p_status])) - io.close(output) - return true + local function assign_home() + home.homepos[p_status][name] = pos + minetest.chat_send_player(name, "Home set!") + local output = io.open(home.homes_file[p_status], "w") + output:write(minetest.serialize(home.homepos[p_status])) + io.close(output) + return true + end + + action_timers.wrapper(name, "sethome", "sethome_" .. name, home.time, assign_home, {}) end home.tohome = function(name) - local player = minetest.get_player_by_name(name) - if player == nil then - -- just a check to prevent the server crashing - return false - end + local player = minetest.get_player_by_name(name) + if player == nil then + -- just a check to prevent the server crashing + return false + end local p_status = "real" if player:getpos().y < -19600 then p_status = "nether" end if home.homepos[p_status][name] then - player:setpos(home.homepos[p_status][player:get_player_name()]) - minetest.chat_send_player(name, "Teleported to home!") - minetest.log("action","Player ".. name .." teleported to home. Next teleportation allowed in ".. home.time .." seconds.") - return true - else + + local function go_to_home() + player:setpos(home.homepos[p_status][player:get_player_name()]) + minetest.chat_send_player(name, "Teleported to home!") + minetest.log("action","Player ".. name .." teleported to home. Next teleportation allowed in ".. home.time .." seconds.") + return true + end + + action_timers.wrapper(name, "home", "home_" .. name, home.time, go_to_home, {}) + else minetest.chat_send_player(name, "Set a home using /sethome") return false - end + end end local function loadhomes()