DE
dúvida

Dúvida Em Parte Do Script:

Por Derlexy, 30 de ago. de 2012 em Scripts

script
5
914
DerlexyD
30 de agosto de 2012 às 08:43

Bom, estou com um probleminha nesta parte do meu Script:

local winpos = {
{x=1010,y=1010,z=7},
{x=1010,y=1011,z=7},
{x=1010,y=1012,z=7}
} -- Posições onde é possível usar a runa nos Players.

if getCreaturePosition(item2.uid) ~= isInArray(winpos,TRUE) then
return doPlayerSendCancel(cid,"Sorry, the player is not at the winners place!")
end

 

Essa parte deveria determinar que a RUNA só pode ser usada se o alvo estiver nas posições do local winpos... Porém, estando ou não nessas posições, o script retorna a mensagem de erro...

 

Bom, estou começando a mexer com scripts, e tentando aprender, caso alguém saiba me indicar qual foi o erro e puder me ajudar ficarei grato ^^

 

Vlw.

MulizeuM
30 de agosto de 2012 às 08:47

Veja assim!

 

 

local winpos = {
{x=1010,y=1010,z=7},
{x=1010,y=1011,z=7},
{x=1010,y=1012,z=7}
} -- Posições onde é possível usar a runa nos Players.

if isInArray(getCreaturePosition(item2.uid),winpos) == false then
doPlayerSendCancel(cid,"Sorry, the player is not at the winners place!")
end

brun123B
30 de agosto de 2012 às 14:08

 

local winpos = {
{x=1010,y=1010,z=7},
{x=1010,y=1011,z=7},
{x=1010,y=1012,z=7}
} -- Posições onde é possível usar a runa nos Players.

local correctPosition = false
for _, tempPos in pairs (winpos) do
if getTopCreature(tempPos).uid == item2.uid then
	correctPosition = true
	break
end
end

if not correctPosition then
return doPlayerSendCancel(cid,"Sorry, the player is not at the winners place!")
end

 

 

O certo seria usar isInArray(winpos, getCreaturePosition(cid)), pois isso verifica se a posição da criatura está dentro do array winpos. Infelimente com tabelas essa função não funciona, pois uma tabela A jamais é igual a uma tabela B, por mais que seus elementos sejam iguais.

Editado Agosto 30 por brun123

DerlexyD
30 de agosto de 2012 às 19:24

Uou, funcionou brun123... Porém, somente copie e colei, porque nao entendi muito bem oque são algumas dessas linhas UIHASUIAHSAS...

Se puder me explicar pra que eu aprenda ficarei agradecido HEHE

 

Mas vlw, mesmo.

SkyLighS
30 de agosto de 2012 às 21:03

duvida sanada

 

reportado