added skills (WIP)

This commit is contained in:
cale 2016-03-26 13:58:54 +01:00
parent fd0deea78b
commit 695dabe36f
7 changed files with 71 additions and 6 deletions

View File

@ -24,7 +24,10 @@ minetest.register_craftitem("blueprint:empty", {
description = "Empty Blueprint",
inventory_image = "blueprint_empty.png",
on_place = function(itemstack, placer, pointed_thing)
itemstack:set_name(blueprint.all[math.random(#blueprint.all)])
placer:get_inventory():add_item("main", blueprint.all[math.random(#blueprint.all)])
itemstack:take_item()
return itemstack
end
})
table.insert(default.treasure_chest_items, "blueprint:empty")

View File

@ -4,7 +4,7 @@ classes.skills.all = {}
function classes.skills.register_skill(name, def)
minetest.register_craftitem("classes:skill_" .. name, {
description = def.description,
inventory_image = def.inventory_image,
inventory_image = def.img,
class = def.class,
on_use = function(itemstack, user, pointed_thing)
if user == nil then return end
@ -30,6 +30,67 @@ minetest.register_craftitem("classes:skill_book", {
inventory_image = "classes_skills_book.png",
on_use = function(itemstack, user, pointed_thing)
if user == nil then return end
user:get_inventory():add_item("main", classes.skills.all[math.random(#classes.skills.all)])
itemstack:take_item()
return itemstack
end
})
table.insert(default.treasure_chest_items, "classes:skill_book")
classes.skills.register_skill("super_jump", {
description = "Super Jump\nLevel: 15\nClass: thief\nTime: 7.0\nEffect: gravity = 0.1",
img = "classes_skills_super_jump.png",
class = "thief",
lvl = 15,
on_use = function(itemstack, user, pointed_thing)
user:set_physics_override({
gravity = 0.1,
})
cmsg.push_message_player(user, "[skill] + super jump")
minetest.after(7.0, function(player)
if not player or not player:is_player() then
return
end
player:set_physics_override({
gravity = 1,
})
cmsg.push_message_player(player, "[skill] - super jump")
end, user)
end
})
classes.skills.register_skill("lift", {
description = "Lift\nLevel: 25\nClass: thief\nTime: 2.0\nEffect: gravity = -0.5",
img = "classes_skills_smooth_fall.png",
class = "thief",
lvl = 25,
on_use = function(itemstack, user, pointed_thing)
user:set_physics_override({
gravity = -0.5,
})
cmsg.push_message_player(user, "[skill] + lift")
minetest.after(2.0, function(player)
if not player or not player:is_player() then
return
end
player:set_physics_override({
gravity = 1,
})
cmsg.push_message_player(player, "[skill] - lift")
end, user)
end
})
classes.skills.register_skill("heal", {
description = "Heal\nLevel: 13\nClass: farmer\nEffect: hp + 4",
img = "classes_skills_heal.png",
class = "farmer",
lvl = 13,
on_use = function(itemstack, user, pointed_thing)
user:set_hp(user:get_hp()+4)
cmsg.push_message_player(user, "[skill][hp] + 4")
end
})

Binary file not shown.

After

Width:  |  Height:  |  Size: 278 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 292 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 213 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 287 B

View File

@ -168,6 +168,7 @@ minetest.register_node("default:box", {
})
default.treasure_chest_items = {"default:dirt", "default:sand", "default:stone_item", "default:coin", "default:coal_lump", "default:wood"}
minetest.register_node("default:treasure_chest", {
description = "Treasure Chest",
tiles = {"default_treasure_chest.png"},
@ -177,10 +178,10 @@ minetest.register_node("default:treasure_chest", {
local meta = minetest.get_meta(pos)
local inv = meta:get_inventory()
inv:set_size("main", 8*4)
local items = {"default:dirt", "default:sand", "default:iron_lump", "default:stone_item", "default:coin", "default:gold_lump", "default:coal_lump"}
local item = items[math.random(5)]
local items = default.treasure_chest_items
local item = items[math.random(#items)]
inv:add_item("main", {name = item, count = math.random(2,10)})
local item = items[math.random(5)]
local item = items[math.random(#items)]
inv:add_item("main", {name = item, count = math.random(2,10)})
end,
after_dig_node = function(pos, oldnode, oldmetadata, digger)