-
Total de itens
2187 -
Registro em
-
Última visita
-
Dias Ganhos
58
Tudo que Yan Oliveira postou
-
Potion de Pokemon Certa quantidade de HP [Resolvido]
pergunta respondeu ao kamus9629 de Yan Oliveira em Scripts
Você não especificou a quantidade exata que quer, então substitua o código por esse: local hp_quantidade = 50000 -- COLOQUEI AQUI A QUANTIDADE DE HP function doHealOverTime(cid, div, turn, effect) --alterado v1.6 peguem o script todo!! if not isCreature(cid) then return true end if turn <= 0 or (getCreatureHealth(cid) == getCreatureMaxHealth(cid)) or getPlayerStorageValue(cid, 173) <= 0 then setPlayerStorageValue(cid, 173, -1) return true end local hp = math.floor(hp_quantidade) doCreatureAddHealth(cid, hp) if math.floor(turn/10) == turn/10 then doSendMagicEffect(getThingPos(cid), effect) end addEvent(doHealOverTime, 100, cid, div, turn - 1, effect) end local potions = { [1456] = {effect = 13, div = 235}, --super potion [1451] = {effect = 13, div = 330}, --great potion [384] = {effect = 12, div = 550}, --ultra potion [385] = {effect = 14, div = 750}, --hyper potion [392] = {effect = 14, div = 900}, --full restore [667] = {effect = 14, div = 1200}, --full restore [668] = {effect = 14, div = 1350}, --full restore [669] = {effect = 14, div = 1600}, --full restore [670] = {effect = 14, div = 1710}, --full restore [671] = {effect = 14, div = 2280}, --full restore } function onUse(cid, item, frompos, item2, topos) local pid = getThingFromPosWithProtect(topos) if not isSummon(pid) or getCreatureMaster(pid) ~= cid then return doPlayerSendCancel(cid, "You can only use potions on your own Pokemons!") end if getCreatureHealth(pid) == getCreatureMaxHealth(pid) then return doPlayerSendCancel(cid, "This pokemon is already at full health.") end if getPlayerStorageValue(pid, 173) >= 1 then return doPlayerSendCancel(cid, "This pokemon is already under effects of potions.") end if getPlayerStorageValue(cid, 52481) >= 1 then return doPlayerSendCancel(cid, "You can't do that while a duel.") end if getPlayerStorageValue(cid, 990) >= 1 then doPlayerSendCancel(cid, "You can't use rpotion during gym battles.") return true end doCreatureSay(cid, "".. getCreatureName(pid)..", take this potion!", TALKTYPE_MONSTER) doSendMagicEffect(getThingPos(pid), 0) setPlayerStorageValue(pid, 173, 1) doRemoveItem(item.uid, 1) local a = potions[item.itemid] doHealOverTime(pid, a.div, 100, a.effect) return true end E na primeira linha na variável hp_quantidade troque o valor pelo desejado. Teste e me fale. -
[Dúvida] Imagem nao aparece ao criar novo item
pergunta respondeu ao El Rusher de Yan Oliveira em Scripts
Já testou em outro slot de item no Object Builder? Tem que tomar cuidado porque alguns slots livres são para scripts usarem como invisível mesmo. Um tempo atrás eu tinha adicionado uma outfit em um slot "livre" e aquele slot era usado para deixar invisível quando usava Team Slice do Scyther, ai quando usava depois que adicionei outfit, ficava addon do homem-aranha que eu adicionei ?. Testa em outro e vê se não aparece também. Edit: Pelo que vi, o fundo da sprite não é transparente, e lembro que vi uma vez que se não for transparente ou rosa ele não funciona no cliente. Pode ser isso. -
Você diz um tempo para usar novamente correto? E quer quanto tempo para reusar?
-
Poketibia - Alguem sabe como resetar as houses?
pergunta respondeu ao Tandyaewq de Yan Oliveira em Scripts
Só para entender melhor, resetar você diz remover todos os donos e seus itens das houses? Porque precisa ver direitinho o que você quer para não fazer burrada, ainda mais se tem servidor online. -
Você não testou certo, pois eu testei aqui com o seu próprio script sem alterar nada e deu certo, confira: Pode ver que sumonei 1 Gengar e já nasceu como Mega, você não alterou a chance certo. Substitua seu script do spawn.lua por esse: local shinys = {""} local raros = {"Lucario", "Gyarados", "Gengar", "Blaziken", "Blastoise", "Beedrill", "Alakazam", "Charizard"} local function MegaName(cid) if isCreature(cid) then if string.find(tostring(getCreatureName(cid)), "Mega") then local newName = tostring(getCreatureName(cid)):match("Mega (.*)") doCreatureSetNick(cid, newName) if isMonster(cid) then doSetCreatureDropLoot(cid, true) end end end end local function doSetRandomGender(cid) if not isCreature(cid) then return true end if isSummon(cid) then return true end local gender = 0 local name = getCreatureName(cid) if not newpokedex[name] then return true end local rate = newpokedex[name].gender if rate == 0 then gender = 3 elseif rate == 500 then gender = 4 elseif rate == -1 then gender = 0 elseif math.random(1, 500) <= rate then gender = 4 else gender = 3 end doCreatureSetSkullType(cid, gender) end local function doMega(cid) if isCreature(cid) then if isSummon(cid) then return true end if getPlayerStorageValue(cid, 74469) >= 1 then return true end if getPlayerStorageValue(cid, 22546) >= 1 then return true end if isNpcSummon(cid) then return true end if getPlayerStorageValue(cid, 637500) >= 1 then return true end --alterado v1.9 if isInArray(megas, getCreatureName(cid)) then --alterado v1.9 \/ chance = 1000 --1% chance elseif isInArray(raros, getCreatureName(cid)) then --n coloquem valores menores que 0.1 !! chance = 1000 --1% chance else return true end if math.random(1, 500) <= chance*10 then doSendMagicEffect(getThingPos(cid), 18) local name, pos = "Mega ".. getCreatureName(cid), getThingPos(cid) doRemoveCreature(cid) local shi = doCreateMonster(name, pos, false) setPlayerStorageValue(shi, 74469, 1) else setPlayerStorageValue(cid, 74469, 1) end --/\ else return true end end function onSpawn(cid) registerCreatureEvent(cid, "Experience") registerCreatureEvent(cid, "GeneralConfiguration") registerCreatureEvent(cid, "DirectionSystem") registerCreatureEvent(cid, "CastSystem") if isSummon(cid) then registerCreatureEvent(cid, "SummonDeath") return true end addEvent(doMega, 10, cid) addEvent(MegaName, 15, cid) addEvent(adjustWildPoke, 5, cid) return true end E teste, verá que vai funcionar.
-
Na condicional if estava com 1 igual. Testa assim: ------------------------------ FUNÇÃO LOCAL selfAttackCrature() --------------------------- local function selfAttackCreature() if #getCreatureSummons(getNpcCid()) > 0 and not isCreature(getCreatureTarget(getCreatureSummons(getNpcCid())[1])) then local list = getSpectators(getCreaturePosition(getNpcCid()), 7, 7, false) for i=0, table.getn(list) do local _target = list[i] if(_target ~= 0) then if isPlayer(_target) and not getTileInfo(getThingPos(_target)).protection then if #getCreatureSummfighting == falseons(_target) > 0 then doMonsterSetTarget(getCreatureSummons(getNpcCid())[1], getCreatureSummons(_target)[1]) setPlayerStorageValue(getCreatureSummons(getNpcCid())[1], 99856201, getNpcCid()) else fighting = false end target = _target break end end end end end ----------------------------------------------------- CÓDIGO ----------------------------------------------------- local focus = 0 local max_distance = 8 local talk_start = 0 local conv = 0 local fighting = false local challenger = 0 local afk_limit_time = 300 -- seconds local afk_time = 0 -- don't change local battle_turn = 1 -- don't change local challenger_turn = 0 -- don't change local pokemons = { {name = "Alakazam", optionalLevel = 400, sex = SEX_MALE, nick = "", ball = "normal"}, {name = "Shiny Hypno", optionalLevel = 400, sex = SEX_MALE, nick = "", ball = "normal"}, {name = "Mr. Mime", optionalLevel = 400, sex = SEX_FEMALE, nick = "", ball = "normal"}, {name = "Porygon", optionalLevel = 400, sex = SEX_FEMALE, nick = "", ball = "normal"}, {name = "Espeon", optionalLevel = 400, sex = SEX_FEMALE, nick = "", ball = "normal"}, } local function doSummonGymPokemon(npc) local this = npc if #getCreatureSummons(this) >= 1 or focus == 0 then return true end local it = pokemons[battle_turn] doSummonMonster(this, it.name) local summon = getCreatureSummons(this)[1] local balleffect = pokeballs["normal"].effect if it.ball and pokeballs[it.ball] then balleffect = pokeballs[it.ball].effect end doSendMagicEffect(getThingPos(summon), balleffect) setPlayerStorageValue(summon, 10000, balleffect) setPlayerStorageValue(summon, 10001, gobackmsgs[math.random(#gobackmsgs)].back:gsub("doka", it.nick ~= "" and it.nick or it.name)) setPlayerStorageValue(summon, 1007, it.nick ~= "" and it.nick or it.name) doSetMonsterGym(summon, focus) addEvent(adjustWildPoke, 15, summon, it.optionalLevel) local name = it.nick ~= "" and it.nick or getCreatureName(this).."s "..it.name doCreatureSay(this, gobackmsgs[math.random(#gobackmsgs)].go:gsub("doka", getPlayerStorageValue(summon, 1007)), 1) fighting = true battle_turn = battle_turn + 1 end local function doWinDuel(cid, npc) if not isCreature(cid) then return true end local this = npc local a = gymbadges[getCreatureName(this)] + 8 doCreatureSay(npc, "You won the duel! Congratulations, take this "..getItemNameById(a - 8).." as a prize.", 1) local b = getPlayerItemById(cid, true, a) if b.uid > 0 then doTransformItem(b.uid, b.itemid - 8) end doPlayerSendCancel(cid, "#getBadges# "..getCreatureName(this).." "..getPlayerItemCount(cid, gymbadges[getCreatureName(this)])) end function onCreatureSay(cid, type, msg) local msg = string.lower(msg) if focus == cid then talk_start = os.clock() end if msgcontains(msg, 'hi') and focus == 0 and getDistanceToCreature(cid) <= 4 then focus = cid talk_start = os.clock() conv = 1 selfSay("Hello "..getCreatureName(cid)..", my name is Sabrina and I'm Saffron's Gym Leader. How may I help you?") return true end if isDuelMsg(msg) and conv == 1 and focus == cid then --if getPlayerItemCount(cid, gymbadges[getCreatureName(getThis())]) >= 1 then -- selfSay("You have already won my Marsh Badge, maybe some other day we can fight.") -- focus = 0 --return true --end if not hasPokemon(cid) then selfSay("To battle agains't a gym leader you need pokemons.") return true end selfSay("You are challenging me to a battle. It will be a "..#pokemons.." pokemon limit battle, let's start?") conv = 2 return true end if isConfirmMsg(msg) and conv == 2 and focus == cid then challenger = focus setPlayerStorageValue(cid, 990, 1) selfSay("Yea, let's fight!") talk_start = os.clock() addEvent(doSummonGymPokemon, 850, getThis()) conv = 3 return true end if isNegMsg(msg) and conv == 2 and focus == cid then focus = 0 selfSay("It is better for you to refuse a battle against me!") return true end if msgcontains(msg, 'bye') and focus == cid then selfSay('Bye and do your best trainer!') setPlayerStorageValue(focus, 990, -1) focus = 0 return true end end local afk_warning = false function onThink() --doSendAnimatedText(getThingPos(getThis()), getCreatureName(getThis()), 215) if focus == 0 then selfTurn(2) fighting = false challenger = 0 challenger_turn = 0 battle_turn = 1 afk_time = 0 afk_warning = false if #getCreatureSummons(getThis()) >= 1 then setPlayerStorageValue(getCreatureSummons(getThis())[1], 1006, 0) doCreatureAddHealth(getCreatureSummons(getThis())[1], -getCreatureMaxHealth(getCreatureSummons(getThis())[1])) end return true else if not isCreature(focus) then focus = 0 return true end if fighting then talk_start = os.clock() if not isCreature(getCreatureTarget(getThis())) then if #getCreatureSummons(challenger) >= 1 then if getCreatureOutfit(getCreatureSummons(challenger)[1]).lookType ~= 2 then --alterado v1.6 selfAttackCreature() challenger_turn = challenger_turn + 1 afk_time = 0 end else afk_time = afk_time + 0.5 end end if afk_time > afk_limit_time then setPlayerStorageValue(focus, 990, -1) focus = 0 selfSay("I have waited too long, come back when you are ready!") return true end if not afk_warning and afk_time > afk_limit_time / 2 then selfSay("Where's your pokemon? Let's fight!") afk_warning = true end if #getCreatureSummons(getThis()) == 0 then if battle_turn > #pokemons then addEvent(doWinDuel, 1000, focus, getThis()) setPlayerStorageValue(focus, 990, -1) focus = 0 return true end addEvent(doSummonGymPokemon, 1000, getThis()) end if not hasPokemon(challenger) or challenger_turn >= 7 or challenger_turn > #pokemons then selfSay("You lost our duel! Maybe some other time you'll defeat me.") setPlayerStorageValue(focus, 990, -1) focus = 0 return true end end local npcpos = getThingPos(getThis()) local focpos = getThingPos(focus) if npcpos.z ~= focpos.z then setPlayerStorageValue(focus, 990, -1) focus = 0 selfSay("Bye then.") return true end if (os.clock() - talk_start) > 30 then selfSay("Good bye and keep training!") setPlayerStorageValue(focus, 990, -1) focus = 0 end if getDistanceToCreature(focus) > max_distance then setPlayerStorageValue(focus, 990, -1) focus = 0 return true end local dir = doRedirectDirection(getDirectionTo(npcpos, focpos)) selfTurn(dir) end return true end
-
E qual vai ser a condição para ele parar de receber o item? Até quando ele vai receber?
-
Poketibia - Alguem sabe como resetar as houses?
pergunta respondeu ao Tandyaewq de Yan Oliveira em Scripts
Você diz resetar as house no banco de dados ou comando para resetar com server online? -
Testa e veja se funciona assim: function dropEffect(pos, eff, n) if n > 0 then pos.x, pos.y = pos.x +1, pos.y +1 doSendMagicEffect(pos, eff) addEvent(dropEffect, 1000, pos, eff, n-1) end end if count > 0 then if isStone(item.id) then dropEffect(pos, stoneDropEff, 1) return true end if isInArray(specialDropList, item.id) then dropEffect(pos, specialDropEff, 1) elseif isInArray(specialDropList2, item.id) then dropEffect(pos, specialDrop2Eff, 1) elseif isOrb(item.id) then dropEffect(pos, orbDropEff, 1) end
-
@BrunoMaciel Coloquei a função local selfAttackCrature que o nociam mandou, teste o código: ------------------------------ FUNÇÃO LOCAL selfAttackCrature() --------------------------- local function selfAttackCreature() if #getCreatureSummons(getNpcCid()) > 0 and not isCreature(getCreatureTarget(getCreatureSummons(getNpcCid())[1])) then local list = getSpectators(getCreaturePosition(getNpcCid()), 7, 7, false) for i=0, table.getn(list) do local _target = list[i] if(_target ~= 0) then if isPlayer(_target) and not getTileInfo(getThingPos(_target)).protection then if #getCreatureSummfighting = falseons(_target) > 0 then doMonsterSetTarget(getCreatureSummons(getNpcCid())[1], getCreatureSummons(_target)[1]) setPlayerStorageValue(getCreatureSummons(getNpcCid())[1], 99856201, getNpcCid()) else fighting = false end target = _target break end end end end end ----------------------------------------------------- CÓDIGO ----------------------------------------------------- local focus = 0 local max_distance = 8 local talk_start = 0 local conv = 0 local fighting = false local challenger = 0 local afk_limit_time = 300 -- seconds local afk_time = 0 -- don't change local battle_turn = 1 -- don't change local challenger_turn = 0 -- don't change local pokemons = { {name = "Alakazam", optionalLevel = 400, sex = SEX_MALE, nick = "", ball = "normal"}, {name = "Shiny Hypno", optionalLevel = 400, sex = SEX_MALE, nick = "", ball = "normal"}, {name = "Mr. Mime", optionalLevel = 400, sex = SEX_FEMALE, nick = "", ball = "normal"}, {name = "Porygon", optionalLevel = 400, sex = SEX_FEMALE, nick = "", ball = "normal"}, {name = "Espeon", optionalLevel = 400, sex = SEX_FEMALE, nick = "", ball = "normal"}, } local function doSummonGymPokemon(npc) local this = npc if #getCreatureSummons(this) >= 1 or focus == 0 then return true end local it = pokemons[battle_turn] doSummonMonster(this, it.name) local summon = getCreatureSummons(this)[1] local balleffect = pokeballs["normal"].effect if it.ball and pokeballs[it.ball] then balleffect = pokeballs[it.ball].effect end doSendMagicEffect(getThingPos(summon), balleffect) setPlayerStorageValue(summon, 10000, balleffect) setPlayerStorageValue(summon, 10001, gobackmsgs[math.random(#gobackmsgs)].back:gsub("doka", it.nick ~= "" and it.nick or it.name)) setPlayerStorageValue(summon, 1007, it.nick ~= "" and it.nick or it.name) doSetMonsterGym(summon, focus) addEvent(adjustWildPoke, 15, summon, it.optionalLevel) local name = it.nick ~= "" and it.nick or getCreatureName(this).."s "..it.name doCreatureSay(this, gobackmsgs[math.random(#gobackmsgs)].go:gsub("doka", getPlayerStorageValue(summon, 1007)), 1) fighting = true battle_turn = battle_turn + 1 end local function doWinDuel(cid, npc) if not isCreature(cid) then return true end local this = npc local a = gymbadges[getCreatureName(this)] + 8 doCreatureSay(npc, "You won the duel! Congratulations, take this "..getItemNameById(a - 8).." as a prize.", 1) local b = getPlayerItemById(cid, true, a) if b.uid > 0 then doTransformItem(b.uid, b.itemid - 8) end doPlayerSendCancel(cid, "#getBadges# "..getCreatureName(this).." "..getPlayerItemCount(cid, gymbadges[getCreatureName(this)])) end function onCreatureSay(cid, type, msg) local msg = string.lower(msg) if focus == cid then talk_start = os.clock() end if msgcontains(msg, 'hi') and focus == 0 and getDistanceToCreature(cid) <= 4 then focus = cid talk_start = os.clock() conv = 1 selfSay("Hello "..getCreatureName(cid)..", my name is Sabrina and I'm Saffron's Gym Leader. How may I help you?") return true end if isDuelMsg(msg) and conv == 1 and focus == cid then --if getPlayerItemCount(cid, gymbadges[getCreatureName(getThis())]) >= 1 then -- selfSay("You have already won my Marsh Badge, maybe some other day we can fight.") -- focus = 0 --return true --end if not hasPokemon(cid) then selfSay("To battle agains't a gym leader you need pokemons.") return true end selfSay("You are challenging me to a battle. It will be a "..#pokemons.." pokemon limit battle, let's start?") conv = 2 return true end if isConfirmMsg(msg) and conv == 2 and focus == cid then challenger = focus setPlayerStorageValue(cid, 990, 1) selfSay("Yea, let's fight!") talk_start = os.clock() addEvent(doSummonGymPokemon, 850, getThis()) conv = 3 return true end if isNegMsg(msg) and conv == 2 and focus == cid then focus = 0 selfSay("It is better for you to refuse a battle against me!") return true end if msgcontains(msg, 'bye') and focus == cid then selfSay('Bye and do your best trainer!') setPlayerStorageValue(focus, 990, -1) focus = 0 return true end end local afk_warning = false function onThink() --doSendAnimatedText(getThingPos(getThis()), getCreatureName(getThis()), 215) if focus == 0 then selfTurn(2) fighting = false challenger = 0 challenger_turn = 0 battle_turn = 1 afk_time = 0 afk_warning = false if #getCreatureSummons(getThis()) >= 1 then setPlayerStorageValue(getCreatureSummons(getThis())[1], 1006, 0) doCreatureAddHealth(getCreatureSummons(getThis())[1], -getCreatureMaxHealth(getCreatureSummons(getThis())[1])) end return true else if not isCreature(focus) then focus = 0 return true end if fighting then talk_start = os.clock() if not isCreature(getCreatureTarget(getThis())) then if #getCreatureSummons(challenger) >= 1 then if getCreatureOutfit(getCreatureSummons(challenger)[1]).lookType ~= 2 then --alterado v1.6 selfAttackCreature() challenger_turn = challenger_turn + 1 afk_time = 0 end else afk_time = afk_time + 0.5 end end if afk_time > afk_limit_time then setPlayerStorageValue(focus, 990, -1) focus = 0 selfSay("I have waited too long, come back when you are ready!") return true end if not afk_warning and afk_time > afk_limit_time / 2 then selfSay("Where's your pokemon? Let's fight!") afk_warning = true end if #getCreatureSummons(getThis()) == 0 then if battle_turn > #pokemons then addEvent(doWinDuel, 1000, focus, getThis()) setPlayerStorageValue(focus, 990, -1) focus = 0 return true end addEvent(doSummonGymPokemon, 1000, getThis()) end if not hasPokemon(challenger) or challenger_turn >= 7 or challenger_turn > #pokemons then selfSay("You lost our duel! Maybe some other time you'll defeat me.") setPlayerStorageValue(focus, 990, -1) focus = 0 return true end end local npcpos = getThingPos(getThis()) local focpos = getThingPos(focus) if npcpos.z ~= focpos.z then setPlayerStorageValue(focus, 990, -1) focus = 0 selfSay("Bye then.") return true end if (os.clock() - talk_start) > 30 then selfSay("Good bye and keep training!") setPlayerStorageValue(focus, 990, -1) focus = 0 end if getDistanceToCreature(focus) > max_distance then setPlayerStorageValue(focus, 990, -1) focus = 0 return true end local dir = doRedirectDirection(getDirectionTo(npcpos, focpos)) selfTurn(dir) end return true end OBS: Eu não testei, apenas inseri a função que o amigo mandou para ver se soluciona o problema. Teste e veja se funciona, se der certo, dê rep+ para o @nociam
-
Vai ter que postar o arquivo pokemonsmoves.lua inteiro para eu dar uma olhada, porque pelo que vi no script ali ele usa outras funções do arquivo.
-
Está durando quanto tempo o efeito do move?
-
[NPC] Pular necessidade de 'HI' para shop
pergunta respondeu ao doruaziin de Yan Oliveira em Scripts
Se clica no npc ele fica com fight condition? -
Bom vamos lá, ficou meio confuso seu pedido. Você mandou um script de item, mas você quer que double exp seja através de item ou pode ser de outra forma? E quanto tempo vai durar? E quando mandar código ou scripts, coloque dentro de spoiler ou da tag código para ficar mais legível.
-
Olá amigo, essa não é a área correta, essa área é para dúvida ou problemas com script. A área correta é em formação de equipes: https://www.xtibia.com/forum/forum/610-formação-de-equipes/
-
Mas a chance está baixa, talvez não tenha nascido porque a chance está pouca. Aumenta para 100 para testar e me fala se ainda não nasce.
-
Seu servidor é Tibia ou Derivado?
-
[Tutorial] Criando Novos Pokemons Para Pda [Iniciantes]
tópico respondeu ao Yan Oliveira de Yan Oliveira em Tutoriais para Iniciantes
Você sabe o nome da base que está usando? Baixou ela recentemente? -
Você disse que tentou mexer e não deu certo, e como não especificou, ficou vago e deu a entender que algo deu errado. Mas deu certo o sistema que o cara te passou ai ou você quer continuar com esse seu script e quer que colocar verificação de 24 horas?
-
Erro "not enough memory" ao tentar capturar um pokemon
pergunta respondeu ao M i s s de Yan Oliveira em Scripts
Qual base você está usando? -
O que não deu certo no seu script? Qual foi o erro? Está funcionando para os 5 jogadores? Seu server tem alguma função de converter segundos para horas?
-
Como assim? Você quer setar na ordem?
-
Esse script que você tem é um item?
-
Que bom mano, fico feliz ^^.
-
Vai no remere's, abre o seu mapa e vai no baú onde está os pokémons, depois adicione o seguinte actiondId em todos os baús: 18777 (Pode ser outro de sua preferência, mas tem que ser o mesmo para todos os baús). Agora em Data/Actions/Scripts crie um arquivo chamado start.lua e adicione todo o seguinte código dentro: local starterpokes = { ["Bulbasaur"] = {x = 1009, y = 1009, z = 7}, ["Charmander"] = {x = 1012, y = 1009, z = 7}, ["Squirtle"] = {x = 1015, y = 1009, z = 7}, } local itens = { [2394] = 20, [2152] = 10, [12346] = 5, [12344] = 5, } local btype = "Icone" local storage = 77477 local cities = { ["Saffron"] = 1, ["Cerulean"] = 2, ["Lavender"] = 3, ["Fuchsia"] = 4, ["Celadon"] = 5, ["Viridian"] = 6, ["Pallet"] = 7, ["Pewter"] = 8, ["Vermilion"] = 9, ["Cinabar"] = 10, } ---------------------------------------- CÓDIGO ------------------------------------ function onUse(cid, item, frompos, item2, topos) if getPlayerStorageValue(cid, storage) < 1 then local pokemon = "" for a, b in pairs (starterpokes) do if isPosEqualPos(topos, b) then pokemon = a end end if pokemon == "" then return true end doPlayerSendTextMessage(cid,22,"Boa escolha. Divirta-se!") addPokeToPlayer(cid, pokemon, 0, nil, btype, true) setPlayerStorageValue(cid, 8955, 1) nome_pokemon = pokemon for i, j in pairs(itens) do doPlayerAddItem(cid, i, j) end doPlayerSetTown(cid, cities["Saffron"]) -- COLOCA O NOME DA CIDADE QUE QUER QUE SEJA CIDADE NATAL doSendMagicEffect(getThingPos(cid), 29) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) doSendMagicEffect(getThingPos(cid), 40) doSendMagicEffect(getThingPos(cid), 7) setPlayerStorageValue(cid, storage, 1) return true else doPlayerSendTextMessage(cid, 27, "Você já escolheu seu pokémon!") return true end return TRUE end E salve o arquivo com a codificação ANSI, senão vai aparecer caracteres inválidos no chat porque coloquei palavras com acento. *OBS: Criei um novo arquivo para manter o outro como backup e para ficar mais organizado. E também com um nome melhor rs. Agora em Data/Actions/ abra o Actions.xml, procure por essa tag: <action actionid="1740" event="script" value="IniciasPokes.lua"/> E comente ela (Em xml é <!-- -->), e embaixo adicione essa tag: <action actionid="18777" event="script" value="start.lua"/> <!-- COLOQUE O ID DA ACTIONID DO REMERES --> Não esquece de adicionar os outros pokémon na tabela, eu deixei só 3 para teste, adicione o restante com suas devidas localizações. Eu testei aqui e deu certo, e não esqueça de salvar o actionId pelo remere's. Testa e me fala.
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.