Ola Pessoal do :XTibia_smile: !!!
Hoje eu consegui um Script de Surf pro meu OT 8.54 que Funciona Bem
So que na hora eu subo no Pokemon mais o poke n se mexe, ele vai pro lado,frente e volta
AKI ESTA MEU SCRIPT:
function onUse(cid, item, frompos, item2, topos)
local configs = {
[4647] = {x = -2, y = 0}, -- 4647 é o id da borda oeste (lado esquerdo do player)
[4645] = {x = 2, y = 0}, -- 4645 é o id da borda leste (lado direito do player)
[4646] = {x = 0, y = 2}, -- 4646 é o id da borda sul (abaixo do player)
[4644] = {x = 0, y = -2}, -- 4644 é o id da borda norte (acima do player)
}
local playerpos = getCreaturePosition(cid)
local pokes = {
["Poliwag"] = {lookType=278, speed = 400},
["Tentacruel"] = {lookType=185, speed = 400},
["Blastoise"] = {lookType=184, speed = 400},
["Dewgong"] = {lookType=183, speed = 400},
["Kabutops"] = {lookType=189, speed = 400},
["Omastar"] = {lookType=188, speed = 400},
["Gyarados"] = {lookType=187, speed = 400},
["Poliwrath"] = {lookType=190, speed = 400},
["Shiny Gyarados"] = {lookType=529, speed = 410},
["Shiny Seadra"] = {lookType=522, speed = 400},
["Shiny Tentacruel"] = {lookType=522, speed = 400},
["Squirtle"] = {lookType=273, speed = 400},
["Shiny Blastoise"] = {lookType=523, speed = 400},
["Wartotle"] = {lookType=275, speed = 400},
['Tentacool'] = {lookType=274, speed = 400},
['Staryu'] = {lookType=266, speed = 400},
['Starmie'] = {lookType=267, speed = 400},
['Golduck'] = {lookType=271, speed = 400},
['Poliwhirl'] = {lookType=137, speed = 400},
['Tentacool'] = {lookType=277, speed = 400},
['Goldeen'] = {lookType=268, speed = 400},
['Seaking'] = {lookType=269, speed = 400},
['Seadra'] = {lookType=270, speed = 400},
['Snorlax'] = {lookType=300, speed = 400},
['Vaporeon'] = {lookType=191, speed = 400}
}
if #getCreatureSummons(cid) <= 0 and getPlayerStorageValue(cid, 63215) <= 0 then
return doPlayerSendCancel(cid, "You need a pokemon to surf.")
end
l = false
for i,x in pairs(pokes) do
if getPlayerStorageValue(cid, 63215) <= 0 and i:lower() == getCreatureName(getCreatureSummons(cid)[1]):lower() then
l = true
end
end
if not l and getPlayerStorageValue(cid, 63215) <= 0 then
return doPlayerSendCancel(cid, "This pokemon can't surf.")
end
if getPlayerStorageValue(cid, 63215) <= 0 then
doTeleportThing(cid, {x=playerpos.x+configs[item2.itemid].x, y=playerpos.y+configs[item2.itemid].y, z=playerpos.z})
setPlayerStorageValue(cid, 63215, 1)
doSetCreatureOutfit(cid, pokes[getCreatureName(getCreatureSummons(cid)[1])], -1)
doCreatureSay(cid, "Let's surf, "..getCreatureName(getCreatureSummons(cid)[1]), 1)
setPlayerStorageValue(cid, 61209, getCreatureMaxHealth(getCreatureSummons(cid)[1]))
setPlayerStorageValue(cid, 61210, getCreatureHealth(getCreatureSummons(cid)[1]))
doChangeSpeed(cid, pokes[getCreatureName(getCreatureSummons(cid)[1])].speed)
doRemoveCreature(getCreatureSummons(cid)[1])
else
doTeleportThing(cid, {x=playerpos.x-configs[item2.itemid].x, y=playerpos.y-configs[item2.itemid].y, z=playerpos.z})
setPlayerStorageValue(cid, 63215, 0)
doRemoveCondition(cid, CONDITION_OUTFIT)
local item = getPokeOutLive(cid)[1]
doCreatureSay(cid, "Im tired of surf, " .. getItemAttribute(item, "poke"):match("This is (.-)'s pokeball."), 1)
pk = doSummonCreature(getItemAttribute(item, "poke"):match("This is (.-)'s pokeball."), getThingPosition(cid))
doConvinceCreature(cid, pk)
registerCreatureEvent(pk, "DiePoke")
registerCreatureEvent(cid, "PlayerPokeDeath")
registerCreatureEvent(cid, "LogoutPoke")
setCreatureMaxHealth(pk, getPlayerStorageValue(cid, 61209))
doCreatureAddHealth(pk, getPlayerStorageValue(cid, 61209))
doCreatureAddHealth(pk, getPlayerStorageValue(cid, 61210)-getPlayerStorageValue(cid, 61209))
doChangeSpeed(cid, getCreatureBaseSpeed(cid)-getCreatureSpeed(cid))
end
return TRUE
end