Ir para conteúdo
  • 0

Monstros Conseguem Nadar


NewAge

Pergunta

To usando esse scripts pros players poderem nadar, o que acontece é que quando tem um monstro perto do jogador e ele corre pra agua, pra nadar, o monstro vem atras, só que ele fica andando sobre a agua. Queria saber se tem como arrumar isso

 

Movements

 

<!-- Swimming -->
<movevent type="StepIn" itemid="4632-4643" event="script" value="swimm.lua"/>
<movevent type="StepIn" itemid="7943-7954" event="script" value="swimm.lua"/>

 

swimm.lua

 

local outfit = {lookType = 267, lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0, lookTypeEx = 0, lookAddons = 0}
local BORDERS = {
[4632] = {x = 0, y = -2, back = SOUTH},
[4633] = {x = -2, y = 0, back = EAST},
[4634] = {x = 0, y = 2, back = NORTH},
[4635] = {x = 2, y = 0, back = WEST},
[4636] = {x = 2, y = 1, back = WEST},
[4637] = {x = -2, y = 1, back = NORTH},
[4638] = {x = 2, y = -1, back = WEST},
[4639] = {x = -2, y = -1, back = EAST},
[4640] = {x = 2, y = 2, back = WEST},
[4641] = {x = -2, y = 2, back = NORTH},
[4642] = {x = 2, y = -2, back = WEST},
[4643] = {x = -2, y = -2, back = SOUTH},
[7943] = {x = 0, y = -2, back = SOUTH},
[7944] = {x = -2, y = 0, back = EAST},
[7945] = {x = 0, y = 2, back = NORTH},
[7946] = {x = 2, y = 0, back = WEST},
[7947] = {x = 2, y = 1, back = WEST},
[7948] = {x = -2, y = 1, back = NORTH},
[7949] = {x = 2, y = -1, back = WEST},
[7950] = {x = -2, y = -1, back = EAST},
[7951] = {x = 2, y = 2, back = WEST},
[7952] = {x = -2, y = 2, back = NORTH},
[7953] = {x = 2, y = -2, back = WEST},
[7954] = {x = -2, y = -2, back = SOUTH}
}
BORDERS[4828] = BORDERS[7943]
BORDERS[4829] = BORDERS[7946]
BORDERS[4830] = BORDERS[7945]
BORDERS[4831] = BORDERS[7944]
function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor)
if(not isPlayer(cid)) then
return true
end
local border = BORDERS[item.itemid]
if(not border) then
return false
end
local pos, newPos = getCreaturePosition(cid), {}
newPos = pos
newPos.x = pos.x + border.x
newPos.y = pos.y + border.y
if(hasCondition(cid, CONDITION_OUTFIT) and getCreatureOutfit(cid).lookType == outfit.lookType) then
doMoveCreature(cid, border.back)
doRemoveCondition(cid, CONDITION_OUTFIT)
else
if(doTileQueryAdd(cid, pos, 4) ~= RETURNVALUE_NOERROR) then
return false
end
local tmp = getCreaturePosition(cid)
doTeleportThing(cid, newPos)
if(not isPlayerGhost(cid)) then
doSendMagicEffect(tmp, CONST_ME_POFF)
doSendMagicEffect(newPos, CONST_ME_WATERSPLASH)
end
doRemoveConditions(cid, true)
doSetCreatureOutfit(cid, outfit, -1)
end
return true
end

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

×
×
  • Criar Novo...