Remove Item

fitaisolante
em Scripts

fitaisolante

Le dur à cuire
avatar
Banidos
Banidos

INFOS

Grupo: BanidosRegistrado: 25/12/07Posts: 152Char no Tibia: Tony Scott

Eu estou com um problema, o meu código não remove todas as pedras, podem me ajudar?

local _gnr = {
["Gerador Azul I"] = {{x = 613, y = 42, z = 7, stackpos = 1}, {x = 613, y = 41, z = 7, stackpos = 1}, {x = 613, y = 40, z = 7, stackpos = 1}, {x = 613, y = 43, z = 7, stackpos = 1}, {x = 613, y = 44, z = 7, stackpos = 1}},
["Gerador Azul II"] = {{x = 613, y = 42, z = 7, stackpos = 1}, {x = 613, y = 41, z = 7, stackpos = 1}, {x = 613, y = 40, z = 7, stackpos = 1}, {x = 613, y = 43, z = 7, stackpos = 1}, {x = 613, y = 44, z = 7, stackpos = 1}},
["Gerador Azul III"] = {{x = 613, y = 42, z = 7, stackpos = 1}, {x = 613, y = 41, z = 7, stackpos = 1}, {x = 613, y = 40, z = 7, stackpos = 1}, {x = 613, y = 43, z = 7, stackpos = 1}, {x = 613, y = 44, z = 7, stackpos = 1}},
["Gerador Vermelho I"] = {{x = 613, y = 42, z = 7, stackpos = 1}, {x = 613, y = 41, z = 7, stackpos = 1}, {x = 613, y = 40, z = 7, stackpos = 1}, {x = 613, y = 43, z = 7, stackpos = 1}, {x = 613, y = 44, z = 7, stackpos = 1}},
["Gerador Vermelho II"] = {{x = 613, y = 42, z = 7, stackpos = 1}, {x = 613, y = 41, z = 7, stackpos = 1}, {x = 613, y = 40, z = 7, stackpos = 1}, {x = 613, y = 43, z = 7, stackpos = 1}, {x = 613, y = 44, z = 7, stackpos = 1}},
["Gerador Vermelho III"] = {{x = 613, y = 42, z = 7, stackpos = 1}, {x = 613, y = 41, z = 7, stackpos = 1}, {x = 613, y = 40, z = 7, stackpos = 1}, {x = 613, y = 43, z = 7, stackpos = 1}, {x = 613, y = 44, z = 7, stackpos = 1}},
}

function onDeath(cid, corpse, killer) 
	if isMonster(cid) then 
  for name, position in pairs(_gnr) do
	  if ((getCreatureName(cid):lower()) == (name:lower())) then
	   doRemoveItem(getThingFromPos(position[1]).uid, 1)
   end
  end

se eu não boto [1] ele não remove nenhuma, se eu boto [1] ele remove uma..

Banido por falta de ética e desonestidade.

IvanAppel

avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 28/11/11Posts: 801Char no Tibia: Sei la

Então poe o 1 varias vezes ;o

fitaisolante

Le dur à cuire
avatar
Banidos
Banidos

INFOS

Grupo: BanidosRegistrado: 25/12/07Posts: 152Char no Tibia: Tony Scott

Não irá funcionar amigo.. o [1] serve para chamar algum valor na tabela.. Exemplo:

 

b = {arroz, feijão}

 

b[1] = arroz

b[2] = feijão

Banido por falta de ética e desonestidade.

craigmabbit

avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 05/10/12Posts: 245

Keilost estou com o mesmo problema, mas no caso uso table.insert

akira021

Sky's Heart
avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 10/08/08Posts: 127

Bom eu to vendo pelo celular, mas se eu entendi bem eh soh colocar outro for.

 

Ex: for i = 1, 3 do

 

b pois assim ele vai passar por todos

 

 

Se eu nao me engano da pra usar o for in pairs para rodar a tabela toda tipo a,b, nao sei explicar direito mas eu sei que da =s

 

Acho que eu nao ajudei muito mais fica ai a dica...

 

Acessar pelo cel eh foda >.<

flug.png

 

 

fitaisolante

Le dur à cuire
avatar
Banidos
Banidos

INFOS

Grupo: BanidosRegistrado: 25/12/07Posts: 152Char no Tibia: Tony Scott

Obrigado, me ajudou muito... Eu esqueci de por o no position, eu já tinha tentado fazer isso só que não deu certo pois não puis rsrs..

 

Rep+

Banido por falta de ética e desonestidade.

Slicer

Insanity
avatar
Príncipe
Príncipe

INFOS

Grupo: PríncipeRegistrado: 19/08/10Posts: 4014Gênero: Masculino

hã... pq exatamente tu uso FOR pra pegar o nome do monstro e ver se ele ta na tabela? o.O

 

o certo eh usar:

_gnr[getCreatureName(cid):lower()] 

"Só a beira do abismo que os seres humanos acham forças para mudar."... E isso me da nojo... ¬¬

"Insanity is doing the exact... same fucking thing... over and over again expecting... shit to change... That. Is. Crazy." -Vass/Einstein

 

DuuhCarvalho

:)
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 19/01/12Posts: 988Gênero: MasculinoChar no Tibia: Xerife Woody

Tópico movido para Pedidos e dúvidas resolvidos.