Galera trago a voces o sistema de order do pokemon svke com 98%
Galera refiz testei e ta otimo ja ta com fly e ride imbutido igual ao skve
-- feito por brun123, editado por glugluguga ultima edição Tiagohells revizado por "Tiagohells" 98%
local nao = {'4820', '4821', '4822', '4823', '4824', '4825', '1395', '1389', '1391', '1393', '460'}
local direction = {'4', '5', '6', '7'}
-- ridefly
local ridefly = {'Crystal Onix', 'Venusaur', 'Ninetales', 'Arcanine', 'Ponyta', 'Rapidash', 'Doduo', 'Dodrio', 'Onix', 'Rhyhorn', 'Tauros', 'Porygon', 'Aerodactyl', 'Dragonite', 'Charizard', 'Pidgeot', 'Fearow', 'Moltres', 'Zapdos', 'Articuno', 'Mew', 'Mewtwo'}
local ride = {'Crystal Onix', 'Venusaur', 'Ninetales', 'Arcanine', 'Ponyta', 'Rapidash', 'Doduo', 'Dodrio', 'Onix', 'Rhyhorn', 'Tauros'}
local fly = {'Porygon', 'Aerodactyl', 'Dragonite', 'Charizard', 'Pidgeot', 'Fearow', 'Zapdos', 'Moltres', 'Articuno', 'Mew', 'Mewtwo'}
local flys = {
[265] = {229, 2300, 350}, -- moltres
[283] = {230, 2100, 350}, -- artic
[199] = {224, 2600, 350}, -- zapdos
[9] = {232, 2200, 525}, -- 1000
[34] = {233, 2200, 525},-- two
[210] = {221, 1300, 410},-- nite
[80] = {222, 900, 375}, -- geot
[17] = {226, 800, 400}, -- fearow
[10] = {227, 1100, 410}, -- aero
[67] = {216, 1000, 410}, -- chari
[97] = {316, 600, 440}, -- porygon
}
local rides = {
[93] = {128, 780, 400}, -- tauros
[114] = {129, 800, 375}, -- kyuubi
[220] = {130, 800, 395}, -- rapid
[16] = {131, 410, 500}, -- ponyta
[77] = {132, 400, 510}, -- rhyhorn
[88] = {12, 900, 390}, -- arcan
[493] = {492, 1000, 360}, -- shiny arca
[496] = {494, 420, 420}, -- shiny vneu
[292] = {293, 480, 430}, -- cristal onix
[248] = {126, 450, 450}, -- onix
[22] = {134, 390, 450}, -- venu
[120] = {133, 750, 380}, -- dodrio
[26] = {135, 420, 500}, -- doduo
}
local bolas = {'2222', '2223', '2224'}
local ultra = {'2220', '2221', '2227'}
local etudao = 9506
local mind = 9507
-- ROCK SMASH
local rocksmash = {'Sandshrew', 'Sandslash', 'Diglett', 'Dugtrio', 'Primeape', 'Machop', 'Machoke', 'Machamp', 'Geodude', 'Graveler', 'Golem' , 'Onix', 'Cubone', 'Marowak', 'Rhyhorn', 'Rhydon', 'Kangaskhan', 'Tauros', 'Snorlax', 'Poliwrath'}
local erockmash = 9502
local cdrocksmash = 5
-- ROCK SMASH
-- DIG
local digholes = {'468', '481', '483'}
local dig = {'Raticate', 'Sandshrew', 'Sandslash', 'Diglett', 'Dugtrio', 'Primeape', 'Machop', 'Machoke', 'Machamp', 'Geodude', 'Graveler', 'Golem' , 'Onix', 'Cubone', 'Marowak', 'Rhyhorn', 'Rhydon', 'Kangaskhan', 'Tauros', 'Snorlax'}
local edig = 9504
local cddig = 5
-- DIG
-- CUT
local cut = {'Raticate', 'Bulbasaur', 'Ivysaur', 'Venusaur', 'Charmeleon', 'Sandshrew', 'Sandslash', 'Gloom', 'Vileplume', 'Paras', 'Parasect', 'Meowth', 'Persian', 'Bellsprout', 'Weepinbell', 'Victreebel', 'Farfetchd', 'Krabby', 'Kingler', 'Exeggutor', 'Cubone', 'Marowak', 'Tangela', 'Scyther', 'Pinsir', 'Charizard'}
local ecut = 9503
local cdcut = 5
-- CUT
-- BLINK
local blink = {'Abra', 'Kadabra', 'Alakazam', 'Porygon'}
local exhaustblink = 9501
local cdblink = 50
-- BLINK
-- LIGHT
local light = {'Abra', 'Kadabra', 'Alakazam', 'Magnemite', 'Magneton', 'Drowzee', 'Hypno', 'Voltorb', 'Electrode', 'Mrmime', 'Electabuzz', 'Jolteon', 'Porygon', 'Pikachu', 'Raichu'}
local exhautStorage = 9500
local time = 600
local cd = 17
-- LIGHT
function onUse(cid, item, frompos, item2, topos)
if getPlayerItemCount(cid, item2.itemid) >= 1 then
return false
end
if exhaustion.get(cid, etudao) then
doPlayerSendCancel(cid, "Please wait a few seconds before using order again!")
return true
end
if isMonster(item2.uid) and item2.uid ~= getCreatureSummons(cid)[1] and item2.uid ~= cid then
if #getCreatureSummons(cid) == 0 then
doPlayerSendCancel(cid, "You need a pokemon to use order.")
return true
end
if exhaustion.get(cid, mind) then
doPlayerSendCancel(cid, "Your pokemon is too exhausted from the last control, this ability has 2 minutes cooldown.")
return true
end
if isPlayer(getCreatureMaster(item2.uid)) then
doPlayerSendCancel(cid, "You cant control the mind of someone's else pokemon.")
return true
end
if not isInArray({"Alakazam", "Tentacruel", "Gengar"}, getCreatureName(getCreatureSummons(cid)[1])) then
doPlayerSendCancel(cid, "This pokemon cant control minds.")
return true
end
exhaustion.set(cid, mind, 240)
doCreatureSay(getCreatureSummons(cid)[1], "CONTROL MIND!", TALKTYPE_MONSTER)
doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(item2.uid), 39)
registerCreatureEvent(item2.uid, "Controled")
doSendMagicEffect(getThingPos(item2.uid), 136)
doSendMagicEffect(getThingPos(item2.uid), 134)
doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 133)
setPlayerStorageValue(cid, 61209, getCreatureMaxHealth(getCreatureSummons(cid)[1]))
setPlayerStorageValue(cid, 61210, getCreatureHealth(getCreatureSummons(cid)[1]))
doConvinceCreature(cid, item2.uid)
if getCreatureSpeed(item2.uid) == 0 then
doChangeSpeed(item2.uid, 180)
end
doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", control "..string.lower(getCreatureName(item2.uid)).."'s mind!", 1)
local cmed = item2.uid
local cmname = getCreatureName(getCreatureSummons(cid)[1])
local cmpos = getThingPos(getCreatureSummons(cid)[1])
doRemoveCreature(getCreatureSummons(cid)[1])
local cmzao = doSummonCreature(""..cmname.." cm", cmpos)
doConvinceCreature(cid, cmzao)
setPlayerStorageValue(cid, 888, 1)
local function check(params)
if isCreature(params.cid) then
if getPlayerStorageValue(params.cid, 888) <= 0 then
return true
end
if not isCreature(cmed) then
local pkcmpos = getThingPos(getCreatureSummons(cid)[1])
doRemoveCreature(getCreatureSummons(cid)[1])
local item = getPlayerSlotItem(cid, 8)
local pk = doSummonCreature(getItemAttribute(item.uid, "poke"):match("This is (.-)'s pokeball."), pkcmpos)
doConvinceCreature(cid, pk)
doCreatureSetLookDir(getCreatureSummons(cid)[1], 2)
registerCreatureEvent(pk, "DiePoke")
registerCreatureEvent(pk, "Exp")
registerCreatureEvent(cid, "PlayerPokeDeath")
setCreatureMaxHealth(pk, (getPlayerStorageValue(cid, 61209)))
doCreatureAddHealth(pk, (getPlayerStorageValue(cid, 61209)))
doCreatureAddHealth(pk, (getPlayerStorageValue(cid, 61210))-(getPlayerStorageValue(cid, 61209)))
setPlayerStorageValue(cid, 888, 0)
end
if params.rod == 20 then
local lifecmed = getCreatureMaxHealth(cmed) - getCreatureHealth(cmed)
local poscmed = getThingPos(cmed)
local cmeddir = getCreatureLookDir(cmed)
local namecmed = getCreatureName(cmed)
doRemoveCreature(getCreatureSummons(cid)[1])
local back = doSummonCreature(""..namecmed.." s", poscmed)
if getCreatureSpeed(back) == 0 then
doChangeSpeed(back, 180)
end
doCreatureSetLookDir(back, cmeddir)
doCreatureAddHealth(back, -lifecmed)
local item = getPlayerSlotItem(cid, 8)
local mynewpos = getThingPos(getCreatureSummons(cid)[1])
doRemoveCreature(getCreatureSummons(cid)[1])
pk = doSummonCreature(getItemAttribute(item.uid, "poke"):match("This is (.-)'s pokeball."), mynewpos)
doConvinceCreature(cid, pk)
doCreatureSetLookDir(getCreatureSummons(cid)[1], 2)
registerCreatureEvent(pk, "DiePoke")
registerCreatureEvent(pk, "Exp")
registerCreatureEvent(cid, "PlayerPokeDeath")
setCreatureMaxHealth(pk, (getPlayerStorageValue(cid, 61209)))
doCreatureAddHealth(pk, (getPlayerStorageValue(cid, 61209)))
doCreatureAddHealth(pk, (getPlayerStorageValue(cid, 61210))-(getPlayerStorageValue(cid, 61209)))
setPlayerStorageValue(cid, 888, 0)
else
doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 220)
end
end
end
for rod = 1, 20 do
addEvent(check, rod*500, {cid = cid, rod = rod})
end
return true
end
if item2.uid == cid then
if getPlayerStorageValue(cid, 888) >= 1 then
doPlayerSendCancel(cid, "You cant fly neither ride pokemons being controled.")
return true
end
if #getCreatureSummons(cid) == 0 and getPlayerStorageValue(cid, 17000) <= 0 and getPlayerStorageValue(cid, 17001) <= 0 then
doPlayerSendCancel(cid, "You need a pokemon to use order.")
return true
end
if getPlayerStorageValue(cid, 17000) <= 0 and getPlayerStorageValue(cid, 17001) <= 0 and not isInArray(ridefly, getCreatureName(getCreatureSummons(cid)[1])) then
doPlayerSendCancel(cid, "You can't ride this pokemon nor fly with it.")
return true
end
if getPlayerStorageValue(cid, 17000) <= 0 and getPlayerStorageValue(cid, 17001) <= 0 and getCreatureSpeed(getCreatureSummons(cid)[1]) == 0 then
return true
end
if getPlayerStorageValue(cid, 17001) <= 0 and getPlayerStorageValue(cid, 17000) <= 0 and isInArray(ride, getCreatureName(getCreatureSummons(cid)[1])) then
local pokemon = rides[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType]
if getCreatureSpeed(getCreatureSummons(cid)[1]) >= 1 then
doChangeSpeed(getCreatureSummons(cid)[1], -getCreatureSpeed(getCreatureSummons(cid)[1]))
end
local function ride(params)
if isCreature(params.cid) then
if isCreature(getCreatureSummons(params.cid)[1]) then
if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(cid)) <= params.d then
doChangeSpeed(cid, -250)
doChangeSpeed(cid, pokemon[2])
exhaustion.set(cid, etudao, 4)
setPlayerStorageValue(cid, 17001, 1)
doSetCreatureOutfit(cid, {lookType = pokemon[1], lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, -1)
setPlayerStorageValue(cid, 61209, getCreatureMaxHealth(getCreatureSummons(cid)[1]))
setPlayerStorageValue(cid, 61210, getCreatureHealth(getCreatureSummons(cid)[1]))
doRemoveCreature(getCreatureSummons(cid)[1])
else
dirh = getDirectionTo(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(params.cid))
if dirh == NORTHWEST then
if math.random(1,100) >= 51 then
dirh = NORTH
else
dirh = WEST
end
elseif dirh == SOUTHWEST then
if math.random(1,100) >= 51 then
dirh = SOUTH
else
dirh = WEST
end
elseif dirh == SOUTHEAST then
if math.random(1,100) >= 51 then
dirh = SOUTH
else
dirh = EAST
end
elseif dirh == NORTHEAST then
if math.random(1,100) >= 51 then
dirh = NORTH
else
dirh = EAST
end
end
local dirh = dirh
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then
doChangeSpeed(getCreatureSummons(params.cid)[1], getCreatureBaseSpeed(getCreatureSummons(cid)[1]))
doPushCreature(getCreatureSummons(params.cid)[1], dirh, 1, 0)
doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(cid)[1]))
else
doPushCreature(getCreatureSummons(params.cid)[1], dirh, 1, 0)
doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(cid)[1]))
end
end
end
end
end
local function speed(params)
if isCreature(params.cid) then
if isCreature(getCreatureSummons(params.cid)[1]) then
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then
doChangeSpeed(getCreatureSummons(params.cid)[1], getCreatureBaseSpeed(getCreatureSummons(cid)[1]))
end
end
end
end
doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", let me ride you!", 1)
exhaustion.set(cid, etudao, 4)
if getPlayerGroupId(cid) >= 2 and getPlayerGroupId(cid) <= 6 then
distanc = 1
else
distanc = 0
end
local distance = distanc
for i=1,12 do
addEvent(ride, pokemon[3]*i, {cid = cid, d = distance})
addEvent(speed, ((pokemon[3]*12)+100), {cid = cid})
end
return true
end
if getPlayerStorageValue(cid, 17001) >= 1 then
setPlayerStorageValue(cid, 17001, 0)
if getPlayerGroupId(cid) ~= 6 then
setPlayerGroupId(cid, 8)
end
doCreatureSetLookDir(cid, 2)
doChangeSpeed(cid, -(getCreatureSpeed(cid)))
if getPlayerGroupId(cid) >= 2 and getPlayerGroupId(cid) <= 7 then
doChangeSpeed(cid, 400*getPlayerGroupId(cid))
else
doChangeSpeed(cid, 250)
end
doRemoveCondition(cid, CONDITION_OUTFIT)
local item = getPlayerSlotItem(cid, 8)
doCreatureSay(cid, "" .. getItemAttribute(item.uid, "poke"):match("This is (.-)'s pokeball.")..", let me get down!", 1)
doSummonMonster(cid, getItemAttribute(item.uid, "poke"):match("This is (.-)'s pokeball."))
local pk = getCreatureSummons(cid)[1]
registerCreatureEvent(cid, "PlayerPokeDeath")
registerCreatureEvent(pk, "DiePoke")
registerCreatureEvent(pk, "Exp")
setCreatureMaxHealth(pk, (getPlayerStorageValue(cid, 61209)))
doCreatureAddHealth(pk, (getPlayerStorageValue(cid, 61209)))
doCreatureAddHealth(pk, (getPlayerStorageValue(cid, 61210))-(getPlayerStorageValue(cid, 61209)))
return true
end
if getPlayerStorageValue(cid, 17000) >= 1 then
if isInArray({460, 1022, 1023}, getTileInfo(getThingPos(cid)).itemid) then
doPlayerSendCancel(cid, "You can\'t stop flying at this height!")
return true
end
if getTileInfo(getThingPos(cid)).itemid >= 4820 and getTileInfo(getThingPos(cid)).itemid <= 4825 then
doPlayerSendCancel(cid, "You can\'t stop flying above the water!")
return true
end
if getPlayerGroupId(cid) ~= 6 then
setPlayerGroupId(cid, 8)
end
doCreatureSetLookDir(cid, 2)
setPlayerStorageValue(cid, 17000, 0)
doChangeSpeed(cid, -(getCreatureSpeed(cid)))
if getPlayerGroupId(cid) >= 2 and getPlayerGroupId(cid) <= 7 then
doChangeSpeed(cid, 200*getPlayerGroupId(cid))
else
doChangeSpeed(cid, 250)
end
doRemoveCondition(cid, CONDITION_OUTFIT)
local item = getPlayerSlotItem(cid, 8)
doCreatureSay(cid, "" .. getItemAttribute(item.uid, "poke"):match("This is (.-)'s pokeball.")..", let me get down!", 1)
doSummonMonster(cid, getItemAttribute(item.uid, "poke"):match("This is (.-)'s pokeball."))
local pk = getCreatureSummons(cid)[1]
registerCreatureEvent(cid, "PlayerPokeDeath")
registerCreatureEvent(pk, "DiePoke")
registerCreatureEvent(pk, "Exp")
setCreatureMaxHealth(pk, (getPlayerStorageValue(cid, 61209)))
doCreatureAddHealth(pk, (getPlayerStorageValue(cid, 61209)))
doCreatureAddHealth(pk, (getPlayerStorageValue(cid, 61210))-(getPlayerStorageValue(cid, 61209)))
return true
end
if getPlayerStorageValue(cid, 17000) <= 0 and getPlayerStorageValue(cid, 17001) <= 0 and isInArray(fly, getCreatureName(getCreatureSummons(cid)[1])) then
if getPlayerStorageValue(cid, 17000) <= 0 then
local pokemon = flys[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType]
local function fly(params)
if isCreature(params.cid) then
if isCreature(getCreatureSummons(params.cid)[1]) then
if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(cid)) <= params.dd then
doPlayerSendTextMessage(cid,27, "Type \"up\" or \"h1\" to fly higher and \"down\" or \"h2\" to fly lower." )
setPlayerStorageValue(cid, 61209, getCreatureMaxHealth(getCreatureSummons(cid)[1]))
setPlayerStorageValue(cid, 61210, getCreatureHealth(getCreatureSummons(cid)[1]))
setPlayerStorageValue(cid, 17000, 1)
registerCreatureEvent(cid, "Flying")
doChangeSpeed(cid, -250)
doChangeSpeed(cid, pokemon[2])
exhaustion.set(cid, etudao, 4)
doSetCreatureOutfit(cid, {lookType = pokemon[1], lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, -1)
doRemoveCreature(getCreatureSummons(cid)[1])
else
dir = getDirectionTo(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(params.cid))
if dir == NORTHWEST then
if math.random(1,100) >= 51 then
dir = NORTH
else
dir = WEST
end
elseif dir == SOUTHWEST then
if math.random(1,100) >= 51 then
dir = SOUTH
else
dir = WEST
end
elseif dir == SOUTHEAST then
if math.random(1,100) >= 51 then
dir = SOUTH
else
dir = EAST
end
elseif dir == NORTHEAST then
if math.random(1,100) >= 51 then
dir = NORTH
else
dir = EAST
end
end
local dir = dir
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then
doChangeSpeed(getCreatureSummons(params.cid)[1], getCreatureBaseSpeed(getCreatureSummons(cid)[1]))
doPushCreature(getCreatureSummons(params.cid)[1], dir, 1, 0)
doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(cid)[1]))
else
doPushCreature(getCreatureSummons(params.cid)[1], dir, 1, 0)
doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(cid)[1]))
end
end
end
end
end
local function speed(params)
if isCreature(params.cid) then
if isCreature(getCreatureSummons(params.cid)[1]) then
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then
doChangeSpeed(getCreatureSummons(params.cid)[1], getCreatureBaseSpeed(getCreatureSummons(cid)[1]))
end
end
end
end
doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", lets fly!", 1)
exhaustion.set(cid, etudao, 4)
if getPlayerGroupId(cid) >= 2 and getPlayerGroupId(cid) <= 6 then
distancc = 1
else
distancc = 0
end
local distancee = distancc
for i=1,12 do
addEvent(fly, pokemon[3]*i, {cid = cid, dd = distancee})
addEvent(speed, ((pokemon[3]*12)+100), {cid = cid})
end
return true
end
return true
end
end
-- ROCK SMASH
if item2.itemid == 1285 and getPlayerStorageValue(cid, 63215) <= 0 then
if #getCreatureSummons(cid) == 0 then
doPlayerSendCancel(cid, "You need a pokemon to use rock smash.")
return true
end
if not isInArray(rocksmash, getCreatureName(getCreatureSummons(cid)[1])) then
doPlayerSendCancel(cid, "This pokemon can't use rock smash.")
return true
end
if isInArray(rocksmash, getCreatureName(getCreatureSummons(cid)[1])) then
if exhaustion.get(cid, erocksmash) then
doPlayerSendCancel(cid, "Please wait a few seconds before using rock smash again!")
return true
end
if getCreatureSpeed(getCreatureSummons(cid)[1]) == 0 then
return true
end
doChangeSpeed(getCreatureSummons(cid)[1], -getCreatureSpeed(getCreatureSummons(cid)[1]))
local function tocut(params)
if isCreature(params.cid) then
if isCreature(getCreatureSummons(params.cid)[1]) then
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) >= 1 then
return true
end
if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 100) >= 1 then
return true
end
if getDistanceBetween(getThingPos(getCreatureSummons(params.cid)[1]), topos) == 1 then
doSendMagicEffect(topos, 118)
doTransformItem(getTileItemById(topos, 1285).uid, 2257)
exhaustion.set(cid, erocksmash, cdrocksmash)
setPlayerStorageValue(getCreatureSummons(params.cid)[1], 100, 1)
local function detrans(params)
doTransformItem(getTileItemById(topos, 2257).uid, 1285)
if isCreature(getCreatureSummons(params.ciddd)[1]) then
setPlayerStorageValue(getCreatureSummons(params.ciddd)[1], 100, 0)
end
end
addEvent(detrans, 5500, {ciddd = cid})
doCreatureSay(getCreatureSummons(cid)[1], "ROCK SMASH!", TALKTYPE_MONSTER)
local function nmr(params)
if isCreature(params.cid) then
if isCreature(getCreatureSummons(params.cid)[1]) then
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then
doChangeSpeed(getCreatureSummons(params.cid)[1], getCreatureBaseSpeed(getCreatureSummons(params.cid)[1]))
end
end
end
end
addEvent(nmr, 400, {cid = cid})
else
local badire = getDirectionTo(getThingPos(getCreatureSummons(cid)[1]), topos)
if badire == NORTHWEST then
if math.random(1,100) >= 51 then
badire = NORTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), badire), params.ccid, 0, 0) then
badire = NORTH
else
badire = WEST
end
else
badire = WEST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), badire), params.ccid, 0, 0) then
badire = WEST
else
badire = NORTH
end
end
elseif badire == SOUTHWEST then
if math.random(1,100) >= 51 then
badire = SOUTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), badire), params.ccid, 0, 0) then
badire = SOUTH
else
badire = WEST
end
else
badire = WEST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), badire), params.ccid, 0, 0) then
badire = WEST
else
badire = SOUTH
end
end
elseif badire == SOUTHEAST then
if math.random(1,100) >= 51 then
badire = SOUTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), badire), params.ccid, 0, 0) then
badire = SOUTH
else
badire = EAST
end
else
badire = EAST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), badire), params.ccid, 0, 0) then
badire = EAST
else
badire = SOUTH
end
end
elseif badire == NORTHEAST then
if math.random(1,100) >= 51 then
badire = NORTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), badire), params.ccid, 0, 0) then
badire = NORTH
else
badire = EAST
end
else
badire = EAST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), badire), params.ccid, 0, 0) then
badire = EAST
else
badire = NORTH
end
end
end
local badire = badire
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then
doChangeSpeed(getCreatureSummons(params.cid)[1], getCreatureBaseSpeed(getCreatureSummons(params.cid)[1]))
doPushCreature(getCreatureSummons(params.cid)[1], badire, 1, 0)
doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(params.cid)[1]))
else
doPushCreature(getCreatureSummons(params.cid)[1], badire, 1, 0)
doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(params.cid)[1]))
end
end
end
end
end
doPlayerSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", smash this rock!", 1)
local speed = getCreatureBaseSpeed(getCreatureSummons(cid)[1])
local temk = 1000 -(2.3 * speed)
addEvent(tocut, 0, {cid = cid, ccid = getCreatureSummons(cid)[1], topos = topos})
for i = 1, getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), topos) * 2 do
addEvent(tocut, temk*i, {cid = cid, ccid = getCreatureSummons(cid)[1], topos = topos})
end
return true
end
end
-- ROCK SMASH END
-- CUT
if item2.itemid == 2767 and getPlayerStorageValue(cid, 63215) <= 0 then
if #getCreatureSummons(cid) == 0 then
doPlayerSendCancel(cid, "You need a pokemon to use cut.")
return true
end
if not isInArray(cut, getCreatureName(getCreatureSummons(cid)[1])) then
doPlayerSendCancel(cid, "This pokemon can't use cut.")
return true
end
if isInArray(cut, getCreatureName(getCreatureSummons(cid)[1])) then
if exhaustion.get(cid, ecut) then
doPlayerSendCancel(cid, "Please wait a few seconds before using cut again!")
return true
end
if getCreatureSpeed(getCreatureSummons(cid)[1]) == 0 then
return true
end
doChangeSpeed(getCreatureSummons(cid)[1], -getCreatureSpeed(getCreatureSummons(cid)[1]))
local function tocut(params)
if isCreature(params.cid) then
if isCreature(getCreatureSummons(params.cid)[1]) then
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) >= 1 then
return true
end
if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 101) >= 1 then
return true
end
if getDistanceBetween(getThingPos(getCreatureSummons(params.cid)[1]), topos) == 1 then
doSendMagicEffect(topos, 141)
doTransformItem(getTileItemById(topos, 2767).uid, 6216)
exhaustion.set(cid, ecut, cdcut)
setPlayerStorageValue(getCreatureSummons(params.cid)[1], 101, 1)
local function detrans(params)
doTransformItem(getTileItemById(topos, 6216).uid, 2767)
if isCreature(getCreatureSummons(params.ciddd)[1]) then
setPlayerStorageValue(getCreatureSummons(params.ciddd)[1], 101, 0)
end
end
addEvent(detrans, 5500, {ciddd = cid})
doCreatureSay(getCreatureSummons(cid)[1], "CUT!", TALKTYPE_MONSTER)
local function nmr(params)
if isCreature(params.cid) then
if isCreature(getCreatureSummons(params.cid)[1]) then
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then
doChangeSpeed(getCreatureSummons(params.cid)[1], getCreatureBaseSpeed(getCreatureSummons(params.cid)[1]))
end
end
end
end
addEvent(nmr, 400, {cid = cid})
else
adire = getDirectionTo(getThingPos(getCreatureSummons(cid)[1]), topos)
if adire == NORTHWEST then
if math.random(1,100) >= 51 then
adire = NORTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), adire), params.ccid, 0, 0) then
adire = NORTH
else
adire = WEST
end
else
adire = WEST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), adire), params.ccid, 0, 0) then
adire = WEST
else
adire = NORTH
end
end
elseif adire == SOUTHWEST then
if math.random(1,100) >= 51 then
adire = SOUTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), adire), params.ccid, 0, 0) then
adire = SOUTH
else
adire = WEST
end
else
adire = WEST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), adire), params.ccid, 0, 0) then
adire = WEST
else
adire = SOUTH
end
end
elseif adire == SOUTHEAST then
if math.random(1,100) >= 51 then
adire = SOUTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), adire), params.ccid, 0, 0) then
adire = SOUTH
else
adire = EAST
end
else
adire = EAST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), adire), params.ccid, 0, 0) then
adire = EAST
else
adire = SOUTH
end
end
elseif adire == NORTHEAST then
if math.random(1,100) >= 51 then
adire = NORTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), adire), params.ccid, 0, 0) then
adire = NORTH
else
adire = EAST
end
else
adire = EAST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), adire), params.ccid, 0, 0) then
adire = EAST
else
adire = NORTH
end
end
end
local adire = adire
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then
doChangeSpeed(getCreatureSummons(params.cid)[1], getCreatureBaseSpeed(getCreatureSummons(params.cid)[1]))
doPushCreature(getCreatureSummons(params.cid)[1], adire, 1, 0)
doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(params.cid)[1]))
else
doPushCreature(getCreatureSummons(params.cid)[1], adire, 1, 0)
doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(params.cid)[1]))
end
end
end
end
end
doPlayerSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", cut this bush!", 1)
local speed = getCreatureBaseSpeed(getCreatureSummons(cid)[1])
temk = 1000 -(2.3 * speed)
addEvent(tocut, 0, {cid = cid, ccid = getCreatureSummons(cid)[1], topos = topos})
for i = 1, getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), topos) * 2 do
addEvent(tocut, temk*i, {cid = cid, ccid = getCreatureSummons(cid)[1], topos = topos})
end
return true
end
end
-- CUT END
-- DIG
if isInArray(digholes, item2.itemid) and getPlayerStorageValue(cid, 63215) <= 0 then
if #getCreatureSummons(cid) == 0 then
doPlayerSendCancel(cid, "You need a pokemon to use dig.")
return true
end
if not isInArray(dig, getCreatureName(getCreatureSummons(cid)[1])) then
doPlayerSendCancel(cid, "This pokemon can't use dig.")
return true
end
if isInArray(dig, getCreatureName(getCreatureSummons(cid)[1])) then
if exhaustion.get(cid, edig) then
doPlayerSendCancel(cid, "Please wait a few seconds before using dig again!")
return true
end
if getCreatureSpeed(getCreatureSummons(cid)[1]) == 0 then
return true
end
doChangeSpeed(getCreatureSummons(cid)[1], -getCreatureSpeed(getCreatureSummons(cid)[1]))
local function tocut(params)
if isCreature(params.cid) then
if isCreature(getCreatureSummons(params.cid)[1]) then
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) >= 1 then
return true
end
if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 99) >= 1 then
return true
end
if getDistanceBetween(getThingPos(getCreatureSummons(params.cid)[1]), topos) == 1 then
doSendMagicEffect(topos, 3)
setPlayerStorageValue(getCreatureSummons(params.cid)[1], 99, 1)
doTransformItem(getTileItemById(topos, item2.itemid).uid, item2.itemid+1)
exhaustion.set(cid, edig, cddig)
local function detrans(params)
doTransformItem(getTileItemById(topos, item2.itemid+1).uid, item2.itemid)
if isCreature(getCreatureSummons(params.ciddd)[1]) then
setPlayerStorageValue(getCreatureSummons(params.ciddd)[1], 99, 0)
end
end
addEvent(detrans, 5500, {ciddd = cid})
doCreatureSay(getCreatureSummons(cid)[1], "DIG!", TALKTYPE_MONSTER)
local function nmr(params)
if isCreature(params.cid) then
if isCreature(getCreatureSummons(params.cid)[1]) then
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then
doChangeSpeed(getCreatureSummons(params.cid)[1], getCreatureBaseSpeed(getCreatureSummons(params.cid)[1]))
end
end
end
end
addEvent(nmr, 400, {cid = cid})
else
local cdire = getDirectionTo(getThingPos(getCreatureSummons(cid)[1]), topos)
if cdire == NORTHWEST then
if math.random(1,100) >= 51 then
cdire = NORTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), cdire), params.ccid, 0, 0) then
cdire = NORTH
else
cdire = WEST
end
else
cdire = WEST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), cdire), params.ccid, 0, 0) then
cdire = WEST
else
cdire = NORTH
end
end
elseif cdire == SOUTHWEST then
if math.random(1,100) >= 51 then
cdire = SOUTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), cdire), params.ccid, 0, 0) then
cdire = SOUTH
else
cdire = WEST
end
else
cdire = WEST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), cdire), params.ccid, 0, 0) then
cdire = WEST
else
cdire = SOUTH
end
end
elseif cdire == SOUTHEAST then
if math.random(1,100) >= 51 then
cdire = SOUTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), cdire), params.ccid, 0, 0) then
cdire = SOUTH
else
cdire = EAST
end
else
cdire = EAST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), cdire), params.ccid, 0, 0) then
cdire = EAST
else
cdire = SOUTH
end
end
elseif cdire == NORTHEAST then
if math.random(1,100) >= 51 then
cdire = NORTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), cdire), params.ccid, 0, 0) then
cdire = NORTH
else
cdire = EAST
end
else
cdire = EAST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), cdire), params.ccid, 0, 0) then
cdire = EAST
else
cdire = NORTH
end
end
end
local cdire = cdire
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then
doChangeSpeed(getCreatureSummons(params.cid)[1], getCreatureBaseSpeed(getCreatureSummons(params.cid)[1]))
doPushCreature(getCreatureSummons(params.cid)[1], cdire, 1, 0)
doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(params.cid)[1]))
else
doPushCreature(getCreatureSummons(params.cid)[1], cdire, 1, 0)
doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(params.cid)[1]))
end
end
end
end
end
doPlayerSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", open this hole!", 1)
local speed = getCreatureBaseSpeed(getCreatureSummons(cid)[1])
temk = 1000 -(2.3 * speed)
addEvent(tocut, 0, {cid = cid, ccid = getCreatureSummons(cid)[1], topos = topos})
for i = 1, getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), topos) * 2 do
addEvent(tocut, temk*i, {cid = cid, ccid = getCreatureSummons(cid)[1], topos = topos})
end
return true
end
end
-- DIG END
-- BLINK
if #getCreatureSummons(cid) == 0 and getPlayerStorageValue(cid, 63215) <= 0 and getPlayerStorageValue(cid, 17000) <= 0 then
doPlayerSendCancel(cid, "You need a pokemon to use order.")
return true
end
if not isMonster(item2.uid) and getPlayerStorageValue(cid, 63215) <= 0 and getPlayerStorageValue(cid, 17000) <= 0 then
if isInArray(blink, getCreatureName(getCreatureSummons(cid)[1])) then
if exhaustion.get(cid, exhaustblink) then
if getCreatureSpeed(getCreatureSummons(cid)[1]) == 0 then
doPlayerSendCancel(cid, "You can\'t order your pokemon to move now.")
return true
end
doPlayerSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", move!", 1)
doChangeSpeed(getCreatureSummons(cid)[1], -getCreatureSpeed(getCreatureSummons(cid)[1]))
setPlayerStorageValue(getCreatureSummons(cid)[1], 12, 1)
local function move(params)
if isCreature(params.cid) then
if isCreature(getCreatureSummons(params.cid)[1]) then
if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 12) == 0 then
return true
end
if getDistanceBetween(getThingPos(getCreatureSummons(params.cid)[1]), topos) == 0 then
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then
local function speeed(params)
if isCreature(params.sum) then
if getCreatureSpeed(params.sum) == 0 then
doChangeSpeed(params.sum, getCreatureBaseSpeed(params.sum))
end
end
end
addEvent(speeed, 600, {sum = getCreatureSummons(params.cid)[1]})
end
setPlayerStorageValue(getCreatureSummons(params.cid)[1], 12, 0)
return true
end
local edire = getDirectionTo(getThingPos(getCreatureSummons(cid)[1]), params.topos)
if edire >= 0 and edire <= 7 then
if edire == NORTHWEST then
if math.random(1,100) >= 51 then
edire = NORTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), edire), params.ccid, 0, 0) then
edire = NORTH
else
edire = WEST
end
else
edire = WEST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), edire), params.ccid, 0, 0) then
edire = WEST
else
edire = NORTH
end
end
elseif edire == SOUTHWEST then
if math.random(1,100) >= 51 then
edire = SOUTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), edire), params.ccid, 0, 0) then
edire = SOUTH
else
edire = WEST
end
else
edire = WEST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), edire), params.ccid, 0, 0) then
edire = WEST
else
edire = SOUTH
end
end
elseif edire == SOUTHEAST then
if math.random(1,100) >= 51 then
edire = SOUTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), edire), params.ccid, 0, 0) then
edire = SOUTH
else
edire = EAST
end
else
edire = EAST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), edire), params.ccid, 0, 0) then
edire = EAST
else
edire = SOUTH
end
end
elseif edire == NORTHEAST then
if math.random(1,100) >= 51 then
edire = NORTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), edire), params.ccid, 0, 0) then
edire = NORTH
else
edire = EAST
end
else
edire = EAST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), edire), params.ccid, 0, 0) then
edire = EAST
else
edire = NORTH
end
end
end
local edire = edire
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then
doChangeSpeed(getCreatureSummons(params.cid)[1], getCreatureBaseSpeed(getCreatureSummons(params.cid)[1]))
doPushCreature(getCreatureSummons(params.cid)[1], edire, 1, 0)
doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(params.cid)[1]))
else
doPushCreature(getCreatureSummons(params.cid)[1], edire, 1, 0)
doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(params.cid)[1]))
end
end
end
end
end
local function voltarnormal(params)
if isCreature(params.cid) then
if isCreature(getCreatureSummons(params.cid)[1]) then
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then
local function speeed(params)
if isCreature(params.sum) then
doChangeSpeed(params.sum, getCreatureBaseSpeed(params.sum))
end
end
addEvent(speeed, 0, {sum = getCreatureSummons(params.cid)[1]})
end
setPlayerStorageValue(getCreatureSummons(params.cid)[1], 12, 0)
end
end
end
local pois = getThingPos(item2.uid)
local speed = getCreatureBaseSpeed(getCreatureSummons(cid)[1])
local temk = 1000 -(2.3 * speed)
local SumPos = getThingPos(getCreatureSummons(cid)[1])
local travelx = math.abs((topos.x) - (SumPos.x))
local travely = math.abs((topos.y) - (SumPos.y))
local travel = ((travelx) + (travely))
addEvent(move, 0, {cid = cid, ccid = getCreatureSummons(cid)[1], topos = pois, item2 = item2.uid})
for i = 1, travel do
addEvent(move, temk*i, {cid = cid, ccid = getCreatureSummons(cid)[1], topos = pois, item2 = item2.uid})
end
addEvent(voltarnormal, temk * travel, {cid = cid})
exhaustion.set(cid, etudao, travel)
else
if not isWalkable(topos, cid, 0, 0) then
doPlayerSendCancel(cid, "Your pokemon cannot teleport there.")
return true
end
if getItemName(item2.uid) == "shallow water" then
doPlayerSendCancel(cid, "Your pokemon cannot teleport there.")
return true
end
doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), topos, 39)
doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 211)
doTeleportThing(getCreatureSummons(cid)[1], topos, false)
doSendMagicEffect(topos, 134)
doPlayerSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", teleport there!", 1)
doCreatureSay(getCreatureSummons(cid)[1], "BLINK!", TALKTYPE_MONSTER)
exhaustion.set(cid, exhaustblink, cdblink)
return true
end
return true
end
end
--- BLINK END
-- LIGHT --
if isCreature(item2.uid) and getCreatureMaster(item2.uid) == cid and getPlayerStorageValue(cid, 63215) <= 0 and getPlayerStorageValue(cid, 17000) <= 0 and item2.uid ~= cid then
if not isInArray(light, getCreatureName(getCreatureSummons(cid)[1])) then
doPlayerSendCancel(cid, "This pokemon can't use flash.")
return true
end
if isInArray(light, getCreatureName(getCreatureSummons(cid)[1])) then
if not isMonster(item2.uid) and getCreatureMaster(item2.uid) ~= cid then
return doPlayerSendCancel(cid,"Please use flash on your pokemon.")
end
if exhaustion.get(cid, exhautStorage) then
doPlayerSendCancel(cid,"Please wait a few seconds before using flash again!")
return true
end
exhaustion.set(cid, exhautStorage, cd)
doPlayerSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use flash!", 1)
doCreatureSay(getCreatureSummons(cid)[1], "FLASH!", TALKTYPE_MONSTER)
doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 28)
doSetCreatureLight(getCreatureSummons(cid)[1], 8, 215, time*1000)
return true
end
end
-- LIGHT END --
if #getCreatureSummons(cid) == 0 then
return true
end
if getCreatureSpeed(getCreatureSummons(cid)[1]) == 0 then
doPlayerSendCancel(cid, "You can\'t order your pokemon to move now.")
return true
end
if getPlayerStorageValue(getCreatureSummons(cid)[1], 12) == 1 then
doPlayerSendCancel(cid, "You can\'t order your pokemon to move now.")
return true
end
doPlayerSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", move!", 1)
doChangeSpeed(getCreatureSummons(cid)[1], -getCreatureSpeed(getCreatureSummons(cid)[1]))
setPlayerStorageValue(getCreatureSummons(cid)[1], 12, 1)
local function move(params)
if isCreature(params.cid) then
if isCreature(getCreatureSummons(params.cid)[1]) then
if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 12) == 0 then
return true
end
if getDistanceBetween(getThingPos(getCreatureSummons(params.cid)[1]), topos) == 0 then
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then
local function speeed(params)
if isCreature(params.sum) then
if getCreatureSpeed(params.sum) == 0 then
doChangeSpeed(params.sum, getCreatureBaseSpeed(params.sum))
end
end
end
addEvent(speeed, 600, {sum = getCreatureSummons(params.cid)[1]})
end
setPlayerStorageValue(getCreatureSummons(params.cid)[1], 12, 0)
setPlayerStorageValue(cid, etudao, -1)
return true
end
local dire = getDirectionTo(getThingPos(getCreatureSummons(cid)[1]), params.topos)
if dire >= 0 and dire <= 7 then
if dire == NORTHWEST then
if math.random(1,100) >= 51 then
dire = NORTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), dire), params.ccid, 0, 0) then
dire = NORTH
else
dire = WEST
end
else
dire = WEST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), dire), params.ccid, 0, 0) then
dire = WEST
else
dire = NORTH
end
end
elseif dire == SOUTHWEST then
if math.random(1,100) >= 51 then
dire = SOUTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), dire), params.ccid, 0, 0) then
dire = SOUTH
else
dire = WEST
end
else
dire = WEST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), dire), params.ccid, 0, 0) then
dire = WEST
else
dire = SOUTH
end
end
elseif dire == SOUTHEAST then
if math.random(1,100) >= 51 then
dire = SOUTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), dire), params.ccid, 0, 0) then
dire = SOUTH
else
dire = EAST
end
else
dire = EAST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), dire), params.ccid, 0, 0) then
dire = EAST
else
dire = SOUTH
end
end
elseif dire == NORTHEAST then
if math.random(1,100) >= 51 then
dire = NORTH
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), dire), params.ccid, 0, 0) then
dire = NORTH
else
dire = EAST
end
else
dire = EAST
if isWalkable(getPosByDir(getThingPos(getCreatureSummons(params.cid)[1]), dire), params.ccid, 0, 0) then
dire = EAST
else
dire = NORTH
end
end
end
local dire = dire
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then
doChangeSpeed(getCreatureSummons(params.cid)[1], getCreatureBaseSpeed(getCreatureSummons(params.cid)[1]))
doPushCreature(getCreatureSummons(params.cid)[1], dire, 1, 0)
doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(params.cid)[1]))
else
doPushCreature(getCreatureSummons(params.cid)[1], dire, 1, 0)
doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(params.cid)[1]))
end
end
end
end
end
local function voltarnormal(params)
if isCreature(params.cid) then
if isCreature(getCreatureSummons(params.cid)[1]) then
setPlayerStorageValue(cid, etudao, -1)
if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then
local function speeed(params)
if isCreature(params.sum) then
if getCreatureSpeed(params.sum) == 0 then
doChangeSpeed(params.sum, getCreatureBaseSpeed(params.sum))
end
end
end
addEvent(speeed, 0, {sum = getCreatureSummons(params.cid)[1]})
end
setPlayerStorageValue(getCreatureSummons(params.cid)[1], 12, 0)
end
end
end
local pois = getThingPos(item2.uid)
local speed = getCreatureBaseSpeed(getCreatureSummons(cid)[1])
local temk = 1000 -(2.3 * speed)
local SummonPos = getThingPos(getCreatureSummons(cid)[1])
local travelx = math.abs((topos.x) - (SummonPos.x))
local travely = math.abs((topos.y) - (SummonPos.y))
local travel = ((travelx) + (travely))
addEvent(move, 0, {cid = cid, ccid = getCreatureSummons(cid)[1], topos = pois, item2 = item2.uid})
for i = 1, travel-1 do
addEvent(move, temk*i, {cid = cid, ccid = getCreatureSummons(cid)[1], topos = pois, item2 = item2.uid})
end
addEvent(voltarnormal, temk*travel, {cid = cid})
exhaustion.set(cid, etudao, travel)
return true
end
colocar isso em data\action.xml
<action itemid="XXXX" event="script" value="order.lua" allowfaruse="1"/>
XXXX- ID do item de seu ot configurado como ORDER
Agora Ake O Evolution Sistem 100% Igual ao do Pokemon Svke
local fotos = {
["Bulbasaur"] = {fotopoke = 2377},
["Ivysaur"] = {fotopoke = 2378},
["Venusaur"] = {fotopoke = 2379},
["Charmander"] = {fotopoke = 2380},
["Charmeleon"] = {fotopoke = 2381},
["Charizard"] = {fotopoke = 2382},
["Squirtle"] = {fotopoke = 2383},
["Wartortle"] = {fotopoke = 2384},
["Blastoise"] = {fotopoke = 2385},
["Caterpie"] = {fotopoke = 2386},
["Metapod"] = {fotopoke = 2387},
["Butterfree"] = {fotopoke = 2388},
["Weedle"] = {fotopoke = 2389},
["Kakuna"] = {fotopoke = 2390},
["Beedrill"] = {fotopoke = 2391},
["Pidgey"] = {fotopoke = 2392},
["Pidgeotto"] = {fotopoke = 2393},
["Pidgeot"] = {fotopoke = 2394},
["Rattata"] = {fotopoke = 2395},
["Raticate"] = {fotopoke = 2396},
["Spearow"] = {fotopoke = 2397},
["Fearow"] = {fotopoke = 2398},
["Ekans"] = {fotopoke = 2399},
["Arbok"] = {fotopoke = 2400},
["Pikachu"] = {fotopoke = 2401},
["Raichu"] = {fotopoke = 2402},
["Sandshrew"] = {fotopoke = 2403},
["Sandslash"] = {fotopoke = 2404},
["Nidoran Female"] = {fotopoke = 2405},
["Nidorina"] = {fotopoke = 2406},
["Nidoqueen"] = {fotopoke = 2407},
["Nidoran Male"] = {fotopoke = 2408},
["Nidorino"] = {fotopoke = 2409},
["Nidoking"] = {fotopoke = 2410},
["Clefairy"] = {fotopoke = 2411},
["Clefable"] = {fotopoke = 2412},
["Vulpix"] = {fotopoke = 2413},
["Ninetales"] = {fotopoke = 2414},
["Jigglypuff"] = {fotopoke = 2415},
["Wigglytuff"] = {fotopoke = 2416},
["Zubat"] = {fotopoke = 2417},
["Golbat"] = {fotopoke = 2418},
["Oddish"] = {fotopoke = 2419},
["Gloom"] = {fotopoke = 2420},
["Vileplume"] = {fotopoke = 2421},
["Paras"] = {fotopoke = 2422},
["Parasect"] = {fotopoke = 2423},
["Venonat"] = {fotopoke = 2424},
["Venomoth"] = {fotopoke = 2425},
["Diglett"] = {fotopoke = 2426},
["Dugtrio"] = {fotopoke = 2427},
["Meowth"] = {fotopoke = 2428},
["Persian"] = {fotopoke = 2429},
["Psyduck"] = {fotopoke = 2430},
["Golduck"] = {fotopoke = 2431},
["Mankey"] = {fotopoke = 2432},
["Primeape"] = {fotopoke = 2433},
["Growlithe"] = {fotopoke = 2434},
["Arcanine"] = {fotopoke = 2435},
["Poliwag"] = {fotopoke = 2436},
["Poliwhirl"] = {fotopoke = 2437},
["Poliwrath"] = {fotopoke = 2438},
["Abra"] = {fotopoke = 2439},
["Kadabra"] = {fotopoke = 2440},
["Alakazam"] = {fotopoke = 2441},
["Machop"] = {fotopoke = 2442},
["Machoke"] = {fotopoke = 2443},
["Machamp"] = {fotopoke = 2444},
["Bellsprout"] = {fotopoke = 2445},
["Weepinbell"] = {fotopoke = 2446},
["Victreebel"] = {fotopoke = 2447},
["Tentacool"] = {fotopoke = 2448},
["Tentacruel"] = {fotopoke = 2449},
["Geodude"] = {fotopoke = 2450},
["Graveler"] = {fotopoke = 2451},
["Golem"] = {fotopoke = 2452},
["Ponyta"] = {fotopoke = 2453},
["Rapidash"] = {fotopoke = 2454},
["Slowpoke"] = {fotopoke = 2455},
["Slowbro"] = {fotopoke = 2456},
["Magnemite"] = {fotopoke = 2457},
["Magneton"] = {fotopoke = 2458},
["Farfetchd"] = {fotopoke = 2459},
["Doduo"] = {fotopoke = 2460},
["Dodrio"] = {fotopoke = 2461},
["Seel"] = {fotopoke = 2462},
["Dewgong"] = {fotopoke = 2463},
["Grimer"] = {fotopoke = 2464},
["Muk"] = {fotopoke = 2465},
["Shellder"] = {fotopoke = 2466},
["Cloyster"] = {fotopoke = 2467},
["Gastly"] = {fotopoke = 2468},
["Haunter"] = {fotopoke = 2469},
["Gengar"] = {fotopoke = 2470},
["Onix"] = {fotopoke = 2471},
["Drowzee"] = {fotopoke = 2472},
["Hypno"] = {fotopoke = 2473},
["Krabby"] = {fotopoke = 2474},
["Kingler"] = {fotopoke = 2475},
["Voltorb"] = {fotopoke = 2476},
["Electrode"] = {fotopoke = 2477},
["Exeggcute"] = {fotopoke = 2478},
["Exeggutor"] = {fotopoke = 2479},
["Cubone"] = {fotopoke = 2480},
["Marowak"] = {fotopoke = 2481},
["Hitmonlee"] = {fotopoke = 2482},
["Hitmonchan"] = {fotopoke = 2483},
["Lickitung"] = {fotopoke = 2484},
["Koffing"] = {fotopoke = 2485},
["Weezing"] = {fotopoke = 2486},
["Rhyhorn"] = {fotopoke = 2487},
["Rhydon"] = {fotopoke = 2488},
["Chansey"] = {fotopoke = 2489},
["Tangela"] = {fotopoke = 2490},
["Kangaskhan"] = {fotopoke = 2491},
["Horsea"] = {fotopoke = 2492},
["Seadra"] = {fotopoke = 2493},
["Goldeen"] = {fotopoke = 2494},
["Seaking"] = {fotopoke = 2495},
["Staryu"] = {fotopoke = 2496},
["Starmie"] = {fotopoke = 2497},
["Mr Mime"] = {fotopoke = 2498},
["Scyther"] = {fotopoke = 2499},
["Jynx"] = {fotopoke = 2500},
["Electabuzz"] = {fotopoke = 2501},
["Magmar"] = {fotopoke = 2502},
["Pinsir"] = {fotopoke = 2503},
["Tauros"] = {fotopoke = 2504},
["Magikarp"] = {fotopoke = 2505},
["Gyarados"] = {fotopoke = 2506},
["Lapras"] = {fotopoke = 2507},
["Ditto"] = {fotopoke = 2508},
["Eevee"] = {fotopoke = 2509},
["Vaporeon"] = {fotopoke = 2510},
["Jolteon"] = {fotopoke = 2511},
["Flareon"] = {fotopoke = 2512},
["Porygon"] = {fotopoke = 2513},
["Omanyte"] = {fotopoke = 2514},
["Omastar"] = {fotopoke = 2515},
["Kabuto"] = {fotopoke = 2516},
["Kabutops"] = {fotopoke = 2517},
["Aerodactyl"] = {fotopoke = 2518},
["Snorlax"] = {fotopoke = 2519},
["Articuno"] = {fotopoke = 2520},
["Zapdos"] = {fotopoke = 2521},
["Moltres"] = {fotopoke = 2522},
["Dratini"] = {fotopoke = 2523},
["Dragonair"] = {fotopoke = 2524},
["Dragonite"] = {fotopoke = 2525},
["Mewtwo"] = {fotopoke = 2526},
["Mew"] = {fotopoke = 2527},
["Elder Charizard"] = {fotopoke = 2527},
["Crystal Onix"] = {fotopoke = 2527},
}
local poken = {
["Bulbasaur"] = {level = 20, cons = 43, vida = 1200},
["Ivysaur"] = {level = 40, cons = 86, vida = 2600},
["Venusaur"] = {level = 85, cons = 189, vida = 5200},
["Charmander"] = {level = 20, cons = 30, vida = 970},
["Charmeleon"] = {level = 40, cons = 70, vida = 2900},
["Charizard"] = {level = 85, cons = 140, vida = 5200},
["Squirtle"] = {level = 20, cons = 47, vida = 1350},
["Wartortle"] = {level = 40, cons = 93, vida = 2800},
["Blastoise"] = {level = 85, cons = 194, vida = 5900},
["Caterpie"] = {level = 1, cons = 13, vida = 300},
["Metapod"] = {level = 10, cons = 30, vida = 1100},
["Butterfree"] = {level = 30, cons = 56, vida = 2000},
["Weedle"] = {level = 1, cons = 16, vida = 325},
["Kakuna"] = {level = 10, cons = 32, vida = 900},
["Beedrill"] = {level = 30, cons = 64, vida = 1900},
["Pidgey"] = {level = 1, cons = 22, vida = 380},
["Pidgeotto"] = {level = 20, cons = 47, vida = 1400},
["Pidgeot"] = {level = 65, cons = 101, vida = 3800},
["Rattata"] = {level = 1, cons = 19, vida = 350},
["Raticate"] = {level = 20, cons = 68, vida = 900},
["Spearow"] = {level = 5, cons = 22, vida = 450},
["Fearow"] = {level = 50, cons = 95, vida = 3300},
["Ekans"] = {level = 12, cons = 27, vida = 600},
["Arbok"] = {level = 30, cons = 87, vida = 2900},
["Pikachu"] = {level = 20, cons = 32, vida = 900},
["Raichu"] = {level = 50, cons = 99, vida = 3200},
["Sandshrew"] = {level = 18, cons = 30, vida = 700},
["Sandslash"] = {level = 55, cons = 96, vida = 3400},
["Nidoran Female"] = {level = 10, cons = 27, vida = 600},
["Nidorina"] = {level = 25, cons = 58, vida = 2000},
["Nidoqueen"] = {level = 65, cons = 146, vida = 4200},
["Nidoran Male"] = {level = 10, cons = 34, vida = 650},
["Nidorino"] = {level = 25, cons = 74, vida = 2500},
["Nidoking"] = {level = 65, cons = 169, vida = 4800},
["Clefairy"] = {level = 10, cons = 30, vida = 600},
["Clefable"] = {level = 35, cons = 90, vida = 2400},
["Vulpix"] = {level = 20, cons = 32, vida = 680},
["Ninetales"] = {level = 65, cons = 121, vida = 3400},
["Jigglypuff"] = {level = 10, cons = 30, vida = 550},
["Wigglytuff"] = {level = 42, cons = 95, vida = 2900},
["Zubat"] = {level = 5, cons = 28, vida = 450},
["Golbat"] = {level = 30, cons = 70, vida = 1900},
["Oddish"] = {level = 5, cons = 21, vida = 340},
["Gloom"] = {level = 18, cons = 51, vida = 1400},
["Vileplume"] = {level = 50, cons = 96, vida = 3300},
["Paras"] = {level = 1, cons = 40, vida = 850},
["Parasect"] = {level = 50, cons = 110, vida = 3800},
["Venonat"] = {level = 18, cons = 50, vida = 1350},
["Venomoth"] = {level = 50, cons = 125, vida = 3850},
["Diglett"] = {level = 5, cons = 45, vida = 900},
["Dugtrio"] = {level = 35, cons = 110, vida = 3450},
["Meowth"] = {level = 12, cons = 52, vida = 950},
["Persian"] = {level = 25, cons = 85, vida = 2250},
["Psyduck"] = {level = 12, cons = 50, vida = 950},
["Golduck"] = {level = 55, cons = 150, vida = 4000},
["Mankey"] = {level = 10, cons = 60, vida = 1050},
["Primeape"] = {level = 45, cons = 155, vida = 4500},
["Growlithe"] = {level = 20, cons = 60, vida = 1000},
["Arcanine"] = {level = 80, cons = 170, vida = 6800},
["Poliwag"] = {level = 5, cons = 20, vida = 400},
["Poliwhirl"] = {level = 20, cons = 44, vida = 1200},
["Poliwrath"] = {level = 65, cons = 138, vida = 4400},
["Abra"] = {level = 10, cons = 20, vida = 620},
["Kadabra"] = {level = 45, cons = 57, vida = 2500},
["Alakazam"] = {level = 80, cons = 94, vida = 4000},
["Machop"] = {level = 18, cons = 60, vida = 1100},
["Machoke"] = {level = 40, cons = 110, vida = 3500},
["Machamp"] = {level = 65, cons = 185, vida = 7500},
["Bellsprout"] = {level = 5, cons = 24, vida = 420},
["Weepinbell"] = {level = 18, cons = 49, vida = 1100},
["Victreebel"] = {level = 50, cons = 117, vida = 4000},
["Tentacool"] = {level = 12, cons = 52, vida = 1050},
["Tentacruel"] = {level = 70, cons = 165, vida = 7050},
["Geodude"] = {level = 15, cons = 30, vida = 700},
["Graveler"] = {level = 40, cons = 82, vida = 3000},
["Golem"] = {level = 70, cons = 111, vida = 6500},
["Ponyta"] = {level = 20, cons = 60, vida = 1400},
["Rapidash"] = {level = 60, cons = 160, vida = 5500},
["Slowpoke"] = {level = 12, cons = 55, vida = 1200},
["Slowbro"] = {level = 45, cons = 110, vida = 4600},
["Magnemite"] = {level = 15, cons = 27, vida = 450},
["Magneton"] = {level = 40, cons = 67, vida = 1750},
["Farfetchd"] = {level = 40, cons = 95, vida = 3000},
["Doduo"] = {level = 12, cons = 31, vida = 600},
["Dodrio"] = {level = 45, cons = 78, vida = 2650},
["Seel"] = {level = 20, cons = 50, vida = 1000},
["Dewgong"] = {level = 65, cons = 135, vida = 5200},
["Grimer"] = {level = 12, cons = 30, vida = 600},
["Muk"] = {level = 30, cons = 85, vida = 2400},
["Shellder"] = {level = 5, cons = 45, vida = 800},
["Cloyster"] = {level = 65, cons = 155, vida = 5000},
["Gastly"] = {level = 18, cons = 50, vida = 1000},
["Haunter"] = {level = 45, cons = 105, vida = 3000},
["Gengar"] = {level = 80, cons = 175, vida = 7000},
["Onix"] = {level = 50, cons = 150, vida = 5300},
["Drowzee"] = {level = 22, cons = 58, vida = 1150},
["Hypno"] = {level = 50, cons = 100, vida = 4600},
["Krabby"] = {level = 5, cons = 45, vida = 850},
["Kingler"] = {level = 35, cons = 100, vida = 3250},
["Voltorb"] = {level = 14, cons = 30, vida = 620},
["Electrode"] = {level = 38, cons = 76, vida = 2000},
["Exeggcute"] = {level = 8, cons = 42, vida = 800},
["Exeggutor"] = {level = 48, cons = 98, vida = 4000},
["Cubone"] = {level = 18, cons = 58, vida = 1200},
["Marowak"] = {level = 45, cons = 105, vida = 3900},
["Hitmonlee"] = {level = 60, cons = 140, vida = 5500},
["Hitmonchan"] = {level = 60, cons = 140, vida = 5500},
["Lickitung"] = {level = 45, cons = 100, vida = 4800},
["Koffing"] = {level = 15, cons = 60, vida = 900},
["Weezing"] = {level = 30, cons = 100, vida = 2800},
["Rhyhorn"] = {level = 35, cons = 80, vida = 3800},
["Rhydon"] = {level = 65, cons = 175, vida = 7000},
["Chansey"] = {level = 60, cons = 130, vida = 7500},
["Tangela"] = {level = 40, cons = 85, vida = 3500},
["Kangaskhan"] = {level = 60, cons = 160, vida = 7000},
["Horsea"] = {level = 5, cons = 19, vida = 300},
["Seadra"] = {level = 45, cons = 68, vida = 2500},
["Goldeen"] = {level = 10, cons = 50, vida = 950},
["Seaking"] = {level = 25, cons = 80, vida = 2000},
["Staryu"] = {level = 15, cons = 55, vida = 1050},
["Starmie"] = {level = 45, cons = 95, vida = 3800},
["Mr Mime"] = {level = 60, cons = 110, vida = 5500},
["Scyther"] = {level = 70, cons = 145, vida = 6500},
["Jynx"] = {level = 65, cons = 125, vida = 6000},
["Electabuzz"] = {level = 70, cons = 150, vida = 2500},
["Magmar"] = {level = 70, cons = 160, vida = 7200},
["Pinsir"] = {level = 42, cons = 95, vida = 4000},
["Tauros"] = {level = 40, cons = 100, vida = 4200},
["Magikarp"] = {level = 1, cons = 5, vida = 120},
["Gyarados"] = {level = 75, cons = 195, vida = 7800},
["Lapras"] = {level = 70, cons = 140, vida = 7000},
["Ditto"] = {level = 40, cons = 100, vida = 4000},
["Eevee"] = {level = 20, cons = 55, vida = 1500},
["Vaporeon"] = {level = 55, cons = 110, vida = 4500},
["Jolteon"] = {level = 55, cons = 110, vida = 4500},
["Flareon"] = {level = 55, cons = 110, vida = 4500},
["Porygon"] = {level = 45, cons = 10, vida = 100},
["Omanyte"] = {level = 20, cons = 55, vida = 1300},
["Omastar"] = {level = 70, cons = 140, vida = 6000},
["Kabuto"] = {level = 20, cons = 55, vida = 1300},
["Kabutops"] = {level = 70, cons = 150, vida = 6500},
["Aerodactyl"] = {level = 100, cons = 190, vida = 8000},
["Snorlax"] = {level = 85, cons = 200, vida = 9500},
["Articuno"] = {level = 120, cons = 200, vida = 11000},
["Zapdos"] = {level = 120, cons = 200, vida = 11000},
["Moltres"] = {level = 120, cons = 200, vida = 11000},
["Dratini"] = {level = 10, cons = 55, vida = 1200},
["Dragonair"] = {level = 70, cons = 165, vida = 5600},
["Dragonite"] = {level = 100, cons = 250, vida = 10800},
["Mewtwo"] = {level = 100, cons = 175, vida = 8500},
["Mew"] = {level = 100, cons = 125, vida = 7200},
["Elder Charizard"] = {level = 100, cons = 125, vida = 1200},
["Onix Crystal"] = {level = 100, cons = 125, vida = 7200},
["Shiny Tentacruel"] = {level = 85, cons = 125, vida = 4800},
}
local pokes = {
["Bulbasaur"] = {level = 40, evolution = "Ivysaur", maxh = 2900, count = 1, stoneid = 2276, stoneid2 = 0},
["Ivysaur"] = {level = 85, evolution = "Venusaur", maxh = 5200, count = 2, stoneid = 2276, stoneid2 = 0},
["Charmander"] = {level = 40, evolution = "Charmeleon", maxh = 2900, count = 1, stoneid = 2283, stoneid2 = 0},
["Charmeleon"] = {level = 85, evolution = "Charizard", maxh = 5200, count = 2, stoneid = 2283, stoneid2 = 0},
["Squirtle"] = {level = 40, evolution = "Wartortle", maxh = 2900, count = 1, stoneid = 2277, stoneid2 = 0},
["Wartortle"] = {level = 85, evolution = "Blastoise", maxh = 5200, count = 2, stoneid = 2277, stoneid2 = 0},
["Caterpie"] = {level = 15, evolution = "Metapod", maxh = 1400, count = 1, stoneid = 2284, stoneid2 = 0},
["Metapod"] = {level = 30, evolution = "Butterfree", maxh = 1400, count = 2, stoneid = 2284, stoneid2 = 0},
["Weedle"] = {level = 15, evolution = "Kakuna", maxh = 1400, count = 1, stoneid = 2284, stoneid2 = 0},
["Kakuna"] = {level = 25, evolution = "Beedrill", maxh = 1400, count = 2, stoneid = 2284, stoneid2 = 0},
["Pidgey"] = {level = 20, evolution = "Pidgeotto", maxh = 1400, count = 1, stoneid = 2289, stoneid2 = 0},
["Pidgeotto"] = {level = 65, evolution = "Pidgeot", maxh = 1400, count = 2, stoneid = 2289, stoneid2 = 0},
["Rattata"] = {level = 25, evolution = "Raticate", maxh = 1400, count = 1, stoneid = 2289, stoneid2 = 0},
["Spearow"] = {level = 50, evolution = "Fearow", maxh = 1400, count = 2, stoneid = 2289, stoneid2 = 0},
["Ekans"] = {level = 35, evolution = "Arbok", maxh = 1400, count = 1, stoneid = 2278, stoneid2 = 0},
["Pikachu"] = {level = 50, evolution = "Raichu", maxh = 1400, count = 2, stoneid = 2279, stoneid2 = 0},
["Sandshrew"] = {level = 55, evolution = "Sandslash", maxh = 1400, count = 2, stoneid = 2287, stoneid2 = 0},
["Nidoran Female"] = {level = 30, evolution = "Nidorina", maxh = 1400, count = 1, stoneid = 2278, stoneid2 = 0},
["Nidorina"] = {level = 65, evolution = "Nidoqueen", maxh = 1400, count = 1, stoneid = 2278, stoneid2 = 2287},
["Nidoran Male"] = {level = 30, evolution = "Nidorino", maxh = 1400, count = 1, stoneid = 2278, stoneid2 = 0},
["Nidorino"] = {level = 65, evolution = "Nidoking", maxh = 1400, count = 1, stoneid = 2278, stoneid2 = 2287},
["Clefairy"] = {level = 45, evolution = "Clefable", maxh = 1400, count = 1, stoneid = 2289, stoneid2 = 0},
["Vulpix"] = {level = 70, evolution = "Ninetales", maxh = 1400, count = 2, stoneid = 2283, stoneid2 = 0},
["Jigglypuff"] = {level = 45, evolution = "Wigglytuff", maxh = 1400, count = 1, stoneid = 2289, stoneid2 = 0},
["Zubat"] = {level = 35, evolution = "Golbat", maxh = 1400, count = 1, stoneid = 2278, stoneid2 = 0},
["Oddish"] = {level = 25, evolution = "Gloom", maxh = 1400, count = 1, stoneid = 2276, stoneid2 = 0},
["Gloom"] = {level = 50, evolution = "Vileplume", maxh = 1400, count = 1, stoneid = 2276, stoneid2 = 2278},
["Paras"] = {level = 50, evolution = "Parasect", maxh = 1400, count = 2, stoneid = 2284, stoneid2 = 0},
["Venonat"] = {level = 50, evolution = "Venomoth", maxh = 1400, count = 1, stoneid = 2284, stoneid2 = 2278},
["Diglett"] = {level = 35, evolution = "Dugtrio", maxh = 1400, count = 1, stoneid = 2287, stoneid2 = 0},
["Meowth"] = {level = 30, evolution = "Persian", maxh = 1400, count = 1, stoneid = 2289, stoneid2 = 0},
["Psyduck"] = {level = 55, evolution = "Golduck", maxh = 1400, count = 1, stoneid = 2277, stoneid2 = 2288},
["Mankey"] = {level = 50, evolution = "Primeape", maxh = 1400, count = 1, stoneid = 2281, stoneid2 = 0},
["Growlithe"] = {level = 80, evolution = "Arcanine", maxh = 1400, count = 2, stoneid = 2283, stoneid2 = 0},
["Poliwag"] = {level = 25, evolution = "Poliwhirl", maxh = 1400, count = 1, stoneid = 2277, stoneid2 = 0},
["Poliwhirl"] = {level = 65, evolution = "Poliwrath", maxh = 1400, count = 1, stoneid = 2277, stoneid2 = 2281},
["Abra"] = {level = 45, evolution = "Kadabra", maxh = 1400, count = 1, stoneid = 2288, stoneid2 = 0},
["Kadabra"] = {level = 80, evolution = "Alakazam", maxh = 1400, count = 2, stoneid = 2288, stoneid2 = 0},
["Machop"] = {level = 45, evolution = "Machoke", maxh = 1400, count = 1, stoneid = 2281, stoneid2 = 0},
["Machoke"] = {level = 70, evolution = "Machamp", maxh = 1400, count = 2, stoneid = 2281, stoneid2 = 0},
["Bellsprout"] = {level = 25, evolution = "Weepinbell", maxh = 1400, count = 1, stoneid = 2276, stoneid2 = 0},
["Weepinbell"] = {level = 50, evolution = "Victreebel", maxh = 1400, count = 2, stoneid = 2276, stoneid2 = 0},
["Tentacool"] = {level = 75, evolution = "Tentacruel", maxh = 1400, count = 1, stoneid = 2277, stoneid2 = 2278},
["Geodude"] = {level = 40, evolution = "Graveler", maxh = 1400, count = 1, stoneid = 2280, stoneid2 = 0},
["Graveler"] = {level = 70, evolution = "Golem", maxh = 1400, count = 2, stoneid = 2280, stoneid2 = 0},
["Ponyta"] = {level = 55, evolution = "Rapidash", maxh = 1400, count = 1, stoneid = 2283, stoneid2 = 0},
["Slowpoke"] = {level = 45, evolution = "Slowbro", maxh = 1400, count = 1, stoneid = 2288, stoneid2 = 0},
["Magnemite"] = {level = 40, evolution = "Magneton", maxh = 1400, count = 1, stoneid = 2279, stoneid2 = 0},
["Doduo"] = {level = 45, evolution = "Dodrio", maxh = 1400, count = 1, stoneid = 2289, stoneid2 = 0},
["Seel"] = {level = 65, evolution = "Dewgong", maxh = 1400, count = 1, stoneid = 2277, stoneid2 = 2290},
["Grimer"] = {level = 45, evolution = "Muk", maxh = 1400, count = 1, stoneid = 2278, stoneid2 = 0},
["Shellder"] = {level = 60, evolution = "Cloyster", maxh = 1400, count = 2, stoneid = 2290, stoneid2 = 0},
["Gastly"] = {level = 45, evolution = "Haunter", maxh = 1400, count = 1, stoneid = 2286, stoneid2 = 0},
["Haunter"] = {level = 80, evolution = "Gengar", maxh = 1400, count = 2, stoneid = 2286, stoneid2 = 0},
["Drowzee"] = {level = 55, evolution = "Hypno", maxh = 1400, count = 2, stoneid = 2288, stoneid2 = 0},
["Krabby"] = {level = 40, evolution = "Kingler", maxh = 1400, count = 1, stoneid = 2277, stoneid2 = 0},
["Voltorb"] = {level = 35, evolution = "Electrode", maxh = 1400, count = 1, stoneid = 2279, stoneid2 = 0},
["Exeggcute"] = {level = 55, evolution = "Exeggutor", maxh = 1400, count = 1, stoneid = 2276, stoneid2 = 2288},
["Cubone"] = {level = 55, evolution = "Marowak", maxh = 1400, count = 2, stoneid = 2287, stoneid2 = 0},
["Koffing"] = {level = 35, evolution = "Weezing", maxh = 1400, count = 1, stoneid = 2278, stoneid2 = 0},
["Rhyhorn"] = {level = 75, evolution = "Rhydon", maxh = 1400, count = 2, stoneid = 2280, stoneid2 = 0},
["Horsea"] = {level = 45, evolution = "Seadra", maxh = 1400, count = 1, stoneid = 2277, stoneid2 = 0},
["Goldeen"] = {level = 35, evolution = "Seaking", maxh = 1400, count = 1, stoneid = 2277, stoneid2 = 0},
["Staryu"] = {level = 15, evolution = "Starmie", maxh = 1400, count = 1, stoneid = 2277, stoneid2 = 0},
["Magikarp"] = {level = 85, evolution = "Gyarados", maxh = 1400, count = 1, stoneid = 2277, stoneid2 = 2285},
["Omanyte"] = {level = 80, evolution = "Omastar", maxh = 1400, count = 1, stoneid = 2277, stoneid2 = 2285},
["Kabuto"] = {level = 80, evolution = "Kabutops", maxh = 1400, count = 1, stoneid = 2280, stoneid2 = 2285},
["Dratini"] = {level = 60, evolution = "Dragonair", maxh = 1400, count = 1, stoneid = 2285, stoneid2 = 0},
["Dragonair"] = {level = 60, evolution = "Dragonite", maxh = 1400, count = 2, stoneid = 2285, stoneid2 = 0},
}
local types = {
["Leaf"] = {itemid = 2276, "Bulbasaur", "Ivysaur", "Oddish", "Gloom", "Bellsprout", "Weepinbell", "Exeggcute"},
["Water"] = {itemid = 2277, "Squirtle", "Wartortle", "Horsea", "Goldeen", "Magikarp", "Psyduck", "Poliwag", "Poliwhirl", "Tentacool", "Krabby", "Staryu", "Omanyte", "Eevee"},
["Venom"] = {itemid = 2278, "Zubat", "Ekans", "Nidoran male", "Nidoran female", "Nidorino", "Nidorina", "Gloom", "Venonat", "Tentacool", "Grimer", "Koffing"},
["Thunder"] = {itemid = 2279, "Magnemite", "Pikachu", "Voltorb", "Eevee"},
["Rock"] = {itemid = 2280, "Geodude", "Graveler", "Rhyhorn", "Kabuto"},
["Punch"] = {itemid = 2281, "Machop", "Machoke", "Mankey", "Poliwhirl"},
["Fire"] = {itemid = 2283, "Charmander", "Charmeleon", "Vulpix", "Growlithe", "Ponyta", "Eevee"},
["Coccon"] = {itemid = 2284, "Caterpie", "Metapod", "Weedle", "Kakuna", "Paras", "Venonat", "Dragon Lord"},
["Crystal"] = {itemid = 2285, "Dratini", "Dragonair", "Magikarp", "Omanyte", "Kabuto"},
["Darkness"] = {itemid = 2286, "Gastly", "Haunter"},
["Earth"] = {itemid = 2287, "Cubone", "Sandshrew", "Nidorino", "Nidorina", "Diglett"},
["Enigma"] = {itemid = 2288, "Abra", "Kadabra", "Psyduck", "Slowpoke", "Drowzee"},
["Heart"] = {itemid = 2289, "Rattata", "Pidgey", "Pidgeotto", "Spearow", "Clefairy", "Jigglypuff", "Meowth", "Doduo"},
["Ice"] = {itemid = 2290, "Seel", "Shellder"},
}
local eevee = {'2277', '2279', '2283'}
function onUse(cid, item, frompos, item2, topos)
if not isMonster(item2.uid) then
return true
end
if not isPlayer(getCreatureMaster(item2.uid)) or getCreatureMaster(item2.uid) ~= cid then
doPlayerSendCancel(cid, "You can only use stones on pokemons you own.")
return true
end
for i,x in pairs(types) do
if getPlayerSlotItem(cid, 7).itemid ~= fotos[getCreatureName(item2.uid)].fotopoke then
return doPlayerSendCancel(cid, "Plase, keep your pokemon's ball at the right place during evolution!")
end
if item.itemid == x.itemid then
if isPlayerSummon(cid, item2.uid) then
if table.find(x, getCreatureName(item2.uid)) then
if getCreatureName(item2.uid) == "Eevee" then
if item.itemid == 2279 then
if getPlayerLevel(cid) < 55 then
return doPlayerSendCancel(cid, "Sorry, you don't have the required level to evolve this pokemon (55).")
end
local pokeball = getPlayerSlotItem(cid, 8)
doItemSetAttribute(pokeball.uid, "poke", "This is Jolteon's pokeball. HP = [100/100]")
doItemSetAttribute(pokeball.uid, "description", "Contains a Jolteon.")
doPlayerSendTextMessage(cid, 27, "Congratulations! Your "..getCreatureName(item2.uid).." evolved into a Jolteon!")
doSendMagicEffect(topos, 18)
doTransformItem(getPlayerSlotItem(cid, 7).uid, 2511)
doSendMagicEffect(getThingPos(cid), 173)
local oldpos = getThingPos(item2.uid)
doRemoveCreature(item2.uid)
doSummonMonster(cid, "Jolteon")
local pk = getCreatureSummons(cid)[1]
registerCreatureEvent(pk, "DiePoke")
registerCreatureEvent(pk, "Exp")
doTeleportThing(pk, oldpos, false)
doCreatureSetLookDir(pk, 2)
setCreatureMaxHealth(pk, getCreatureMaxHealth(pk) + (poken[getCreatureName(pk)].cons * getPlayerLevel(cid)))
doCreatureAddHealth(pk, getCreatureMaxHealth(pk))
setPlayerStorageValue(cid, 2, 0)
doPlayerRemoveItem(cid, item.itemid, 1)
elseif item.itemid == 2277 then
if getPlayerLevel(cid) < 55 then
return doPlayerSendCancel(cid, "Sorry, you don't have the required level to evolve this pokemon (55).")
end
local pokeball = getPlayerSlotItem(cid, 8)
doItemSetAttribute(pokeball.uid, "poke", "This is Vaporeon's pokeball. HP = [100/100]")
doItemSetAttribute(pokeball.uid, "description", "Contains a Vaporeon.")
doPlayerSendTextMessage(cid, 27, "Congratulations! Your "..getCreatureName(item2.uid).." evolved into a Vaporeon!")
doSendMagicEffect(topos, 18)
doTransformItem(getPlayerSlotItem(cid, 7).uid, 2510)
doSendMagicEffect(getThingPos(cid), 173)
local oldpos = getThingPos(item2.uid)
doRemoveCreature(item2.uid)
doSummonMonster(cid, "Vaporeon")
local pk = getCreatureSummons(cid)[1]
registerCreatureEvent(pk, "DiePoke")
registerCreatureEvent(pk, "Exp")
doTeleportThing(pk, oldpos, false)
doCreatureSetLookDir(pk, 2)
setCreatureMaxHealth(pk, getCreatureMaxHealth(pk) + (poken[getCreatureName(pk)].cons * getPlayerLevel(cid)))
doCreatureAddHealth(pk, getCreatureMaxHealth(pk))
setPlayerStorageValue(cid, 2, 0)
doPlayerRemoveItem(cid, item.itemid, 1)
elseif item.itemid == 2283 then
if getPlayerLevel(cid) < 55 then
return doPlayerSendCancel(cid, "Sorry, you don't have the required level to evolve this pokemon (55).")
end
local pokeball = getPlayerSlotItem(cid, 8)
doItemSetAttribute(pokeball.uid, "poke", "This is Flareon's pokeball. HP = [100/100]")
doItemSetAttribute(pokeball.uid, "description", "Contains a Flareon.")
doPlayerSendTextMessage(cid, 27, "Congratulations! Your "..getCreatureName(item2.uid).." evolved into a Flareon!")
doSendMagicEffect(topos, 18)
doTransformItem(getPlayerSlotItem(cid, 7).uid, 2512)
doSendMagicEffect(getThingPos(cid), 173)
local oldpos = getThingPos(item2.uid)
doRemoveCreature(item2.uid)
doSummonMonster(cid, "Flareon")
local pk = getCreatureSummons(cid)[1]
registerCreatureEvent(pk, "DiePoke")
registerCreatureEvent(pk, "Exp")
doTeleportThing(pk, oldpos, false)
doCreatureSetLookDir(pk, 2)
setCreatureMaxHealth(pk, getCreatureMaxHealth(pk) + (poken[getCreatureName(pk)].cons * getPlayerLevel(cid)))
doCreatureAddHealth(pk, getCreatureMaxHealth(pk))
setPlayerStorageValue(cid, 2, 0)
doPlayerRemoveItem(cid, item.itemid, 1)
end
local i = getCreatureName(getCreatureSummons(cid)[1])
if not string.find(getPlayerStorageValue(cid, 54842), ""..i..",") then
doPlayerAddSoul(cid, 1)
setPlayerStorageValue(cid, 54842, getPlayerStorageValue(cid, 54842)..""..i..", ")
end
return true
end
local count = pokes[getCreatureName(item2.uid)].count
local stnid = pokes[getCreatureName(item2.uid)].stoneid
local stnid2 = pokes[getCreatureName(item2.uid)].stoneid2
local evo = pokes[getCreatureName(item2.uid)].evolution
local levell = pokes[getCreatureName(item2.uid)].level
if stnid2 > 1 and getPlayerItemCount(cid, stnid2) < count then
return doPlayerSendCancel(cid, "You need at least one "..getItemNameById(stnid).." and one "..getItemNameById(stnid2).." to evolve this pokemon!")
end
if stnid2 > 1 and getPlayerItemCount(cid, stnid) < count then
return doPlayerSendCancel(cid, "You need at least one "..getItemNameById(stnid).." and one "..getItemNameById(stnid2).." to evolve this pokemon!")
end
if getPlayerItemCount(cid, stnid) < count then
return doPlayerSendCancel(cid, "You need at least "..count.." "..getItemNameById(stnid).."s to evolve this pokemon!")
end
if getPlayerLevel(cid) < pokes[getCreatureName(item2.uid)].level then
return doPlayerSendCancel(cid, "Sorry, you don't have the required level to evolve this pokemon ("..levell..").")
end
local owner = getCreatureMaster(item2.uid)
local pokeball = getPlayerSlotItem(cid, 8)
local description = "Contains a "..evo.."."
local nas = {
["%%pokename"] = pokes[getCreatureName(item2.uid)].evolution
}
for i,x in pairs(nas) do
if description:find(i) then
description = description:gsub(i, x)
end
end
local slo = pokes[getCreatureName(item2.uid)].maxh
local sle = pokes[getCreatureName(item2.uid)].evolution
doItemSetAttribute(pokeball.uid, "poke", "This is "..evo.."'s pokeball. HP = ["..pokes[getCreatureName(item2.uid)].maxh.."/"..pokes[getCreatureName(item2.uid)].maxh.."]")
doItemSetAttribute(pokeball.uid, "description", description)
doPlayerSendTextMessage(cid, 27, "Congratulations! Your "..getCreatureName(item2.uid).." evolved into a "..evo.."!")
doSendMagicEffect(topos, 18)
doTransformItem(getPlayerSlotItem(cid, 7).uid, fotos[sle].fotopoke)
doSendMagicEffect(getThingPos(cid), 173)
local oldpos = getThingPos(item2.uid)
doRemoveCreature(item2.uid)
doSummonMonster(cid, sle)
local pk = getCreatureSummons(cid)[1]
registerCreatureEvent(pk, "DiePoke")
registerCreatureEvent(pk, "Exp")
doTeleportThing(pk, oldpos, false)
doCreatureSetLookDir(pk, 2)
setCreatureMaxHealth(pk, slo)
doCreatureAddHealth(pk, slo)
setCreatureMaxHealth(pk, getCreatureMaxHealth(pk) + (poken[getCreatureName(pk)].cons * getPlayerLevel(cid)))
doCreatureAddHealth(pk, getCreatureMaxHealth(pk))
doPlayerRemoveItem(cid, stnid, count)
doPlayerRemoveItem(cid, stnid2, count)
setPlayerStorageValue(cid, 2, 0)
local i = getCreatureName(getCreatureSummons(cid)[1])
if not string.find(getPlayerStorageValue(cid, 54842), ""..i..",") then
doPlayerAddSoul(cid, 1)
setPlayerStorageValue(cid, 54842, getPlayerStorageValue(cid, 54842)..""..i..", ")
end
break
else
return doPlayerSendCancel(cid, "Sorry, this is not the required stone to evolve this pokemon!")
end
end
end
end
return TRUE
end
Qualquer Bug Comente. Players do Pokemon Svke Leiam isso![FIM][Fim]Pokemon Online (SVKE) OFF