Ir para conteúdo

[Ajuda] Dive lento depois de passar level


Dextroy

Posts Recomendados

O dive de talkaction (!dive que vai underwater e bota roupa underwater) que utilizo funciona normalmente, mas quando passo de level durante o dive o personagem fica extremamente lento, nem relogar resolve.

 

Alguém sabe como arrumar isso? :S

Link para o comentário
Compartilhar em outros sites

 

function onSay(cid, words, param, channel)

if getPlayerStorageValue(cid,63215) >=1 then
pos = getCreaturePosition(cid)
if pos.z ~= 7 then return false end
npos = {x=pos.x, y=pos.y, z=pos.z + 1}
local grounds = {5405, 5406, 5407, 5408, 5409, 5410}
if (not isInArray(grounds, getTileThingByPos(npos).itemid)) then
return doPlayerSendCancel(cid, "You cannot dive here.")
end
if doTeleportThing(cid, npos) then
doSendMagicEffect(npos, 14)
if getPlayerSex(cid) == 1 then
doSetCreatureOutfit(cid, {lookType = 1034, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, -1)
else
doSetCreatureOutfit(cid, {lookType = 1035, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, -1)
end
setPlayerStorageValue(cid, 632150, 0)
setPlayerStorageValue(cid, 13008, 1)
local item = getPlayerSlotItem(cid, 8)
local pokemon = getItemAttribute(item.uid, "poke")
local x = pokes[pokemon]
if getItemAttribute(item.uid, "nick") then
doCreatureSay(cid, "".."Good job "..getItemAttribute(item.uid, "nick").." !", 1)
else
doCreatureSay(cid, "".."Good job "..getItemAttribute(item.uid, "poke").." !", 1)
end
local pk = getCreatureSummons(cid)[1]
doChangeSpeed(pk, getCreatureSpeed(cid)+1500)
doChangeSpeed(cid, -getCreatureSpeed(cid))
doChangeSpeed(cid, PlayerSpeed+1500)
doTeleportThing(pk, getThingPos(cid), true)
doCreatureSetLookDir(pk, getCreatureLookDir(cid))
adjustStatus(pk, item.uid, true, false, true)
end
else
return doPlayerSendCancel(cid, "You cannot dive here.")
end
return TRUE
end

Ta aí '-'

Link para o comentário
Compartilhar em outros sites

ok vamos la...
abra data/creatuscript/levelup.lua

e altere essa parte:
doRegainSpeed(cid)
doSendMagicEffect(getThingPos(cid), configuracao.efeito[math.random(#configuracao.efeito)])
para:

if not getPlayerStorageValue(cid, 13008) then
doRegainSpeed(cid)
doSendMagicEffect(getThingPos(cid), configuracao.efeito[math.random(#configuracao.efeito)])
else
doChangeSpeed(cid, -getCreatureSpeed(cid))
doChangeSpeed(cid, PlayerSpeed+1500)
return true
end

abra data/creaturescript/login.lua

em baixo de:

if getPlayerStorageValue(cid, 22545) >= 1 then
setPlayerStorageValue(cid, 22545, -1)
doTeleportThing(cid, getClosestFreeTile(cid, posBackGolden), false)
setPlayerRecordWaves(cid)
end
adicione:

if getPlayerStorageValue(cid, 13008) >= 1 then
doChangeSpeed(cid, -getCreatureSpeed(cid))
doChangeSpeed(cid, PlayerSpeed+1500)
return true
end

Editado por GOD Gniu
Link para o comentário
Compartilhar em outros sites

Funciona, mas tava mudando a velocidade mesmo pra quem upa fora d'água.

 

De qualquer modo consegui arrumar com um if da roupa de dive, muito obrigado, não saberia sem sua ajuda =)

Link para o comentário
Compartilhar em outros sites

altera essa parte intaum...

coloca assim:

 

if not getPlayerStorageValue(cid, 13008) >= 1 then
doRegainSpeed(cid)
doSendMagicEffect(getThingPos(cid), configuracao.efeito[math.random(#configuracao.efeito)])
else
doChangeSpeed(cid, -getCreatureSpeed(cid))
doChangeSpeed(cid, PlayerSpeed+1500)
return true
end
Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...