1* ta ligado q existem 7 direçoes neh? entao esse teu else ae ta bem falho...
2* a getPosByDir tb aceita size... e funciona exatamente como a tua... -soh q ela eh completa neh... com as 7 dirs...-
3* local ret = pos --isso ae n adianta de nd ja q ainda vais alterar a tabela original...
essa eh a getPosByDir...
function getPositionByDirection(pos, direction, size)
local n = size or 1
local position = {}
position.x = pos.x
position.y = pos.y
position.z = pos.z
if pos.stackpos then
position.stackpos = pos.stackpos
end
if(direction == NORTH) then
position.y = position.y - n
elseif(direction == SOUTH) then
position.y = position.y + n
elseif(direction == WEST) then
position.x = position.x - n
elseif(direction == EAST) then
position.x = position.x + n
elseif(direction == NORTHWEST) then
position.y = position.y - n
position.x = position.x - n
elseif(direction == NORTHEAST) then
position.y = position.y - n
position.x = position.x + n
elseif(direction == SOUTHWEST) then
position.y = position.y + n
position.x = position.x - n
elseif(direction == SOUTHEAST) then
position.y = position.y + n
position.x = position.x + n
end
return position
end
PS: AINDA ACHU Q DEVIA TER PARTE DE APROVAÇAO PARA ESSAS AREAS DE SCRIPTING... ¬¬


info
Grupo: Visconde
Registrado: 27/02/13
Posts: 446
Reputação: +282
Gênero: Masculino
Opa, fala ai galera.
Eu estava criando um script de fishing, e então eu precisava de uma função que retorna-se a posiçao para que eu estava olhando,
dai eu achei a funçao : getPosByDir,
Mas.. eu não sei usar ela, então eu criei a minha propria funçao, e tem como voce adicionar os passos, para voce ver a posiçao ,
de quantos passos.
Exemplo de uso :
getNewPos({x = 10, y = 20, z = 7}, 0, 2})O Resultado seria :
{x = x = 10, y = 22, z = 7}
Bom, aqui está a função