squashed update

This commit is contained in:
4aiman 2015-06-06 20:06:01 +03:00
parent 210822e4bb
commit dba2d2e8c3
18 changed files with 133 additions and 40 deletions

View File

@ -67,10 +67,9 @@ core.register_chatcommand("help", {
description = "Get help for commands or list privileges",
func = function(name, param)
local function format_help_line(cmd, def)
local msg = freeminer.colorize("00ffff", "/"..cmd)
local msg = "/"..cmd
local msg = cmd
if def.params and def.params ~= "" then
msg = msg .. " " .. freeminer.colorize("eeeeee", def.params)
msg = msg .. " " .. def.params
end
if def.description and def.description ~= "" then
msg = msg .. ": " .. def.description

View File

@ -66,7 +66,7 @@
max_save_time = 10
save_time = 0
max_drumsticks = 20
foodTickTimerMAX = 5
foodTickTimerMAX = 10
max_exhaustion = 8
foodTickTimerMax = {}
food_level = {}
@ -384,7 +384,7 @@ local doit = false
timers[pll] = 15
player:hud_change(hungerhudb[pll],"text",'hunger_tile_d.png')
player:hud_change(hungerhud[pll] ,"text",'hunger_tile_c.png')
if doit==true and hp>1 then
if doit==true and hp>10 then
player:set_hp(hp-1)
hp=hp-1
end

View File

@ -185,7 +185,7 @@ adbs.dd = {
self.state = 4
self:set_animation(4)
self.busy = true
multicraft.after(1,function()
multicraft.after(0.5,function()
v.y = vy
self.object:setvelocity(v)
self.busy = false
@ -373,7 +373,7 @@ adbs.dd = {
if self.alive then
local pos = self.object:getpos()
for _,drop in ipairs(self.drops) do
if math.random(1, drop.chance) == 1 then
if math.random(1, drop.chance) == 1 then
local itm = multicraft.add_item(pos, ItemStack(drop.name.." "..math.random(drop.min, drop.max)))
if itm then
itm:setvelocity({x=math.random()*math.random(-1,1),y=math.random()*math.random(0,2),z=math.random()*math.random(-1,1)})
@ -1789,7 +1789,7 @@ adbs.register_mob("adbs:pig", {
armour = {fleshy=100},
drops = {
{name = "farming:carrot",
chance = 0.5,
chance = 1,
min = 0,
max = 1,},
{name = "default:porkchop_raw",
@ -2011,7 +2011,7 @@ adbs.register_mob("adbs:skeleton", {
weapon= "throwing:bow_wood",
flying = false,
view_range = 16,
attack_power = 3,
attack_power = 2,
natural_damage_timer = 0,
disable_fall_damage = false,
fall_tolerance = 4,
@ -2169,22 +2169,22 @@ end
local _
adbs.register_spawn("adbs:sheep", {"group:crumbly"}, _,
5, 15, 5, 48, 2, 50, 10, 100, _, 100, _, 2, _,0,1)
5, 15, 5, 48, 6, 50, 10, 100, _, 100, _, 4, _,0,1)
adbs.register_spawn("adbs:pig", {"group:crumbly"}, _,
3, 15, 5, 40, 3, 100, _, 100, _, 100, _, 1, _,0,1)
3, 15, 5, 40, 6, 100, _, 100, _, 100, _, 4, _,0,1)
adbs.register_spawn("adbs:chicken", {"group:crumbly"}, _,
3, 15, 5, 60, 2, 100, _, 100, _, 100, _, 1, _,0,1)
3, 15, 5, 60, 6, 100, _, 100, _, 100, _, 4, _,0,1)
adbs.register_spawn("adbs:cow", {"group:crumbly"}, _,
5, 15, 5, 50, 3, 100, _, 100, _, 100, _, 1, _,0,1)
5, 15, 5, 50, 6, 100, _, 100, _, 100, _, 4, _,0,1)
adbs.register_spawn("adbs:skeleton", {"group:cracky", "group:crumbly"}, _,
7, 8, _, 40, 2, 100, -5000, 100, _, 100, _, 1, _,0.7,0.3)
7, 8, _, 40, 6, 100, -5000, 100, _, 100, _, 4, _,0.7,0.3)
adbs.register_spawn("adbs:zombie", {"group:crumbly", }, _,
7, 9, _, 40, 2, 100, -5000, 100, _, 100, _, 1, _,0.7,0.3)
7, 9, _, 40, 6, 100, -5000, 100, _, 100, _, 4, _,0.7,0.3)
adbs.register_spawn("adbs:skeleton", {"group:cracky", "group:crumbly"}, _,
7, 8, _, 30, 2, -8000, -35000, 100, _, 100, _, 1, _,0.7,0.3)
7, 8, _, 30, 6, -8000, -35000, 100, _, 100, _, 4, _,0.7,0.3)

View File

@ -173,7 +173,7 @@ multicraft.register_craftitem("default:quartz_crystal", {
multicraft.register_craftitem('default:rotten_flesh', {
description = "Rotten flesh",
inventory_image = "zombie_flesh",
inventory_image = "zombie_flesh.png",
on_use = multicraft.item_eat(1),
})

View File

@ -459,6 +459,75 @@ multicraft.register_on_generated(function(minp, maxp, seed)
-- Generate nyan cats
--generate_nyancats(seed, minp, maxp)
local perlin1 = multicraft.get_perlin(329, 3, 0.6, 100)
-- Assume X and Z lengths are equal
local pr = PseudoRandom(seed+1)
local divlen = pr:next(4,20)
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}) )
-- Find random positions for grass based on this random
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 multicraft.get_node({x=x,y=y,z=z}).name ~= "air"
and not multicraft.get_node({x=x,y=y,z=z}).name:find("water") then
ground_y = y
break
end
end
if ground_y then
local p = {x=x,y=ground_y,z=z}
-- Check if the node can be replaced
if #(multicraft.find_nodes_in_area({x=x-5,y=ground_y-2,z=z-5}, {x=x+5,y=ground_y+2,z=z+5}, {"group:grass", "group:flower"}))>7 then
for i=1,pr:next(1,4) do
local ground_y = nil
for y=30,0,-1 do
if multicraft.get_node({x=x,y=y,z=z}).name ~= "air"
and not multicraft.get_node({x=x,y=y,z=z}).name:find("water") then
ground_y = y
break
end
end
local fruit = {"farming:pumpkin_face", "farming:melon", "farming:carrot", "farming:potato"}
local choice = fruit[pr:next(1,#fruit)]
print(choice)
if pr:next() < 2500 then -- the "proper" alternative
for i = 1, pr:next(1,3) do
local xx = pr:next(1,i+1)
local zz = pr:next(1,i+1)
local nname = multicraft.get_node({x=p.x+xx,z=p.z+zz,y=ground_y}).name
if nname ~="air"
and (multicraft.registered_nodes[nname] and not multicraft.registered_nodes[nname].buildable_to)
then
multicraft.set_node({x=p.x+xx,z=p.z+zz,y=ground_y+1},{name=choice})
end
end
end
end
end
end
end
end
end
end)
local function replace(old, new, min, max)

View File

@ -320,7 +320,7 @@ multicraft.register_node("default:sea_lantern", {
}
},
tiles = {"default_sea_lantern.png"},
groups = {oddly_breakable_by_hand=3, building = 1},
groups = {dig_immediate=2, building = 1},
})
multicraft.register_node("default:prismarine", {
@ -355,7 +355,7 @@ multicraft.register_node("default:tree", {
is_ground_content = false,
on_place = multicraft.rotate_node,
stack_max = 64,
groups = {tree=1,choppy=2,oddly_breakable_by_hand=1,flammable=2, building = 1},
groups = {tree=1,choppy=3,flammable=2, building = 1},
sounds = default.node_sound_wood_defaults(),
})
@ -1562,7 +1562,7 @@ multicraft.register_node("default:cobble", {
tiles = {"default_cobble.png"},
is_ground_content = true,
stack_max = 64,
groups = {cracky=3, stone=2, building = 1, decorative = 1},
groups = {cracky=10, stone=2, building = 1, decorative = 1},
sounds = default.node_sound_stone_defaults(),
})
@ -1708,7 +1708,7 @@ multicraft.register_node("default:grass", {
},
paramtype = "light",
is_ground_content = true,
groups = {snappy=3,flammable=3,attached_node=1,dig_immediate=3, decorative=1},
groups = {snappy=3,flammable=3,attached_node=1,dig_immediate=3, decorative=1, grass=1},
sounds = default.node_sound_leaves_defaults(),
after_dig_node = function(pos, oldnode, oldmetadata, user)
local item = user:get_wielded_item()

Binary file not shown.

After

Width:  |  Height:  |  Size: 147 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 147 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 329 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 312 B

View File

@ -15,7 +15,9 @@ multicraft.register_item(":", {
groupcaps = {
crumbly = {times={[2]=3.00, [3]=0.70}, uses=0, maxlevel=1},
snappy = {times={[3]=0.40}, uses=0, maxlevel=1},
oddly_breakable_by_hand = {times={[0]=90.00,[1]=7.00,[2]=4.00,[3]=1.40,[4]=480.70,[5]=999999.0}, uses=0, maxlevel=5}
choppy = {times={[3]=3}},
cracky = {times={[10]=10, [3]=7.5}},
oddly_breakable_by_hand = {times={[0]=90.00,[1]=7.00,[2]=3.00,[3]=3*3.33,[4]=250,[5]=999999.0,[6]=0.5}, uses=0, maxlevel=5}
},
damage_groups = {fleshy=1},
}
@ -29,9 +31,9 @@ multicraft.register_tool("default:pick_wood", {
full_punch_interval = 1.2,
max_drop_level=0,
groupcaps={
cracky = {times={[3]=1.60}, uses=10, maxlevel=1},
cracky = {times={[3]=1.60, [10]=1.60}, uses=10, maxlevel=1},
},
damage_groups = {fleshy=2},
damage_groups = {fleshy=3},
},
groups = {tools=1},
})
@ -42,9 +44,9 @@ multicraft.register_tool("default:pick_stone", {
full_punch_interval = 1.3,
max_drop_level=0,
groupcaps={
cracky = {times={[2]=2.0, [3]=1.20}, uses=20, maxlevel=1},
cracky = {times={[2]=2.0, [3]=1.20, [3]=0.60}, uses=20, maxlevel=1},
},
damage_groups = {fleshy=3},
damage_groups = {fleshy=4},
},
groups = {tools=1},
})
@ -55,9 +57,9 @@ multicraft.register_tool("default:pick_steel", {
full_punch_interval = 1.0,
max_drop_level=1,
groupcaps={
cracky = {times={[1]=4.00, [2]=1.60, [3]=0.80}, uses=20, maxlevel=2},
cracky = {times={[1]=4.00, [2]=1.60, [3]=0.80,[3]=0.40}, uses=20, maxlevel=2},
},
damage_groups = {fleshy=4},
damage_groups = {fleshy=5},
},
groups = {tools=1},
})
@ -68,7 +70,7 @@ multicraft.register_tool("default:pick_gold", {
full_punch_interval = 1.3,
max_drop_level=0,
groupcaps={
cracky = {times={[2]=2.0, [3]=1.20}, uses=20, maxlevel=1},
cracky = {times={[2]=2.0, [3]=1.20, [10]=0.30}, uses=20, maxlevel=1},
},
damage_groups = {fleshy=3},
},
@ -81,9 +83,9 @@ multicraft.register_tool("default:pick_diamond", {
full_punch_interval = 0.9,
max_drop_level=3,
groupcaps={
cracky = {times={[1]=2.0, [2]=1.0, [3]=0.50,[4]=20.00 }, uses=30, maxlevel=4},
cracky = {times={[1]=2.0, [2]=1.0, [3]=0.50,[4]=20.00,[3]=0.20 }, uses=30, maxlevel=4},
},
damage_groups = {fleshy=5},
damage_groups = {fleshy=6},
},
groups = {tools=1},
})
@ -155,7 +157,7 @@ multicraft.register_tool("default:shovel_diamond", {
groupcaps={
crumbly = {times={[1]=1.10, [2]=0.50, [3]=0.30}, uses=30, maxlevel=3},
},
damage_groups = {fleshy=4},
damage_groups = {fleshy=5},
},
groups = {tools=1},
})
@ -170,7 +172,7 @@ multicraft.register_tool("default:axe_wood", {
groupcaps={
choppy = {times={[2]=3.00, [3]=2.00}, uses=10, maxlevel=1},
},
damage_groups = {fleshy=2},
damage_groups = {fleshy=1},
},
groups = {tools=1},
})
@ -196,7 +198,7 @@ multicraft.register_tool("default:axe_steel", {
groupcaps={
choppy={times={[1]=2.50, [2]=1.40, [3]=1.00}, uses=20, maxlevel=2},
},
damage_groups = {fleshy=4},
damage_groups = {fleshy=5},
},
groups = {tools=1},
})
@ -222,7 +224,7 @@ multicraft.register_tool("default:axe_diamond", {
groupcaps={
choppy={times={[1]=2.10, [2]=0.90, [3]=0.50}, uses=30, maxlevel=2},
},
damage_groups = {fleshy=7},
damage_groups = {fleshy=6},
},
groups = {tools=1},
})
@ -289,7 +291,7 @@ multicraft.register_tool("default:sword_diamond", {
groupcaps={
snappy={times={[1]=1.90, [2]=0.90, [3]=0.30}, uses=40, maxlevel=3},
},
damage_groups = {fleshy=8},
damage_groups = {fleshy=7},
},
groups = {combat=1},
})
@ -361,4 +363,4 @@ multicraft.register_tool("default:shears", {
}
},
groups = {tools=1},
})
})

