sarioyana,
Para correto funcionamento do código deste post, siga as instruções com exatidão, prestando atenção para salvar as extensões pedidas corretamente.
- Abra o arquivo 050-function.lua com um Bloco de Notas em /data/lib e, no final, adicione o seguinte código:
function isWalkable(position, cid)
position.stackpos = 0
if getTileThingByPos(position).uid ~= 0 then
local tile = getTileInfo(position)
if tile.protection == false and tile.house == false and getTopCreature(position).uid == 0 and doTileQueryAdd(cid, position) == RETURNVALUE_NOERROR then
return true
end
end
return false
end
- Crie um novo arquivo chamado dash.lua em /data/spells/scripts e adicione o seguinte código
function onCastSpell(cid, var)
local direction = getCreatureLookDirection(cid)
local size = 3
local toPosition = getPositionByDirection(getThingPosition(cid), direction, size)
if isWalkable(toPosition, cid) then
doSendMagicEffect(getThingPosition(cid), CONST_ME_POFF)
doTeleportThing(cid, toPosition)
doSendMagicEffect(getThingPosition(cid), CONST_ME_POFF)
else
doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTPOSSIBLE)
end
return true
end
- Abra o arquivo spells.xml e adicione a seguinte linha:
<instant name="Dash" words="dash" lvl="20" mana="18" exhaustion="2000" needlearn="0" event="script" value="dash.lua"/>
Antes de:
</spells>
Reporte no tópico quaisquer resultados.