Como faz pra checar storage em tabela?

Flaah
Por Flaah
em Scripts

Flaah

Victor Hugo
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 26/12/11Posts: 201Char no Tibia: Flaah

Como faz pra um checar uma storage em tabela? exemplo:

 

Fiz um item que ao usar ele checa a storage do player e se ele tiver X storage, ele ganha uma certa quantidade de HP.

 

Só que da esse erro ao checar a storage pela tabela:

[18/11/2015 23:50:00] data/actions/scripts/Classes/teste.lua:9: attempt to call global 'getPlayerStorage' (a nil value)

local config = {

    [3001] = {HP = 900}, -- [Storage] = {HP = Quantidade}
    [3002] = {HP = 780},
}

function onUse(cid, item, frompos)

local valor = config[getPlayerStorageValue(cid)]

setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) +valor.HP)
doCreatureAddHealth(cid, getCreatureMaxHealth(cid))

doSendMagicEffect(frompos, 10)
doPlayerSendTextMessage(cid, 20, "Congratulations!")

return true
end

Como faço pra não ocorrer esse erro e checar a storage? pliz confused.gif

 

 

Sou desse carinha..



582459_362016673913095_1385656134_n.jpg

 

"Pense nisso você tbm"

 

"Tudo o que um sonho precisa para ser realizado é alguém que acredite que ele possa ser realizado"



35l7z91.jpg

Night Wolf

Coordenador de Desenvolvimento
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 14/02/14Posts: 341Gênero: MasculinoChar no Tibia: Night Wolf

rapaz, o erro que deu foi porque vc não passou parâmetro na função getPlayerStorageValue.. ela tinha que receber um creature id e o storage à ser checado. Mas eu acho que entendi oque vc tentou fazer, vc quer que ele cheque todos os storages da tabela e caso tenha valor >= 1 praquele determido storage aumente a vida, certo? Porque aqui você tá checando o valor de um storage inexistente

local valor = config[getPlayerStorageValue(cid)]

e além disso vc tá pegando o valor dele pra verificar na tabela, ou seja, esse 3001 e 3002 são os values que o storage não definido poderá assumir, era isso mesmo que você queria?


Fiz duas versões, elas são ligeiramente diferentes. A primeira checa storages 3001 e 3002, a segunda checa se o valor de um storage é 3001 ou 3002:

 

local config = {

    [3001] = {HP = 900}, -- [Storage] = {HP = Quantidade}
    [3002] = {HP = 780},
}

function onUse(cid, item, frompos)

	for stg, value in ipairs (config) do
		if getPlayerStorageValue(cid, stg) >= 1
			setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) +value.HP)
			doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
		end
	end
	doSendMagicEffect(frompos, 10)
	doPlayerSendTextMessage(cid, 20, "Congratulations!")
return true
end


--------------- VERSAO 2 ABAIXO --------------------------



local config = {
    [3001] = {HP = 900}, -- [Storage] = {HP = Quantidade}
    [3002] = {HP = 780},
	storage = 39102 -- storage que salva os valores acima
}

function onUse(cid, item, frompos)
	local valor = config[getPlayerStorageValue(cid, storage)]
	if valor and valor.HP ~= nil then
		setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) +valor.HP)
		doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
		doSendMagicEffect(frompos, 10)
		doPlayerSendTextMessage(cid, 20, "Congratulations!")
	end
return true
end

 

 

I9AtE9T.png
/NW

Flaah

Victor Hugo
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 26/12/11Posts: 201Char no Tibia: Flaah

Desculpe minha noobse, mais qual diferença entre um e outro exatamente?

Porq a versão 2 tem uma storage que salva e isso n entendi muito bem kk' :p

Sou desse carinha..



582459_362016673913095_1385656134_n.jpg

 

"Pense nisso você tbm"

 

"Tudo o que um sonho precisa para ser realizado é alguém que acredite que ele possa ser realizado"



35l7z91.jpg

Night Wolf

Coordenador de Desenvolvimento
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 14/02/14Posts: 341Gênero: MasculinoChar no Tibia: Night Wolf

pela forma q vc fez eu não entendi se vc queria pegar o valor de 1 storage ou se queria checar entre vários storages. A diferença do primeiro pro segundo é que o primeiro se vc tiver todos os storages vc vai ganhar todas as vidas somadas

I9AtE9T.png
/NW

Flaah

Victor Hugo
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 26/12/11Posts: 201Char no Tibia: Flaah

- REMOVIDO -

Sou desse carinha..



582459_362016673913095_1385656134_n.jpg

 

"Pense nisso você tbm"

 

"Tudo o que um sonho precisa para ser realizado é alguém que acredite que ele possa ser realizado"



35l7z91.jpg