View File

@ -3,6 +3,7 @@ multicraft.register_node("farming:carrot_1", {
walkable = false,
drawtype = "plantlike",
drop = "farming:carrot_item",
buildable_to = true,
tiles = {"farming_carrot_1.png"},
selection_box = {
type = "fixed",
@ -17,6 +18,7 @@ multicraft.register_node("farming:carrot_1", {
multicraft.register_node("farming:carrot_2", {
paramtype = "light",
walkable = false,
buildable_to = true,
drawtype = "plantlike",
drop = "farming:carrot_item",
tiles = {"farming_carrot_2.png"},
@ -33,6 +35,7 @@ multicraft.register_node("farming:carrot_2", {
multicraft.register_node("farming:carrot_3", {
paramtype = "light",
walkable = false,
buildable_to = true,
drawtype = "plantlike",
drop = "farming:carrot_item",
tiles = {"farming_carrot_3.png"},
@ -49,6 +52,7 @@ multicraft.register_node("farming:carrot_3", {
multicraft.register_node("farming:carrot", {
paramtype = "light",
walkable = false,
buildable_to = true,
drawtype = "plantlike",
tiles = {"farming_carrot_4.png"},
drop = {

View File

@ -1,6 +1,7 @@
multicraft.register_node("farming:melon", {
description = "Melon",
paramtype2 = "facedir",
buildable_to = true,
stack_max = 64,
tiles = {"farming_melon_top.png", "farming_melon_top.png", "farming_melon_side.png", "farming_melon_side.png", "farming_melon_side.png", "farming_melon_side.png"},
groups = {choppy=2, oddly_breakable_by_hand=2, building = 1},
@ -42,6 +43,7 @@ multicraft.register_node("farming:melontige_1", {
walkable = false,
drawtype = "plantlike",
sunlight_propagates = true,
buildable_to = true,
drop = "",
tiles = {"farming_tige_1.png"},
selection_box = {
@ -58,6 +60,7 @@ multicraft.register_node("farming:melontige_2", {
paramtype = "light",
walkable = false,
drawtype = "plantlike",
buildable_to = true,
sunlight_propagates = true,
drop = "",
tiles = {"farming_tige_2.png"},

View File

@ -2,6 +2,7 @@ multicraft.register_node("farming:potato_1", {
paramtype = "light",
walkable = false,
drawtype = "plantlike",
buildable_to = true,
drop = "farming:potato_item",
tiles = {"farming_potato_1.png"},
selection_box = {
@ -19,6 +20,7 @@ multicraft.register_node("farming:potato_2", {
walkable = false,
drawtype = "plantlike",
drop = "farming:potato_item",
buildable_to = true,
tiles = {"farming_potato_2.png"},
selection_box = {
type = "fixed",
@ -34,6 +36,7 @@ multicraft.register_node("farming:potato", {
paramtype = "light",
walkable = false,
drawtype = "plantlike",
buildable_to = true,
tiles = {"farming_potato_3.png"},
drop = {
max_items = 1,

View File

@ -19,6 +19,7 @@ multicraft.register_craftitem("farming:pumpkin_seed", {
multicraft.register_node("farming:pumpkin_1", {
paramtype = "light",
walkable = false,
buildable_to = true,
drawtype = "plantlike",
sunlight_propagates = true,
drop = "",
@ -36,6 +37,7 @@ multicraft.register_node("farming:pumpkin_1", {
multicraft.register_node("farming:pumpkin_2", {
paramtype = "light",
walkable = false,
buildable_to = true,
drawtype = "plantlike",
sunlight_propagates = true,
drop = "",

View File

@ -26,6 +26,7 @@ local function add_simple_flower(name, desc, image, color)
wield_image = image..".png",
sunlight_propagates = true,
paramtype = "light",
buildable_to = true,
walkable = false,
stack_max = 64,
groups = {snappy=3,flammable=2,flower=1,flora=1,attached_node=1,dig_by_water=1,color=1, decorative = 1},
@ -51,6 +52,7 @@ multicraft.register_node("flowers:tulip_pink", {
wield_image = "flower_tulip_pink.png",
sunlight_propagates = true,
paramtype = "light",
buildable_to = true,
walkable = false,
stack_max = 64,
groups = {snappy=3,flammable=2,flower=1,flora=1,attached_node=1,color_pink=1, decorative = 1},
@ -70,6 +72,7 @@ multicraft.register_node("flowers:tulip_red", {
sunlight_propagates = true,
paramtype = "light",
walkable = false,
buildable_to = true,
stack_max = 64,
groups = {snappy=3,flammable=2,flower=1,flora=1,attached_node=1,color_red=1, decorative = 1},
sounds = default.node_sound_leaves_defaults(),
@ -89,6 +92,7 @@ multicraft.register_node("flowers:tulip_white", {
sunlight_propagates = true,
paramtype = "light",
walkable = false,
buildable_to = true,
stack_max = 64,
groups = {snappy=3,flammable=2,flower=1,flora=1,attached_node=1,color_white=1, decorative = 1},
sounds = default.node_sound_leaves_defaults(),
@ -109,6 +113,7 @@ multicraft.register_node("flowers:allium", {
wield_image = "flower_allium.png",
sunlight_propagates = true,
paramtype = "light",
buildable_to = true,
walkable = false,
stack_max = 64,
groups = {snappy=3,flammable=2,flower=1,flora=1,attached_node=1,color_pink=1, decorative = 1},
@ -128,6 +133,7 @@ multicraft.register_node("flowers:paeonia", {
inventory_image = "flower_paeonia.png",
wield_image = "flower_paeonia.png",
sunlight_propagates = true,
buildable_to = true,
paramtype = "light",
walkable = false,
stack_max = 64,
@ -149,6 +155,7 @@ multicraft.register_node("flowers:houstonia", {
inventory_image = "flower_houstonia.png",
wield_image = "flower_houstonia.png",
sunlight_propagates = true,
buildable_to = true,
paramtype = "light",
walkable = false,
stack_max = 64,
@ -170,6 +177,8 @@ multicraft.register_node("flowers:blue_orchid", {
wield_image = "flower_blue_orchid.png",
sunlight_propagates = true,
paramtype = "light",
buildable_to = true,
walkable = false,
stack_max = 64,
groups = {snappy=3,flammable=2,flower=1,flora=1,attached_node=1,color_blue=1,decorative = 1},
@ -188,6 +197,7 @@ multicraft.register_node("flowers:fern", {
tiles = { "fern.png" },
inventory_image = "fern.png",
wield_image = "fern.png",
buildable_to = true,
sunlight_propagates = true,
paramtype = "light",
walkable = false,
@ -206,6 +216,7 @@ function register_large(name, desc, inv_img, bot_img, colr) --change in function
drawtype = "plantlike",
tiles = { "double_plant_"..name.."_bottom.png" },
inventory_image = "flowers_"..inv_img..".png",
buildable_to = true,
wield_image = "flowers_"..inv_img..".png",
sunlight_propagates = true,
paramtype = "light",

View File

@ -87,8 +87,8 @@ public:
}
}
if (event.EventType == irr::EET_LOG_TEXT_EVENT) {
dstream << std::string("Irrlicht log: ") + std::string(event.LogEvent.Text)
<< std::endl;
//dstream << std::string("Irrlicht log: ") + std::string(event.LogEvent.Text)
// << std::endl;
return true;
}
/* always return false in order to continue processing events */

View File

@ -339,7 +339,7 @@ std::vector<v3s16> pathfinder::get_Path(ServerEnvironment* env,
#ifdef PATHFINDER_DEBUG
print_pathlen();
#endif
ERROR_TARGET << "failed to update cost map"<< std::endl;
//ERROR_TARGET << "failed to update cost map"<< std::endl;
}