TO
dúvida

Como Usar A Funçao Doremoveitem ?

Por tonynamoral, 15 de out. de 2012 em Scripts

11
1.9k
tonynamoralT
15 de outubro de 2012 às 19:55

Olá galera , eu gostaria de saber como usar a funçao doRemoveItem .

 

 

Eu Estou usando assim

 

doRemoveItem(1498,1,{x=3133, y=12312, z=7})

 

 

Se poderem ajudar como usala . TY ;)

SkyDangerousS
15 de outubro de 2012 às 20:05

Você quer remover um item em uma determina área?

caoticC
15 de outubro de 2012 às 20:18

Se for por área usa getThingFromPos(pos).uid

 

Para usar remove item

 

doRemoveItem(item para ser removido, e quantidade da remoção)

 

Tipo para remover item de tal pos

 

 
local pos = {x=3133, y=12312, z=7}
doRemoveItem(getThingFromPos(pos).uid, 1)

tonynamoralT
15 de outubro de 2012 às 21:03

Não está removendo não .

 

 

Script :

 

 

function onUse(cid,item,item2,pos,topos,frompos)

 

-- Config

pos1 = {x=500, y=398, z=7}

pos2 = {x=501, y=398, z=7}

pos3 = {x=502, y=398, z=7}

pos4 = {x=503, y=398, z=7}

pos5 = {x=514, y=383, z=7}

pos6 = {x=514, y=384, z=7}

pos7 = {x=514, y=385, z=7}

pos8 = {x=514, y=386, z=7}

item = 1498

-- End Config

 

if isPlayer(cid) then

doPlayerAddItem(cid,2160,1)

doCreateItem(item,1,pos1)

doCreateItem(item,1,pos2)

doCreateItem(item,1,pos3)

doCreateItem(item,1,pos4)

doTeleportThing(cid,{x=504,y=400,z=7})

doRemoveItem(getThingFromPos(pos5).uid, 1)

doRemoveItem(getThingFromPos(pos6).uid, 1)

doRemoveItem(getThingFromPos(pos7).uid, 1)

doRemoveItem(getThingFromPos(pos8).uid, 1)

doPlayerSendTextMessage(cid, 27, "Voce consegiu a primeira parte. vá a segunda.")

end

end

Session StartS
15 de outubro de 2012 às 21:18

coloco uniqueid neles? D= n sei se é isso tbm G.G

SkymagnumS
15 de outubro de 2012 às 21:21

A função doRemoveItem(uid,n) se resume a

 

 

 

uid = item

 

n = pos

 

então se for um item especifico você usa assim

 

getTileItemById(pos, itemId)

 

exêmplo:

 

local item = getTileItemById({x = 1, y = 2, z = 3}, 2160)

if item.uid > 0 then

return doRemoveItem(item.uid, 1)

end

 

 

agora tem outra função

 

getThingFromPos(pos)

 

que pode usar assim

 

doRemoveItem(getThingFromPos(pos).uid, 1).

Editado Outubro 15 por Skymagnum

LuckOakeL
15 de outubro de 2012 às 21:22

Faltava o stackpos no seu script e você tava usando duas variáveis iguais. Tó:

 

 

function onUse(cid,item,item2,pos,topos,frompos)

 

-- Config

pos1 = {x=500, y=398, z=7, stackpos = 1}

pos2 = {x=501, y=398, z=7, stackpos = 1}

pos3 = {x=502, y=398, z=7, stackpos = 1}

pos4 = {x=503, y=398, z=7, stackpos = 1}

pos5 = {x=514, y=383, z=7, stackpos = 1}

pos6 = {x=514, y=384, z=7, stackpos = 1}

pos7 = {x=514, y=385, z=7, stackpos = 1}

pos8 = {x=514, y=386, z=7, stackpos = 1}

itema = 1498

-- End Config

 

doPlayerAddItem(cid,2160,1)

doCreateItem(itema,1,pos1)

doCreateItem(itema,1,pos2)

doCreateItem(itema,1,pos3)

doCreateItem(itema,1,pos4)

doTeleportThing(cid,{x=504,y=400,z=7})

doRemoveItem(getThingFromPos(pos5).uid, 1)

doRemoveItem(getThingFromPos(pos6).uid, 1)

doRemoveItem(getThingFromPos(pos7).uid, 1)

doRemoveItem(getThingFromPos(pos8).uid, 1)

doPlayerSendTextMessage(cid, 27, "Você conseguiu a primeira parte. Vá para a segunda.")

return true

end

 

Editado Outubro 15 por LuckOake

SkymagnumS
15 de outubro de 2012 às 21:25

Stackpos não é tanto usado mais para evitar futuros bugs sempre use quando usar

 

getThingFromPos(pos)

 

use

 

for i = 1, 255 do

pos = {x = x, y = y, z = z, stackpos = i}

end

Editado Outubro 15 por Skymagnum

LuckOakeL
15 de outubro de 2012 às 21:32

@Skymagnum

 

Realmente não é muito usado, mas no caso do script dele, removeria até o chão sem o stackpos. E o seu modo, usando esse controle for, vai remover todos os items acima do chão, então não seria muito bom usar, afinal, vai que o item deve ficar acima de um outro item, como um coal basin?

tonynamoralT
15 de outubro de 2012 às 22:30

Karalho @luckoake, fllw mesmo vééi , resolvido meus problems o/ REP+

LuckOakeL
15 de outubro de 2012 às 22:34

Beleza, vou mover o tópico. Quaisquer outras dúvidas, pode postar aqui.