Postado Março 5, 2015 10 anos pode pegar sistemas de montaria em servidores de poketibia... Atenciosamente, David Araujo Meu Conteúdo Fui útil? Gostou? Faça uma doação. "É errando que se erra." "Gambiarras resolvem instantemente, porém podem complicar em problemas futuros." "Cada dia vivido é um aprendizado."
Postado Março 5, 2015 10 anos Autor pode pegar sistemas de montaria em servidores de poketibia... mais ai num daria bug nao ?
Postado Março 5, 2015 10 anos pegar como base... teria que fazer ajustes, claro, mas nada tao difícil... nao posso falar com propriedade porque faço scripts apenas pra 8.54, mas ´´e utilizado um sistema de montaria quando se sobe em um pokemon, seja voador ou terrestre... um sistema de montaria, por exemplo, tirado do antigo servidor de poketibia Ownz... function getPokemonMaxLife(name) local file = io.open('data/monster/monsters.xml','r') local arquivo = file:read(-1):lower():match('<monster name="'..name:lower()..'" file="(.-)"/>') file:close() local data = io.open('data/monster/'..(arquivo or ''),'r') if not data then return 100 end local maximo = data:read(-1):match('max%s*=%s*"(%d+)"') data:close() return maximo end function onUse(cid, item, frompos, item2, topos) local pokes = { ['Tauros'] = {128, 200}, ['Ninetales'] = {129, 300}, ['Rapidash'] = {130, 350}, ['Ponyta'] = {131, 200}, ['Rhyhorn'] = {132, 150}, ['Arcanine'] = {12, 500}, ['Shiny Arcanine'] = {492, 800}, ['Shiny Venusaur'] = {494, 700}, ['Crystal Onix'] = {293, 400}, ['Onix'] = {126, 350}, ['Venusaur'] = {134, 350}, ['Dodrio'] = {133, 350}, ['Doduo'] = {135, 250}, } local idballs = { [2531] = {"Pokeball"}, [2557] = {"Superball"}, [2524] = {"Greatball"}, [2525] = {"Ultraball"}, [2523] = {"Masterball"}, } local old_speed = getCreatureBaseSpeed(cid) local summons = getCreatureSummons(cid) local storage = 9393 local exhaust = 0 local time = 0 if (getPlayerStorageValue(cid, storage) <= os.time()) then if getPlayerStorageValue(cid, 18000) == 10 then local nome = getItemName(getPlayerSlotItem(cid, CONST_SLOT_FEET).uid) local balls = idballs[getPlayerSlotItem(cid,8).itemid] local poke_name = nome:match('(.-) '..balls[1]) local action_id = getItemAttribute(getPlayerSlotItem(cid, CONST_SLOT_FEET).uid, "aid") if action_id == -1 then return doPlayerSendCancel(cid,"it uses pokemon correct to leave ride!") end doChangeSpeed(cid, -(getCreatureSpeed(cid) - getCreatureBaseSpeed(cid))) setPlayerStorageValue(cid, storage, os.time()+exhaust) doRemoveCondition(cid, CONDITION_OUTFIT) setPlayerStorageValue(cid, 18000, 7) setPlayerStorageValue(cid, 25000, 6) local monster = doCreateMonster(poke_name, getCreaturePosition(cid)) doConvinceCreature(cid, monster) doCreatureAddHealth(monster, -(tonumber(getPokemonMaxLife(poke_name) - action_id))) doPlayerSay(cid, poke_name .. ", I'm tired of riding!", TALKTYPE_SAY) return true end if isPremium(cid) == FALSE then return doPlayerSendCancel(cid, "Você não é premium account.") end if #getCreatureSummons(cid) < 1 then return doPlayerSendCancel(cid, "Para dar ride você precisa de um pokemon") end local pokemon = pokes[getCreatureName(getCreatureSummons(cid)[1])] local name = getCreatureName(getCreatureSummons(cid)[1]) if not pokes[name] then return doPlayerSendCancel(cid, "Este pokemon não pode dar ride.") end setPlayerStorageValue(cid, storage, os.time()+exhaust) doChangeSpeed(cid, pokemon[2]) setPlayerStorageValue(cid, 18000, 10) setPlayerStorageValue(cid, 25000, 5) doSetCreatureOutfit(cid, {lookType = pokemon[1], lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, -1) setPlayerStorageValue(cid,10000,pokemon[1]) setPlayerStorageValue(cid,8889,pokemon[2]) doItemSetAttribute(getPlayerSlotItem(cid, CONST_SLOT_FEET).uid, "aid", getCreatureHealth(getCreatureSummons(cid)[1])) function getPokemonId(summons) for _, pid in ipairs(summons) do return pid end end doRemoveCreature(getPokemonId(summons)) doPlayerSay(cid, name .. ", Let's go RIDE!", TALKTYPE_SAY) end end Ele eh utilizado em forma de action id... Editado Março 5, 2015 10 anos por david0703 (veja o histórico de edições) Atenciosamente, David Araujo Meu Conteúdo Fui útil? Gostou? Faça uma doação. "É errando que se erra." "Gambiarras resolvem instantemente, porém podem complicar em problemas futuros." "Cada dia vivido é um aprendizado."
Postado Março 5, 2015 10 anos Autor pegar como base... teria que fazer ajustes, claro, mas nada tao difícil... nao posso falar com propriedade porque faço scripts apenas pra 8.54, mas ´´e utilizado um sistema de montaria quando se sobe em um pokemon, seja voador ou terrestre... um sistema de montaria, por exemplo, tirado do antigo servidor de poketibia Ownz... function getPokemonMaxLife(name) local file = io.open('data/monster/monsters.xml','r') local arquivo = file:read(-1):lower():match('<monster name="'..name:lower()..'" file="(.-)"/>') file:close() local data = io.open('data/monster/'..(arquivo or ''),'r') if not data then return 100 end local maximo = data:read(-1):match('max%s*=%s*"(%d+)"') data:close() return maximo end function onUse(cid, item, frompos, item2, topos) local pokes = { ['Tauros'] = {128, 200}, ['Ninetales'] = {129, 300}, ['Rapidash'] = {130, 350}, ['Ponyta'] = {131, 200}, ['Rhyhorn'] = {132, 150}, ['Arcanine'] = {12, 500}, ['Shiny Arcanine'] = {492, 800}, ['Shiny Venusaur'] = {494, 700}, ['Crystal Onix'] = {293, 400}, ['Onix'] = {126, 350}, ['Venusaur'] = {134, 350}, ['Dodrio'] = {133, 350}, ['Doduo'] = {135, 250}, } local idballs = { [2531] = {"Pokeball"}, [2557] = {"Superball"}, [2524] = {"Greatball"}, [2525] = {"Ultraball"}, [2523] = {"Masterball"}, } local old_speed = getCreatureBaseSpeed(cid) local summons = getCreatureSummons(cid) local storage = 9393 local exhaust = 0 local time = 0 if (getPlayerStorageValue(cid, storage) <= os.time()) then if getPlayerStorageValue(cid, 18000) == 10 then local nome = getItemName(getPlayerSlotItem(cid, CONST_SLOT_FEET).uid) local balls = idballs[getPlayerSlotItem(cid,8).itemid] local poke_name = nome:match('(.-) '..balls[1]) local action_id = getItemAttribute(getPlayerSlotItem(cid, CONST_SLOT_FEET).uid, "aid") if action_id == -1 then return doPlayerSendCancel(cid,"it uses pokemon correct to leave ride!") end doChangeSpeed(cid, -(getCreatureSpeed(cid) - getCreatureBaseSpeed(cid))) setPlayerStorageValue(cid, storage, os.time()+exhaust) doRemoveCondition(cid, CONDITION_OUTFIT) setPlayerStorageValue(cid, 18000, 7) setPlayerStorageValue(cid, 25000, 6) local monster = doCreateMonster(poke_name, getCreaturePosition(cid)) doConvinceCreature(cid, monster) doCreatureAddHealth(monster, -(tonumber(getPokemonMaxLife(poke_name) - action_id))) doPlayerSay(cid, poke_name .. ", I'm tired of riding!", TALKTYPE_SAY) return true end if isPremium(cid) == FALSE then return doPlayerSendCancel(cid, "Você não é premium account.") end if #getCreatureSummons(cid) < 1 then return doPlayerSendCancel(cid, "Para dar ride você precisa de um pokemon") end local pokemon = pokes[getCreatureName(getCreatureSummons(cid)[1])] local name = getCreatureName(getCreatureSummons(cid)[1]) if not pokes[name] then return doPlayerSendCancel(cid, "Este pokemon não pode dar ride.") end setPlayerStorageValue(cid, storage, os.time()+exhaust) doChangeSpeed(cid, pokemon[2]) setPlayerStorageValue(cid, 18000, 10) setPlayerStorageValue(cid, 25000, 5) doSetCreatureOutfit(cid, {lookType = pokemon[1], lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, -1) setPlayerStorageValue(cid,10000,pokemon[1]) setPlayerStorageValue(cid,8889,pokemon[2]) doItemSetAttribute(getPlayerSlotItem(cid, CONST_SLOT_FEET).uid, "aid", getCreatureHealth(getCreatureSummons(cid)[1])) function getPokemonId(summons) for _, pid in ipairs(summons) do return pid end end doRemoveCreature(getPokemonId(summons)) doPlayerSay(cid, name .. ", Let's go RIDE!", TALKTYPE_SAY) end end Ele eh utilizado em forma de action id... hummm, entendii ! Sera que alguem teria mais algumas dicas?
Postado Março 5, 2015 10 anos Uma gambiarra seria usar como 1 newtype, e por nos outfits... Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado). Tópicos: [FAQ] BBCODE [LIB] Constant [RME] Administrando bordas. [TALK] Broadcast Editável. [TALK] Sugest. [TALK] Checkpoint. [MOVE] Pântano pegajoso. [ACTION] Piggy Bank. (Cassino). [GLOBAL] Uptime Ad. [C0DE] Consertando 'Invalid Password' [PROGRAM] Quest Maker
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.