Ir para conteúdo

victorjgp

Campones
  • Total de itens

    54
  • Registro em

  • Última visita

Tudo que victorjgp postou

  1. Contem Sources ?
  2. Ceetros, meus parabéns ja faz algum tempo que nao vejo um open source de futuro promissor. Toma ae meu Rep+
  3. Pode passar o link da source Valakas ?
  4. esse server so pega ate 7 players é ? Vi no Config.lua o maxplayer tem dizendo "Codificado para 7 players"
  5. Ja descobri onde fica os efeitos e mudei para os que eu queria Huehuehe
  6. o Pfield que tou usando quase nao tem bugs o icon system dele ta perfeito as fluts gostei mt dele, vc nao sabe como foi feito o passive dele ?
  7. Gente meu Ot é o Pokemon Field open source, o meu problema com ele é o sistema de passivo que acontece o seguinte, os pokemons que estão passivos nao atacam os players ate serem atacados, porem o pokemon passivo msmo apos ser atacado nao ataca o player ele continua ignorando o player e levando dano do pokemon do player, alguem poderia me prestar suporte ? Agradecido
  8. Quero um tutorial de como por e editar o movebar no OTclient.
  9. nao tem nenhum erro na distro modo ta PVP ta sem pvp tile no ginasio onde ele ta Diretorio: PField Projectt\data\spells\scripts\poke Rollout.lua local golem = {lookType = 288} local sandslash = {lookType = 285} local sandshrew = {lookType = 284} local electrode = {lookType = 286} local voltorb = {lookType = 287} local rollarea = createCombatArea{ {1, 1, 1}, {1, 2, 1}, {1, 1, 1}, } function onCastSpell(cid, var) if getPlayerStorageValue(cid, 898) == 1 then return true end if getPlayerStorageValue(cid, 202) >= 1 or isSummon(cid) then doCreatureSay(getCreatureByName(getPlayerStorageValue(cid, 201)), ""..getCreatureName(cid)..", rollout!", TALKTYPE_SAY) end if getCreatureCondition(cid, CONDITION_OUTFIT) == true then return true end doCreatureSay(cid, "ROLLOUT!", TALKTYPE_MONSTER) if getCreatureOutfit(cid).lookType == 116 then doSetCreatureOutfit(cid, golem, -1) damage = 250 elseif getCreatureOutfit(cid).lookType == 125 then doSetCreatureOutfit(cid, electrode, -1) damage = 80 elseif getCreatureOutfit(cid).lookType == 123 then doSetCreatureOutfit(cid, voltorb, -1) damage = 40 elseif getCreatureOutfit(cid).lookType == 115 then doSetCreatureOutfit(cid, sandslash, -1) damage = 100 elseif getCreatureOutfit(cid).lookType == 43 then doSetCreatureOutfit(cid, sandshrew, -1) damage = 40 end local dmg = damage local function damage(params) if isCreature(params.cid) then doAreaCombatHealth(params.cid, GROUNDDAMAGE, getThingPos(params.cid), rollarea, -(params.dmg), -((params.dmg)+15), 255) end end local function voltar(params) if isCreature(params.cid) then doRemoveCondition(params.cid, CONDITION_OUTFIT) end end local vezes = 8 local delay = 1000 -- não mexe for i = 1, vezes do addEvent(damage, delay*i, {cid = cid, dmg = dmg}) end addEvent(voltar, 1051*vezes, {cid = cid}) end
  10. estou com o seguinte problema, Quando vou batalhar contra o lider de ginasio Brock da tudo certinho o npc ta 100% so que tem um pequeno problema Exemplo: tou la batalhando ae mando meu blastoise mato o 1° Geodude ae ele manda o 2° Golem, e o golem mata meu Blastoise com o atack rollout e fica esperando eu mandar outro pokemon pra continuar, se eu tiver longe do golem na hora que ele mata meu pokemon com rollout blza, agora se eu estiver perto dele sem pokemon ou quando meu poke morrer ae o rollout dele me mata tbm. Script do brock: data/npc <?xml version="1.0" encoding="UTF-8"?> <npc name="Brock" script="cassinoseller.lua" walkinterval="350000" floorchange="0" speed="0" lookdir="2"> <health now="150" max="150"/> <look type="178" head="91" body="114" legs="86" feet="0"/> <parameters> </parameters> </npc> OBS: Minha Base é o Pokemon Field com CdBar
  11. eu quero o v16 com o client dentro o msmo que estava neste topico alguem reupa ae pra mim ?
  12. Valakas na versão erondino 16 as spells saia com a sprite correta, tipo o raging blast do charizard nessa v17.1 e na v17 tbm estao saindo o fogo e bocado de emoticons do pikachu na magia ja tentei ir na spell e procurar o numero do efect do emote do pikachu pra retirar e por o numero correto do fogo mais n achei, pode me dizer onde fica ou algum jeito de corrigir isso ?
  13. link quebrado reupa ae
  14. Estou fazendo as aulas do Roksas e um dos exercícios foi esse Exercício: Crie uma quest que cheque cap, level e premium antes de dar o premio: e eu fiz o seguinte function onUse(cid, item) if getPlayerLevel(cid) <= 10 then ifgetPlayerFreeCap(cid) >= 1 getPlayerPremiumDays(cid) >= 1 doRemoveItem(item.uid) doPlayerGiveItem(cid,7834,2) doPlayerSendTextMessage(cid,22,"Você Ganhou 2 Stones") else doPlayerSendTextMessage(cid,22,"Você não Ganhou Nada") end return true end Sei que esta errado gostaria que vc corrigisse ele e me ensinasse no que eu errei Obs: Ainda sou bastante nb
  15. @Nextbr nao tem o sistema de passivo ?
  16. ta dando esse erro aq : 19 C:\Users\Jordy\Downloads\pokemon\Pokemon Online x\Server Sources 5.0\monster.cpp In file included from ../monster.cpp 19 C:\Users\Jordy\Downloads\pokemon\Pokemon Online x\Server Sources 5.0\monster.cpp In member function 'bool Monster::isHostile() const': 77 C:\Users\Jordy\Downloads\pokemon\Pokemon Online x\Server Sources 5.0\monster.h invalid conversion from 'const char*' to 'uint32_t' 77 C:\Users\Jordy\Downloads\pokemon\Pokemon Online x\Server Sources 5.0\monster.h initializing argument 1 of 'virtual bool Creature::getStorage(uint32_t, std::string&) const' 77 C:\Users\Jordy\Downloads\pokemon\Pokemon Online x\Server Sources 5.0\monster.h *** [obj//monster.o] Error 1 28 30 C:\Users\Jordy\Downloads\pokemon\Pokemon Online x\Server Sources 5.0\otpch.h [Error] libxml/xmlmemory.h: No such file or directory
  17. so nao entendi o pq dessas caveiras em baixo dos nomes dos npcs e monsters ?? alguem explica
  18. Bom gente eu gostaria de saber se alguem poderia me ensinar como por o sistema de passivo e agressivo no meu server.
  19. executei nada mudou continua msma coisa adiciono mais n aparece na lista e ainda esta com apenas 2 opçã0
  20. bem gostaria de saber o que tenho de fazer para adicionar itens ao shop e poder editar os itens que ja estao nele pois eu entro como shop admin e nao aparece a opção de editarfica assim : sendo que eu vou na opção add item e vai tudo certo so que nao ta la quando vou olhar tava vendo uns website igual esse so neles tem a opção editar itens e tal como nessas imagens: como coloco igual ? configurei errado e no meu tinha de ter?
  21. Ja consegui deixar todo configurado o website com o server para rodar porem, falta saber para onde vai o registro de confirmação de doação, poderia me ajudar ?
  22. Poderia nos dizer quais os 2 problemas ??
  23. ta dando erro de Spawn dos monsters lions.. como resolvo ?
  24. coloquei online e tudo certinho com ip : 127.0.0.1 (localhost) pra testar como sempre faço, Baixei o client 10.40 e usei Otland Ipchanger.. Ficou carregando e nao entra, ae na pasta do server tem escrito 10.41 ae baixei o client 10.41 e usei o ipchanger mais nao funcionou tbm ficou so carregando.. alguem ajuda ?
  25. Este é o Go/Back local backMSG = {"Come back, doka!", "Thanks for helping, doka!", "That's enough, come back!", "You were great, doka!", "Excellent work, doka!", "Well done, doka!"} local goMSG = {"Go, doka!", "Let's do it, doka!", "I choose you, doka!", "I need your help, doka!", "Let's fight, doka!", "It's battle time, doka!"} function onUse(cid, item, frompos, item2, topos) if #getCreatureSummons(cid) >= 1 and getPlayerStorageValue(getCreatureSummons(cid)[1], 33) >= 1 then return true end -------- msgunicaback = backMSG[math.random(#backMSG)] msgunicago = goMSG[math.random(#goMSG)] btype = getPokeballType(item.itemid) usando = pokeballs[btype].use online = pokeballs[btype].on morto = pokeballs[btype].off if isIconeSystem(cid) then effect = getItemAttribute(item.uid, "effect") else effect = getItemAttribute(item.uid, "effect") end -------- if item.itemid == usando then if #getCreatureSummons(cid) >= 1 then local z = getCreatureSummons(cid)[1] local pokename = getCreatureName(z) local mbk = msgunicaback:gsub("doka", pokename) if getItemAttribute(item.uid, "poke"):find(getCreatureName(z)) then doTransformItem(item.uid, item.itemid-1) doCreatureSay(cid, mbk, TALKTYPE_SAY) doPlayerSendCancel(cid, '12//,hide') local summom = getCreatureSummons(cid) local maxh = pokes[getCreatureName(summom[1])].vida local pct2 = ((getCreatureHealth(summom[1])) / (getCreatureMaxHealth(summom[1]))) local vids = ((getCreatureHealth(summom[1])) - 2) doCreatureAddHealth(summom[1], -vids) setCreatureMaxHealth(summom[1], maxh) doCreatureAddHealth(summom[1], ((maxh) * (pct2))) if math.random(1,100) <= 35 then setPokemonFeed(cid, getPokemonFeed(cid)-15) -- Food system end doItemSetAttribute(item.uid, "poke", getItemAttribute(item.uid, "poke"):sub(1, findLetter(getItemAttribute(item.uid, "poke"), ".")) .. " HP = ["..getCreatureHealth(z).."/"..getCreatureMaxHealth(z).."]") setPlayerStorageValue(cid, 61204, 0) setPlayerStorageValue(cid, 2, 0) doSendMagicEffect(getCreaturePosition(z), effect) doRemoveCreature(z) if getPlayerStorageValue(cid, 991) >= 1 then --- Ginasios doSendAnimatedText(getThingPos(cid), "POKEOUT", 181) setPlayerStorageValue(cid, 991, getPlayerStorageValue(cid, 991) -1) end return true end end elseif item.itemid == morto then return doPlayerSendCancel(cid, "This pokemon is fainted.") elseif item.itemid == online then if isZumbie(cid) or isHuman(cid) then return doPlayerSendCancel(cid, "Sorry, is not possible.") end if item.uid ~= getPlayerSlotItem(cid, CONST_SLOT_FEET).uid then doPlayerSendCancel(cid, "You must put your pokeball in the correct place!") return TRUE end if not canSummon(cid) then return doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTENOUGHROOM) end if getPlayerStorageValue(cid, 63215) >= 1 then return doPlayerSendCancel(cid, "You can't use pokeball while surfing.") end if getPlayerStorageValue(cid, 62314) >= 1 then return doPlayerSendCancel(cid, "You can't use pokeball while flying.") end if #getCreatureSummons(cid) >= 1 then return doPlayerSendCancel(cid, "You have already summoned a pokemon.") end for i,x in pairs(pokes) do if i == getItemAttribute(item.uid, "poke"):sub(9, findLetter(getItemAttribute(item.uid, "poke"), "'")-1) then if getPlayerLevel(cid) < x.level+getPokemonBoostt(item.uid) then doPlayerSendCancel(cid, "You need level "..x.level+getPokemonBoostt(item.uid).." or higher to use this pokemon.") return true end local removed = doCreateItem(1285, 1, getThingPos(cid)) doSummonMonster(cid, i) local pk = getCreatureSummons(cid)[1] doTeleportThing(pk, getClosestFreeTile(pk, getThingPos(cid)), false) doRemoveItem(removed, 1) doCreatureSetLookDir(pk, 2) local maxh = pokes[getCreatureName(pk)].vida local levellife = ((getPlayerLevel(cid)) *2+ getPokemonBoost(getPlayerSlotItem(cid,8).uid)) local health = tonumber(getItemAttribute(item.uid, "poke"):match("%[(.-)/")) doConvinceCreature(cid, pk) doCreatureAddHealth(pk, health-maxh) local pct = ((getCreatureHealth(pk)) / (getCreatureMaxHealth(pk))) local vidis = (getCreatureHealth(pk)) setCreatureMaxHealth(pk, ((maxh) + (levellife))) doCreatureAddHealth(pk, 2) doCreatureAddHealth(pk, -vidis) doCreatureAddHealth(pk, ((getCreatureMaxHealth(pk)) * (pct)) - 2) doTransformItem(item.uid, item.itemid+1) local pokename = getCreatureName(getCreatureSummons(cid)[1]) local mgo = msgunicago:gsub("doka", pokename) doCreatureSay(cid, mgo, TALKTYPE_SAY) if useOTClient then doPlayerSendCancel(cid, '12//,show') --alterado v1.7 end if useKpdoDlls then doUpdateMoves(cid) end if math.random(1,100) <= 35 then setPokemonFeed(cid, getPokemonFeed(cid)-5) -- Food system end doSendFeedEffect(cid) if getItemAttribute(item.uid, "nome") ~= "Ditto" then for i = 1, 12 do if not getMoveNamee(cid, i) then addEvent(doGoBackSetCooldown, 200, cid) end end else for a = 1, 12 do setPokemonCooldown(cid, a, "Don't have this move.") end end ----- Burn, venom e ice system ------ getBurn(cid) getVenom(cid) getIce(cid) ----- Burn, venom e ice system ------ doItemSetAttribute(item.uid, "poke", getItemAttribute(item.uid, "poke"):sub(1, findLetter(getItemAttribute(item.uid, "poke"), "."))) doItemSetAttribute(item.uid, "pokes", ""..pokename.."") doSendMagicEffect(getCreaturePosition(pk), effect) setPlayerStorageValue(cid, 61204, 1) registerCreatureEvent(pk, "DiePoke") registerCreatureEvent(pk, "Exp") --ShinyBallSystem\/ isShinyBallOrBoosted(cid, item) if getPlayerStorageValue(cid, 991) >= 1 then --- Ginasios doSendAnimatedText(getThingPos(cid), "POKEIN", TEXTCOLOR_LIGHTBLUE) end break end end end return TRUE end E Este é o Order.lua local nao = {'4820', '4821', '4822', '4823', '4824', '4825', '1395', '1389', '1391', '1393', '460'} local direction = {'4', '5', '6', '7'} -- ridefly local ridefly = {'Elder Charizard', 'Crystal Onix', 'Venusaur', 'Ninetales', 'Arcanine', 'Ponyta', 'Rapidash', 'Doduo', 'Dodrio', 'Onix', 'Rhyhorn', 'Tauros', 'Porygon', 'Aerodactyl', 'Dragonite', 'Charizard', 'Pidgeot', 'Fearow', 'Moltres', 'Zapdos', 'Articuno', 'Mew', 'Mewtwo', 'Lugia', 'Ho-Oh', 'Entei', 'Raikou', 'Suicune'} local ride = {'Crystal Onix', 'Venusaur', 'Ninetales', 'Arcanine', 'Ponyta', 'Rapidash', 'Doduo', 'Dodrio', 'Onix', 'Rhyhorn', 'Tauros', 'Entei', 'Suicune', 'Raikou'} local fly = {'Elder Charizard', 'Porygon', 'Aerodactyl', 'Dragonite', 'Charizard', 'Pidgeot', 'Fearow', 'Zapdos', 'Moltres', 'Articuno', 'Mew', 'Mewtwo', 'Lugia', 'Ho-Oh'} local flys = { [294] = {295, 2200, 525}, -- Elder Charizard [265] = {229, 2300, 350}, -- moltres [283] = {230, 2100, 350}, -- artic [199] = {224, 2600, 350}, -- zapdos [9] = {232, 2200, 525}, -- 1000 [34] = {233, 2200, 525},-- two [210] = {221, 1300, 410},-- nite [80] = {222, 900, 375}, -- geot [17] = {226, 800, 400}, -- fearow [10] = {227, 1100, 410}, -- aero [67] = {216, 1000, 410}, -- chari [97] = {316, 600, 440}, -- porygon [535] = {535, 2300, 350}, -- lugia [533] = {533, 2300, 350}, -- ho-oh } local rides = { [93] = {128, 780, 400}, -- tauros [114] = {129, 800, 375}, -- kyuubi [220] = {130, 800, 395}, -- rapid [16] = {131, 410, 500}, -- ponyta [77] = {132, 400, 510}, -- rhyhorn [88] = {12, 900, 390}, -- arcan [493] = {492, 1000, 360}, -- shiny arca [496] = {494, 420, 420}, -- shiny vneu [292] = {293, 480, 430}, -- cristal onix [248] = {126, 450, 450}, -- onix [22] = {134, 390, 450}, -- venu [120] = {133, 750, 380}, -- dodrio [26] = {135, 420, 500}, -- doduo [536] = {536, 750, 380}, -- entei [537] = {537, 420, 500}, -- raikou [538] = {538, 420, 500}, -- suicune } local bolas = {'2222', '2223', '2224'} local ultra = {'2220', '2221', '2227'} local etudao = 9506 local mind = 9507 -- LIGHT local light = {"Abra", "Kadabra", "Alakazam", "Magnemite", "Magneton", "Drowzee", "Hypno", "Voltorb", "Electrode", "Mrmime", "Electabuzz", "Jolteon", "Porygon", "Pikachu", "Raichu"} local exhautStorage = 9500 local time = 600 local cd = 17 -- LIGHT -- BLINK local blink = {"Abra", "Kadabra", "Alakazam", "Porygon", "Mew", "Mewtwo", "MrMime"} local exhaustblink = 9501 local cdblink = 50 -- BLINK local systems = { ["rock smash"] = {"Sandshrew", "Sandslash", "Diglett", "Dugtrio", "Primeape", "Machop", "Machoke", "Machamp", "Geodude", "Graveler", "Golem" , "Onix", "Cubone", "Marowak", "Rhyhorn", "Rhydon", "Kangaskhan", "Tauros", "Snorlax", "Poliwrath", "Hitmonlee", "Hitmonchan", "Aerodactyl", "Charizard", "Blastoise", "Typhlosion", "Feraligatr", "Furret", "Ledian", "Ampharos", "Politoed", "Quagsire", "Forretress", "Steelix", "Snubbull", "Granbull", "Sudowoodo", "Gligar", "Scizor", "Heracross", "Sneasel", "Ursaring", "Teddiursa", "Slugma", "Magcargo", "Piloswine", "Swinub", "Corsola", "Phanpy", "Donphan", "Tyrogue", "Hitmontop", "Miltank", "Blissey", "Tyranitar", "Pupitar"}, ["cut"] = {"Charmander", "Raticate", "Bulbasaur", "Ivysaur", "Venusaur", "Charmeleon", "Sandshrew", "Sandslash", "Gloom", "Vileplume", "Paras", "Parasect", "Meowth", "Persian", "Bellsprout", "Weepinbell", "Victreebel", "Farfetchd", "Krabby", "Kingler", "Exeggutor", "Cubone", "Marowak", "Tangela", "Scyther", "Pinsir", "Chikorita", "Bayleef", "Meganium", "Croconow", "Feraligatr", "Furret", "Bellossom", "Hoppip", "Skiploom", "Jumpluff", "Sunkern", "Sunflora", "Scizor", "Heracross", "Sneasel", "Teddiursa", "Ursaring", "Gligar", "Skarmory"}, ["digholes"] = {"468", "481", "483"}, ["dig"] = {"Raticate", "Sandshrew", "Sandslash", "Diglett", "Dugtrio", "Primeape", "Machop", "Machoke", "Machamp", "Geodude", "Graveler", "Golem" , "Onix", "Cubone", "Marowak", "Rhyhorn", "Rhydon", "Kangaskhan", "Tauros", "Snorlax", "Eevee", "Dunsparce", "Flareon", "Jolteon", "Vaporeon", "Espeon", "Umbreon", "Vulpix", "Ninetales", "Nidorina", "Nidoqueen", "Nidorino", "Nidoking", "Persian", "Arcanine"}, ["blink"] = {"Abra", "Kadabra", "Alakazam", "Porygon", "Porygon2", "Mew", "Mewtwo", "MrMime"} } -------- DITTO E CONTROL MIND --------- function onUse(cid, item, frompos, item2, topos, item3) if getPlayerItemCount(cid, item2.itemid) >= 1 then return false end if isMonster(item2.uid) and item2.uid ~= getCreatureSummons(cid)[1] and item2.uid ~= cid then if #getCreatureSummons(cid) == 0 then doPlayerSendCancel(cid, "Você precisa de um pokemon para usar order.") return true end if exhaustion.get(cid, mind) then doPlayerSendCancel(cid, "Seu pokemon está exausto para usar Control MIND, Espere 2 minutos para usar esse move denovo.") return true end if isPlayer(getCreatureMaster(item2.uid)) then doPlayerSendCancel(cid, "Você só pode usar esse move em pokemons.") return true end if not isInArray({"Alakazam", "Tentacruel", "Gengar", "Ditto"}, getCreatureName(getCreatureSummons(cid)[1])) then doPlayerSendCancel(cid, "Este pokemon não tem esse move.") return true end if getCreatureName(item2.uid) == "Ditto" and isMonster(item2.uid) == TRUE and getCreatureName(getCreatureSummons(cid)[1]) == "Ditto" then doCreatureSay(cid, "Ditto, reverse transformation!", 1) xd = doSummonCreature(getCreatureName(item2.uid), topos) doCreatureAddHealth(xd, -getCreatureHealth(xd)+getCreatureHealth(getCreatureSummons(cid)[1])) doTeleportThing(xd, getCreaturePosition(getCreatureSummons(cid)[1]), false) doRemoveCreature(item2.uid) doConvinceCreature(cid, xd) return TRUE end ------ \/ ditto if isMonster(item2.uid) == TRUE and getCreatureName(getCreatureSummons(cid)[1]) == "Ditto" then if getPlayerLevel(cid) >= pokes[getCreatureName(item2.uid)].level then if getPlayerStorageValue(item2.uid, 202) >= 1 then doPlayerSendTextMessage(cid, 27, "Sorry, you dont transform your ditto in GYM pokes.") return true end doCreatureSay(cid, "Ditto, transformation ".. getCreatureName(item2.uid) .."!", 1) doCreatureSay(cid, "Transform!", TALKTYPE_MONSTER) doSendMagicEffect(getCreaturePosition(getCreatureSummons(cid)[1]), 184) doSetCreatureOutfit(getCreatureSummons(cid)[1], getCreatureOutfit(item2.uid), -1) movesDitto(cid, item2.uid) doCureAllStatus(getPlayerSlotItem(cid, 8).uid) else doPlayerSendTextMessage(cid, 27, "Sorry, you need a level ".. pokes[getCreatureName(item2.uid)].level .. " for transform your Ditto in "..getCreatureName(item2.uid)..".") return true end return TRUE end exhaustion.set(cid, mind, 240) doCreatureSay(getCreatureSummons(cid)[1], "CONTROL MIND!", TALKTYPE_MONSTER) doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(item2.uid), 39) registerCreatureEvent(item2.uid, "Controled") doSendMagicEffect(getThingPos(item2.uid), 136) doSendMagicEffect(getThingPos(item2.uid), 134) doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 133) setPlayerStorageValue(cid, 61209, getCreatureMaxHealth(getCreatureSummons(cid)[1])) setPlayerStorageValue(cid, 61210, getCreatureHealth(getCreatureSummons(cid)[1])) doConvinceCreature(cid, item2.uid) if getCreatureSpeed(item2.uid) == 0 then doChangeSpeed(item2.uid, 180) end doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", control "..string.lower(getCreatureName(item2.uid)).."'s mind!", 1) local cmed = item2.uid local cmname = getCreatureName(getCreatureSummons(cid)[1]) local cmpos = getThingPos(getCreatureSummons(cid)[1]) doRemoveCreature(getCreatureSummons(cid)[1]) local cmzao = doSummonCreature(""..cmname.." cm", cmpos) doConvinceCreature(cid, cmzao) setPlayerStorageValue(cid, 888, 1) local function check(params) if isCreature(params.cid) then if getPlayerStorageValue(params.cid, 888) <= 0 then return true end if not isCreature(cmed) then local pkcmpos = getThingPos(getCreatureSummons(cid)[1]) doRemoveCreature(getCreatureSummons(cid)[1]) local item = getPlayerSlotItem(cid, 8) local pk = doSummonCreature(getItemAttribute(item.uid, "poke"):match("This is (.-)'s pokeball."), pkcmpos) doConvinceCreature(cid, pk) doCreatureSetLookDir(getCreatureSummons(cid)[1], 2) registerCreatureEvent(pk, "DiePoke") registerCreatureEvent(pk, "Exp") registerCreatureEvent(cid, "PlayerPokeDeath") setCreatureMaxHealth(pk, (getPlayerStorageValue(cid, 61209))) doCreatureAddHealth(pk, (getPlayerStorageValue(cid, 61209))) doCreatureAddHealth(pk, (getPlayerStorageValue(cid, 61210))-(getPlayerStorageValue(cid, 61209))) setPlayerStorageValue(cid, 888, 0) end if params.rod == 20 then local lifecmed = getCreatureMaxHealth(cmed) - getCreatureHealth(cmed) local poscmed = getThingPos(cmed) local cmeddir = getCreatureLookDir(cmed) local namecmed = getCreatureName(cmed) doRemoveCreature(getCreatureSummons(cid)[1]) local back = doSummonCreature(""..namecmed.." s", poscmed) if getCreatureSpeed(back) == 0 then doChangeSpeed(back, 180) end doCreatureSetLookDir(back, cmeddir) doCreatureAddHealth(back, -lifecmed) local item = getPlayerSlotItem(cid, 8) local mynewpos = getThingPos(getCreatureSummons(cid)[1]) doRemoveCreature(getCreatureSummons(cid)[1]) pk = doSummonCreature(getItemAttribute(item.uid, "poke"):match("This is (.-)'s pokeball."), mynewpos) doConvinceCreature(cid, pk) doCreatureSetLookDir(getCreatureSummons(cid)[1], 2) registerCreatureEvent(pk, "DiePoke") registerCreatureEvent(pk, "Exp") registerCreatureEvent(cid, "PlayerPokeDeath") setCreatureMaxHealth(pk, (getPlayerStorageValue(cid, 61209))) doCreatureAddHealth(pk, (getPlayerStorageValue(cid, 61209))) doCreatureAddHealth(pk, (getPlayerStorageValue(cid, 61210))-(getPlayerStorageValue(cid, 61209))) setPlayerStorageValue(cid, 888, 0) else doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 220) end end end for rod = 1, 20 do addEvent(check, rod*500, {cid = cid, rod = rod}) end return true end if item2.uid == cid then if getPlayerStorageValue(cid, 888) >= 1 then doPlayerSendCancel(cid, "You cant fly neither ride pokemons being controled.") return true end if #getCreatureSummons(cid) == 0 and getPlayerStorageValue(cid, 17000) <= 0 and getPlayerStorageValue(cid, 17001) <= 0 then doPlayerSendCancel(cid, "You need a pokemon to use order.") return true end if getPlayerStorageValue(cid, 17000) <= 0 and getPlayerStorageValue(cid, 17001) <= 0 and not isInArray(ridefly, getCreatureName(getCreatureSummons(cid)[1])) then doPlayerSendCancel(cid, "You can't ride this pokemon nor fly with it.") return true end if getPlayerStorageValue(cid, 17000) <= 0 and getPlayerStorageValue(cid, 17001) <= 0 and getCreatureSpeed(getCreatureSummons(cid)[1]) == 0 then return true end ----------------------------- -------- RIDE --------- if getPlayerStorageValue(cid, 17001) <= 0 and getPlayerStorageValue(cid, 17000) <= 0 and isInArray(ride, getCreatureName(getCreatureSummons(cid)[1])) then local pokemon = rides[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType] if getCreatureSpeed(getCreatureSummons(cid)[1]) >= 1 then doChangeSpeed(getCreatureSummons(cid)[1], -getCreatureSpeed(getCreatureSummons(cid)[1])) end local function ride(params) if isCreature(params.cid) then if isCreature(getCreatureSummons(params.cid)[1]) then if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(cid)) <= params.d then doChangeSpeed(cid, -250) doChangeSpeed(cid, pokemon[2]) exhaustion.set(cid, etudao, 4) setPlayerStorageValue(cid, 17001, 1) doSetCreatureOutfit(cid, {lookType = pokemon[1], lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, -1) setPlayerStorageValue(cid, 61209, getCreatureMaxHealth(getCreatureSummons(cid)[1])) setPlayerStorageValue(cid, 61210, getCreatureHealth(getCreatureSummons(cid)[1])) doRemoveCreature(getCreatureSummons(cid)[1]) else dirh = getDirectionTo(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(params.cid)) if dirh == NORTHWEST then if math.random(1,100) >= 51 then dirh = NORTH else dirh = WEST end elseif dirh == SOUTHWEST then if math.random(1,100) >= 51 then dirh = SOUTH else dirh = WEST end elseif dirh == SOUTHEAST then if math.random(1,100) >= 51 then dirh = SOUTH else dirh = EAST end elseif dirh == NORTHEAST then if math.random(1,100) >= 51 then dirh = NORTH else dirh = EAST end end local dirh = dirh if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then doChangeSpeed(getCreatureSummons(params.cid)[1], getCreatureBaseSpeed(getCreatureSummons(cid)[1])) doPushCreature(getCreatureSummons(params.cid)[1], dirh, 1, 0) doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(cid)[1])) else doPushCreature(getCreatureSummons(params.cid)[1], dirh, 1, 0) doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(cid)[1])) end end end end end local function speed(params) if isCreature(params.cid) then if isCreature(getCreatureSummons(params.cid)[1]) then if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then doChangeSpeed(getCreatureSummons(params.cid)[1], getCreatureBaseSpeed(getCreatureSummons(cid)[1])) end end end end doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", let me ride you!", 1) exhaustion.set(cid, etudao, 4) if getPlayerGroupId(cid) >= 2 and getPlayerGroupId(cid) <= 6 then distanc = 1 else distanc = 0 end local distance = distanc for i=1,12 do addEvent(ride, pokemon[3]*i, {cid = cid, d = distance}) addEvent(speed, ((pokemon[3]*12)+100), {cid = cid}) end return true end ----------------------------- -------- FLY --------- if getPlayerStorageValue(cid, 17001) >= 1 then setPlayerStorageValue(cid, 17001, 0) if getPlayerGroupId(cid) ~= 6 then setPlayerGroupId(cid, 8) end doCreatureSetLookDir(cid, 2) doChangeSpeed(cid, -(getCreatureSpeed(cid))) if getPlayerGroupId(cid) >= 2 and getPlayerGroupId(cid) <= 7 then doChangeSpeed(cid, 400*getPlayerGroupId(cid)) else doChangeSpeed(cid, 250) end doRemoveCondition(cid, CONDITION_OUTFIT) local item = getPlayerSlotItem(cid, 8) doCreatureSay(cid, "" .. getItemAttribute(item.uid, "poke"):match("This is (.-)'s pokeball.")..", let me get down!", 1) doSummonMonster(cid, getItemAttribute(item.uid, "poke"):match("This is (.-)'s pokeball.")) local pk = getCreatureSummons(cid)[1] registerCreatureEvent(cid, "PlayerPokeDeath") registerCreatureEvent(pk, "DiePoke") registerCreatureEvent(pk, "Exp") setCreatureMaxHealth(pk, (getPlayerStorageValue(cid, 61209))) doCreatureAddHealth(pk, (getPlayerStorageValue(cid, 61209))) doCreatureAddHealth(pk, (getPlayerStorageValue(cid, 61210))-(getPlayerStorageValue(cid, 61209))) return true end if getPlayerStorageValue(cid, 17000) >= 1 then if isInArray({460, 1022, 1023}, getTileInfo(getThingPos(cid)).itemid) then doPlayerSendCancel(cid, "You can\'t stop flying at this height!") return true end if getTileInfo(getThingPos(cid)).itemid >= 4820 and getTileInfo(getThingPos(cid)).itemid <= 4825 then doPlayerSendCancel(cid, "Você não pode parar de voar na água!") return true end if getPlayerGroupId(cid) ~= 6 then setPlayerGroupId(cid, 8) end doCreatureSetLookDir(cid, 2) setPlayerStorageValue(cid, 17000, 0) doChangeSpeed(cid, -(getCreatureSpeed(cid))) if getPlayerGroupId(cid) >= 2 and getPlayerGroupId(cid) <= 7 then doChangeSpeed(cid, 200*getPlayerGroupId(cid)) else doChangeSpeed(cid, 250) end doRemoveCondition(cid, CONDITION_OUTFIT) local item = getPlayerSlotItem(cid, 8) doCreatureSay(cid, "" .. getItemAttribute(item.uid, "poke"):match("This is (.-)'s pokeball.")..", let me get down!", 1) doSummonMonster(cid, getItemAttribute(item.uid, "poke"):match("This is (.-)'s pokeball.")) local pk = getCreatureSummons(cid)[1] registerCreatureEvent(cid, "PlayerPokeDeath") registerCreatureEvent(pk, "DiePoke") registerCreatureEvent(pk, "Exp") setCreatureMaxHealth(pk, (getPlayerStorageValue(cid, 61209))) doCreatureAddHealth(pk, (getPlayerStorageValue(cid, 61209))) doCreatureAddHealth(pk, (getPlayerStorageValue(cid, 61210))-(getPlayerStorageValue(cid, 61209))) return true end if getPlayerStorageValue(cid, 17000) <= 0 and getPlayerStorageValue(cid, 17001) <= 0 and isInArray(fly, getCreatureName(getCreatureSummons(cid)[1])) then if getPlayerStorageValue(cid, 17000) <= 0 then local pokemon = flys[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType] local function fly(params) if isCreature(params.cid) then if isCreature(getCreatureSummons(params.cid)[1]) then if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(cid)) <= params.dd then doPlayerSendTextMessage(cid, 27, "Type 'up' or 'h1' to fly higher and 'down' or 'h2' to fly lower.") setPlayerStorageValue(cid, 61209, getCreatureMaxHealth(getCreatureSummons(cid)[1])) setPlayerStorageValue(cid, 61210, getCreatureHealth(getCreatureSummons(cid)[1])) setPlayerStorageValue(cid, 17000, 1) registerCreatureEvent(cid, "Flying") doChangeSpeed(cid, -250) doChangeSpeed(cid, pokemon[2]) exhaustion.set(cid, etudao, 4) doSetCreatureOutfit(cid, {lookType = pokemon[1], lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, -1) doRemoveCreature(getCreatureSummons(cid)[1]) else dir = getDirectionTo(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(params.cid)) if dir == NORTHWEST then if math.random(1,100) >= 51 then dir = NORTH else dir = WEST end elseif dir == SOUTHWEST then if math.random(1,100) >= 51 then dir = SOUTH else dir = WEST end elseif dir == SOUTHEAST then if math.random(1,100) >= 51 then dir = SOUTH else dir = EAST end elseif dir == NORTHEAST then if math.random(1,100) >= 51 then dir = NORTH else dir = EAST end end local dir = dir if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then doChangeSpeed(getCreatureSummons(params.cid)[1], getCreatureBaseSpeed(getCreatureSummons(cid)[1])) doPushCreature(getCreatureSummons(params.cid)[1], dir, 1, 0) doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(cid)[1])) else doPushCreature(getCreatureSummons(params.cid)[1], dir, 1, 0) doChangeSpeed(getCreatureSummons(params.cid)[1], -getCreatureSpeed(getCreatureSummons(cid)[1])) end end end end end local function speed(params) if isCreature(params.cid) then if isCreature(getCreatureSummons(params.cid)[1]) then if getCreatureSpeed(getCreatureSummons(params.cid)[1]) == 0 then doChangeSpeed(getCreatureSummons(params.cid)[1], getCreatureBaseSpeed(getCreatureSummons(cid)[1])) end end end end doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", let's fly!", 1) exhaustion.set(cid, etudao, 4) if getPlayerGroupId(cid) >= 2 and getPlayerGroupId(cid) <= 6 then distancc = 1 else distancc = 0 end local distancee = distancc for i=1,12 do addEvent(fly, pokemon[3]*i, {cid = cid, dd = distancee}) addEvent(speed, ((pokemon[3]*12)+100), {cid = cid}) end return true end return true end end ----------------------------- -------- ROCK SMASH --------- if item2.itemid == 1285 and isInArray(systems["rock smash"], getCreatureName(getCreatureSummons(cid)[1])) then if getMarkedPos(getCreatureSummons(cid)[1]).x == topos.x and getMarkedPos(getCreatureSummons(cid)[1]).y == topos.y then return true end markPos(getCreatureSummons(cid)[1], topos) markOwnerPos(getCreatureSummons(cid)[1], getThingPos(cid)) doPlayerSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", rock smash!", 1) addEvent(goThere, 500, getCreatureSummons(cid)[1], topos, "rock smash", isCreature(getCreatureTarget(cid))) return true end ----------------------------- -------- CUT ---------------- if item2.itemid == 2767 and isInArray(systems["cut"], getCreatureName(getCreatureSummons(cid)[1])) then if getMarkedPos(getCreatureSummons(cid)[1]).x == topos.x and getMarkedPos(getCreatureSummons(cid)[1]).y == topos.y then return true end markPos(getCreatureSummons(cid)[1], topos) markOwnerPos(getCreatureSummons(cid)[1], getThingPos(cid)) doPlayerSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", cut this!", 1) addEvent(goThere, 500, getCreatureSummons(cid)[1], topos, "cut", isCreature(getCreatureTarget(cid))) return true end ----------------------------- -------- DIG ---------------- if isInArray(systems["digholes"], item2.itemid) and isInArray(systems["dig"], getCreatureName(getCreatureSummons(cid)[1])) then if getMarkedPos(getCreatureSummons(cid)[1]).x == topos.x and getMarkedPos(getCreatureSummons(cid)[1]).y == topos.y then return true end markPos(getCreatureSummons(cid)[1], topos) markOwnerPos(getCreatureSummons(cid)[1], getThingPos(cid)) doPlayerSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", open that hole!", 1) addEvent(goThere, 500, getCreatureSummons(cid)[1], topos, "dig", isCreature(getCreatureTarget(cid))) return true end ----------------------------- -------- BLINK ---------------- if #getCreatureSummons(cid) == 0 and getPlayerStorageValue(cid, 63215) <= 0 and getPlayerStorageValue(cid, 17000) <= 0 then doPlayerSendCancel(cid, "You need a pokemon to use order.") return true end if not isMonster(item2.uid) and getPlayerStorageValue(cid, 63215) <= 0 and getPlayerStorageValue(cid, 17000) <= 0 then if isInArray(blink, getCreatureName(getCreatureSummons(cid)[1])) then if exhaustion.get(cid, exhaustblink) then doPlayerSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", move!", 1) doChangeSpeed(getCreatureSummons(cid)[1], -getCreatureSpeed(getCreatureSummons(cid)[1])) addEvent(goThere, 500, getCreatureSummons(cid)[1], topos, "move", isCreature(getCreatureTarget(cid))) if getMarkedPos(getCreatureSummons(cid)[1]).x == topos.x and getMarkedPos(getCreatureSummons(cid)[1]).y == topos.y then return true end markPos(getCreatureSummons(cid)[1], topos) markOwnerPos(getCreatureSummons(cid)[1], getThingPos(cid)) addEvent(goThere, 500, getCreatureSummons(cid)[1], topos) else if not isWalkable(topos, cid, 0, 0) then doPlayerSendCancel(cid, "Your pokemon cannot teleport there.") return true end if getItemName(item2.uid) == "shallow water" then doPlayerSendCancel(cid, "Your pokemon cannot teleport there.") return true end addEvent(goThere, 500, getCreatureSummons(cid)[1], topos, "move", isCreature(getCreatureTarget(cid))) doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), topos, 39) doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 211) doTeleportThing(getCreatureSummons(cid)[1], topos, false) doSendMagicEffect(topos, 134) doPlayerSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", teleport there!", 1) doCreatureSay(getCreatureSummons(cid)[1], "BLINK!", TALKTYPE_MONSTER) addEvent(goThere, 500, getCreatureSummons(cid)[1], topos, "move", isCreature(getCreatureTarget(cid))) exhaustion.set(cid, exhaustblink, cdblink) addEvent(goThere, 500, getCreatureSummons(cid)[1], topos, "move", isCreature(getCreatureTarget(cid))) return true end return true end end ----------------------------- -------- LIGHT ---------------- if isCreature(item2.uid) and getCreatureMaster(item2.uid) == cid and getPlayerStorageValue(cid, 63215) <= 0 and getPlayerStorageValue(cid, 17000) <= 0 and item2.uid ~= cid then if not isInArray(light, getCreatureName(getCreatureSummons(cid)[1])) then doPlayerSendCancel(cid, "Esse pokemon não tem LIGHT.") return true end if isInArray(light, getCreatureName(getCreatureSummons(cid)[1])) then if not isMonster(item2.uid) and getCreatureMaster(item2.uid) ~= cid then return doPlayerSendCancel(cid,"Por Favor usar LIGHT em seu pokemon.") end if exhaustion.get(cid, exhautStorage) then doPlayerSendCancel(cid,"Por Favor espere alguns segundos para usar LIGHT denovo!") return true end exhaustion.set(cid, exhautStorage, cd) doPlayerSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use light!", 1) doCreatureSay(getCreatureSummons(cid)[1], "LIGHT!", TALKTYPE_MONSTER) doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 28) doSetCreatureLight(getCreatureSummons(cid)[1], 8, 215, time*1000) return true end end ----------------------------- -------- MOVE --------- if getMarkedPos(getCreatureSummons(cid)[1]).x == topos.x and getMarkedPos(getCreatureSummons(cid)[1]).y == topos.y then return true end markPos(getCreatureSummons(cid)[1], topos) markOwnerPos(getCreatureSummons(cid)[1], getThingPos(cid)) doPlayerSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", move!", 1) addEvent(goThere, 500, getCreatureSummons(cid)[1], topos, "move", isCreature(getCreatureTarget(cid))) return true end -----------------------------
  • Quem Está Navegando   0 membros estão online

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