Ir para conteúdo

LionM

Campones
  • Total de itens

    45
  • Registro em

  • Última visita

  • Dias Ganhos

    6

Tudo que LionM postou

  1. Olá amigos, tudo bom? Antigamente usavam bastante o BitMapToMap para transformarem imagens em mapas, por exemplo transformar o mapa mundi em um mapa de tibia. Entretanto baixei o BitMapToMap mas não consigo abrir no SimOne a extensão OTX. Se alguém que já usou e puder me ajudar ficarei grato. Já consegui.
  2. Olá pessoal, eu estava tentando criar um script que realiza o seguinte feito: - Após 3 players estarem pisando em tiles diferentes em distinto lugares do mapa e um deles acionar a alavanca, ambos irão se teleportar para um lugar onde seria uma quest, porém todos membros precisam ter um certo item e um certo level para entrar, como ainda estou iniciando preciso de um pouco de ajuda, pois dei uma travada legal, está aí o script que fiz até agora: function onStepIn(cid, item, fromPosition, toPosition) local quest = {"Player 1" {x = 1094, y = 1069, z= 7}}, {"Player 2" {x = 1100, y = 1500, z= 7}}, {"Player 3" {x = 1400, y = 1800, z= 7}} if getPlayerLevel(cid) < 250 then doPlayerSendTextMessage(cid, 21, "Um dos players nao possui level 250 para completar esta quest") end if getPlayerItemCount (cid, 11235) == 0 doPlayerSendTextMessage(cid, 21, "Um dos players nao esta com o item correto para completar a quest") end if getPlayerLevel(cid) >= 250 and getPlayerStorageValue(cid, 25003) <= 0 and getPlayerItemCount (cid, 11235) >= 1 then doTeleportThing(cid, i, ) Pode estar errado, sim, pode, como disse estou com muita dúvida e travado neste lugar. Obrigado!
  3. Olá Xtibianos, estou estudando Lua e no meio do meu desenvolvimento travei por causa de um não progresso em um pequeno script. A idéia do script seria, o player pegar um item dentro do baú, porém precisa ter no mínimo level 100 e não pode pegar o item mais de uma vez, então desenvolvi este script: function onUse(cid, item, fromPosition, itemEx, toPosition) if getPlayerLevel(cid) < 100 then doPlayerSendTextMessage(cid, 21, "Voce nao possui level 100 para completar esta quest") end if getPlayerStorageValue(cid, 15501) ~= -1 then doPlayerSendTextMessage(cid, 21, "Voce ja pegou o que tinha dentro do bau") end if getPlayerLevel(cid) >= 100 and getPlayerStorageValue(cid, 15501) <= 0 then doPlayerAddItem(cid, 12774, 1) doPlayerAddExp(cid, 25000) setPlayerStorageValue(cid, 15501, 1) return trueendend Como podem ver declarei um if para as duas primeiras funções com o intuito de chegar a mensagem que não pode completar a quest, no segundo declarei o if para as duas funções que vão executar o final do script para o player ganhar o item.
  4. Muito bom, parabéns, estarei disposto a ajudar se precisarem
  5. Tudo bem, vou editar créditos já estão.
  6. LionM

    Hm's System

    Este sistema de HM é o seguinte, o pokémon só poderá usar suas habilidades após um HM ser aplicado nele, como no GBA. Vai em data/actions/action.xml e cole <action itemid="ID DO HM" script="HMs/HMFly.lua"/> <action itemid="ID DO HM" script="HMs/HMCut.lua"/> <action itemid="ID DO HM" script="HMs/HMSurf.lua"/> <action itemid="ID DO HM" script="HMs/HMRide.lua"/> <action itemid="ID DO HM" script="HMs/HMFlash.lua"/> <action itemid="ID DO HM" script="HMs/HMRock Smash.lua"/> Agora crie uma pasta dentro de data/actions/scripts chamada HM's dentro da pasta cole os seguintes arquivos: Sprites dos HM's Créditos Bluester HMCut.lua HMFlash.lua HMFly.lua HMRide.lua HMRock Smash.lua HMSurf.lua
  7. LionM

    Nick System PDA

    Cria um arquivo chamado namer.xml em data/npc e cole isso <?xml version="1.0" encoding="UTF-8"?><npc name="Namer" script="nick.lua" walkinterval="350000" floorchange="0" speed="0" lookdir="2"> <health now="150" max="150"/> <look type="614" head="115" body="122" legs="0" feet="76"/> <parameters> </parameters></npc> Agora, cria outro arquivo chamado Nick.lua em data/npc/scripts e cole isso local focus = 0local talk_start = 0local conv = 0local target = 0local following = falselocal attacking = falselocal talkState = {}local finalname = ""function onThingMove(creature, thing, oldpos, oldstackpos)endfunction onCreatureAppear(creature)endfunction onCreatureDisappear(cid, pos)if focus == cid thenselfSay('Good bye sir!')focus = 0talk_start = 0endendfunction onCreatureTurn(creature)endfunction msgcontains(txt, str)return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)'))endfunction onCreatureSay(cid, type, msge)local msg = string.lower(msge)local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if focus == cid then talk_start = os.clock() endlocal auras = {"red aura", "blue aura", "green aura", "yellow aura", "white aura", "gray aura", "cyan aura", "purple aura", "orange aura"}if (msgcontains(msg, 'hi') and (focus == 0) and (getDistanceToCreature(cid) <= 4)) then focus = cid conv = 1 talk_start = os.clock() selfSay("Ola, "..getCreatureName(cid).."! Eu posso dar apelido ao seu pokemonou uma aura elementar se tiver pelo menos com boost 50+.")elseif (msgcontains(msg, "no") or msgcontains(msg, "bye")) and focus == cid and conv ~= 3 then selfSay("Sem problema entao senhor, volte quando estiver disposto!") focus = 0elseif (msgcontains(msg, "apelido") or msgcontains(msg, "nickname")) and focus == cid and conv == 1 then if getPlayerSlotItem(cid, 8).uid <= 0 then selfSay("Desculpe, voce nao tem um pokemon no slot principal!") focus = 0 return true end selfSay("Coloque o pokemon que ira receber um apelido no slot principal e me diga, qual sera seu apelido?") conv = 3 elseif msgcontains(msg, "aura") and focus == cid and conv == 1 then if getPlayerSlotItem(cid, 8).uid <= 0 then selfSay("Desculpe, mas voce nao tem um pokemon no slot principal!") focus = 0 return true end local pb = getPlayerSlotItem(cid, 8).uid if not getItemAttribute(pb, "boost") or getItemAttribute(pb, "boost") < 50 then selfSay("Desculpe mas seu pokemon nao possui boost +50!") focus = 0 return true end if getItemAttribute(pb, "aura") and getItemAttribute(pb, "aura") ~= "" then selfSay("Desculpe, mas seu pokemon ja possui uma aura elementar.") focus = 0 return true end if #getCreatureSummons(cid) >= 1 then selfSay("Retorne seu pokemon para a pokebola!") focus = 0 return true end selfSay("Escolha uma destas auras: red aura, blue aura, green aura, yellow aura, white aura, gray aura, cyan aura, purple aura, orange aura. Which one do you prefer?") conv = 9 elseif isInArray(auras, msg) and focus == cid and conv == 9 then selfSay("Are you sure that you want to put a "..msg.." in your pokemon?") conv = 11 local d, e = msg:find('(.-) aura') auraFinal = string.sub(msg, d -1, e - 5) elseif msgcontains(msg, "yes") and focus == cid and conv == 11 then if getPlayerSlotItem(cid, 8).uid <= 0 then selfSay("Me perdoe mas voce nao tem um pokemon no slot principal!") focus = 0 return true end local pb = getPlayerSlotItem(cid, 8).uid if not getItemAttribute(pb, "boost") or getItemAttribute(pb, "boost") < 50 then selfSay("Desculpe mas seu pokemon nao possui boost +50!") focus = 0 return true end if #getCreatureSummons(cid) >= 1 then selfSay("Retorne seu pokemon para a pokebola!") focus = 0 return true end doItemSetAttribute(pb, "aura", auraFinal) selfSay("Pronto! Agora seu pokemon possui uma nova aura elementar. Aproveite") focus = 0 conv = 0 elseif conv == 3 and focus == cid then local tablee = {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "x", "w", "y", "z", ".", ":", "'", '"', "~", "^", "@", "#", "$", "%", "&", "*", "(", ")", "-", "+", "_", "?", ">", "<", "•", ";", "°", "¹", "²", "³", "£", "¢", "¬", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0"} local table = {"'", '"', "!", "ã", "õ", "ç", "´", "`", "á", "à", "ó", "ò", "é", "è", "í", "ì", "ú", "ù", "¹", "²", "³", "£", "¢", "¬", "§", "°", "º", "ª", "•", "|"} for a = 1, #table do if string.find(msg, table[a]) then selfSay("Lamento, este apelido tem simbolos invaidos.") return true end end if string.len(msg) <= 1 or string.len(msg) >= 19 then selfSay("Lamento, este apelido e muito longo ou muito curto!") return true end local pokename = getItemAttribute(getPlayerSlotItem(cid, 8).uid, "poke") selfSay("Voce tem certeza que quer alterar o nome de seu pokemon de "..pokename.." para \""..msge.."\"? isto vai custar 10 hundred dollars.") conv = 5 finalname = msgeelseif msgcontains(msg, "yes") and focus == cid and conv == 5 then if getPlayerSlotItem(cid, 8).uid <= 0 then selfSay("Onde esta seu pokemon?! Coloque ele no slot principal!") focus = 0 return true end if doPlayerRemoveMoney(cid, 100000) == false then selfSay("Voce nao tenho dinheiro suficiente para me pagar pelos meus serviços, volte mais tarde.") focus = 0 conv = 0 return true end local nick = ""..finalname.."" local description = "Contem um "..getItemAttribute(getPlayerSlotItem(cid, 8).uid, "poke").."." selfSay("Pronto! Agora seu pokemon tem um novo apelido, aproveite!") doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "nick", nick) local newdes = description.."\nIt's nickname is: "..finalname.."." doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "description", newdes) local hp = getItemAttribute(getPlayerSlotItem(cid, 8).uid, "happy") doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "happy", hp + 25) if #getCreatureSummons(cid) >= 1 then adjustStatus(getCreatureSummons(cid)[1], getPlayerSlotItem(cid, 8).uid) end focus = 0 conv = 0 endend local intervalmin = 38local intervalmax = 70local delay = 25local number = 1local messages = {"Quer dar apelido ao seu pokemon? Fale comigo!", "Voce sabia que seu pokemon fica mais feliz quando voce o da um apelido?", "Todos seus pokemons querem ter um apelido, converse comigo", "Pokemons amam apelidos, voce deve dar os seus um.", }function onThink() if focus == 0 then selfTurn(1) delay = delay - 0.5 if delay <= 0 then selfSay(messages[number]) number = number + 1 if number > #messages then number = 1 end delay = math.random(intervalmin, intervalmax) end return true else if not isCreature(focus) then focus = 0 return true end local npcpos = getThingPos(getThis()) local focpos = getThingPos(focus) if npcpos.z ~= focpos.z then focus = 0 return true end if (os.clock() - talk_start) > 45 then focus = 0 selfSay("Volte outra hora!") end if getDistanceToCreature(focus) > 3 then selfSay("Enjoy!") focus = 0 return true end local dir = doDirectPos(npcpos, focpos) selfTurn(dir) endreturn trueend Prints: Créditos Bluester
  8. LionM

    Addon System PDA

    Adicione a linha no Actions.xml Crie um arquivo no com o nome addonsys.xml em <action itemid="ID DO ADDON ANTES DE APLICAR NO POKEMON" event="script" value="addonsys.lua"/> Actions/Data/addonsys.xml function onUse(cid, item, fromPosition, itemEx, toPosition) local addons = { [12595] = {pokemon= "Arcanine" , looktype = 1469, fly = 0, ride = 1470, surf = 0}, [12686] = {pokemon= "Lucario" , looktype = 1494, fly = 0, ride = 0, surf = 0}, [12685] = {pokemon= "Electabuzz" , looktype = 1493, fly = 0, ride = 0, surf = 0}, [12684] = {pokemon= "Noctowl" , looktype = 1495, fly = 1496, ride = 0, surf = 0}, [12699] = {pokemon= "Shiny Electabuzz" , looktype = 1497, fly = 0, ride = 0, surf = 0}, [ID DO ADDON] = {pokemon= "NOME DO POKEMON" , looktype = O ID DO POKEMON COM A ROUPA, fly = 0, ride = 0, surf = 0}, } if #getCreatureSummons(cid) > 0 then doPlayerSendCancel(cid, "Please back your pokemon.") return false end local addon = addons[item.itemid].looktype local fly = addons[item.itemid].fly local ride = addons[item.itemid].ride local surf = addons[item.itemid].surf -- local addonItem = addons[item.itemid] local pb = getPlayerSlotItem(cid, 8).uid local pk = addons[item.itemid].pokemon if getItemAttribute(pb,"poke") ~= pk then doPlayerSendCancel(cid, "Sorry, you can't use this addon on this poke.") return false end if getItemAttribute(pb,"addon") >= 0 then doRemoveItem(item.uid, 1) doPlayerSendTextMessage(cid, 27, "Congratulations! Your Pokémon received a Addon.") doSetItemAttribute(pb,"addon",addon) doSetItemAttribute(pb,"addonItem",addonItem) doSetItemAttribute(pb,"addonfly",fly) doSetItemAttribute(pb,"addonride",ride) doSetItemAttribute(pb,"addonsurf",surf) return true end if getItemAttribute(getPlayerSlotItem(cid, 8).uid, "ehditto") or getItemAttribute(getPlayerSlotItem(cid, 8).uid, "ehshinyditto") thendoPlayerSendCancel(cid, "Você não pode usar Addons em Dittos transformados.")end return trueend No goback.lua antes de return true end Adicione: local pk = getCreatureSummons(cid)[1] local pb = getPlayerSlotItem(cid, 8).uid local look = getItemAttribute(pb,"addon") if not look then doSetItemAttribute(pb,"addon",0) return false end if look > 0 then doSetCreatureOutfit(pk, {lookType = look}, -1) return true endelse doPlayerSendCancel(cid, "This pokemon is fainted.")end Prints: Créditos Bluester
  9. @admelite, desisti por falta de tempo e de ajuda, não, não tem nenhum bug que compromete. O mapa está assim mesmo, mas pode pegar qualquer mapa e adicionar
  10. Não, possui alguns bug's pequenos, e algum sistemas faltando mas postei mesmo pela source
  11. LionM

    PokeCamp - Remakes

    Está indo normal, e não é virus.
  12. LionM

    PokeCamp - Client

    Disponibilizarei o client do PokeCamp. Prints: Créditos a Lulampo
  13. LionM

    PokeCamp - Remakes

    Disponibilizarei os remakes do PokeCamp, junto a sua SPR inteira. Print: Créditos a Lulampo e Edilsonfs
  14. Salve galera! Como estou parando com pokétibia vou liberar a base do PokeCamp para vocês, a source que contém nela é a source mais próxima da original do PDA, então façam bom proveito. Uma base muito boa para começar um projeto, pelo fato de ser PDA e uma source limpa e organizada. Changelog 0.1 Prints:
  15. Uma ilha de poison, o que acharam? (Para uPoké)
  16. Olá, sou LionM, e apresento meu projeto uPoké. Sem delongas, vamos ao projeto. Changelog 0.1 Sistemas: Mapa Créditos: Lucas Otaviani Alex Cunha Bluester Lulampo Edilsonfs LionM
  • Quem Está Navegando   0 membros estão online

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