1 (edited by Jat 2012-06-05 18:46:39)

Topic: Help for function in new version Minetest

With the new version minetest I have a bug with this code
           

minetest.register_on_punchnode(function(p, node, player)
    if node.name=="default:dirt" then
        local a=0
        for a = 1,player:get_inventory():get_size('main') do        
            if not(player:get_inventory():get_list('main')[a]=="") then
                local element=player:get_inventory():get_list("main")[a]:split(" ")
                print(element[1])
                print(element[2])
            end
        end
    end
end)

Precisely here

local element=player:get_inventory():get_list("main")[a]:split(" ")

The code is used just to navigate in the inventory.
And retrieve the names of items and their numbers.
But player:get_inventory():get_list("main")[a] have nothing returns.

Thank for help.

Sorry for bad english.

Re: Help for function in new version Minetest

Must be used get_meta for player ?????

3 (edited by darkrose 2012-06-06 12:57:22)

Re: Help for function in new version Minetest

you want to use get_stack not get_list

local type=player:get_inventory():get_stack("main",a):get_name()
local count = player:get_inventory():get_stack("main",a):get_count()
Take a look at my Candles Mod and Tricorder Mod, my Minetest Development Tree, and my server.

Re: Help for function in new version Minetest

Thx darkrose .
I am an idiot. :)