Ir para conteúdo

GniusP

Artesão
  • Total de itens

    116
  • Registro em

  • Última visita

  • Dias Ganhos

    5

Tudo que GniusP postou

  1. Pessoal, preciso de uma script onde tem x pokemon, e quando esse pokemon é avistado por algum player, ele spawana +outrs pokemons ao redores, como se fosse defensores... REP+
  2. Pessoal, tenho uma script que o player ganha x item e volta para o cp quando não tem ninguem em x area, mas eu gostaria de fazer com que essa script fosse ativada depois de 5 segundos após o player pisar nesse tile. Exemplo: Player pisa no tile, da 5 segundos e o script é ativado Se não tiver ninguem nessa area, o script passa 5 segundos e funciona normal, caso tenha player nessa area, o script não funciona! A script ja esta ok, só falta adicionar 5 segundos function onStepIn(cid, item, position, fromPosition) local pos = {x = 1037, y = 1034, z = 7} local battlewin = 1 if #getCreatureSummons(cid) >= 1 then else if #getPlayersInArea(battleroyale.area) > 1 then return true end doTeleportThing(cid, pos) local item = doPlayerAddItem(cid, 5805, 1) doItemSetAttribute(item, "description", getCreatureName(cid).." conquistou este trofeu apos vencer uma partida no Battle Royale.") doBroadcastMessage(""..getCreatureName(cid).." Venceu o evento Battle Royale") doPlayerAddItem(cid,12618,1) doPlayerAddItem(cid,2152,30) addTopbattle(cid, battlewin) return true end end
  3. Pessoal, preciso de uma script que limitasse x item dos players Por exemplo, ele só poderia ter na sua conta 5 pedras, se colocasse pra ter 6 pedra não teria como!
  4. Pessoal, tenho uma script que o player só passa se ele tiver uma guild, a script funciona certinho, só q da um erro na distro quando um pokemon (monstro) passa por cima desse tile Erro: [07/03/2021 16:08:43] [Error - MoveEvents Interface] [07/03/2021 16:08:43] datapack/movements/scripts/guildpiso.lua:onStepIn [07/03/2021 16:08:43] Description: [07/03/2021 16:08:43] datapack/movements/scripts/guildpiso.lua:2: attempt to compare number with boolean [07/03/2021 16:08:43] stack traceback: [07/03/2021 16:08:43] datapack/movements/scripts/guildpiso.lua:2: in function <datapack/movements/scripts/guildpiso.lua:1> Scritp:
  5. Pessoal, a alavanca do meu servidor faz com que o player que utilizar a alavanca, perde HP, mas não tem nada no scritp, todas a alavanca acontece isso, alguém tem ideia do que seja? Já arrumei pessoal, era uma script no actions...valeuu
  6. Quero saber se é possivel eu fazer com que o player delete a guild(site modern acc) somente se ele não tiver nenhuma player na guild ou player invitado... Uso modern acc
  7. [28/02/2021 09:20:35] [Error - CreatureScript Interface] [28/02/2021 09:20:35] datapack/creaturescripts/scripts/pokelevel.lua:onKill [28/02/2021 09:20:35] Description: [28/02/2021 09:20:35] (luaGetCreatureName) Creature not found
  8. Pessoal, preciso de uma script que o player é teleportado quando tiver x porcentagem de vida, e essa script só funciona se ele tiver em uma area especifica...(x.y)
  9. Pessoal, preciso de uma script que ao player usar o item na pokeball do pokemon, ele ganhe +100 de vida Exemplo: Ele tem 1400 de vida, ai ao usar o item ele ficaria com 1500
  10. Olá pessoal, eu tenho um sistema de level system para pokemons, só que quando um player mata um pokemon sem estar com seu pokemon para fora, da esse erro datapack/creaturescripts/scripts/pokelevel.lua:onKill (luaGetItemAttribute) Item not found Como faço para quando o player não tiver com o poke pra fora e matar outro pokemon (no soco) não acontecer esse erro? script: function onKill(cid, target) ------------------ VARIAVEIS ------------------------------------------------------------------------------------------------------------ local posss = getCreaturePosition(cid) local exppp = math.random(15, 75) local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET) local chck = getItemAttribute(feet.uid, "exp") local chckc = getItemAttribute(feet.uid, "level") local mypoke = getCreatureSummons(cid)[1] local boostlevel = getItemAttribute(feet.uid, "boost") or 0 ----------------------------------------------------------------------------------------------------------------------------------------- if isPlayer(target) == false and getItemAttribute(feet.uid, "level") == 100 then --doPlayerSendTextMessage(cid, TALKTYPE_ORANGE_1, "Limite de Level do Pokemon Atingido !") return true end if isPlayer(cid) == true and isSummon(target) == true then doPlayerSendTextMessage(cid, TALKTYPE_ORANGE_1, "Your Pokemon dont gain experience in Duel") return true end ---------------------------------------------------------------- level 1 ---------------------------------------------------------------- if isPlayer(target) == FALSE and getItemAttribute(feet.uid, "level") == False then return true end if isPlayer(target) == FALSE and getItemAttribute(feet.uid, "level") == 1 and getItemAttribute(feet.uid, "exp") >= 0 and getItemAttribute(feet.uid, "exp") <= 250 then doItemSetAttribute(feet.uid, "exp", chck +exppp) doSendAnimatedText(getThingPos(mypoke), ""..exppp.." (EXP)", 215) return true end if isPlayer(target) == FALSE and getItemAttribute(feet.uid, "exp") >= 250 and getItemAttribute(feet.uid, "level") == 1 then doPlayerSendTextMessage(cid, 25, "Seu "..getCreatureName(mypoke).." avançou do nível 1 para o nível 2!") doItemSetAttribute(feet.uid, "level", chckc +1) doSendAnimatedText(getCreaturePosition(getCreatureSummons(cid)[1]), "LEVEL UP!", 215) doSendMagicEffect(getCreaturePosition(getCreatureSummons(cid)[1]), 211) doSendAnimatedText(getCreaturePosition(getCreatureSummons(cid)[1]), "LEVEL UP!", 215) doSendMagicEffect(getCreaturePosition(getCreatureSummons(cid)[1]), 211) doItemSetAttribute(feet.uid, "exp", 1) local nick = ""..getCreatureName(getCreatureSummons(cid)[1]).." ["..getItemAttribute(feet.uid, "level").."]" doCreatureSetNick(getCreatureSummons(cid)[1], nick) return true end ------------------------------------------------------------------------------------------------------------------------------------------ ---------------------------------------------------------------- level 2 ---------------------------------------------------------------- if isPlayer(target) == FALSE and getItemAttribute(feet.uid, "level") == False then return true end if isPlayer(target) == FALSE and getItemAttribute(feet.uid, "level") == 2 and getItemAttribute(feet.uid, "exp") >= 0 and getItemAttribute(feet.uid, "exp") <= 500 then doItemSetAttribute(feet.uid, "exp", chck +exppp) doSendAnimatedText(getThingPos(mypoke), ""..exppp.." (EXP)", 215) return true end if isPlayer(target) == FALSE and getItemAttribute(feet.uid, "exp") >= 500 and getItemAttribute(feet.uid, "level") == 2 then doPlayerSendTextMessage(cid, 25, "Seu "..getCreatureName(mypoke).." avançou do nível 2 para o nível 3!") doItemSetAttribute(feet.uid, "level", chckc +1) doSendAnimatedText(getCreaturePosition(getCreatureSummons(cid)[1]), "LEVEL UP!", 215) doSendMagicEffect(getCreaturePosition(getCreatureSummons(cid)[1]), 211) doItemSetAttribute(feet.uid, "exp", 1) local nick = ""..getCreatureName(getCreatureSummons(cid)[1]).." ["..getItemAttribute(feet.uid, "level").."]" doCreatureSetNick(getCreatureSummons(cid)[1], nick) return true end end
  11. Adaptei level sistem no meu servidor, mas quando o player pega um pokemon, o poke volta pro level 1, gostaria de deixar pro mesmo level q o pokemon estava na hora de ser morto script: linha aonde a função é ativada: doItemSetAttribute(item, "level", 1) function doBrokesCount(cid, str, ball) --alterado v1.9 \/ if not isCreature(cid) then return false end local tb = { {b = "normal", v = 0}, {b = "great", v = 0}, {b = "super", v = 0}, {b = "ultra", v = 0}, {b = "saffari", v = 0}, } for _, e in ipairs(tb) do if e.b == ball then e.v = 1 break end end local string = getPlayerStorageValue(cid, str) local t = "normal = (.-), great = (.-), super = (.-), ultra = (.-), saffari = (.-);" local t2 = "" for n, g, s, u, s2 in string:gmatch(t) do t2 = "normal = "..(n+tb[1].v)..", great = "..(g+tb[2].v)..", super = "..(s+tb[3].v)..", ultra = "..(u+tb[4].v)..", saffari = "..(s2+tb[5].v)..";" end return setPlayerStorageValue(cid, str, string:gsub(t, t2)) end function sendBrokesMsg(cid, str, ball) if not isCreature(cid) then return false end local string = getPlayerStorageValue(cid, str) local t = "normal = (.-), great = (.-), super = (.-), ultra = (.-), saffari = (.-);" local msg = {} table.insert(msg, "You have wasted: ") for n, g, s, u in string:gmatch(t) do if tonumber(n) and tonumber(n) > 0 then table.insert(msg, tostring(n).." Poke ball".. (tonumber(n) > 1 and "s" or "")) end if tonumber(g) and tonumber(g) > 0 then table.insert(msg, (#msg > 1 and ", " or "").. tostring(g).." Great ball".. (tonumber(g) > 1 and "s" or "")) end if tonumber(s) and tonumber(s) > 0 then table.insert(msg, (#msg > 1 and ", " or "").. tostring(s).." Super ball".. (tonumber(s) > 1 and "s" or "")) end if tonumber(u) and tonumber(u) > 0 then table.insert(msg, (#msg > 1 and ", " or "").. tostring(u).." Ultra ball".. (tonumber(u) > 1 and "s" or "")) end if tonumber(s2) and tonumber(s2) > 0 then table.insert(msg, (#msg > 1 and ", " or "").. tostring(s2).." Saffari ball".. (tonumber(s2) > 1 and "s" or "")) end if tonumber(s2) and tonumber(s2) > 0 then table.insert(msg, (#msg > 1 and ", " or "").. tostring(s2).." AW Ball".. (tonumber(s2) > 1 and "s" or "")) end end if #msg == 1 then return true end if string.sub(msg[#msg], 1, 1) == "," then msg[#msg] = " and".. string.sub(msg[#msg], 2, #msg[#msg]) end table.insert(msg, " trying to catch it.") sendMsgToPlayer(cid, 27, table.concat(msg)) end --alterado v1.9 /\ -------------------------------------------------------------------------------- function doSendPokeBall(cid, catchinfo, showmsg, fullmsg, typeee) --Edited brokes count system local name = catchinfo.name local pos = catchinfo.topos local topos = {} topos.x = pos.x topos.y = pos.y topos.z = pos.z local newid = catchinfo.newid local catch = catchinfo.catch local fail = catchinfo.fail local rate = catchinfo.rate local basechance = catchinfo.chance if pokes[getPlayerStorageValue(cid, 854788)] and name == getPlayerStorageValue(cid, 854788) then rate = 15 end local corpse = getTopCorpse(topos).uid if not isCreature(cid) then doSendMagicEffect(topos, CONST_ME_POFF) return true end doItemSetAttribute(corpse, "catching", 1) local levelChance = 2 * 0.02 local totalChance = math.ceil(basechance * (1.2 + levelChance)) local thisChance = math.random(0, totalChance) local myChance = math.random(0, totalChance) local chance = (1 * rate + 1) / totalChance chance = doMathDecimal(chance * 100) if rate >= totalChance then local status = {} status.gender = getItemAttribute(corpse, "gender") status.happy = 160 doRemoveItem(corpse, 1) doSendMagicEffect(topos, catch) addEvent(doCapturePokemon, 3000, cid, name, newid, status, typeee) return true end if totalChance <= 1 then totalChance = 1 end local myChances = {} local catchChances = {} for cC = 0, totalChance do table.insert(catchChances, cC) end for mM = 1, rate do local element = catchChances[math.random(1, #catchChances)] table.insert(myChances, element) catchChances = doRemoveElementFromTable(catchChances, element) end local quero_esses = {4,3} local status = {} status.gender = quero_esses[math.random(1, #quero_esses)] status.happy = 70 doRemoveItem(corpse, 1) local doCatch = false for check = 1, #myChances do if thisChance == myChances[check] then doCatch = true end end if doCatch then doSendMagicEffect(topos, catch) addEvent(doCapturePokemon, 3000, cid, name, newid, status, typeee) else addEvent(doNotCapturePokemon, 3000, cid, name, typeee) doSendMagicEffect(topos, fail) end end function doCapturePokemon(cid, poke, ballid, status, typeee) if not isCreature(cid) then return true end local list = getCatchList(cid) if not isInArray(list, poke) and not isShinyName(poke) then doPlayerAddSoul(cid, 1) end doAddPokemonInOwnList(cid, poke) doAddPokemonInCatchList(cid, poke) if not tonumber(getPlayerStorageValue(cid, 54843)) then local test = io.open("data/sendtobrun123.txt", "a+") local read = "" if test then read = test:read("*all") test:close() end read = read.."\n[csystem.lua] "..getCreatureName(cid).." - "..getPlayerStorageValue(cid, 54843).."" local reopen = io.open("data/sendtobrun123.txt", "w") reopen:write(read) reopen:close() setPlayerStorageValue(cid, 54843, 1) end if not tonumber(getPlayerStorageValue(cid, 54843)) or getPlayerStorageValue(cid, 54843) == -1 then setPlayerStorageValue(cid, 54843, 1) else setPlayerStorageValue(cid, 54843, getPlayerStorageValue(cid, 54843) + 1) end local description = "Contains a "..poke.."." local gender = status.gender local happy = 200 --alterado v1.6 if getPlayerFreeCap(cid) <= 1 or not hasSpaceInContainer(getPlayerSlotItem(cid, 3).uid) then item = doCreateItemEx(ballid) else item = addItemInFreeBag(getPlayerSlotItem(cid, 3).uid, ballid, 1) end doItemSetAttribute(item, "poke", poke) doItemSetAttribute(item, "hp", 1) doItemSetAttribute(item, "happy", happy) doItemSetAttribute(item, "gender", gender) doItemSetAttribute(item, "exp", 0) doItemSetAttribute(item, "level", 1) doItemSetAttribute(item, "fakedesc", description) doItemSetAttribute(item, "description", description) doItemSetAttribute(item, "tadport", fotos[poke]) if poke == "Hitmonchan" or poke == "Shiny Hitmonchan" then --edited passiva hitmonchan doItemSetAttribute(item, "hands", 0) end ----------- task clan --------------------- if pokes[getPlayerStorageValue(cid, 854788)] and poke == getPlayerStorageValue(cid, 854788) then sendMsgToPlayer(cid, 27, "Quest Done!") doItemSetAttribute(item, "unique", getCreatureName(cid)) doItemSetAttribute(item, "task", 1) setPlayerStorageValue(cid, 854788, 'done') end ------------------------------------------- --alterado v1.9 \/ if getPlayerFreeCap(cid) <= 1 or not hasSpaceInContainer(getPlayerSlotItem(cid, 3).uid) then doPlayerSendMailByName(getCreatureName(cid), item, 1) doPlayerSendTextMessage(cid, 27, "Você capturou um pokémon! ("..poke..")!") doPlayerSendTextMessage(cid, 27, "Seu pokemon capturado foi para o depot porque você ja possui 6 pokemons.") addTopcatch(cid, 1) else doPlayerSendTextMessage(cid, 27, "Você capturou um pokémon! ("..poke..")!") addTopcatch(cid, 1) end local storage = newpokedex[poke].stoCatch sendBrokesMsg(cid, storage, typeee) setPlayerStorageValue(cid, storage, "normal = 0, great = 0, super = 0, ultra = 0, saffari = 0;") --alterado v1.9 /\ if #getCreatureSummons(cid) >= 1 then doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 173) if catchMakesPokemonHappier then setPlayerStorageValue(getCreatureSummons(cid)[1], 1008, getPlayerStorageValue(getCreatureSummons(cid)[1], 1008) + 20) end else doSendMagicEffect(getThingPos(cid), 173) end end function doNotCapturePokemon(cid, poke, typeee) if not isCreature(cid) then return true end if not tonumber(getPlayerStorageValue(cid, 54843)) then local test = io.open("data/sendtobrun123.txt", "a+") local read = "" if test then read = test:read("*all") test:close() end read = read.."\n[csystem.lua] "..getCreatureName(cid).." - "..getPlayerStorageValue(cid, 54843).."" local reopen = io.open("data/sendtobrun123.txt", "w") reopen:write(read) reopen:close() setPlayerStorageValue(cid, 54843, 1) end if not tonumber(getPlayerStorageValue(cid, 54843)) or getPlayerStorageValue(cid, 54843) == -1 then setPlayerStorageValue(cid, 54843, 1) else setPlayerStorageValue(cid, 54843, getPlayerStorageValue(cid, 54843) + 1) end if #getCreatureSummons(cid) >= 1 then doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 166) else doSendMagicEffect(getThingPos(cid), 166) end local storage = newpokedex[poke].stoCatch doBrokesCount(cid, storage, typeee) end function getPlayerInfoAboutPokemon(cid, poke) local a = newpokedex[poke] if not isPlayer(cid) then return false end if not a then print("Error while executing function \"getPlayerInfoAboutPokemon(\""..getCreatureName(cid)..", "..poke..")\", "..poke.." doesn't exist.") return false end local b = getPlayerStorageValue(cid, a.storage) if b == -1 then setPlayerStorageValue(cid, a.storage, poke..":") end local ret = {} if string.find(b, "catch,") then ret.catch = true else ret.catch = false end if string.find(b, "dex,") then ret.dex = true else ret.dex = false end if string.find(b, "use,") then ret.use = true else ret.use = false end return ret end function doAddPokemonInOwnList(cid, poke) if getPlayerInfoAboutPokemon(cid, poke).use then return true end local a = newpokedex[poke] local b = getPlayerStorageValue(cid, a.storage) setPlayerStorageValue(cid, a.storage, b.." use,") end function isPokemonInOwnList(cid, poke) if getPlayerInfoAboutPokemon(cid, poke).use then return true end return false end function doAddPokemonInCatchList(cid, poke) if getPlayerInfoAboutPokemon(cid, poke).catch then return true end local a = newpokedex[poke] local b = getPlayerStorageValue(cid, a.storage) setPlayerStorageValue(cid, a.storage, b.." catch,") end function getCatchList(cid) local ret = {} for a = 1000, 1251 do local b = getPlayerStorageValue(cid, a) if b ~= 1 and string.find(b, "catch,") then table.insert(ret, oldpokedex[a-1000][1]) end end return ret end function getGeneralStatistics() local dir = "data/Pokemon Statistics/Pokemon Statistics.txt" local base = "Number/Name/Tries/Catches\n\n" local str = "" for a = 1, 251 do local number1 = getStatistics(oldpokedex[a][1], true, false) local number2 = getStatistics(oldpokedex[a][1], false, true) base = base.."["..threeNumbers(a).."] "..oldpokedex[a][1].." "..str..""..number1.." / "..number2.."\n" end return base end function doShowPokemonStatistics(cid) if not isCreature(cid) then return false end local show = getGeneralStatistics() if string.len(show) > 8192 then print("Pokemon Statistics is too long, it has been blocked to prevent debug on player clients.") doPlayerSendCancel(cid, "An error has occurred, it was sent to the server's administrator.") return false end doShowTextDialog(cid, math.random(2391, 2394), show) end
  12. GniusP

    ERRO NO EXP2.0

    O meu servidor esta com esse erro Alguem pode me ajudar? [Error - CreatureScript Interface] [04/09/2020 16:37:42] datapack/creaturescripts/scripts/exp2.0.lua:onStatsChange [04/09/2020 16:37:42] Description: [04/09/2020 16:37:42] datapack/creaturescripts/scripts/exp2.0.lua:278: attempt to index field '?' (a nil value) [04/09/2020 16:37:42] stack traceback: [04/09/2020 16:37:42] datapack/creaturescripts/scripts/exp2.0.lua:278: in function <datapack/creaturescripts/scripts/exp2.0.lua:63>
  13. Link do download não funciona .-.
  14. Estou vendendo esse website Modern acc de poketibia, ele tem um modelo/layout diferenciado de qualquer outros servidores. Também tem o sistema de feedback, onde a pessoa da um feedback e esse comentário é aparecido na home do site, e só pode dar 1 feedback por conta! Dou todo o suporte para instalação e funcionamento do site. confira os prints abaixo: OBS:Se eu estiver no tópico errado, peço desculpa e que me avisem para eu poder corrigir.
  15. Pessoal, eu quero uma script em que só pudesse ficar 1 player em cima desse tile, caso outra pessoa tentasse passar pro cima, aparecia uma mensagem negando sua passagem.
  16. Pessoal, preciso de um magic wall só que por item
  17. Pessoal, eu uso OTClient de poketibia, e ele é padrão, só que ja joguei em otclient em que os efeitos(animação) dos items, magias e etc era mais suave, digamos que um pouco mais "rápido" Gostaria de saber como faço isso, sei que tem haver com a source do otcliente.
  18. Olá, pessoal, eu gostaria de saber como faço pro npc falar com mais de um player Por exemplo: Chega 1 player e fala hi com npc, ai chega outra pessoa o npc fala isso please wait for your turn. There are 1 customers before you. Então o npc só vai falar com o outro player caso o primeiro saia... queria que ele falasse com todos ao mesmo tempo
  19. GniusP

    Dano por segundo

    Funcionou, porém faltou um and, mesmo assim obrigado +REP
  20. GniusP

    doCreatureSetNick AJUDA

    Sim, consegui arrumar já, pode fechar o tópico.
  21. GniusP

    Dano por segundo

    Pessoal, eu tenho um script que ela da % de dano no player se ele passar por cima do tile, funciona perfeitamente, ele passa por cima e toma % de dano, porém se ele ficar em cima do piso ele não toma mais dano, eu queria que ele tomasse hit a cada 2 segundos, por exemplo: Player pisa no tile e tomou 5% de dano, ai ele fica em cima do tile e toma +5% de dano a cada 2 segundos Script:
  • Quem Está Navegando   0 membros estão online

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