Ir para conteúdo

Pesquisar na Comunidade

Mostrando resultados para as tags ''script''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Fóruns

  • xTibia - Notícias e Suporte
    • Regras
    • Noticias
    • Soluções
    • Projetos Patrocinados
    • Tutoriais para Iniciantes
    • Imprensa
  • OTServ
    • Notícias e Debates
    • OTServlist
    • Downloads
    • Recursos
    • Suporte
    • Pedidos
    • Show-Off
    • Tutoriais
  • OFF-Topic
    • Barzinho do Éks
    • Design
    • Informática

Encontrar resultados em...

Encontrar resultados que contenham...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


Sou

  1. Bom dia! Estou precisando muito de um teleport que funcione da seguinte maneira: Ao passa nesse tp ele me da um storage que mudará a posição que serei movido caso eu passe nele novamente. Explicando melhor. Eu uso um sistema no meu client que me da a chance de por imagens na tela em certos lugares que eu passo, e disso me aproveito para montar uma historia mais elaborada. Logo tendo esse teleport eu teria melhor proveito para fazer cenas em certos momentos da historia do game, tendo em vista que eu veria aquela determinada situação apenas uma vez já que esse tp mudaria o local que iria me mandar após ser adquirido o storage. Resumo: Funcionaria assim. Quando eu passar nesse tp ele me deslocará para "x" local, e neste local terá o enredo de uma parte da historia. (Um local fantasma assim digamos, já que o player passará apenas uma vez). Esse mesmo tp me dará uma storage para quando eu for passar NELE novamente ele irá me mover para outro "x" local( Que seria o mesmo local só que sem a situação da historia acontecendo). Eu preciso MUITO disso, se alguém puder me ajudar ficarei totalmente grato. Minha base é PDA.
  2. Então, como faz para entregar 5kk do shop? sendo que eu coloco la para entregar 5kk mas só recebe 1kk? se possível tem como fazer receber os itens em uma bag? local SHOP_MSG_TYPE = MESSAGE_EVENT_ORANGElocal SQL_interval = 30 function onThink(interval, lastExecution) local result_plr = db.getResult("SELECT * FROM z_ots_comunication WHERE `type` = 'login';") if(result_plr:getID() ~= -1) then while(true) do local id = tonumber(result_plr:getDataInt("id")) local action = tostring(result_plr:getDataString("action")) local delete = tonumber(result_plr:getDataInt("delete_it")) local cid = getCreatureByName(tostring(result_plr:getDataString("name"))) if isPlayer(cid) then local itemtogive_id = tonumber(result_plr:getDataInt("param1")) local itemtogive_count = tonumber(result_plr:getDataInt("param2")) local container_id = tonumber(result_plr:getDataInt("param3")) local container_count = tonumber(result_plr:getDataInt("param4")) local add_item_type = tostring(result_plr:getDataString("param5")) local add_item_name = tostring(result_plr:getDataString("param6")) local received_item = 0 local full_weight = 0 if add_item_type == 'container' then container_weight = getItemWeightById(container_id, 1) if isItemRune(itemtogive_id) == TRUE then items_weight = container_count * getItemWeightById(itemtogive_id, 1) else items_weight = container_count * getItemWeightById(itemtogive_id, itemtogive_count) end full_weight = items_weight + container_weight else full_weight = getItemWeightById(itemtogive_id, itemtogive_count) if isItemRune(itemtogive_id) == TRUE then full_weight = getItemWeightById(itemtogive_id, 1) else full_weight = getItemWeightById(itemtogive_id, itemtogive_count) end end local free_cap = getPlayerFreeCap(cid) if full_weight <= free_cap then if add_item_type == 'container' then local new_container = doCreateItemEx(container_id, 1) local iter = 0 while iter ~= container_count do doAddContainerItem(new_container, itemtogive_id, itemtogive_count) iter = iter + 1 end received_item = doPlayerAddItemEx(cid, new_container) else local new_item = doCreateItemEx(itemtogive_id, itemtogive_count) doItemSetAttribute(new_item, "aid", getPlayerGUID(cid)+10000) received_item = doPlayerAddItemEx(cid, new_item) end if received_item == RETURNVALUE_NOERROR then doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, 'You received >> '.. add_item_name ..' << from OTS shop.') db.query("DELETE FROM `z_ots_comunication` WHERE `id` = " .. id .. ";") db.query("UPDATE `z_shop_history_item` SET `trans_state`='realized', `trans_real`=" .. os.time() .. " WHERE id = " .. id .. ";") else doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << from OTS shop is waiting for you. Please make place for this item in your backpack/hands and wait about '.. SQL_interval ..' seconds to get it.') end else doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << from OTS shop is waiting for you. It weight is '.. full_weight ..' oz., you have only '.. free_cap ..' oz. free capacity. Put some items in depot and wait about '.. SQL_interval ..' seconds to get it.') end end if not(result_plr:next()) then break end end result_plr:free() end return trueend
  3. Alguem me ajuda resolver essa linha para tfs 1.0 doItemSetAttribute(new_item, "description", "Este item pode ser adquirido através do shopping. Adquirido dia " .. os.date("%d/%m/%Y - %X") .." por ".. getPlayerName(cid) ..". Serial: ".. getPlayerGUID(cid) ..".") preciso pra tfs 1.0
  4. Ola' Gostaria de Saber , Se Existe Alguma Funçao , de double Weapon para o player usar 2 Sword Se alguem Souber -- me falar onde fica agradeço
  5. gente é o seguinte tem essa linha no script Deixando Assim >> catchinfo.catch = ballcatch[item.itemid].on 100%Funcional executa apenas o on Deixando Assim >> catchinfo.catch = ballcatch[item.itemid].on2 100%Funcional executa apenas o on2 OBS: SE EU DEIXAR AS DUAS LINHAS IRA EXECUTAR APENAS 1 DAS 2 LINHAS esclarecendo tambem que o on é um efeito e o on2 outro efeito quero que seja executado 1 efeito e depois outro após o termino do primeiro Quero alterar o final da linha e não estou conseguindo quero que após executar o on execute em seguida o on2 talvez tenha que colocar um timer já tentei das seguintes formas mas nem uma deu certo catchinfo.catch = ballcatch[item.itemid].on,on2 catchinfo.catch = ballcatch[item.itemid].(on,on2) catchinfo.catch = ballcatch[item.itemid].on.on2 catchinfo.catch = ballcatch[item.itemid].[on.on2] catchinfo.catch = ballcatch[item.itemid].on+on2 catchinfo.catch = ballcatch[item.itemid].on and on2 esse é o local do script local catchinfo = {} catchinfo.rate = ballcatch[item.itemid].cr catchinfo.catch = ballcatch[item.itemid].on catchinfo.fail = ballcatch[item.itemid].off catchinfo.newid = newidd catchinfo.name = doCorrectPokemonName(name) catchinfo.topos = topos catchinfo.chance = x.chance e essa é a parte que executa o local addEvent(doSendPokeBall, d * 70 + 100 - (d * 14) , cid, catchinfo, false, false, typeee) e essa é a parte que o local chama local ballcatch = { [2394] = {cr = 2, on = 193, on2 = 10, off = 192, ball = {11826, 11737}, send = 47, typeee = "normal", boost = "0"},
  6. Eu queria uma ajuda no systema de profissao onde ele contem systema de level e eu queria pedi ajuda se teria como tira o systema de level dele? Script(Creaturescript) Script(NPC) Rep++
  7. Iae pessoal será que alguém pode me ajudar ? Então estou querendo um sistema de PET, que tipo clica em um determinado item o pet nasce e clica de novo ele some. PET NÍVEL 1, PET NÍVEL 2, PET NÍVEL 3 (O PET Fica MAIS FORTE É PELO NÍVEL) E que attack os Players, mas não o dono dele. Cada Item de um Nível de pet Diferente .
  8. Estou com uma duvida relacionado a minha script de camera! SCRIPT Ela como podem ver esta so pra VIP usa eu queria deixa pra free pode usa. Dai estava com duvida se era so tira isto \/ que voltava a fica free de novo pode usa. Rep+
  9. Galera, estou aprendo lua faz pouco tempo e fiz um sisteminha simples de batalha, gostaria de saber se se tem como melhorar, fica ao para galera que puder me ajudar a aprender umas coizinhas novas boss = {} --tabela dos monstrosboss[1] = {nome = "voce", hp = 10, atac = 4, def = 2,};boss[2] = {nome = "deer", hp = 10, atac = 3, def = 1,};boss[3] = {nome = "wolf", hp = 10, atac = 3, def = 2,};print ("Teste de Consulta a tabela simples\n"); --explicao simplesprint ("Escolha um nome"); -- pedido de nome para personagem principalboss[1].nome = io.read(); -- atribui nome ao personagemwhile true do -- ciclo de comandosprint ("\nComandos (ataque),(exit),(numero) \nExp:1"); --explicao detalhada x= io.read(); --pede valor de x para consulta de personagem e inimigos if x == "exit" then -- se digitado exit termina o programa print ("Fim da Consulta"); break; elseif x == "ataque" then -- entra no modo de ataque e imprimi os inimigos menos o personagem print ("Selecione um Alvo:"); for i = 2, #boss do print (i .. "\) " .. "boss: " .. boss[tonumber(i)].nome); -- rotorna o valor de todos os monstros end print ("Selecione um alvo: "); alvo = io.read(); -- seleciona um alvo if boss[tonumber(alvo)] == nil or boss[tonumber(alvo)].hp <= 0 then -- verifica se o valor é valido ou se o alvo ainda tem vida print ("Alvo morto ou invalido"); elseif boss[1].hp <= 0 then -- verifica se voce ainda tem vida, caso nao tenha dá break print ("Voce Está morto"); break; elseif alvo == "1" then -- verifica se voce está se atacando print ("Voce nao pode se atacar, sera direcionado ao inicio"); else boss[tonumber(alvo)].hp = boss[tonumber(alvo)].hp - (boss[1].atac - boss[tonumber(alvo)].def); -- calcula o dano no alvo e atribui em HP boss[1].hp = boss[1].hp - (boss[tonumber(alvo)].atac - boss[1].def); -- calcula o dano recebido no personagem e atribui no hp print ("Voce Atacou: " ..boss[tonumber(alvo)].nome .. " Dano: " .. boss[tonumber(alvo)].def - boss[1].atac .. " Vida Restante: " .. boss[tonumber(alvo)].hp); -- imprime informaçoes de batalha contra inimigos print (boss[tonumber(alvo)].nome .." te atacou" .. " Dano: " .. boss[tonumber(alvo)].atac - boss[1].def .. " Vida Restate: " .. boss[1].hp); -- imprime informaçoes de batalha contra o personagem print ("Tete atacar novamente!!"); -- iforma para voce atarcar novamente end else if tonumber(x) == nil or tonumber(x) > #boss then -- verifica se o valor de consulta é valido. print ("\nAlvo ou comando invalido"); else -- caso o valor de consulta seja valido ele busca na tabela boss print ("\nNome: "..boss[tonumber(x)].nome); print ("Vida: "..boss[tonumber(x)].hp .. " Ataque: " .. boss[tonumber(x)].atac .. " Defesa: " .. boss[tonumber(x)].def); end endend
  10. Galera queria ajuda com um Npc, tipo ele funciona normal eu digo Hi ele diz: Hello Teste. say travel. eu digo travel ele diz: Eu posso levá-lo para? city 1 eu digo city 1 e ele me leva normal. Porem gostaria que o npc verificasse se ele tem X storage se ele nao tiver ele nao e teleportado e ele manda uma mensagem pro player: Voce nao tem tal storage. Script: Ah e se for possivel gostaria de saber se tem como arrumar o BUG de um jogador dizer que vai pra tal cidade e o outro diz ao mesmo tempo, ai quando o outro jogador diz yes vai pra cidade errada que foi a cidade que o outro jogador disse ...
  11. Hey, então, o script da talkaction fui eu que fiz, tentei colocar na pokedex e não consegui. O script da talkaction diz quantas stones faltam para seu pokémon chegar ao boost +50, a dex também funciona assim, mas caso algum jogador use a dex no seu pokémon, irá mostrar o boost do pokémon dele e quantas stones faltam para este chegar ao boost +50. O dalvorsn me ajudou a colocar o script na pokedex e a simplificá-lo, então, créditos dele. Muito obrigado, @dalvorsn! Eu editei a pergunta, pois o dalvorsn me ajudou por mensagem. Script para quem quiser: data/lib/pokedex system.lua coloquem isso nas primeiras linhas: procure por table.insert(stt, "Name: "..name.."\n") e embaixo coloque local others = {"Steelix", "Dragonite", "Skarmory", "Scizor", "Salamence"} if not virtual and isPlayer(getCreatureMaster(item2.uid)) then if isInArray(others, name) then local boost = getItemAttribute(ball.uid, "boost") or 0 local stones = metalcrystal[boost] local calculo = 70 - stones table.insert(stt, "Boost level: +"..boost..".\n"..calculo.." stones left to +50.\n") else local boost = getItemAttribute(ball.uid, "boost") or 0 local stones = normais[boost] local calculo = 338 - stones table.insert(stt, "Boost level: +"..boost..".\n"..calculo.." stones left to +50.\n") end end em "local others =" vocês vão colocar os pokémon que são boostados com Crystal/Metal/Ancient Stone, caso no seu ot tenha o sistema desse tipo de pokémon ser boostado com 1 stone por boost até o boost 30, e nos próximos boosts, ser boostado com 2 stones por boost. Se você não quer esse sistema ou não tem esse sistema, deixe assim: if not virtual and isPlayer(getCreatureMaster(item2.uid)) then if isInArray(others, name) then local boost = getItemAttribute(ball.uid, "boost") or 0 local stones = normais[boost] local calculo = 338 - stones table.insert(stt, "Boost level: +"..boost..".\n"..calculo.." stones left to +50.\n") endend Caso você queira que seja por talkaction e não na dex, use esse script: data/talkactions/scripts crie um arquivo .lua stonestofifty.lua: talkactions.xml:
  12. Hey, então, eu estou tentando aprender lua e passei de teoria para scripts básicos/fuçar em scripts que encontro aqui no fórum. Eu pretendo fazer um script para torneio 1x1 semanal para pokémon, já tenho o script basicamente montado na minha cabeça, só tem duas coisas que eu não faço ideia de como programar. Primeira: Vai ter um NPC para inscrição para o torneio, esse NPC vai te dar um storage caso você pague a taxa de inscrição e tal. Gostaria de saber como faço para puxar apenas dois players com esse storage e se estiverem na sala de espera. Exemplo: Segunda: Como eu faço para depois de 1 minuto, o duelo começar? E caso algum deles não coloque algum pokémon até 59 segundos, este ser desclassificado e ser teleportado para fora da arena? Agradeço!
  13. Como faço essa linha para mysql. obrigado db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = 102086 ORDER BY cast(value as INTEGER) DESC;")
  14. Queria um tile que quando o player estiver em battle com um monstro ele nao pode passar, e que apareça uma mensagem " elimine o monstro" esse script seria esse, mais ta com erro alguém consegue arrumar? function onStepOut(creature, item, position, fromPosition) if not creature:isPlayer() then return true end for _, s in pairs(Game.getSpectators(creature:getPosition(), false, false, 7, 7, 5, 5)) do if s:isMonster() and not s:getMaster() then creature:sendTextMessage(MESSAGE_INFO_DESCR, "Elimine o monstro primeiro.") creature:teleportTo(fromPosition, false) return true end end return trueend
  15. olá to com esse script aki q ta meio bugado mas funfa e queria fazer uma pequenas modficaçoes apenas 1º modificaçao pra só VIP conseguer usar 2º modificaçao pra ter como adicionar + items la agora esta assim "if item2.itemid == 2700 then" queria saber como adicionar + items pra essa lista pois usei or xxxx or xxxx or xxxx e ai o script ficou bugado 3º pra SÓ MUDAR A OUTFIT se usar em 1 item da lista pois agora em qualquer coisa q vc usar ele pega a outfit 4º tb nao sei pq ja q se vc usar a newtype do outfit pelo comando /newtype voce pega com os seus cores mas quando o script usa a outfit fica td branca entao ai o script function onUse(cid, item, frompos, item2, topos) local chance = 10 -- chance de cortarlocal madeiras = {15556, 15556} -- item que o player irá ganharlocal premio = madeiras[math.random(1, #madeiras)]local transformItem = 8786local texts = {"Toc"} -- texto que irá aparecer quando usar o itemlocal random = texts[math.random(1,#texts)]local time = 5 -- Minutos para crescer novamente local outfit = 2546 -- ID da Outfit Male.local outfit2 = 2547 -- ID da Outfit Female. if getPlayerSex(cid) == 1 then doSetCreatureOutfit(cid, {lookType = outfit}, 10000) -- Tempo em que a outfit estará trocada. else doSetCreatureOutfit(cid, {lookType = outfit2}, 10000) -- Tempo em que a outfit estará trocada.enddoCreatureSetNoMove(cid, true)addEvent(function() if not isPlayer(cid) then return true end doCreatureSetNoMove(cid, false)end, 10000) ---if getPlayerStorageValue(cid, 17000) or getPlayerStorageValue(cid, 17001) then---doPlayerSendCancel(cid, "Você não pode coletar quando estiver em fly ou ride.")---return true---end if item2.itemid == 2700 or 2701 or 2708 thenif math.random(1,100) >= chance thenaddEvent(doPlayerAddItem, time*10*1000, cid, premio, math.random(2, 4))doTransformItem(item2.uid, transformItem)addEvent(doPlayerSendTextMessage, time*10*1000, cid, 22, "Você coletou madeiras.")doDecayItem(item2.uid)addEvent(doCreateItem, time*60*1000, item2.uid, item2.itemid, 1, getThingPos(item2.uid))elsedoSendAnimatedText(topos, ""..random.."", TEXTCOLOR_GREEN)addEvent(doPlayerSendTextMessage, time*10*1000, cid,22,"Você não conseguiu cortar.")endendreturn trueend function onUse(cid, item, frompos, item2, topos) local chance = 10 -- chance de cortarlocal madeiras = {15556, 15556} -- item que o player irá ganharlocal premio = madeiras[math.random(1, #madeiras)]local transformItem = 8786local texts = {"Toc"} -- texto que irá aparecer quando usar o itemlocal random = texts[math.random(1,#texts)]local time = 5 -- Minutos para crescer novamente local outfit = 2546 -- ID da Outfit Male.local outfit2 = 2547 -- ID da Outfit Female. if getPlayerSex(cid) == 1 then doSetCreatureOutfit(cid, {lookType = outfit}, 10000) -- Tempo em que a outfit estará trocada. else doSetCreatureOutfit(cid, {lookType = outfit2}, 10000) -- Tempo em que a outfit estará trocada.enddoCreatureSetNoMove(cid, true)addEvent(function() if not isPlayer(cid) then return true end doCreatureSetNoMove(cid, false)end, 10000) ---if getPlayerStorageValue(cid, 17000) or getPlayerStorageValue(cid, 17001) then---doPlayerSendCancel(cid, "Você não pode coletar quando estiver em fly ou ride.")---return true---end if item2.itemid == 2700 or 2701 or 2708 thenif math.random(1,100) >= chance thenaddEvent(doPlayerAddItem, time*10*1000, cid, premio, math.random(2, 4))doTransformItem(item2.uid, transformItem)addEvent(doPlayerSendTextMessage, time*10*1000, cid, 22, "Você coletou madeiras.")doDecayItem(item2.uid)addEvent(doCreateItem, time*60*1000, item2.uid, item2.itemid, 1, getThingPos(item2.uid))elsedoSendAnimatedText(topos, ""..random.."", TEXTCOLOR_GREEN)addEvent(doPlayerSendTextMessage, time*10*1000, cid,22,"Você não conseguiu cortar.")endendreturn trueend
  16. Estou com duvida relacionado a este comando de vip! SCRIPT Eu queria saber qual eo comando desta script que adiciona o vip? ja tentei /addvip bruno,100 << mais fala que falta o dias ainda.
  17. Bom dia. Procurei pelo fórum mas não achei nada do tipo. Estou precisando de um sistema de teleport que mude a outifit do player e outro que remova e volte como estava antes sendo male e female. Alguém tem um sistema desse ai?
  18. Ola galera, eu tenho um script para comprar item com uma certa moeda de troca, porém queria saber como edito o script para aceitar 2 moedas de troca.. POR EXEMPLO: compro tal item clicando no bau com crystal coin dentro da BP, quero modificar o script para comprar com crystal coin ou scarab coin.. versão do ot 8.6 tfs 0.4 local coin = 2160 -- sua moeda vip local lever = { [6016] = {1000,2158}, [6017] = {1000,2154}, [6018] = {1000,2156}, } local arrows = {8303,8302,8301} -- coloque o ID aqui function onUse(cid,item,fromPosition,itemEx,toPosition) if doPlayerRemoveItem(cid,coin,lever[item.actionid][1]) == FALSE then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você não tem dinheiro suficiente (1000000 gold coins = 1000k = 1000 crystal coins).") end doPlayerAddItem(cid,lever[item.actionid][2], isItemStackable(lever[item.actionid][2]) and 1 or 1) doSendAnimatedText(toPosition,'Comprado!', TEXTCOLOR_BLUE) doSendMagicEffect(toPosition,12) return true end
  19. Pessoal instalei esse script no meu servidor de poketibia ele está funcionando 50% como que está funcionando... ele inicia o evento e fala 20:18 [Poke Kill Event] O evento comecou e vai durar 8 minuto. O monstro sorteado foi Rattata! Quem matar mais deles ate o fim sera o vencedor! ai eu vou e mato um pokemon mais não aparece a mensagem de contagem de quantos pokemons eu matei e depois de acabar o tempo aparece a mensagem 20:26 [Poke Kill Event] O evento terminou e nao houve nenhum vencedor. tá ai o script para que alguém possa min ajudar ficarei muito agradecido se alguém min ajudar Obs: meu tfs é 1.0 em data/creaturescripts/scripts: Em data/creaturescripts/creaturescripts.xml: Em data/globalevents/scripts: Em data/globalevents/globalevents.xml:
  20. gostaria de ajuda na conversão desse sistema para TFS 0.3.6 <event type="think" name="aA" script="autoAttack.lua"/> function onThink(cid, interval) local monster = Monster(cid) if monster ~= nil then local targets = monster:getTargetList() local currentTarget = monster:getTarget() if not currentTarget then return monster:searchTarget() end if currentTarget ~= nil then for i = 1, #targets do local target = targets[i] if target:isPlayer() then monster:addFriend(target) monster:removeTarget(target) end end local newTarget = monster:getTargetList()[1] monster:setTarget(newTarget) monster:setFollowCreature(newTarget) end end return trueend
  21. Olá galera, eu estava tentando criar um script pra um amigo que é o seguinte: a maquina vai ter 1 slot e 1 botão, ai vc coloca seu pokemon no slot e ao apertar o botão ele vai checar se seu pokemon tem algum held item, se tiver, ele vai remover o held do seu pokemon e voltar ele pra sua bag por custo x, se não, vai mandar uma msg de erro. Não consegui terminar, mas empaquei aqui, um amigo tambem estava ajudando mas ele não consegiu terminar, se alguem puder ajudar ficarei grato. Codigo que meu amigo estava fzd, mas n deu certo:
  22. Eu adicionei novas vocações, só que na hr de abrir o ot dá esse erro aqui Meu vocation.xml tá anexado Obrigado desde já <3 rep + vocations.xml
  23. Bom consegui deixar meu SERVIDOR de poketibia com o ''Vai Doka'' ou seja ''Vai Bulbasaur'' laranja fazendo que não apareça no console ! Mas o ''Volte Doka ou seja ''Volte Bulbasaur'' ainda está amarelo e aparecendo no console :x
  24. Pessoal, eu tenho uma duvida, onde eu defino o alcance do NPC em SQMS? porque eu vejo que em alguns OTS, o npc só alcance com 3 sqms de distancia, em outros são 5, onde eu configuro isso?
  25. Eu queria por este comando so pra vip usa!! Comando Rep+
×
×
  • Criar Novo...