Ir para conteúdo

6543210

Campones
  • Total de itens

    26
  • Registro em

  • Última visita

  • Dias Ganhos

    1

6543210 venceu a última vez em Fevereiro 16 2010

6543210 had the most liked content!

Sobre 6543210

Informações

  • Char no Tibia
    Ron Arka
  • Forma que conheci o xTibia
    Sites de Busca
  • Sou
    Scripter

6543210's Achievements

  1. 6543210

    Remover Item

    Pedido extremamente fácil para quem sabe scripts , porém estou tendo dificuldade no tempo
  2. Queria 2 scripts , o do outft eh facil de explicar , keria q soh pudessem atacar pessoas do mesmo outfit seria daora. O segundo pedido eh assim , tem uma pessoa q eu teleportei pra dentro de uma casa , daih eu fiko teleportando e tals ateh q uma hora quero tirar todos eles de uma veiz soh , entao eu do use numa alavanca q está do lado de fora da casa , entao todo mundo q tava la dentro sai na hora! Pfv me ajuda aew!
  3. Magias de ots pokemon ! Versão beta , logo versão completa! N coube no fórum entao está para download Baixa aew ta certinho pra vários pokemons , em breve com todos os pokemons! Download : talkactions.rar
  4. Script com spells de alguns pokes... vo colocar ateh o 5 pq o resto n coube! Talkactions.xml: <talkaction words="m1" case-sensitive="no" event="script" value="move1.lua"/> <talkaction words="m2" case-sensitive="no" event="script" value="move2.lua"/> <talkaction words="m3" case-sensitive="no" event="script" value="move3.lua"/> <talkaction words="m4" case-sensitive="no" event="script" value="move4.lua"/> <talkaction words="m5" case-sensitive="no" event="script" value="move5.lua"/> Talkactions/scripts move1.lua local dynpun1 = createCombatArea{ {1, 0, 0}, {0, 2, 0}, {0, 0, 0}, } local dynpun2 = createCombatArea{ {0, 0, 0}, {0, 2, 0}, {0, 0, 1}, } local dynpun3 = createCombatArea{ {0, 0, 0}, {1, 2, 0}, {0, 0, 0}, } local dynpun4 = createCombatArea{ {0, 0, 1}, {0, 2, 0}, {0, 0, 0}, } local dynpun5 = createCombatArea{ {0, 0, 0}, {0, 2, 0}, {0, 1, 0}, } local confusion = createCombatArea{ {0, 1, 1, 1, 0}, {1, 1, 1, 1, 1}, {1, 1, 2, 1, 1}, {1, 1, 1, 1, 1}, {0, 1, 1, 1, 0} } local waterspout = createCombatArea{ {1, 1, 1, 1, 1}, {1, 1, 1, 1, 1}, {1, 1, 3, 1, 1}, {1, 1, 1, 1, 1}, {1, 1, 1, 1, 1} } local c = { [30] = {x = { pok = pidgey, spell = "Quick Attack", minLv = 1, ex = 1600001, base1 = 20, base2 = 21, dista = 1, bonus = 2, type = "normal", cd = 7 } }, [5] = {x = { pok = pidgeotto, spell = "Quick Attack", minLv = 1, ex = 1700001, base1 = 100, base2 = 101, dista = 1, bonus = 2.5, type = "normal", cd = 7 } }, [80] = {x = { pok = pidgeot, spell = "Quick Attack", minLv = 1, ex = 1800001, base1 = 200, base2 = 201, dista = 1, bonus = 3, type = "normal", cd = 7 } }, [36] = {x = { pok = rattata, spell = "Quick Attack", minLv = 1, ex = 1900001, base1 = 20, base2 = 21, dista = 1, bonus = 2, type = "normal", cd = 7 } }, [69] = {x = { pok = raticate, spell = "Quick Attack", minLv = 1, ex = 2000001, base1 = 100, base2 = 101, dista = 1, bonus = 3, type = "normal", cd = 7 } }, [44] = {x = { pok = zubat, spell = "Bite", minLv = 1, ex = 4100001, base1 = 20, base2 = 21, dista = 1, bonus = 1.7, type = "normal", cd = 11 } }, [122] = {x = { pok = golbat, spell = "Bite", minLv = 1, ex = 4200001, base1 = 100, base2 = 101, dista = 1, bonus = 5.4, type = "normal", cd = 11 } }, [250] = {x = { pok = bellsprout, spell = "Slash", minLv = 1, ex = 6900001, base1 = 20, base2 = 21, dista = 1, bonus = 2, type = "normal", cd = 11 } }, [37] = {x = { pok = weepinbell, spell = "Slash", minLv = 1, ex = 7000001, base1 = 100, base2 = 101, -- 150 dista = 1, -- 3 bonus = 2.7, -- 3 type = "grass", cd = 11 -- 11 } }, [240] = {x = { pok = victreebel, spell = "Slash", minLv = 1, ex = 7100001, base1 = 200, base2 = 220, dista = 1, bonus = 4, type = "normal", cd = 11 } }, [19] = {x = { pok = magikarp, spell = "Splash", minLv = 1, ex = 1290001, base1 = 280, base2 = 300, dista = 1, bonus = 4, type = "normal", target = "no", cd = 6 } }, [111] = {x = { pok = poliwag, spell = "Doubleslap", minLv = 1, ex = 6000001, base1 = 10, base2 = 11, dista = 1, bonus = 1.2, type = "normal", cd = 7 } }, [212] = {x = { pok = poliwhirl, spell = "Doubleslap", minLv = 1, ex = 6100001, base1 = 48, base2 = 53, dista = 1, bonus = 2.2, type = "normal", cd = 7 } }, [104] = {x = { pok = poliwrath, spell = "Mega Punch", minLv = 1, ex = 6200001, base1 = 190, base2 = 205, dista = 1, bonus = 5.4, type = "fighting", cd = 12 } }, [262] = {x = { pok = abra, spell = "Confusion", minLv = 1, ex = 6300001, base1 = 35, base2 = 45, dista = 5, bonus = 5, type = "psychic", target = "no", cd = 12 } }, [56] = {x = { pok = oddish, spell = "Absorb", minLv = 1, ex = 4300001, base1 = 25, base2 = 30, dista = 1, bonus = 2, type = "grass", cd = 10 } }, [74] = {x = { pok = gloom, spell = "Absorb", minLv = 1, ex = 4400001, base1 = 35, base2 = 45, dista = 1, bonus = 3.5, type = "grass", cd = 10 } }, [86] = {x = { pok = vileplume, spell = "Absorb", minLv = 1, ex = 4500001, base1 = 55, base2 = 65, dista = 1, bonus = 5, type = "grass", cd = 10 } }, [33] = {x = { pok = horsea, spell = "Bubbles", minLv = 1, ex = 1160001, base1 = 20, base2 = 21, dista = 4, bonus = 2.4, type = "water", cd = 10 } }, [276] = {x = { pok = seadra, spell = "Water Spout", minLv = 1, ex = 1170001, base1 = 100, base2 = 105, dista = 5, bonus = 3.4, target = "no", type = "water", cd = 14 } }, [214] = {x = { pok = grimer, spell = "Mud Shot", minLv = 1, ex = 8800001, base1 = 35, base2 = 40, dista = 5, bonus = 2.9, type = "ground", cd = 10 } }, [47] = {x = { pok = Muk, spell = "Mud Shot", minLv = 1, ex = 8900001, base1 = 101, base2 = 105, dista = 5, bonus = 5, type = "ground", cd = 10 } }, [21] = {x = { pok = weedle, spell = "Horn Attack", minLv = 1, ex = 1300001, base1 = 30, base2 = 35, dista = 1, bonus = 2.4, type = "normal", cd = 9 } }, [60] = {x = { nome = Kakuna, spell = "Headbutt", minLv = 1, ex = 1400001, base1 = 80, base2 = 85, dista = 1, bonus = 3.4, type = "normal", cd = 9 } }, [45] = {x = { pok = beedrill, spell = "Fury Attack", minLv = 1, ex = 1500001, base1 = 60, base2 = 65, dista = 3, bonus = 2, type = "normal", cd = 11 } }, [26] = {x = { pok = doduo, spell = "Quick Attack", minLv = 1, ex = 8400001, base1 = 82, base2 = 97, dista = 1, bonus = 2, type = "normal", cd = 8 } }, [120] = {x = { pok = dodrio, spell = "Rapid Hit", minLv = 1, ex = 8500001, base1 = 222, base2 = 237, dista = 1, bonus = 3, type = "normal", cd = 6 } }, [217] = {x = { pok = magnemite, spell = "Super Sonic", minLv = 1, ex = 8100001, base1 = 0, base2 = 0, dista = 5, bonus = 0, type = "normal", cd = 15 } }, [223] = {x = { pok = magneton, spell = "Super Sonic", minLv = 1, ex = 8200001, base1 = 0, base2 = 0, dista = 5, bonus = 0, type = "normal", cd = 15 } }, [123] = {x = { pok = voltorb, spell = "Slam", minLv = 1, ex = 1000001, base1 = 85, base2 = 95, dista = 1, bonus = 2.2, type = "normal", cd = 16 } }, [287] = {x = { pok = voltorbroll, spell = "Slam", minLv = 1, ex = 1000001, base1 = 185, base2 = 195, dista = 1, bonus = 4, type = "normal", cd = 16 } }, [125] = {x = { pok = electrode, spell = "Slam", minLv = 1, ex = 1010001, base1 = 185, base2 = 195, dista = 1, bonus = 4, type = "normal", cd = 16 } }, [286] = {x = { pok = electroderoll, spell = "Slam", minLv = 1, ex = 1010001, base1 = 355, base2 = 365, dista = 1, bonus = 5, type = "normal", cd = 16 } }, [196] = {x = { pok = geodude, spell = "Rock Throw", minLv = 1, ex = 7400001, base1 = 35, base2 = 40, dista = 5, bonus = 2.6, type = "rock", cd = 14 } }, [247] = {x = { pok = graveler, spell = "Rock Throw", minLv = 1, ex = 7500001, base1 = 105, base2 = 106, dista = 5, bonus = 3.9, type = "rock", cd = 14 } }, [116] = {x = { pok = golem, spell = "Rock Throw", minLv = 1, ex = 7600001, base1 = 205, base2 = 210, dista = 5, bonus = 5, type = "rock", cd = 14 } }, [288] = {x = { pok = golemroll, spell = "Rock Throw", minLv = 1, ex = 7600001, base1 = 105, base2 = 106, dista = 5, bonus = 2.5, type = "rock", cd = 14 } }, [43] = {x = { pok = sandshrew, spell = "Scratch", minLv = 1, ex = 2700001, base1 = 15, base2 = 25, dista = 1, bonus = 2.2, type = "normal", cd = 12 } }, [284] = {x = { pok = sandshrew, spell = "Scratch", minLv = 1, ex = 2700001, base1 = 5, base2 = 7, dista = 1, bonus = 1, type = "normal", cd = 12 } }, [115] = {x = { pok = sandslash, spell = "Slash", minLv = 1, ex = 2800001, base1 = 105, base2 = 106, dista = 1, bonus = 5, type = "normal", cd = 16 } }, [285] = {x = { pok = sandslash, spell = "Slash", minLv = 1, ex = 2800001, base1 = 75, base2 = 105, dista = 1, bonus = 3, type = "normal", cd = 16 } }, } function onSay(cid) if #getCreatureSummons(cid) == 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Kade seu poke?") return 0 end pokemon = c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType] if getPlayerLevel(cid) < c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.minLv then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce ainda n tem level.") return 0 end if exhaustion.get(cid, pokemon.x.ex) then seconds = math.floor(((exhaustion.get(cid, pokemon.x.ex)) + 1)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Spera + "..seconds.." segundos para soltar de novo.") return 0 end if getPlayerStorageValue(getCreatureSummons(cid)[1], 3) >= 1 then doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "MISS", 215) setPlayerStorageValue(getCreatureSummons(cid)[1], 3, -1) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) return true end if getPlayerStorageValue(getCreatureSummons(cid)[1], 5) >= 1 then if math.random(1,100) <= 33 then doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "SELF HIT", 180) local levels = getPlayerLevel(cid) doTargetCombatHealth(cid, getCreatureSummons(cid)[1], COMBAT_PHYSICALDAMAGE, -(math.random((levels*3),(levels*5))), -((math.random((levels*3),(levels*5))+10)), 3) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) return true end end if pokemon.x.target ~= "no" then if not isMonster(getCreatureTarget(cid)) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Selecione.") return 0 end if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid))) > pokemon.x.dista then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Ta longe.") return 0 end if not isSightClear(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), false) then return 0 end end if pokemon.x.type == "flying" then elementa = FLYDAMAGE elseif pokemon.x.type == "ground" then elementa = GROUNDDAMAGE elseif pokemon.x.type == "electric" then elementa = ELECTRICDAMAGE elseif pokemon.x.type == "ghost" then elementa = GHOSTDAMAGE elseif pokemon.x.type == "normal" then elementa = NORMALDAMAGE elseif pokemon.x.type == "fighting" then elementa = FIGHTINGDAMAGE elseif pokemon.x.type == "poison" then elementa = POISONDAMAGE elseif pokemon.x.type == "rock" then elementa = ROCKDAMAGE elseif pokemon.x.type == "bug" then elementa = BUGDAMAGE elseif pokemon.x.type == "fire" then elementa = FIREDAMAGE elseif pokemon.x.type == "water" then elementa = WATERDAMAGE elseif pokemon.x.type == "grass" then elementa = GRASSDAMAGE elseif pokemon.x.type == "psychic" then elementa = PSYCHICDAMAGE elseif pokemon.x.type == "ice" then elementa = ICEDAMAGE elseif pokemon.x.type == "dragon" then elementa = DRAGONDAMAGE end local element = elementa local num1 = (pokemon.x.base1) local num2 = (pokemon.x.base2) local num3 = (pokemon.x.bonus) setPlayerStorageValue(getCreatureSummons(cid)[1], 1000, ((num1)+(getPlayerLevel(cid)*(num3)))) if pokemon.x.spell == "Dynamic Punch" then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 112) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), dynpun1, 0, 0, 17) addEvent(doAreaCombatHealth, 105, getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), dynpun1, 0, 0, 17) addEvent(doAreaCombatHealth, 250, getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), dynpun2, 0, 0, 17) addEvent(doAreaCombatHealth, 400, getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), dynpun3, 0, 0, 17) addEvent(doAreaCombatHealth, 555, getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), dynpun4, 0, 0, 17) addEvent(doAreaCombatHealth, 700, getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), dynpun5, 0, 0, 17) doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) return 0 elseif pokemon.x.spell == "Quick Attack" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3) return 0 elseif pokemon.x.spell == "Slam" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3) return 0 elseif pokemon.x.spell == "Rapid Hit" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3) local hitalvo = getCreatureTarget(cid) local function hit(params) if isCreature(getCreatureSummons(params.cid)[1]) then if isCreature(getCreatureTarget(params.cid)) then if getCreatureTarget(params.cid) == params.hitalvo then doAreaCombatHealth(getCreatureSummons(params.cid)[1], NORMALDAMAGE, getThingPos(getCreatureTarget(params.cid)), 0, -0, -0, 3) end end end end addEvent(hit, 80, {cid = cid, hitalvo = hitalvo}) addEvent(hit, 280, {cid = cid, hitalvo = hitalvo}) addEvent(hit, 480, {cid = cid, hitalvo = hitalvo}) addEvent(hit, 680, {cid = cid, hitalvo = hitalvo}) return 0 elseif pokemon.x.spell == "Bite" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 146) return 0 elseif pokemon.x.spell == "Slash" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 160) return 0 elseif pokemon.x.spell == "Splash" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 53) return 0 elseif pokemon.x.spell == "Doubleslap" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local function slap(params) if isMonster(getCreatureTarget(params.cid)) then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(params.cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3) else end end addEvent(slap, 0, {cid = cid}) addEvent(slap, 600, {cid = cid}) return 0 elseif pokemon.x.spell == "Mega Punch" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 112) return 0 elseif pokemon.x.spell == "Scratch" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 142) return 0 elseif pokemon.x.spell == "Confusion" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133) return 0 elseif pokemon.x.spell == "Absorb" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local life = getCreatureHealth(getCreatureTarget(cid)) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 14) local newlife = life - getCreatureHealth(getCreatureTarget(cid)) doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 14) doCreatureAddHealth(getCreatureSummons(cid)[1], newlife) doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..newlife.."", 35) return 0 elseif pokemon.x.spell == "Mud Shot" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) setPlayerStorageValue(getCreatureTarget(cid), 3, 1) local mudalvo = getCreatureTarget(cid) local function ver(params) if isCreature(params.mudalvo) then if getPlayerStorageValue(params.mudalvo, 3) >= 1 then setPlayerStorageValue(params.mudalvo, 3, -1) end end end addEvent(ver, 4500, {mudalvo = mudalvo}) doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 1) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 34) return 0 elseif pokemon.x.spell == "Bubbles" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local function throw(params) if isMonster(getCreatureTarget(params.cid)) then doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 2) else end end local function damage(params) if isMonster(getCreatureTarget(params.cid)) then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 25) else end end addEvent(throw, 0, {cid = cid}) addEvent(damage, 0, {cid = cid}) return 0 elseif pokemon.x.spell == "Water Spout" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), {x=getThingPos(getCreatureSummons(cid)[1]).x, y=getThingPos(getCreatureSummons(cid)[1]).y-5, z=getThingPos(getCreatureSummons(cid)[1]).z}, 2) local function spout(params) if isCreature(getCreatureSummons(params.cid)[1]) then for x = -2,2 do for y = -2,2 do local newpos = getThingPos(getCreatureSummons(params.cid)[1]) newpos.x = newpos.x+x newpos.y = newpos.y+y doSendDistanceShoot({x=getThingPos(getCreatureSummons(params.cid)[1]).x, y=getThingPos(getCreatureSummons(params.cid)[1]).y-5, z=getThingPos(getCreatureSummons(params.cid)[1]).z}, newpos, 2) end end end end local function spdmg(params) if isCreature(getCreatureSummons(params.cid)[1]) then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureSummons(params.cid)[1]), waterspout, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68) end end addEvent(spout, 300, {cid = cid}) addEvent(spdmg, 450, {cid = cid}) return 0 elseif pokemon.x.spell == "Horn Attack" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 15) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3) return 0 elseif pokemon.x.spell == "Rock Throw" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 11) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3) return 0 elseif pokemon.x.spell == "Headbutt" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3) return 0 elseif pokemon.x.spell == "Super Sonic" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local t = getCreatureTarget(cid) setPlayerStorageValue(t, 5, 1) local function confused(params) if isCreature(params.t) then local spdc = getCreatureSpeed(params.t) if getCreatureLookDir(params.t) == 0 then confs = math.random(1,3) elseif getCreatureLookDir(params.t) == 1 then confurandom = math.random(1,99) if confurandom <= 33 then confs = 0 elseif confurandom >= 67 then confs = 2 else confs = 3 end elseif getCreatureLookDir(params.t) == 2 then confurandom = math.random(1,99) if confurandom <= 33 then confs = 3 elseif confurandom >= 67 then confs = 0 else confs = 1 end elseif getCreatureLookDir(params.t) == 3 then confs = math.random(0,2) end doPushCreature(params.t, confs, 1, 0) doSendMagicEffect(getThingPos(params.t), 31) end end local function nonc(params) if isCreature(params.t) then doChangeSpeed(params.t, -getCreatureSpeed(params.t)) doChangeSpeed(params.t, getCreatureBaseSpeed(params.t)) setPlayerStorageValue(params.t, 5, -1) end end doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 32) doChangeSpeed(t, -( getCreatureSpeed(t)/3)) doSendMagicEffect(getThingPos(t), 31) for i = 1, math.random(6,7) do addEvent(confused, 1000*i, {cid = cid, t = t}) end addEvent(nonc, 7100, {cid - cid, t = t}) return 0 elseif pokemon.x.spell == "Fury Attack" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local namezito = getCreatureName(getCreatureSummons(cid)[1]) local namezin = getCreatureName(getCreatureTarget(cid)) local function pee(params) if isCreature(getCreatureSummons(params.cid)[1]) then if isCreature(getCreatureTarget(params.cid)) then if getCreatureName(getCreatureSummons(params.cid)[1]) == namezito then if getCreatureName(getCreatureTarget(params.cid)) == namezin then doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 15) doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(params.cid)), 0, -((num1)+(getPlayerLevel(params.cid)*(num3))), -((num2)+(getPlayerLevel(params.cid)*(num3))), 3) end end end end end local delay = 200 randnee = math.random(1,100) if randnee >= 1 and randnee <= 37 then a = 2 elseif randnee >= 38 and randnee <= 74 then a = 3 elseif randnee >= 75 and randnee <= 88 then a = 4 else a = 5 end local times = a for i = 1,a do addEvent(pee, delay, {cid = cid}) delay = delay + 600 end local function msg(params) if #getCreatureSummons(params.cid) >= 1 then doSendAnimatedText(getThingPos(getCreatureSummons(params.cid)[1]), ""..times.." HITS", 35) end end addEvent(msg, 580*a, {cid = cid}) return 0 end return 0 end move2.lua -- WATER GUN local wg1n = createCombatArea{ {0, 0, 0}, {0, 2, 0}, {0, 1, 0}, } local waba = createCombatArea{ {0, 1, 1, 1, 0}, {1, 1, 1, 1, 1}, {1, 1, 3, 1, 1}, {1, 1, 1, 1, 1}, {0, 1, 1, 1, 0} } local pluck = createCombatArea{ {0, 0, 0, 0, 0}, {0, 1, 0, 1, 0}, {0, 0, 3, 0, 0}, {0, 1, 0, 1, 0}, {0, 0, 0, 0, 0} } local spark = createCombatArea{ {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0}, {0, 1, 2, 1, 0}, {0, 1, 1, 1, 0}, {0, 0, 0, 0, 0} } local wg2n = createCombatArea{ {0, 2, 0}, {0, 0, 0}, {0, 1, 0}, {0, 1, 0}, {0, 1, 0}, } local wg3n = createCombatArea{ {0, 2, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 1, 0}, } local wg1s = createCombatArea{ {0, 1, 0}, {0, 2, 0}, {0, 0, 0}, } local wg2s = createCombatArea{ {0, 1, 0}, {0, 1, 0}, {0, 1, 0}, {0, 0, 0}, {0, 2, 0}, } local wg3s = createCombatArea{ {0, 1, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 2, 0}, } local wg1e = createCombatArea{ {0, 0, 0}, {1, 2, 0}, {0, 0, 0}, } local wg2e = createCombatArea{ {1, 1, 1, 0, 2}, } local wg3e = createCombatArea{ {1, 0, 0, 0, 0, 2}, } local wg1w = createCombatArea{ {0, 0, 0}, {0, 2, 1}, {0, 0, 0}, } local wg2w = createCombatArea{ {2, 0, 1, 1, 1}, } local wg3w = createCombatArea{ {2, 0, 0, 0, 0, 1}, } -- WATER GUN END -- SAND ATTACK local sa1n = createCombatArea{ {0, 0, 0}, {0, 2, 0}, {0, 1, 0}, } local sa2n = createCombatArea{ {0, 2, 0}, {0, 0, 0}, {0, 1, 0}, } local sa3n = createCombatArea{ {0, 2, 0}, {0, 0, 0}, {0, 0, 0}, {0, 1, 0}, } local sa4n = createCombatArea{ {0, 2, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 1, 0}, } local sa1s = createCombatArea{ {0, 1, 0}, {0, 2, 0}, {0, 0, 0}, } local sa2s = createCombatArea{ {0, 1, 0}, {0, 0, 0}, {0, 2, 0}, } local sa3s = createCombatArea{ {0, 1, 0}, {0, 0, 0}, {0, 0, 0}, {0, 2, 0}, } local sa4s = createCombatArea{ {0, 1, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 2, 0}, } local sa1w = createCombatArea{ {2, 1, 0, 0, 0, 0}, } local sa2w = createCombatArea{ {2, 0, 1, 0, 0, 0}, } local sa3w = createCombatArea{ {2, 0, 0, 1, 0, 0}, } local sa4w = createCombatArea{ {2, 0, 0, 0, 1, 0}, } local sa1e = createCombatArea{ {0, 0, 0, 0, 1, 2}, } local sa2e = createCombatArea{ {0, 0, 0, 1, 0, 2}, } local sa3e = createCombatArea{ {0, 0, 1, 0, 0, 2}, } local sa4e = createCombatArea{ {0, 1, 0, 0, 0, 2}, } -- SAND ATTACK END local pokeis = {'Pidgey', 'Pidgeotto', 'Pidgeot', 'Rattata', 'Raticate', 'Zubat', 'Golbat', 'Bellsprout', 'Weepinbell', 'Victreebel', 'Poliwag', 'Poliwhirl', 'Poliwrath', 'Abra', 'Oddish', 'Gloom', 'Vileplume', 'Horsea', 'Seadra', 'Grimer', 'Muk', 'Weedle', 'Kakuna', 'Beedrill', 'Doduo', 'Dodrio', 'Magnemite', 'Magneton', 'Voltorb', 'Electrode', 'Geodude', 'Graveler', 'Golem', 'Sandshrew', 'Sandslash'} local c = { [30] = {x = { pok = pidgey, spell = "Peck", minLv = 1, ex = 1600002, base1 = 35, base2 = 45, dista = 1, bonus = 3, type = "flying", cd = 9 } }, [5] = {x = { pok = pidgeotto, spell = "Peck", minLv = 1, ex = 1700002, base1 = 100, base2 = 140, dista = 1, bonus = 3, type = "flying", cd = 9 } }, [80] = {x = { pok = pidgeot, spell = "Peck", minLv = 1, ex = 1800002, base1 = 260, base2 = 300, dista = 1, bonus = 5, type = "flying", cd = 9 } }, [36] = {x = { pok = rattata, spell = "Scratch", minLv = 1, ex = 1900002, base1 = 40, base2 = 50, dista = 1, bonus = 2, type = "normal", cd = 9 } }, [69] = {x = { pok = raticate, spell = "Scratch", minLv = 1, ex = 2000002, base1 = 140, base2 = 150, dista = 1, bonus = 3, type = "normal", cd = 9 } }, [44] = {x = { pok = zubat, spell = "Absorb", minLv = 7, ex = 4100002, base1 = 20, base2 = 25, dista = 1, bonus = 3, type = "grass", cd = 14 } }, [122] = {x = { pok = golbat, spell = "Absorb", minLv = 30, ex = 4200002, base1 = 150, base2 = 180, dista = 1, bonus = 5, type = "grass", cd = 14 } }, [250] = {x = { pok = bellsprout, spell = "Razor Leaf", minLv = 7, ex = 6900002, base1 = 15, base2 = 22, dista = 4, bonus = 2, type = "grass", cd = 12 --12 } }, [37] = {x = { pok = weepinbell, spell = "Razor Leaf", minLv = 20, ex = 7000002, base1 = 55, base2 = 65, dista = 4, bonus = 2.8, type = "grass", cd = 12 } }, [240] = {x = { pok = victreebel, spell = "Razor Leaf", minLv = 20, ex = 7100002, base1 = 100, base2 = 101, dista = 4, bonus = 3.8, type = "grass", cd = 12 } }, [111] = {x = { pok = poliwag, spell = "Bubbles", minLv = 6, ex = 6000002, base1 = 20, base2 = 30, dista = 4, bonus = 2, type = "water", cd = 10 } }, [212] = {x = { pok = poliwhirl, spell = "Bubbles", minLv = 20, ex = 6100002, base1 = 80, base2 = 90, dista = 4, bonus = 3, type = "water", cd = 10 } }, [104] = {x = { pok = poliwrath, spell = "Waterball", minLv = 20, ex = 6200002, base1 = 200, base2 = 201, dista = 4, bonus = 5, type = "water", cd = 16 } }, [262] = {x = { pok = abra, spell = "Restore", minLv = 13, ex = 6300002, base1 = 70, base2 = 140, dista = 100, bonus = 5, target = "no", type = "normal", cd = 26 } }, [56] = {x = { pok = oddish, spell = "Acid", minLv = 7, ex = 4300002, base1 = 54, base2 = 64, dista = 4, bonus = 2.7, type = "poison", cd = 14 } }, [74] = {x = { pok = gloom, spell = "Acid", minLv = 7, ex = 4400002, base1 = 114, base2 = 134, dista = 4, bonus = 3.8, type = "poison", cd = 14 } }, [86] = {x = { pok = vileplume, spell = "Acid", minLv = 7, ex = 4500002, base1 = 214, base2 = 234, dista = 4, bonus = 5.4, type = "poison", cd = 14 } }, [33] = {x = { pok = horsea, spell = "Water Pulse", minLv = 10, ex = 1160002, base1 = 50, base2 = 55, dista = 4, bonus = 3.5, type = "water", cd = 13 } }, [276] = {x = { pok = seadra, spell = "Water Pulse", minLv = 6, ex = 1170002, base1 = 210, base2 = 215, dista = 4, bonus = 5, type = "water", cd = 13 } }, [214] = {x = { pok = grimer, spell = "Acid", minLv = 6, ex = 8800002, base1 = 60, base2 = 70, dista = 5, bonus = 5, type = "poison", cd = 14 } }, [47] = {x = { pok = muk, spell = "Acid", minLv = 6, ex = 8900002, base1 = 110, base2 = 120, dista = 5, bonus = 5.5, type = "poison", cd = 14 } }, [21] = {x = { pok = weedle, spell = "String Shot", minLv = 1, ex = 1300002, base1 = 45, base2 = 50, dista = 3, bonus = 3, type = "bug", cd = 9 } }, [60] = {x = { pok = kakuna, spell = "String Shot", minLv = 1, ex = 1400002, base1 = 85, base2 = 90, dista = 3, bonus = 4, type = "bug", cd = 9 } }, [45] = {x = { pok = beedrill, spell = "String Shot", minLv = 1, ex = 1500002, base1 = 165, base2 = 170, dista = 3, bonus = 5, type = "bug", cd = 10 } }, [26] = {x = { pok = doduo, spell = "Pluck", minLv = 1, ex = 8400002, base1 = 91, base2 = 98, dista = 1, bonus = 4, type = "flying", cd = 13 } }, [120] = {x = { pok = dodrio, spell = "Pluck", minLv = 1, ex = 8500002, base1 = 191, base2 = 218, dista = 1, bonus = 4, type = "flying", cd = 13 } }, [217] = {x = { pok = magnemite, spell = "Thundershock", minLv = 1, ex = 8100002, base1 = 49, base2 = 62, dista = 5, bonus = 3.4, type = "electric", cd = 14 } }, [223] = {x = { pok = magneton, spell = "Thundershock", minLv = 1, ex = 8200002, base1 = 100, base2 = 118, dista = 5, bonus = 4.8, type = "electric", cd = 14 } }, [123] = {x = { pok = voltorb, spell = "Spark", minLv = 1, ex = 1000002, base1 = 95, base2 = 112, target = "no", dista = 5, bonus = 4, type = "electric", cd = 16 } }, [287] = {x = { pok = voltorbroll, spell = "Spark", minLv = 1, ex = 1000002, base1 = 45, base2 = 52, dista = 5, target = "no", bonus = 2, type = "electric", cd = 16 } }, [125] = {x = { pok = electrode, spell = "Spark", minLv = 1, ex = 1010002, base1 = 105, base2 = 152, dista = 5, target = "no", bonus = 6, type = "electric", cd = 16 } }, [286] = {x = { pok = electroderoll, spell = "Spark", minLv = 1, ex = 1010002, base1 = 45, base2 = 52, dista = 5, target = "no", bonus = 3, type = "electric", cd = 16 } }, [196] = {x = { pok = geodude, spell = "Sand Attack", minLv = 1, ex = 7400002, base1 = 55, base2 = 62, dista = 10, bonus = 3, target = "no", type = "ground", cd = 16 } }, [247] = {x = { pok = graveler, spell = "Sand Attack", minLv = 1, ex = 7500002, base1 = 115, base2 = 122, dista = 1, bonus = 4, type = "ground", cd = 16 } }, [116] = {x = { pok = golem, spell = "Sand Attack", minLv = 1, ex = 7600002, base1 = 215, base2 = 222, dista = 1, bonus = 5, target = "no", type = "ground", cd = 16 } }, [288] = {x = { pok = golemroll, spell = "Sand Attack", minLv = 1, ex = 7600002, base1 = 115, base2 = 122, dista = 1, bonus = 4, target = "no", type = "ground", cd = 16 } }, [43] = {x = { pok = sandshrew, spell = "Sand Attack", minLv = 1, ex = 2700002, base1 = 45, base2 = 55, dista = 1, bonus = 3, target = "no", type = "ground", cd = 16 } }, [284] = {x = { pok = sandshrew, spell = "Sand Attack", minLv = 1, ex = 2700002, base1 = 75, base2 = 85, dista = 1, bonus = 4, target = "no", type = "ground", cd = 16 } }, [115] = {x = { pok = sandslash, spell = "Sand Attack", minLv = 1, ex = 2800002, base1 = 155, base2 = 205, dista = 1, target = "no", bonus = 6.2, type = "ground", cd = 16 } }, [285] = {x = { pok = sandslash, spell = "Slash", minLv = 1, ex = 2800002, base1 = 100, target = "no", base2 = 105, dista = 1, bonus = 3, type = "ground", cd = 16 } }, } function onSay(cid) if #getCreatureSummons(cid) == 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Kade seu pokemon?") return 0 end pokemon = c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType] if not isInArray(pokeis, getCreatureName(getCreatureSummons(cid)[1])) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu poke nao reconhece este ataque.") return 0 end if getPlayerLevel(cid) < c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.minLv then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce ainda nao tem level.") return 0 end if exhaustion.get(cid, pokemon.x.ex) then seconds = math.floor(((exhaustion.get(cid, pokemon.x.ex)) + 1)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Spera + "..seconds.." segundos para soltar de novo.") return 0 end if getPlayerStorageValue(getCreatureSummons(cid)[1], 3) >= 1 then doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "MISS", 215) setPlayerStorageValue(getCreatureSummons(cid)[1], 3, -1) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) return true end if getPlayerStorageValue(getCreatureSummons(cid)[1], 5) >= 1 then if math.random(1,100) <= 33 then doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "SELF HIT", 180) local levels = getPlayerLevel(cid) doTargetCombatHealth(cid, getCreatureSummons(cid)[1], COMBAT_PHYSICALDAMAGE, -(math.random((levels*3),(levels*5))), -((math.random((levels*3),(levels*5))+10)), 3) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) return true end end if pokemon.x.target ~= "no" then if not isMonster(getCreatureTarget(cid)) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have any targets.") return 0 end pokemon = c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType] if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid))) > pokemon.x.dista then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Get closer to the target to use this move.") return 0 end if not isSightClear(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), false) then return 0 end else end if pokemon.x.type == "flying" then elementa = FLYDAMAGE elseif pokemon.x.type == "ground" then elementa = GROUNDDAMAGE elseif pokemon.x.type == "electric" then elementa = ELECTRICDAMAGE elseif pokemon.x.type == "ghost" then elementa = GHOSTDAMAGE elseif pokemon.x.type == "normal" then elementa = NORMALDAMAGE elseif pokemon.x.type == "fighting" then elementa = FIGHTINGDAMAGE elseif pokemon.x.type == "poison" then elementa = POISONDAMAGE elseif pokemon.x.type == "rock" then elementa = ROCKDAMAGE elseif pokemon.x.type == "bug" then elementa = BUGDAMAGE elseif pokemon.x.type == "fire" then elementa = FIREDAMAGE elseif pokemon.x.type == "water" then elementa = WATERDAMAGE elseif pokemon.x.type == "grass" then elementa = GRASSDAMAGE elseif pokemon.x.type == "psychic" then elementa = PSYCHICDAMAGE elseif pokemon.x.type == "ice" then elementa = ICEDAMAGE elseif pokemon.x.type == "dragon" then elementa = DRAGONDAMAGE end local element = elementa local num1 = (pokemon.x.base1) local num2 = (pokemon.x.base2) local num3 = (pokemon.x.bonus) setPlayerStorageValue(getCreatureSummons(cid)[1], 1000, ((num1)+(getPlayerLevel(cid)*(num3)))) if pokemon.x.spell == "Water Gun" then alvo = getCreatureName(getCreatureTarget(cid)) if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 74) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 76) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 77) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 78) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 69) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 71) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 72) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 73) end doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) return 0 elseif pokemon.x.spell == "Peck" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3) return 0 elseif pokemon.x.spell == "Scratch" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 142) return 0 elseif pokemon.x.spell == "Pluck" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), pluck, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 2) return 0 elseif pokemon.x.spell == "Sand Attack" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) posit = getThingPos(getCreatureSummons(cid)[1]) local function sandattack(params) if #getCreatureSummons(params.cid) >= 1 then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, sand1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef) else end end local posicao = getThingPos(getCreatureSummons(cid)[1]) if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}, ef = 120}) addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}, ef = 120}) addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}, ef = 120}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}, ef = 122}) addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}, ef = 122}) addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}, ef = 122}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}, ef = 121}) addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}, ef = 121}) addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}, ef = 121}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}, ef = 119}) addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}, ef = 119}) addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}, ef = 119}) end elseif pokemon.x.spell == "Spark" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local function spark(params) if isCreature(params.cid) then if isCreature(getCreatureSummons(params.cid)[1]) then doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), params.cidpos, 40) doAreaCombatHealth(getCreatureSummons(cid)[1], element, params.cidpos, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48) end end end for a = -1, 1 do for b = -1, 1 do cidpos = getThingPos(getCreatureSummons(cid)[1]) cidpos.x = cidpos.x+a cidpos.y = cidpos.y+b addEvent(spark, math.abs(a)*350 + math.abs(b)*650, {cid = cid, cidpos = cidpos}) end end return 0 elseif pokemon.x.spell == "Absorb" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 14) doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 14) if element == COMBAT_EARTHDAMAGE then els = 2 elseif element == COMBAT_FIREDAMAGE then els = 0.5 else els = 1 end doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))*els)) doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 35) return 0 elseif pokemon.x.spell == "Razor Leaf" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local function throw(params) if isMonster(getCreatureTarget(params.cid)) then doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 8) else end end local function damage(params) if isMonster(getCreatureTarget(params.cid)) then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 79) else end end addEvent(damage, 100, {cid = cid}) addEvent(damage, 600, {cid = cid}) addEvent(throw, 0, {cid = cid}) addEvent(throw, 550, {cid = cid}) return 0 elseif pokemon.x.spell == "Bubbles" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local function throw(params) if isMonster(getCreatureTarget(params.cid)) then doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 2) else end end local function damage(params) if isMonster(getCreatureTarget(params.cid)) then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 25) else end end addEvent(throw, 0, {cid = cid}) addEvent(damage, 0, {cid = cid}) return 0 elseif pokemon.x.spell == "Waterball" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local function throw(params) if isMonster(getCreatureTarget(params.cid)) then doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 2) else end end local function damage(params) if isMonster(getCreatureTarget(params.cid)) then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68) else end end addEvent(damage, 100, {cid = cid}) addEvent(throw, 0, {cid = cid}) return 0 elseif pokemon.x.spell == "Restore" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 14) doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3)))) doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 35) return 0 elseif pokemon.x.spell == "Acid" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 14) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 20) return 0 elseif pokemon.x.spell == "Thundershock" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 40) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48) return 0 elseif pokemon.x.spell == "Water Pulse" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local function throw(params) if isMonster(getCreatureTarget(params.cid)) then doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 33) else end end local function damage(params) if isMonster(getCreatureTarget(params.cid)) then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68) else end end addEvent(throw, 0, {cid = cid}) addEvent(damage, 0, {cid = cid}) return 0 elseif pokemon.x.spell == "Mega Punch" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 112) return 0 elseif pokemon.x.spell == "String Shot" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) setPlayerStorageValue(getCreatureTarget(cid), 3, 1) local alvo = getCreatureTarget(cid) doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 23) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 137) local function string(params) if isCreature(params.alvo) then if getPlayerStorageValue(params.alvo, 3) >= 1 then doSendMagicEffect(getThingPos(params.alvo), 137) end end end local function normalstr(params) if isCreature(params.alvo) then if getPlayerStorageValue(params.alvo, 3) >= 1 then setPlayerStorageValue(params.alvo, 3, -1) end end end addEvent(string, 250, {alvo = alvo}) addEvent(string, 500, {alvo = alvo}) addEvent(string, 750, {alvo = alvo}) addEvent(string, 1000, {alvo = alvo}) addEvent(string, 1250, {alvo = alvo}) addEvent(string, 1500, {alvo = alvo}) addEvent(string, 1750, {alvo = alvo}) addEvent(string, 2000, {alvo = alvo}) addEvent(string, 2250, {alvo = alvo}) addEvent(string, 2500, {alvo = alvo}) addEvent(string, 2750, {alvo = alvo}) addEvent(string, 3000, {alvo = alvo}) addEvent(normalstr, 3050, {alvo = alvo}) return 0 end return 0 end move3.lua -- WATER GUN local wg1n = createCombatArea{ {0, 0, 0}, {0, 2, 0}, {0, 1, 0}, } local waba = createCombatArea{ {0, 1, 1, 1, 0}, {1, 1, 1, 1, 1}, {1, 1, 3, 1, 1}, {1, 1, 1, 1, 1}, {0, 1, 1, 1, 0} } local pluck = createCombatArea{ {0, 0, 0, 0, 0}, {0, 1, 0, 1, 0}, {0, 0, 3, 0, 0}, {0, 1, 0, 1, 0}, {0, 0, 0, 0, 0} } local spark = createCombatArea{ {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0}, {0, 1, 2, 1, 0}, {0, 1, 1, 1, 0}, {0, 0, 0, 0, 0} } local wg2n = createCombatArea{ {0, 2, 0}, {0, 0, 0}, {0, 1, 0}, {0, 1, 0}, {0, 1, 0}, } local wg3n = createCombatArea{ {0, 2, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 1, 0}, } local wg1s = createCombatArea{ {0, 1, 0}, {0, 2, 0}, {0, 0, 0}, } local wg2s = createCombatArea{ {0, 1, 0}, {0, 1, 0}, {0, 1, 0}, {0, 0, 0}, {0, 2, 0}, } local wg3s = createCombatArea{ {0, 1, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 2, 0}, } local wg1e = createCombatArea{ {0, 0, 0}, {1, 2, 0}, {0, 0, 0}, } local wg2e = createCombatArea{ {1, 1, 1, 0, 2}, } local wg3e = createCombatArea{ {1, 0, 0, 0, 0, 2}, } local wg1w = createCombatArea{ {0, 0, 0}, {0, 2, 1}, {0, 0, 0}, } local wg2w = createCombatArea{ {2, 0, 1, 1, 1}, } local wg3w = createCombatArea{ {2, 0, 0, 0, 0, 1}, } -- WATER GUN END -- SAND ATTACK local sa1n = createCombatArea{ {0, 0, 0}, {0, 2, 0}, {0, 1, 0}, } local sa2n = createCombatArea{ {0, 2, 0}, {0, 0, 0}, {0, 1, 0}, } local sa3n = createCombatArea{ {0, 2, 0}, {0, 0, 0}, {0, 0, 0}, {0, 1, 0}, } local sa4n = createCombatArea{ {0, 2, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 1, 0}, } local sa1s = createCombatArea{ {0, 1, 0}, {0, 2, 0}, {0, 0, 0}, } local sa2s = createCombatArea{ {0, 1, 0}, {0, 0, 0}, {0, 2, 0}, } local sa3s = createCombatArea{ {0, 1, 0}, {0, 0, 0}, {0, 0, 0}, {0, 2, 0}, } local sa4s = createCombatArea{ {0, 1, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 2, 0}, } local sa1w = createCombatArea{ {2, 1, 0, 0, 0, 0}, } local sa2w = createCombatArea{ {2, 0, 1, 0, 0, 0}, } local sa3w = createCombatArea{ {2, 0, 0, 1, 0, 0}, } local sa4w = createCombatArea{ {2, 0, 0, 0, 1, 0}, } local sa1e = createCombatArea{ {0, 0, 0, 0, 1, 2}, } local sa2e = createCombatArea{ {0, 0, 0, 1, 0, 2}, } local sa3e = createCombatArea{ {0, 0, 1, 0, 0, 2}, } local sa4e = createCombatArea{ {0, 1, 0, 0, 0, 2}, } -- SAND ATTACK END local pokeis = {'Pidgey', 'Pidgeotto', 'Pidgeot', 'Rattata', 'Raticate', 'Zubat', 'Golbat', 'Bellsprout', 'Weepinbell', 'Victreebel', 'Poliwag', 'Poliwhirl', 'Poliwrath', 'Abra', 'Oddish', 'Gloom', 'Vileplume', 'Horsea', 'Seadra', 'Grimer', 'Muk', 'Weedle', 'Kakuna', 'Beedrill', 'Doduo', 'Dodrio', 'Magnemite', 'Magneton', 'Voltorb', 'Electrode', 'Geodude', 'Graveler', 'Golem', 'Sandshrew', 'Sandslash'} local c = { [30] = {x = { pok = pidgey, spell = "Peck", minLv = 1, ex = 1600002, base1 = 35, base2 = 45, dista = 1, bonus = 3, type = "flying", cd = 9 } }, [5] = {x = { pok = pidgeotto, spell = "Peck", minLv = 1, ex = 1700002, base1 = 100, base2 = 140, dista = 1, bonus = 3, type = "flying", cd = 9 } }, [80] = {x = { pok = pidgeot, spell = "Peck", minLv = 1, ex = 1800002, base1 = 260, base2 = 300, dista = 1, bonus = 5, type = "flying", cd = 9 } }, [36] = {x = { pok = rattata, spell = "Scratch", minLv = 1, ex = 1900002, base1 = 40, base2 = 50, dista = 1, bonus = 2, type = "normal", cd = 9 } }, [69] = {x = { pok = raticate, spell = "Scratch", minLv = 1, ex = 2000002, base1 = 140, base2 = 150, dista = 1, bonus = 3, type = "normal", cd = 9 } }, [44] = {x = { pok = zubat, spell = "Absorb", minLv = 7, ex = 4100002, base1 = 20, base2 = 25, dista = 1, bonus = 3, type = "grass", cd = 14 } }, [122] = {x = { pok = golbat, spell = "Absorb", minLv = 30, ex = 4200002, base1 = 150, base2 = 180, dista = 1, bonus = 5, type = "grass", cd = 14 } }, [250] = {x = { pok = bellsprout, spell = "Razor Leaf", minLv = 7, ex = 6900002, base1 = 15, base2 = 22, dista = 4, bonus = 2, type = "grass", cd = 12 --12 } }, [37] = {x = { pok = weepinbell, spell = "Razor Leaf", minLv = 20, ex = 7000002, base1 = 55, base2 = 65, dista = 4, bonus = 2.8, type = "grass", cd = 12 } }, [240] = {x = { pok = victreebel, spell = "Razor Leaf", minLv = 20, ex = 7100002, base1 = 100, base2 = 101, dista = 4, bonus = 3.8, type = "grass", cd = 12 } }, [111] = {x = { pok = poliwag, spell = "Bubbles", minLv = 6, ex = 6000002, base1 = 20, base2 = 30, dista = 4, bonus = 2, type = "water", cd = 10 } }, [212] = {x = { pok = poliwhirl, spell = "Bubbles", minLv = 20, ex = 6100002, base1 = 80, base2 = 90, dista = 4, bonus = 3, type = "water", cd = 10 } }, [104] = {x = { pok = poliwrath, spell = "Waterball", minLv = 20, ex = 6200002, base1 = 200, base2 = 201, dista = 4, bonus = 5, type = "water", cd = 16 } }, [262] = {x = { pok = abra, spell = "Restore", minLv = 13, ex = 6300002, base1 = 70, base2 = 140, dista = 100, bonus = 5, target = "no", type = "normal", cd = 26 } }, [56] = {x = { pok = oddish, spell = "Acid", minLv = 7, ex = 4300002, base1 = 54, base2 = 64, dista = 4, bonus = 2.7, type = "poison", cd = 14 } }, [74] = {x = { pok = gloom, spell = "Acid", minLv = 7, ex = 4400002, base1 = 114, base2 = 134, dista = 4, bonus = 3.8, type = "poison", cd = 14 } }, [86] = {x = { pok = vileplume, spell = "Acid", minLv = 7, ex = 4500002, base1 = 214, base2 = 234, dista = 4, bonus = 5.4, type = "poison", cd = 14 } }, [33] = {x = { pok = horsea, spell = "Water Pulse", minLv = 10, ex = 1160002, base1 = 50, base2 = 55, dista = 4, bonus = 3.5, type = "water", cd = 13 } }, [276] = {x = { pok = seadra, spell = "Water Pulse", minLv = 6, ex = 1170002, base1 = 210, base2 = 215, dista = 4, bonus = 5, type = "water", cd = 13 } }, [214] = {x = { pok = grimer, spell = "Acid", minLv = 6, ex = 8800002, base1 = 60, base2 = 70, dista = 5, bonus = 5, type = "poison", cd = 14 } }, [47] = {x = { pok = muk, spell = "Acid", minLv = 6, ex = 8900002, base1 = 110, base2 = 120, dista = 5, bonus = 5.5, type = "poison", cd = 14 } }, [21] = {x = { pok = weedle, spell = "String Shot", minLv = 1, ex = 1300002, base1 = 45, base2 = 50, dista = 3, bonus = 3, type = "bug", cd = 9 } }, [60] = {x = { pok = kakuna, spell = "String Shot", minLv = 1, ex = 1400002, base1 = 85, base2 = 90, dista = 3, bonus = 4, type = "bug", cd = 9 } }, [45] = {x = { pok = beedrill, spell = "String Shot", minLv = 1, ex = 1500002, base1 = 165, base2 = 170, dista = 3, bonus = 5, type = "bug", cd = 10 } }, [26] = {x = { pok = doduo, spell = "Pluck", minLv = 1, ex = 8400002, base1 = 91, base2 = 98, dista = 1, bonus = 4, type = "flying", cd = 13 } }, [120] = {x = { pok = dodrio, spell = "Pluck", minLv = 1, ex = 8500002, base1 = 191, base2 = 218, dista = 1, bonus = 4, type = "flying", cd = 13 } }, [217] = {x = { pok = magnemite, spell = "Thundershock", minLv = 1, ex = 8100002, base1 = 49, base2 = 62, dista = 5, bonus = 3.4, type = "electric", cd = 14 } }, [223] = {x = { pok = magneton, spell = "Thundershock", minLv = 1, ex = 8200002, base1 = 100, base2 = 118, dista = 5, bonus = 4.8, type = "electric", cd = 14 } }, [123] = {x = { pok = voltorb, spell = "Spark", minLv = 1, ex = 1000002, base1 = 95, base2 = 112, target = "no", dista = 5, bonus = 4, type = "electric", cd = 16 } }, [287] = {x = { pok = voltorbroll, spell = "Spark", minLv = 1, ex = 1000002, base1 = 45, base2 = 52, dista = 5, target = "no", bonus = 2, type = "electric", cd = 16 } }, [125] = {x = { pok = electrode, spell = "Spark", minLv = 1, ex = 1010002, base1 = 105, base2 = 152, dista = 5, target = "no", bonus = 6, type = "electric", cd = 16 } }, [286] = {x = { pok = electroderoll, spell = "Spark", minLv = 1, ex = 1010002, base1 = 45, base2 = 52, dista = 5, target = "no", bonus = 3, type = "electric", cd = 16 } }, [196] = {x = { pok = geodude, spell = "Sand Attack", minLv = 1, ex = 7400002, base1 = 55, base2 = 62, dista = 10, bonus = 3, target = "no", type = "ground", cd = 16 } }, [247] = {x = { pok = graveler, spell = "Sand Attack", minLv = 1, ex = 7500002, base1 = 115, base2 = 122, dista = 1, bonus = 4, type = "ground", cd = 16 } }, [116] = {x = { pok = golem, spell = "Sand Attack", minLv = 1, ex = 7600002, base1 = 215, base2 = 222, dista = 1, bonus = 5, target = "no", type = "ground", cd = 16 } }, [288] = {x = { pok = golemroll, spell = "Sand Attack", minLv = 1, ex = 7600002, base1 = 115, base2 = 122, dista = 1, bonus = 4, target = "no", type = "ground", cd = 16 } }, [43] = {x = { pok = sandshrew, spell = "Sand Attack", minLv = 1, ex = 2700002, base1 = 45, base2 = 55, dista = 1, bonus = 3, target = "no", type = "ground", cd = 16 } }, [284] = {x = { pok = sandshrew, spell = "Sand Attack", minLv = 1, ex = 2700002, base1 = 75, base2 = 85, dista = 1, bonus = 4, target = "no", type = "ground", cd = 16 } }, [115] = {x = { pok = sandslash, spell = "Sand Attack", minLv = 1, ex = 2800002, base1 = 155, base2 = 205, dista = 1, target = "no", bonus = 6.2, type = "ground", cd = 16 } }, [285] = {x = { pok = sandslash, spell = "Slash", minLv = 1, ex = 2800002, base1 = 100, target = "no", base2 = 105, dista = 1, bonus = 3, type = "ground", cd = 16 } }, } function onSay(cid) if #getCreatureSummons(cid) == 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Kade seu pokemon?") return 0 end pokemon = c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType] if not isInArray(pokeis, getCreatureName(getCreatureSummons(cid)[1])) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu poke nao reconhece este ataque.") return 0 end if getPlayerLevel(cid) < c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.minLv then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce ainda nao tem level.") return 0 end if exhaustion.get(cid, pokemon.x.ex) then seconds = math.floor(((exhaustion.get(cid, pokemon.x.ex)) + 1)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Spera + "..seconds.." segundos para soltar de novo.") return 0 end if getPlayerStorageValue(getCreatureSummons(cid)[1], 3) >= 1 then doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "MISS", 215) setPlayerStorageValue(getCreatureSummons(cid)[1], 3, -1) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) return true end if getPlayerStorageValue(getCreatureSummons(cid)[1], 5) >= 1 then if math.random(1,100) <= 33 then doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "SELF HIT", 180) local levels = getPlayerLevel(cid) doTargetCombatHealth(cid, getCreatureSummons(cid)[1], COMBAT_PHYSICALDAMAGE, -(math.random((levels*3),(levels*5))), -((math.random((levels*3),(levels*5))+10)), 3) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) return true end end if pokemon.x.target ~= "no" then if not isMonster(getCreatureTarget(cid)) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have any targets.") return 0 end pokemon = c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType] if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid))) > pokemon.x.dista then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Get closer to the target to use this move.") return 0 end if not isSightClear(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), false) then return 0 end else end if pokemon.x.type == "flying" then elementa = FLYDAMAGE elseif pokemon.x.type == "ground" then elementa = GROUNDDAMAGE elseif pokemon.x.type == "electric" then elementa = ELECTRICDAMAGE elseif pokemon.x.type == "ghost" then elementa = GHOSTDAMAGE elseif pokemon.x.type == "normal" then elementa = NORMALDAMAGE elseif pokemon.x.type == "fighting" then elementa = FIGHTINGDAMAGE elseif pokemon.x.type == "poison" then elementa = POISONDAMAGE elseif pokemon.x.type == "rock" then elementa = ROCKDAMAGE elseif pokemon.x.type == "bug" then elementa = BUGDAMAGE elseif pokemon.x.type == "fire" then elementa = FIREDAMAGE elseif pokemon.x.type == "water" then elementa = WATERDAMAGE elseif pokemon.x.type == "grass" then elementa = GRASSDAMAGE elseif pokemon.x.type == "psychic" then elementa = PSYCHICDAMAGE elseif pokemon.x.type == "ice" then elementa = ICEDAMAGE elseif pokemon.x.type == "dragon" then elementa = DRAGONDAMAGE end local element = elementa local num1 = (pokemon.x.base1) local num2 = (pokemon.x.base2) local num3 = (pokemon.x.bonus) setPlayerStorageValue(getCreatureSummons(cid)[1], 1000, ((num1)+(getPlayerLevel(cid)*(num3)))) if pokemon.x.spell == "Water Gun" then alvo = getCreatureName(getCreatureTarget(cid)) if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 74) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 76) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 77) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 78) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 69) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 71) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 72) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 73) end doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) return 0 elseif pokemon.x.spell == "Peck" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3) return 0 elseif pokemon.x.spell == "Scratch" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 142) return 0 elseif pokemon.x.spell == "Pluck" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), pluck, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 2) return 0 elseif pokemon.x.spell == "Sand Attack" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) posit = getThingPos(getCreatureSummons(cid)[1]) local function sandattack(params) if #getCreatureSummons(params.cid) >= 1 then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, sand1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef) else end end local posicao = getThingPos(getCreatureSummons(cid)[1]) if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}, ef = 120}) addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}, ef = 120}) addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}, ef = 120}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}, ef = 122}) addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}, ef = 122}) addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}, ef = 122}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}, ef = 121}) addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}, ef = 121}) addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}, ef = 121}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}, ef = 119}) addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}, ef = 119}) addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}, ef = 119}) end elseif pokemon.x.spell == "Spark" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local function spark(params) if isCreature(params.cid) then if isCreature(getCreatureSummons(params.cid)[1]) then doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), params.cidpos, 40) doAreaCombatHealth(getCreatureSummons(cid)[1], element, params.cidpos, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48) end end end for a = -1, 1 do for b = -1, 1 do cidpos = getThingPos(getCreatureSummons(cid)[1]) cidpos.x = cidpos.x+a cidpos.y = cidpos.y+b addEvent(spark, math.abs(a)*350 + math.abs(b)*650, {cid = cid, cidpos = cidpos}) end end return 0 elseif pokemon.x.spell == "Absorb" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 14) doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 14) if element == COMBAT_EARTHDAMAGE then els = 2 elseif element == COMBAT_FIREDAMAGE then els = 0.5 else els = 1 end doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))*els)) doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 35) return 0 elseif pokemon.x.spell == "Razor Leaf" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local function throw(params) if isMonster(getCreatureTarget(params.cid)) then doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 8) else end end local function damage(params) if isMonster(getCreatureTarget(params.cid)) then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 79) else end end addEvent(damage, 100, {cid = cid}) addEvent(damage, 600, {cid = cid}) addEvent(throw, 0, {cid = cid}) addEvent(throw, 550, {cid = cid}) return 0 elseif pokemon.x.spell == "Bubbles" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local function throw(params) if isMonster(getCreatureTarget(params.cid)) then doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 2) else end end local function damage(params) if isMonster(getCreatureTarget(params.cid)) then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 25) else end end addEvent(throw, 0, {cid = cid}) addEvent(damage, 0, {cid = cid}) return 0 elseif pokemon.x.spell == "Waterball" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local function throw(params) if isMonster(getCreatureTarget(params.cid)) then doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 2) else end end local function damage(params) if isMonster(getCreatureTarget(params.cid)) then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68) else end end addEvent(damage, 100, {cid = cid}) addEvent(throw, 0, {cid = cid}) return 0 elseif pokemon.x.spell == "Restore" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 14) doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3)))) doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 35) return 0 elseif pokemon.x.spell == "Acid" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 14) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 20) return 0 elseif pokemon.x.spell == "Thundershock" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 40) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48) return 0 elseif pokemon.x.spell == "Water Pulse" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local function throw(params) if isMonster(getCreatureTarget(params.cid)) then doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 33) else end end local function damage(params) if isMonster(getCreatureTarget(params.cid)) then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68) else end end addEvent(throw, 0, {cid = cid}) addEvent(damage, 0, {cid = cid}) return 0 elseif pokemon.x.spell == "Mega Punch" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 112) return 0 elseif pokemon.x.spell == "String Shot" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) setPlayerStorageValue(getCreatureTarget(cid), 3, 1) local alvo = getCreatureTarget(cid) doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 23) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 137) local function string(params) if isCreature(params.alvo) then if getPlayerStorageValue(params.alvo, 3) >= 1 then doSendMagicEffect(getThingPos(params.alvo), 137) end end end local function normalstr(params) if isCreature(params.alvo) then if getPlayerStorageValue(params.alvo, 3) >= 1 then setPlayerStorageValue(params.alvo, 3, -1) end end end addEvent(string, 250, {alvo = alvo}) addEvent(string, 500, {alvo = alvo}) addEvent(string, 750, {alvo = alvo}) addEvent(string, 1000, {alvo = alvo}) addEvent(string, 1250, {alvo = alvo}) addEvent(string, 1500, {alvo = alvo}) addEvent(string, 1750, {alvo = alvo}) addEvent(string, 2000, {alvo = alvo}) addEvent(string, 2250, {alvo = alvo}) addEvent(string, 2500, {alvo = alvo}) addEvent(string, 2750, {alvo = alvo}) addEvent(string, 3000, {alvo = alvo}) addEvent(normalstr, 3050, {alvo = alvo}) return 0 end return 0 end move4.lua local nao = {'4820', '4821', '4822', '4823', '4824', '4825', '1395', '1389', '1391', '1393', '460'} local imp = {'919', '4468', '4469', '4470', '4471', '4472', '4473', '4474', '4475', '4476', '4477', '4478', '4479', '4480', '4481', '4482', '4483', '4484', '4485', '4486', '4487', '4488', '4489', '4490', '4491', '4492', '4493', '4494', '4495', '4496', '4497', '4498', '4499', '4500', '4501', '4502', '4503', '4504', '4505', '4506', '4507', '4508', '4509', '4510', '4511', '4512', '4513', '4826', '4827', '873', '874', '875', '876', '877', '878', '903', '904', '905', '906', '907', '908', '909', '910', '911', '912', '913'} local waba = createCombatArea{ {0, 1, 1, 1, 0}, {1, 1, 1, 1, 1}, {1, 1, 3, 1, 1}, {1, 1, 1, 1, 1}, {0, 1, 1, 1, 0} } local rollout = createCombatArea{ {1, 1, 1}, {1, 2, 1}, {1, 1, 1}, } local golem = {lookType = 288} local sandslash = {lookType = 285} local sandshrew = {lookType = 284} local electrode = {lookType = 286} local voltorb = {lookType = 287} -- WATER GUN local bomb = createCombatArea{ {0, 1, 0}, {1, 3, 1}, {0, 1, 0}, } local wg1n = createCombatArea{ {0, 0, 0}, {0, 2, 0}, {0, 1, 0}, } local wg2n = createCombatArea{ {0, 2, 0}, {0, 0, 0}, {0, 1, 0}, {0, 1, 0}, {0, 1, 0}, } local wg3n = createCombatArea{ {0, 2, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 1, 0}, } local wg1s = createCombatArea{ {0, 1, 0}, {0, 2, 0}, {0, 0, 0}, } local wg2s = createCombatArea{ {0, 1, 0}, {0, 1, 0}, {0, 1, 0}, {0, 0, 0}, {0, 2, 0}, } local wg3s = createCombatArea{ {0, 1, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 2, 0}, } local wg1e = createCombatArea{ {0, 0, 0}, {1, 2, 0}, {0, 0, 0}, } local wg2e = createCombatArea{ {1, 1, 1, 0, 2}, } local wg3e = createCombatArea{ {1, 0, 0, 0, 0, 2}, } local wg1w = createCombatArea{ {0, 0, 0}, {0, 2, 1}, {0, 0, 0}, } local wg2w = createCombatArea{ {2, 0, 1, 1, 1}, } local wg3w = createCombatArea{ {2, 0, 0, 0, 0, 1}, } -- WATER GUN END local vinen = createCombatArea{ {0, 0, 0}, {0, 0, 0}, {0, 2, 0}, {1, 0, 0} } local vines = createCombatArea{ {0, 0, 0}, {1, 0, 0}, {0, 0, 0}, {0, 2, 0} } local vinee = createCombatArea{ {0, 0, 0}, {1, 0, 0}, {0, 0, 2}, {0, 0, 0} } local vinew = createCombatArea{ {0, 0, 0}, {0, 0, 3}, {0, 2, 0}, {0, 0, 0} } local whipn = createCombatArea{ {0, 0, 0}, {0, 2, 0}, {1, 1, 1}, {1, 1, 1} } local whips = createCombatArea{ {1, 1, 1}, {1, 1, 1}, {0, 2, 0}, {0, 0, 0} } local whipe = createCombatArea{ {1, 1, 0}, {1, 1, 2}, {1, 1, 0}, {0, 0, 0} } local whipw = createCombatArea{ {0, 1, 1}, {2, 1, 1}, {0, 1, 1}, {0, 0, 0} } local sand1 = createCombatArea{ {0, 0, 0}, {0, 3, 0}, {0, 0, 0}, } local whirl3 = createCombatArea{ {0, 0, 0}, {1, 3, 1}, {0, 0, 0}, } local whirl5 = createCombatArea{ {0, 0, 0, 0, 0}, {1, 1, 3, 1, 1}, {0, 0, 0, 0, 0}, } local whirl32 = createCombatArea{ {0, 0, 0}, {1, 3, 1}, {0, 0, 0}, } local whirl52 = createCombatArea{ {0, 0, 0, 0, 0}, {1, 1, 3, 1, 1}, {0, 0, 0, 0, 0}, } local pokeis = {'Pidgey', 'Pidgeotto', 'Pidgeot', 'Rattata', 'Raticate', 'Golbat', 'Bellsprout', 'Weepinbell', 'Victreebel', 'Poliwag', 'Poliwhirl', 'Poliwrath', 'Abra', 'Gloom', 'Vileplume', 'Horsea', 'Seadra', 'Grimer', 'Muk', 'Kakuna', 'Beedrill', 'Zubat', 'Magnemite', 'Magneton', 'Voltorb', 'Electrode', 'Geodude', 'Graveler', 'Golem', 'Sandshrew', 'Sandslash'} local c = { [30] = {x = { pok = pidgey, spell = "Gust", minLv = 12, ex = 1600004, base1 = 40, base2 = 50, dista = 50, bonus = 4, target = "no", type = "flying", cd = 15 } }, [5] = {x = { pok = pidgeotto, spell = "Whirlwind", minLv = 22, ex = 1700004, base1 = 100, base2 = 101, dista = 50, bonus = 4, target = "no", type = "flying", cd = 17 } }, [80] = {x = { pok = pidgeot, spell = "Whirlwind", minLv = 65, ex = 1800004, base1 = 200, base2 = 210, dista = 4, target = "no", bonus = 5.5, type = "flying", cd = 17 } }, [36] = {x = { pok = rattata, spell = "Hyper Fang", minLv = 11, ex = 1900004, base1 = 40, base2 = 50, dista = 1, bonus = 4, type = "normal", cd = 19 } }, [69] = {x = { pok = raticate, spell = "Hyper Fang", minLv = 23, ex = 2000004, base1 = 150, base2 = 160, dista = 1, bonus = 5, type = "normal", cd = 19 } }, [122] = {x = { pok = golbat, spell = "Whirlwind", minLv = 32, ex = 4200004, base1 = 200, base2 = 220, dista = 4, target = "no", bonus = 50, type = "flying", cd = 20 } }, [250] = {x = { pok = bellsprout, spell = "Vine Whip", minLv = 12, ex = 6900004, base1 = 50, base2 = 60, dista = 2, target = "no", bonus = 3.5, type = "grass", cd = 19 } }, [37] = {x = { pok = weepinbell, spell = "Vine Whip", minLv = 20, ex = 7000004, base1 = 120, base2 = 150, target = "no", dista = 2, bonus = 4.5, type = "grass", cd = 19 } }, [240] = {x = { pok = bictreebel, spell = "Vine Whip", minLv = 50, ex = 7100004, base1 = 230, base2 = 280, dista = 2, target = "no", bonus = 6.5, type = "grass", cd = 19 } }, [111] = {x = { pok = poliwag, spell = "Water Gun", minLv = 13, ex = 6000004, base1 = 45, base2 = 50, target = "no", dista = 2, bonus = 4, type = "water", cd = 19 } }, [212] = {x = { pok = poliwhirl, spell = "Water Gun", minLv = 25, ex = 6100004, base1 = 185, target = "no", base2 = 200, dista = 2, bonus = 5, type = "water", cd = 19 } }, [104] = {x = { pok = poliwrath, spell = "Water Gun", minLv = 25, ex = 6200004, base1 = 685, base2 = 700, dista = 2, bonus = 6, target = "no", type = "water", cd = 19 } }, [262] = {x = { pok = abra, spell = "Psycho Shift", minLv = 24, ex = 6300004, base1 = 115, base2 = 120, dista = 10, bonus = 5, type = "psychic", cd = 24 } }, [74] = {x = { pk = gloom, spell = "Poison Bomb", minLv = 22, ex = 4400004, base1 = 101, base2 = 103, dista = 4, bonus = 5, type = "poison", cd = 25 } }, [86] = {x = { pok = vileplume, spell = "Poison Bomb", minLv = 50, ex = 4500004, base1 = 200, base2 = 201, dista = 4, bonus = 6, type = "poison", cd = 25 } }, [33] = {x = { pok = horsea, spell = "Waterball", minLv = 16, ex = 1160004, base1 = 50, base2 = 60, dista = 4, bonus = 4.7, type = "water", cd = 17 } }, [276] = {x = { pok = seadra, spell = "Waterball", minLv = 46, ex = 1170004, base1 = 190, base2 = 200, dista = 4, bonus = 5.7, type = "water", cd = 17 } }, [214] = {x = { pok = grimer, spell = "Poison Bomb", minLv = 16, ex = 8800004, base1 = 85, base2 = 92, dista = 4, bonus = 6, type = "poison", cd = 17 } }, [47] = {x = { pok = muk, spell = "Poison Bomb", minLv = 32, ex = 8900004, base1 = 285, base2 = 292, dista = 4, bonus = 6, type = "poison", cd = 17 } }, [60] = {x = { pok = kakuna, spell = "Harden", minLv = 10, ex = 1400004, lpl = 32, life = 900, base1 = 0, target = "no", base2 = 0, dista = 100, bonus = 0, type = "normal", cd = 17 } }, [45] = {x = { pok = beedrill, spell = "Toxic Needle", minLv = 32, ex = 1500004, base1 = 100, base2 = 110, dista = 4, bonus = 5, type = "poison", cd = 16 } }, [44] = {x = { pok = zubat, spell = "Super Sonic", minLv = 11, ex = 4100004, base1 = 0, base2 = 0, dista = 4, bonus = 0, type = "normal", cd = 16 } }, [217] = {x = { pok = magnemite, spell = "Thunderbolt", minLv = 17, ex = 8100004, base1 = 65, base2 = 85, dista = 5, bonus = 5.4, type = "electric", cd = 18 } }, [223] = {x = { pok = magneton, spell = "Thunderbolt", minLv = 1, ex = 8200004, base1 = 160, base2 = 180, dista = 5, bonus = 7, type = "electric", cd = 18 } }, [123] = {x = { pok = voltorb, spell = "Rollout", minLv = 17, ex = 1000004, base1 = 30, base2 = 31, dista = 2, target = "no", bonus = 0.4, type = "ground", cd = 33 } }, [287] = {x = { pok = voltorb, spell = "Rollout", minLv = 17, ex = 1000004, base1 = 20, base2 = 21, dista = 2, target = "no", bonus = 0.5, type = "ground", cd = 33 } }, [125] = {x = { pok = electrode, spell = "Rollout", minLv = 39, ex = 1010004, base1 = 45, base2 = 46, dista = 2, target = "no", bonus = 1, type = "ground", cd = 33 } }, [286] = {x = { pok = electroderoll, spell = "Rollout", minLv = 39, ex = 1010004, base1 = 45, base2 = 46, dista = 2, target = "no", bonus = 1, type = "ground", cd = 33 } }, [196] = {x = { pok = Geodude, spell = "Harden", minLv = 17, ex = 7400004, base1 = 0, target = "no", base2 = 0, dista = 100, bonus = 0, type = "normal", cd = 17 } }, [247] = {x = { pok = Graveler, spell = "Harden", minLv = 17, ex = 7500004, base1 = 0, target = "no", base2 = 0, dista = 100, bonus = 0, type = "normal", cd = 17 } }, [116] = {x = { pok = Golem, spell = "Harden", minLv = 17, ex = 7600004, base1 = 0, target = "no", base2 = 0, dista = 100, bonus = 0, type = "normal", cd = 17 } }, [288] = {x = { pok = Golem, spell = "Harden", minLv = 17, ex = 7600004, base1 = 0, target = "no", base2 = 0, dista = 100, bonus = 0, type = "normal", cd = 17 } }, [43] = {x = { pok = sandshrew, spell = "Rollout", minLv = 1, ex = 2700004, base1 = 40, base2 = 41, dista = 1, target = "no", bonus = 0.6, type = "ground", cd = 28 } }, [284] = {x = { pok = sandshrew, spell = "Rollout", minLv = 1, ex = 2700004, base1 = 40, base2 = 41, dista = 1, target = "no", bonus = 0.6, type = "ground", cd = 28 } }, [115] = {x = { pok = sandslash, spell = "Rollout", minLv = 57, ex = 2800004, base1 = 60, base2 = 61, dista = 1, target = "no", bonus = 1.6, type = "ground", cd = 28 } }, [285] = {x = { pok = sandslash, spell = "Rollout", minLv = 57, ex = 2800004, base1 = 60, base2 = 61, dista = 1, target = "no", bonus = 1.6, type = "ground", cd = 28 } }, } function onSay(cid) if #getCreatureSummons(cid) == 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Kade seu pokemon?") return 0 end if not isInArray(pokeis, getCreatureName(getCreatureSummons(cid)[1])) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu poke nao reconhece este ataque.") return 0 end pokemon = c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType] if getPlayerLevel(cid) < c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.minLv then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce ainda nao tem level.") return 0 end if exhaustion.get(cid, pokemon.x.ex) then seconds = math.floor(((exhaustion.get(cid, pokemon.x.ex)) + 1)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Spera + "..seconds.." segundos para soltar de novo.") return 0 end if getPlayerStorageValue(getCreatureSummons(cid)[1], 3) >= 1 then doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "MISS", 215) setPlayerStorageValue(getCreatureSummons(cid)[1], 3, -1) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) return true end if getPlayerStorageValue(getCreatureSummons(cid)[1], 5) >= 1 then if math.random(1,100) <= 33 then doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "SELF HIT", 180) local levels = getPlayerLevel(cid) doTargetCombatHealth(cid, getCreatureSummons(cid)[1], COMBAT_PHYSICALDAMAGE, -(math.random((levels*3),(levels*5))), -((math.random((levels*3),(levels*5))+10)), 3) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) return true end end if pokemon.x.target ~= "no" then if not isMonster(getCreatureTarget(cid)) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have any targets.") return 0 end if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid))) > pokemon.x.dista then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Get closer to the target to use this move.") return 0 end if not isSightClear(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), false) then return 0 end end if pokemon.x.type == "flying" then elementa = FLYDAMAGE elseif pokemon.x.type == "ground" then elementa = GROUNDDAMAGE elseif pokemon.x.type == "electric" then elementa = ELECTRICDAMAGE elseif pokemon.x.type == "ghost" then elementa = GHOSTDAMAGE elseif pokemon.x.type == "normal" then elementa = NORMALDAMAGE elseif pokemon.x.type == "fighting" then elementa = FIGHTINGDAMAGE elseif pokemon.x.type == "poison" then elementa = POISONDAMAGE elseif pokemon.x.type == "rock" then elementa = ROCKDAMAGE elseif pokemon.x.type == "bug" then elementa = BUGDAMAGE elseif pokemon.x.type == "fire" then elementa = FIREDAMAGE elseif pokemon.x.type == "water" then elementa = WATERDAMAGE elseif pokemon.x.type == "grass" then elementa = GRASSDAMAGE elseif pokemon.x.type == "psychic" then elementa = PSYCHICDAMAGE elseif pokemon.x.type == "ice" then elementa = ICEDAMAGE elseif pokemon.x.type == "dragon" then elementa = DRAGONDAMAGE end local element = elementa local num1 = (pokemon.x.base1) local num2 = (pokemon.x.base2) local num3 = (pokemon.x.bonus) setPlayerStorageValue(getCreatureSummons(cid)[1], 1000, ((num1)+(getPlayerLevel(cid)*(num3)))) if pokemon.x.spell == "Water Gun" then if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 74) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 76) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 77) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 78) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 69) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 71) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 72) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 73) end doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) return 0 elseif pokemon.x.spell == "Gust" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) posit = getThingPos(getCreatureSummons(cid)[1]) local function gust(params) if #getCreatureSummons(params.cid) >= 1 then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, sand1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42) else end end local posicao = getThingPos(getCreatureSummons(cid)[1]) if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}}) addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}}) addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}}) addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}}) addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}}) addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}}) addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then addEvent(gust, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}}) addEvent(gust, 500, {cid = cid, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}}) addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}}) addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then addEvent(gust, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}}) addEvent(gust, 500, {cid = cid, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}}) addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}}) addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}}) end return 0 elseif pokemon.x.spell == "Whirlwind" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) posit = getThingPos(getCreatureSummons(cid)[1]) local function gust(params) if #getCreatureSummons(params.cid) >= 1 then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, params.br, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42) else end end local posicao = getThingPos(getCreatureSummons(cid)[1]) if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}, br = sand1}) addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}, br = whirl3}) addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}, br = whirl5}) addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}, br = whirl5}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}, br = sand1}) addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}, br = whirl3}) addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}, br = whirl5}) addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}, br = whirl5}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then addEvent(gust, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}, br = sand1}) addEvent(gust, 500, {cid = cid, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}, br = whirl32}) addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}, br = whirl52}) addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}, br = whirl52}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then addEvent(gust, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}, br = sand1}) addEvent(gust, 500, {cid = cid, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}, br = whirl32}) addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}, br = whirl52}) addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}, br = whirl52}) end return 0 elseif pokemon.x.spell == "Hyper Fang" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), 159) return 0 elseif pokemon.x.spell == "Rollout" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) if getCreatureName(getCreatureSummons(cid)[1]) == "Voltorb" then doSetCreatureOutfit(getCreatureSummons(cid)[1], voltorb, 8300) doChangeSpeed(getCreatureSummons(cid)[1], 85) elseif getCreatureName(getCreatureSummons(cid)[1]) == "Electrode" then doSetCreatureOutfit(getCreatureSummons(cid)[1], electrode, 8300) doChangeSpeed(getCreatureSummons(cid)[1], 101) elseif getCreatureName(getCreatureSummons(cid)[1]) == "Sandshrew" then doSetCreatureOutfit(getCreatureSummons(cid)[1], sandshrew, 8300) doChangeSpeed(getCreatureSummons(cid)[1], 93) elseif getCreatureName(getCreatureSummons(cid)[1]) == "Sandslash" then doSetCreatureOutfit(getCreatureSummons(cid)[1], sandslash, 8300) doChangeSpeed(getCreatureSummons(cid)[1], 143) end setPlayerStorageValue(getCreatureSummons(cid)[1], 4, 1) local function roll(params) if isCreature(params.cid) then if isCreature(getCreatureSummons(params.cid)[1]) then if getCreatureCondition(getCreatureSummons(params.cid)[1], CONDITION_OUTFIT) == true then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), rollout, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), 255) end end end end for r = 1, 8 do addEvent(roll, 1000*r, {cid = cid}) end local function stoproll(params) if isCreature(params.cid) then if isCreature(getCreatureSummons(params.cid)[1]) then doChangeSpeed(getCreatureSummons(params.cid)[1], -101) if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then setPlayerStorageValue(getCreatureSummons(params.cid)[1], 4, 0) end end end end addEvent(stoproll, 8300, {cid = cid}) return 0 elseif pokemon.x.spell == "Vine Whip" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then area = vinen dano = whipn effect = 80 elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then area = vinee dano = whipe effect = 83 elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then area = vines dano = whips effect = 81 elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then area = vinew dano = whipw effect = 82 end doAreaCombatHealth(getCreatureSummons(cid)[1], null, getThingPos(getCreatureSummons(cid)[1]), area, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), effect) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), dano, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), 255) return 0 elseif pokemon.x.spell == "Water Gun" then if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 74) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 76) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 77) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 78) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 69) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 71) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 72) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 73) end doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) return 0 elseif pokemon.x.spell == "Psycho Shift" then targetpos = getThingPos(getCreatureTarget(cid)) targetposss = getThingPos(getCreatureTarget(cid)) if math.random(1,100) >= 51 then targetpos.x = targetpos.x+2 else targetpos.x = targetpos.x-2 end if math.random(1,100) >= 51 then targetpos.y = targetpos.y-2 else targetpos.y = targetpos.y+2 end local tile = getTileThingByPos(targetpos).itemid if getThingPos(cid).z > 7 then if isWalkable(targetpos, cid, 0, 0) then doTeleportThing(getCreatureTarget(cid), targetpos) doAreaCombatHealth(getCreatureSummons(cid)[1], element, targetpos, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134) doSendMagicEffect(targetpos, 12) else doAreaCombatHealth(getCreatureSummons(cid)[1], element, targetposss, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134) doSendMagicEffect(targetposss, 12) end else if not isInArray(imp, tile) then if not isInArray(imp, getTileThingByPos(targetpos).itemid) then doTeleportThing(getCreatureTarget(cid), targetpos) doAreaCombatHealth(getCreatureSummons(cid)[1], element, targetpos, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134) doSendMagicEffect(targetpos, 12) else doAreaCombatHealth(getCreatureSummons(cid)[1], element, targetposss, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134) doSendMagicEffect(targetposss, 12) end else doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134) doSendMagicEffect(targetposss, 12) end end doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) return 0 elseif pokemon.x.spell == "Poison Bomb" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) addEvent(doAreaCombatHealth, 100, getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), bomb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114) doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 14) return 0 elseif pokemon.x.spell == "Waterball" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local function throw(params) if isMonster(getCreatureTarget(params.cid)) then doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 2) else end end local function damage(params) if isMonster(getCreatureTarget(params.cid)) then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68) else end end addEvent(damage, 100, {cid = cid}) addEvent(throw, 0, {cid = cid}) return 0 elseif pokemon.x.spell == "Harden" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local hardname = getCreatureName(getCreatureSummons(cid)[1]) setPlayerStorageValue(getCreatureSummons(cid)[1], 4, 1) local oldpos = getThingPos(getCreatureSummons(cid)[1]) local function efect(params) if isCreature(getCreatureSummons(params.cid)[1]) then if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then doSendMagicEffect(getThingPos(getCreatureSummons(params.cid)[1]), 144) end end end local function chard(params) if isCreature(getCreatureSummons(params.cid)[1]) then if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then setPlayerStorageValue(getCreatureSummons(params.cid)[1], 4, -1) end end end addEvent(efect, 100, {cid = cid, hardname = hardname}) addEvent(efect, 1600, {cid = cid, hardname = hardname}) addEvent(efect, 3100, {cid = cid, hardname = hardname}) addEvent(efect, 4600, {cid = cid, hardname = hardname}) addEvent(efect, 6100, {cid = cid, hardname = hardname}) addEvent(efect, 7600, {cid = cid, hardname = hardname}) addEvent(efect, 9100, {cid = cid, hardname = hardname}) addEvent(efect, 10600, {cid = cid, hardname = hardname}) addEvent(chard, 11000, {cid = cid}) return 0 elseif pokemon.x.spell == "Toxic Needle" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 15) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 8) return 0 elseif pokemon.x.spell == "Thunderbolt" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local posalvo = getThingPos(getCreatureTarget(cid)) local boltalvo = getCreatureTarget(cid) posalvo.x = posalvo.x-2 posalvo.y = posalvo.y-6 doSendDistanceShoot(posalvo, getThingPos(getCreatureTarget(cid)), 41) local function bolt(params) if isCreature(params.cid) then if isCreature(getCreatureTarget(cid)) then if getCreatureTarget(params.cid) == params.boltalvo then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48) end end end end addEvent(bolt, 200, {cid = cid, boltalvo = boltalvo}) return 0 elseif pokemon.x.spell == "Super Sonic" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local t = getCreatureTarget(cid) setPlayerStorageValue(t, 5, 1) local function confused(params) if isCreature(params.t) then local spdc = getCreatureSpeed(params.t) if getCreatureLookDir(params.t) == 0 then confs = math.random(1,3) elseif getCreatureLookDir(params.t) == 1 then confurandom = math.random(1,99) if confurandom <= 33 then confs = 0 elseif confurandom >= 67 then confs = 2 else confs = 3 end elseif getCreatureLookDir(params.t) == 2 then confurandom = math.random(1,99) if confurandom <= 33 then confs = 3 elseif confurandom >= 67 then confs = 0 else confs = 1 end elseif getCreatureLookDir(params.t) == 3 then confs = math.random(0,2) end doPushCreature(params.t, confs, 1, 0) doSendMagicEffect(getThingPos(params.t), 31) end end local function nonc(params) if isCreature(params.t) then doChangeSpeed(params.t, -getCreatureSpeed(params.t)) doChangeSpeed(params.t, getCreatureBaseSpeed(params.t)) setPlayerStorageValue(params.t, 5, -1) end end doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 32) doChangeSpeed(t, -( getCreatureSpeed(t)/3)) doSendMagicEffect(getThingPos(t), 31) for i = 1, math.random(6,7) do addEvent(confused, 1000*i, {cid = cid, t = t}) end addEvent(nonc, 7100, {cid - cid, t = t}) return 0 end return 0 end move5.lua local nao = {'4820', '4821', '4822', '4823', '4824', '4825', '1395', '1389', '1391', '1393', '460'} local imp = {'919', '4468', '4469', '4470', '4471', '4472', '4473', '4474', '4475', '4476', '4477', '4478', '4479', '4480', '4481', '4482', '4483', '4484', '4485', '4486', '4487', '4488', '4489', '4490', '4491', '4492', '4493', '4494', '4495', '4496', '4497', '4498', '4499', '4500', '4501', '4502', '4503', '4504', '4505', '4506', '4507', '4508', '4509', '4510', '4511', '4512', '4513', '4826', '4827', '873', '874', '875', '876', '877', '878', '903', '904', '905', '906', '907', '908', '909', '910', '911', '912', '913'} local waba = createCombatArea{ {0, 1, 1, 1, 0}, {1, 1, 1, 1, 1}, {1, 1, 3, 1, 1}, {1, 1, 1, 1, 1}, {0, 1, 1, 1, 0} } local rollout = createCombatArea{ {1, 1, 1}, {1, 2, 1}, {1, 1, 1}, } local golem = {lookType = 288} local sandslash = {lookType = 285} local sandshrew = {lookType = 284} local electrode = {lookType = 286} local voltorb = {lookType = 287} -- WATER GUN local bomb = createCombatArea{ {0, 1, 0}, {1, 3, 1}, {0, 1, 0}, } local wg1n = createCombatArea{ {0, 0, 0}, {0, 2, 0}, {0, 1, 0}, } local wg2n = createCombatArea{ {0, 2, 0}, {0, 0, 0}, {0, 1, 0}, {0, 1, 0}, {0, 1, 0}, } local wg3n = createCombatArea{ {0, 2, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 1, 0}, } local wg1s = createCombatArea{ {0, 1, 0}, {0, 2, 0}, {0, 0, 0}, } local wg2s = createCombatArea{ {0, 1, 0}, {0, 1, 0}, {0, 1, 0}, {0, 0, 0}, {0, 2, 0}, } local wg3s = createCombatArea{ {0, 1, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 2, 0}, } local wg1e = createCombatArea{ {0, 0, 0}, {1, 2, 0}, {0, 0, 0}, } local wg2e = createCombatArea{ {1, 1, 1, 0, 2}, } local wg3e = createCombatArea{ {1, 0, 0, 0, 0, 2}, } local wg1w = createCombatArea{ {0, 0, 0}, {0, 2, 1}, {0, 0, 0}, } local wg2w = createCombatArea{ {2, 0, 1, 1, 1}, } local wg3w = createCombatArea{ {2, 0, 0, 0, 0, 1}, } -- WATER GUN END local vinen = createCombatArea{ {0, 0, 0}, {0, 0, 0}, {0, 2, 0}, {1, 0, 0} } local vines = createCombatArea{ {0, 0, 0}, {1, 0, 0}, {0, 0, 0}, {0, 2, 0} } local vinee = createCombatArea{ {0, 0, 0}, {1, 0, 0}, {0, 0, 2}, {0, 0, 0} } local vinew = createCombatArea{ {0, 0, 0}, {0, 0, 3}, {0, 2, 0}, {0, 0, 0} } local whipn = createCombatArea{ {0, 0, 0}, {0, 2, 0}, {1, 1, 1}, {1, 1, 1} } local whips = createCombatArea{ {1, 1, 1}, {1, 1, 1}, {0, 2, 0}, {0, 0, 0} } local whipe = createCombatArea{ {1, 1, 0}, {1, 1, 2}, {1, 1, 0}, {0, 0, 0} } local whipw = createCombatArea{ {0, 1, 1}, {2, 1, 1}, {0, 1, 1}, {0, 0, 0} } local sand1 = createCombatArea{ {0, 0, 0}, {0, 3, 0}, {0, 0, 0}, } local whirl3 = createCombatArea{ {0, 0, 0}, {1, 3, 1}, {0, 0, 0}, } local whirl5 = createCombatArea{ {0, 0, 0, 0, 0}, {1, 1, 3, 1, 1}, {0, 0, 0, 0, 0}, } local whirl32 = createCombatArea{ {0, 0, 0}, {1, 3, 1}, {0, 0, 0}, } local whirl52 = createCombatArea{ {0, 0, 0, 0, 0}, {1, 1, 3, 1, 1}, {0, 0, 0, 0, 0}, } local pokeis = {'Pidgey', 'Pidgeotto', 'Pidgeot', 'Rattata', 'Raticate', 'Golbat', 'Bellsprout', 'Weepinbell', 'Victreebel', 'Poliwag', 'Poliwhirl', 'Poliwrath', 'Abra', 'Gloom', 'Vileplume', 'Horsea', 'Seadra', 'Grimer', 'Muk', 'Kakuna', 'Beedrill', 'Zubat', 'Magnemite', 'Magneton', 'Voltorb', 'Electrode', 'Geodude', 'Graveler', 'Golem', 'Sandshrew', 'Sandslash'} local c = { [30] = {x = { pok = pidgey, spell = "Gust", minLv = 12, ex = 1600004, base1 = 40, base2 = 50, dista = 50, bonus = 4, target = "no", type = "flying", cd = 15 } }, [5] = {x = { pok = pidgeotto, spell = "Whirlwind", minLv = 22, ex = 1700004, base1 = 100, base2 = 101, dista = 50, bonus = 4, target = "no", type = "flying", cd = 17 } }, [80] = {x = { pok = pidgeot, spell = "Whirlwind", minLv = 65, ex = 1800004, base1 = 200, base2 = 210, dista = 4, target = "no", bonus = 5.5, type = "flying", cd = 17 } }, [36] = {x = { pok = rattata, spell = "Hyper Fang", minLv = 11, ex = 1900004, base1 = 40, base2 = 50, dista = 1, bonus = 4, type = "normal", cd = 19 } }, [69] = {x = { pok = raticate, spell = "Hyper Fang", minLv = 23, ex = 2000004, base1 = 150, base2 = 160, dista = 1, bonus = 5, type = "normal", cd = 19 } }, [122] = {x = { pok = golbat, spell = "Whirlwind", minLv = 32, ex = 4200004, base1 = 200, base2 = 220, dista = 4, target = "no", bonus = 50, type = "flying", cd = 20 } }, [250] = {x = { pok = bellsprout, spell = "Vine Whip", minLv = 12, ex = 6900004, base1 = 50, base2 = 60, dista = 2, target = "no", bonus = 3.5, type = "grass", cd = 19 } }, [37] = {x = { pok = weepinbell, spell = "Vine Whip", minLv = 20, ex = 7000004, base1 = 120, base2 = 150, target = "no", dista = 2, bonus = 4.5, type = "grass", cd = 19 } }, [240] = {x = { pok = bictreebel, spell = "Vine Whip", minLv = 50, ex = 7100004, base1 = 230, base2 = 280, dista = 2, target = "no", bonus = 6.5, type = "grass", cd = 19 } }, [111] = {x = { pok = poliwag, spell = "Water Gun", minLv = 13, ex = 6000004, base1 = 45, base2 = 50, target = "no", dista = 2, bonus = 4, type = "water", cd = 19 } }, [212] = {x = { pok = poliwhirl, spell = "Water Gun", minLv = 25, ex = 6100004, base1 = 185, target = "no", base2 = 200, dista = 2, bonus = 5, type = "water", cd = 19 } }, [104] = {x = { pok = poliwrath, spell = "Water Gun", minLv = 25, ex = 6200004, base1 = 685, base2 = 700, dista = 2, bonus = 6, target = "no", type = "water", cd = 19 } }, [262] = {x = { pok = abra, spell = "Psycho Shift", minLv = 24, ex = 6300004, base1 = 115, base2 = 120, dista = 10, bonus = 5, type = "psychic", cd = 24 } }, [74] = {x = { pk = gloom, spell = "Poison Bomb", minLv = 22, ex = 4400004, base1 = 101, base2 = 103, dista = 4, bonus = 5, type = "poison", cd = 25 } }, [86] = {x = { pok = vileplume, spell = "Poison Bomb", minLv = 50, ex = 4500004, base1 = 200, base2 = 201, dista = 4, bonus = 6, type = "poison", cd = 25 } }, [33] = {x = { pok = horsea, spell = "Waterball", minLv = 16, ex = 1160004, base1 = 50, base2 = 60, dista = 4, bonus = 4.7, type = "water", cd = 17 } }, [276] = {x = { pok = seadra, spell = "Waterball", minLv = 46, ex = 1170004, base1 = 190, base2 = 200, dista = 4, bonus = 5.7, type = "water", cd = 17 } }, [214] = {x = { pok = grimer, spell = "Poison Bomb", minLv = 16, ex = 8800004, base1 = 85, base2 = 92, dista = 4, bonus = 6, type = "poison", cd = 17 } }, [47] = {x = { pok = muk, spell = "Poison Bomb", minLv = 32, ex = 8900004, base1 = 285, base2 = 292, dista = 4, bonus = 6, type = "poison", cd = 17 } }, [60] = {x = { pok = kakuna, spell = "Harden", minLv = 10, ex = 1400004, lpl = 32, life = 900, base1 = 0, target = "no", base2 = 0, dista = 100, bonus = 0, type = "normal", cd = 17 } }, [45] = {x = { pok = beedrill, spell = "Toxic Needle", minLv = 32, ex = 1500004, base1 = 100, base2 = 110, dista = 4, bonus = 5, type = "poison", cd = 16 } }, [44] = {x = { pok = zubat, spell = "Super Sonic", minLv = 11, ex = 4100004, base1 = 0, base2 = 0, dista = 4, bonus = 0, type = "normal", cd = 16 } }, [217] = {x = { pok = magnemite, spell = "Thunderbolt", minLv = 17, ex = 8100004, base1 = 65, base2 = 85, dista = 5, bonus = 5.4, type = "electric", cd = 18 } }, [223] = {x = { pok = magneton, spell = "Thunderbolt", minLv = 1, ex = 8200004, base1 = 160, base2 = 180, dista = 5, bonus = 7, type = "electric", cd = 18 } }, [123] = {x = { pok = voltorb, spell = "Rollout", minLv = 17, ex = 1000004, base1 = 30, base2 = 31, dista = 2, target = "no", bonus = 0.4, type = "ground", cd = 33 } }, [287] = {x = { pok = voltorb, spell = "Rollout", minLv = 17, ex = 1000004, base1 = 20, base2 = 21, dista = 2, target = "no", bonus = 0.5, type = "ground", cd = 33 } }, [125] = {x = { pok = electrode, spell = "Rollout", minLv = 39, ex = 1010004, base1 = 45, base2 = 46, dista = 2, target = "no", bonus = 1, type = "ground", cd = 33 } }, [286] = {x = { pok = electroderoll, spell = "Rollout", minLv = 39, ex = 1010004, base1 = 45, base2 = 46, dista = 2, target = "no", bonus = 1, type = "ground", cd = 33 } }, [196] = {x = { pok = Geodude, spell = "Harden", minLv = 17, ex = 7400004, base1 = 0, target = "no", base2 = 0, dista = 100, bonus = 0, type = "normal", cd = 17 } }, [247] = {x = { pok = Graveler, spell = "Harden", minLv = 17, ex = 7500004, base1 = 0, target = "no", base2 = 0, dista = 100, bonus = 0, type = "normal", cd = 17 } }, [116] = {x = { pok = Golem, spell = "Harden", minLv = 17, ex = 7600004, base1 = 0, target = "no", base2 = 0, dista = 100, bonus = 0, type = "normal", cd = 17 } }, [288] = {x = { pok = Golem, spell = "Harden", minLv = 17, ex = 7600004, base1 = 0, target = "no", base2 = 0, dista = 100, bonus = 0, type = "normal", cd = 17 } }, [43] = {x = { pok = sandshrew, spell = "Rollout", minLv = 1, ex = 2700004, base1 = 40, base2 = 41, dista = 1, target = "no", bonus = 0.6, type = "ground", cd = 28 } }, [284] = {x = { pok = sandshrew, spell = "Rollout", minLv = 1, ex = 2700004, base1 = 40, base2 = 41, dista = 1, target = "no", bonus = 0.6, type = "ground", cd = 28 } }, [115] = {x = { pok = sandslash, spell = "Rollout", minLv = 57, ex = 2800004, base1 = 60, base2 = 61, dista = 1, target = "no", bonus = 1.6, type = "ground", cd = 28 } }, [285] = {x = { pok = sandslash, spell = "Rollout", minLv = 57, ex = 2800004, base1 = 60, base2 = 61, dista = 1, target = "no", bonus = 1.6, type = "ground", cd = 28 } }, } function onSay(cid) if #getCreatureSummons(cid) == 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Kade seu pokemon?") return 0 end if not isInArray(pokeis, getCreatureName(getCreatureSummons(cid)[1])) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu poke nao reconhece este ataque.") return 0 end pokemon = c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType] if getPlayerLevel(cid) < c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.minLv then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce ainda nao tem level.") return 0 end if exhaustion.get(cid, pokemon.x.ex) then seconds = math.floor(((exhaustion.get(cid, pokemon.x.ex)) + 1)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Spera + "..seconds.." segundos para soltar de novo.") return 0 end if getPlayerStorageValue(getCreatureSummons(cid)[1], 3) >= 1 then doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "MISS", 215) setPlayerStorageValue(getCreatureSummons(cid)[1], 3, -1) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) return true end if getPlayerStorageValue(getCreatureSummons(cid)[1], 5) >= 1 then if math.random(1,100) <= 33 then doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "SELF HIT", 180) local levels = getPlayerLevel(cid) doTargetCombatHealth(cid, getCreatureSummons(cid)[1], COMBAT_PHYSICALDAMAGE, -(math.random((levels*3),(levels*5))), -((math.random((levels*3),(levels*5))+10)), 3) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) return true end end if pokemon.x.target ~= "no" then if not isMonster(getCreatureTarget(cid)) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have any targets.") return 0 end if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid))) > pokemon.x.dista then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Get closer to the target to use this move.") return 0 end if not isSightClear(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), false) then return 0 end end if pokemon.x.type == "flying" then elementa = FLYDAMAGE elseif pokemon.x.type == "ground" then elementa = GROUNDDAMAGE elseif pokemon.x.type == "electric" then elementa = ELECTRICDAMAGE elseif pokemon.x.type == "ghost" then elementa = GHOSTDAMAGE elseif pokemon.x.type == "normal" then elementa = NORMALDAMAGE elseif pokemon.x.type == "fighting" then elementa = FIGHTINGDAMAGE elseif pokemon.x.type == "poison" then elementa = POISONDAMAGE elseif pokemon.x.type == "rock" then elementa = ROCKDAMAGE elseif pokemon.x.type == "bug" then elementa = BUGDAMAGE elseif pokemon.x.type == "fire" then elementa = FIREDAMAGE elseif pokemon.x.type == "water" then elementa = WATERDAMAGE elseif pokemon.x.type == "grass" then elementa = GRASSDAMAGE elseif pokemon.x.type == "psychic" then elementa = PSYCHICDAMAGE elseif pokemon.x.type == "ice" then elementa = ICEDAMAGE elseif pokemon.x.type == "dragon" then elementa = DRAGONDAMAGE end local element = elementa local num1 = (pokemon.x.base1) local num2 = (pokemon.x.base2) local num3 = (pokemon.x.bonus) setPlayerStorageValue(getCreatureSummons(cid)[1], 1000, ((num1)+(getPlayerLevel(cid)*(num3)))) if pokemon.x.spell == "Water Gun" then if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 74) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 76) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 77) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 78) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 69) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 71) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 72) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 73) end doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) return 0 elseif pokemon.x.spell == "Gust" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) posit = getThingPos(getCreatureSummons(cid)[1]) local function gust(params) if #getCreatureSummons(params.cid) >= 1 then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, sand1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42) else end end local posicao = getThingPos(getCreatureSummons(cid)[1]) if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}}) addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}}) addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}}) addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}}) addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}}) addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}}) addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then addEvent(gust, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}}) addEvent(gust, 500, {cid = cid, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}}) addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}}) addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then addEvent(gust, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}}) addEvent(gust, 500, {cid = cid, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}}) addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}}) addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}}) end return 0 elseif pokemon.x.spell == "Whirlwind" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) posit = getThingPos(getCreatureSummons(cid)[1]) local function gust(params) if #getCreatureSummons(params.cid) >= 1 then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, params.br, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42) else end end local posicao = getThingPos(getCreatureSummons(cid)[1]) if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}, br = sand1}) addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}, br = whirl3}) addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}, br = whirl5}) addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}, br = whirl5}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}, br = sand1}) addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}, br = whirl3}) addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}, br = whirl5}) addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}, br = whirl5}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then addEvent(gust, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}, br = sand1}) addEvent(gust, 500, {cid = cid, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}, br = whirl32}) addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}, br = whirl52}) addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}, br = whirl52}) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then addEvent(gust, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}, br = sand1}) addEvent(gust, 500, {cid = cid, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}, br = whirl32}) addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}, br = whirl52}) addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}, br = whirl52}) end return 0 elseif pokemon.x.spell == "Hyper Fang" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), 159) return 0 elseif pokemon.x.spell == "Rollout" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) if getCreatureName(getCreatureSummons(cid)[1]) == "Voltorb" then doSetCreatureOutfit(getCreatureSummons(cid)[1], voltorb, 8300) doChangeSpeed(getCreatureSummons(cid)[1], 85) elseif getCreatureName(getCreatureSummons(cid)[1]) == "Electrode" then doSetCreatureOutfit(getCreatureSummons(cid)[1], electrode, 8300) doChangeSpeed(getCreatureSummons(cid)[1], 101) elseif getCreatureName(getCreatureSummons(cid)[1]) == "Sandshrew" then doSetCreatureOutfit(getCreatureSummons(cid)[1], sandshrew, 8300) doChangeSpeed(getCreatureSummons(cid)[1], 93) elseif getCreatureName(getCreatureSummons(cid)[1]) == "Sandslash" then doSetCreatureOutfit(getCreatureSummons(cid)[1], sandslash, 8300) doChangeSpeed(getCreatureSummons(cid)[1], 143) end setPlayerStorageValue(getCreatureSummons(cid)[1], 4, 1) local function roll(params) if isCreature(params.cid) then if isCreature(getCreatureSummons(params.cid)[1]) then if getCreatureCondition(getCreatureSummons(params.cid)[1], CONDITION_OUTFIT) == true then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), rollout, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), 255) end end end end for r = 1, 8 do addEvent(roll, 1000*r, {cid = cid}) end local function stoproll(params) if isCreature(params.cid) then if isCreature(getCreatureSummons(params.cid)[1]) then doChangeSpeed(getCreatureSummons(params.cid)[1], -101) if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then setPlayerStorageValue(getCreatureSummons(params.cid)[1], 4, 0) end end end end addEvent(stoproll, 8300, {cid = cid}) return 0 elseif pokemon.x.spell == "Vine Whip" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then area = vinen dano = whipn effect = 80 elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then area = vinee dano = whipe effect = 83 elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then area = vines dano = whips effect = 81 elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then area = vinew dano = whipw effect = 82 end doAreaCombatHealth(getCreatureSummons(cid)[1], null, getThingPos(getCreatureSummons(cid)[1]), area, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), effect) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), dano, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), 255) return 0 elseif pokemon.x.spell == "Water Gun" then if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 74) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 76) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 77) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 78) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 69) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 71) elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 72) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 73) end doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) return 0 elseif pokemon.x.spell == "Psycho Shift" then targetpos = getThingPos(getCreatureTarget(cid)) targetposss = getThingPos(getCreatureTarget(cid)) if math.random(1,100) >= 51 then targetpos.x = targetpos.x+2 else targetpos.x = targetpos.x-2 end if math.random(1,100) >= 51 then targetpos.y = targetpos.y-2 else targetpos.y = targetpos.y+2 end local tile = getTileThingByPos(targetpos).itemid if getThingPos(cid).z > 7 then if isWalkable(targetpos, cid, 0, 0) then doTeleportThing(getCreatureTarget(cid), targetpos) doAreaCombatHealth(getCreatureSummons(cid)[1], element, targetpos, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134) doSendMagicEffect(targetpos, 12) else doAreaCombatHealth(getCreatureSummons(cid)[1], element, targetposss, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134) doSendMagicEffect(targetposss, 12) end else if not isInArray(imp, tile) then if not isInArray(imp, getTileThingByPos(targetpos).itemid) then doTeleportThing(getCreatureTarget(cid), targetpos) doAreaCombatHealth(getCreatureSummons(cid)[1], element, targetpos, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134) doSendMagicEffect(targetpos, 12) else doAreaCombatHealth(getCreatureSummons(cid)[1], element, targetposss, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134) doSendMagicEffect(targetposss, 12) end else doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134) doSendMagicEffect(targetposss, 12) end end doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) return 0 elseif pokemon.x.spell == "Poison Bomb" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) addEvent(doAreaCombatHealth, 100, getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), bomb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114) doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 14) return 0 elseif pokemon.x.spell == "Waterball" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local function throw(params) if isMonster(getCreatureTarget(params.cid)) then doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 2) else end end local function damage(params) if isMonster(getCreatureTarget(params.cid)) then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68) else end end addEvent(damage, 100, {cid = cid}) addEvent(throw, 0, {cid = cid}) return 0 elseif pokemon.x.spell == "Harden" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local hardname = getCreatureName(getCreatureSummons(cid)[1]) setPlayerStorageValue(getCreatureSummons(cid)[1], 4, 1) local oldpos = getThingPos(getCreatureSummons(cid)[1]) local function efect(params) if isCreature(getCreatureSummons(params.cid)[1]) then if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then doSendMagicEffect(getThingPos(getCreatureSummons(params.cid)[1]), 144) end end end local function chard(params) if isCreature(getCreatureSummons(params.cid)[1]) then if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then setPlayerStorageValue(getCreatureSummons(params.cid)[1], 4, -1) end end end addEvent(efect, 100, {cid = cid, hardname = hardname}) addEvent(efect, 1600, {cid = cid, hardname = hardname}) addEvent(efect, 3100, {cid = cid, hardname = hardname}) addEvent(efect, 4600, {cid = cid, hardname = hardname}) addEvent(efect, 6100, {cid = cid, hardname = hardname}) addEvent(efect, 7600, {cid = cid, hardname = hardname}) addEvent(efect, 9100, {cid = cid, hardname = hardname}) addEvent(efect, 10600, {cid = cid, hardname = hardname}) addEvent(chard, 11000, {cid = cid}) return 0 elseif pokemon.x.spell == "Toxic Needle" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 15) doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 8) return 0 elseif pokemon.x.spell == "Thunderbolt" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local posalvo = getThingPos(getCreatureTarget(cid)) local boltalvo = getCreatureTarget(cid) posalvo.x = posalvo.x-2 posalvo.y = posalvo.y-6 doSendDistanceShoot(posalvo, getThingPos(getCreatureTarget(cid)), 41) local function bolt(params) if isCreature(params.cid) then if isCreature(getCreatureTarget(cid)) then if getCreatureTarget(params.cid) == params.boltalvo then doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48) end end end end addEvent(bolt, 200, {cid = cid, boltalvo = boltalvo}) return 0 elseif pokemon.x.spell == "Super Sonic" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY) exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd) local t = getCreatureTarget(cid) setPlayerStorageValue(t, 5, 1) local function confused(params) if isCreature(params.t) then local spdc = getCreatureSpeed(params.t) if getCreatureLookDir(params.t) == 0 then confs = math.random(1,3) elseif getCreatureLookDir(params.t) == 1 then confurandom = math.random(1,99) if confurandom <= 33 then confs = 0 elseif confurandom >= 67 then confs = 2 else confs = 3 end elseif getCreatureLookDir(params.t) == 2 then confurandom = math.random(1,99) if confurandom <= 33 then confs = 3 elseif confurandom >= 67 then confs = 0 else confs = 1 end elseif getCreatureLookDir(params.t) == 3 then confs = math.random(0,2) end doPushCreature(params.t, confs, 1, 0) doSendMagicEffect(getThingPos(params.t), 31) end end local function nonc(params) if isCreature(params.t) then doChangeSpeed(params.t, -getCreatureSpeed(params.t)) doChangeSpeed(params.t, getCreatureBaseSpeed(params.t)) setPlayerStorageValue(params.t, 5, -1) end end doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 32) doChangeSpeed(t, -( getCreatureSpeed(t)/3)) doSendMagicEffect(getThingPos(t), 31) for i = 1, math.random(6,7) do addEvent(confused, 1000*i, {cid = cid, t = t}) end addEvent(nonc, 7100, {cid - cid, t = t}) return 0 end return 0 end
  5. Eu queria 2 scripts , o primeiro q tipo tem 4 nego preso numa casa daih quando alguem ir por fora e der use numa alavanca , todo mundo q tava la dentro fosse teleportado para fora , o outro um item q desse 1 level quando fosse usado , tipo dar use numa stone e vc sobe de lebel .-. , o ultimo pedido eh q os players do ot soh pudessem atacar as pessoas do mesmo outft! Pfv me ajuda aew
  6. Valeu aew , mt boa essa ajuda S2 Se puder tbm da uma olhadinha nesse otro pedido ake q ninguem conseguiu fazer... http://www.xtibia.com/forum/topic/143357-item-criado/ e se alguem kizer tbm ajuda aew por favor preciso mt desse otro script... Abraços
  7. 6543210

    Item Criado

    Eu queria um negocio assim , quando uma caixa estivesse em um determinado local , aparecia uma escada em otro lugar , quando tirasse a caixa a escada sumia Ot 8.6 Da uma ajuda aew por favor!
  8. 6543210

    Tutor Por 1 Mes

    Queria um comando de tutor pa god q desse tutor pra alguem por 1 mes soh e depois ele voltava a ser player ajuda aew por favor Ot 8.6
  9. O primero nem o segundo funciono daih eu katei o do dangerous q por enquanto eh o unico , o primero do gustavo n tava funcioando , dps vi o otro falando mais nem kiz arrumar , o da runa n ta funcionando , qualquer um ta podendo usar... @edit deu certo foi soh trocar e colocar essa function no da runa if getPlayerGroupId(cid) < 4 then Vlw!
  10. Queria uns scrpits primero q soh tutor pode passar num determinado lugar , e otro de uma mana rune q soh tutor pode usar , aki um script de mana rune q eu ja tenho , mas quero q essa de mais mana ,sendo usada soh por tutor ai ja ta certo os minimo e maximo..... local MIN = 20000 local MAX = 100000 local EMPTY_POTION = 2281 local exhaust = createConditionObject(CONDITION_EXHAUST) setConditionParam(exhaust, CONDITION_PARAM_TICKS, (getConfigInfo('timeBetweenExActions') - 200)) function onUse(cid, item, fromPosition, itemEx, toPosition) if isPlayer(itemEx.uid) == FALSE then return FALSE end if hasCondition(cid, CONDITION_EXHAUST_HEAL) == true then doPlayerSendDefaultCancel(cid, RETURNVALUE_YOUAREEXHAUSTED) return TRUE end if doPlayerAddMana(itemEx.uid, math.random(MIN, MAX)) == LUA_ERROR then return FALSE end doAddCondition(cid, exhaust) doSendMagicEffect(getThingPos(itemEx.uid), CONST_ME_MAGIC_BLUE) doCreatureSay(itemEx.uid, "manavip", TALKTYPE_ORANGE_1) return TRUE end
  11. Kara são dois pedidos , um pro script do tile que soh tutor pode passar (se tivr outro acess soh manda q ja arrumo) e o otro eh o do item , se kizer da otra lida no topico que dei edit
  12. pedido 1:Primero eu keria o tile por acess , group tanto faz , que soh um acess tipo god pode passar pedido 2:E dps eu keria um negocio assim , quando um item tivesse em determinado lugar , apareceria uma eskada e quando o item saisse do lugar , a escada sumiria ex : tibia global - paradox tower quest : Você precisa esperar o Ghoul empurrar a caixa TODAS as vezes que for para a Paradox Tower. Quando ele empurrar a caixa no lugar correto, suba a escada rápido, porque ele vai mover a caixa e a escada vai sumir novamente. SAO DOIS PEDIDOS , NAO UM
  13. o script ta mt bom , mas oq eu keria era que a porta n sumisse , mas sim abri-se , se pudesse mudar eu gostaria
  • Quem Está Navegando   0 membros estão online

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