
Tudo que Makhai Drakon postou
-
Construir/Destruir - Montagem do Script
@shadauer Eu criei um aqui mas ele não chega se o player está na posição e sim se ele tem um storage, então eu criei um movements que da e retira a storage as vantagens são que você poderacolocar em qualquer outro lugar do mapa em vez de apenas um local, o de remover o item ainda estou fazendo.. OBS: Eu não testei então não sei se está funcional, me de seu feedback e caso de erro mande o erro pra min! Eu adicionei uma parte caso queira tirar um item do player ex:vou fazer uma porta de madeira então gasto madeira Isso fica configuravem aqui: ["door"] = {2160, 2, 2161, 2}, ["door"] = {IDdaPorta, QuantidadeDePortas, IDdaMadeira, QuantidadeDeMadeiras}, OBS:Em QuantidadeDePortas deixe 1, apenas mude caso o item tiver stack(juntar mais de 1 EX:Gold) Eu deixei um comentário no script para que você entenda, mas se não souber editar alguma coisa me fale! data/talkactions/script/Creator.lua local itens = { --["param"] = {CreateID, CreateQuantidade, NeedID, NeedQuantidade, StorageNeed}, ["wall"] = {2160, 1, 2161, 1}, ["door"] = {2160, 2, 2161, 2}, ["window"] = {2160, 3, 2161, 3}, } function onSay(cid, words, param, channel) local pos = getCreaturePosition(cid) local itens = itens[string.lower(param)] if getPlayerStorageValue(cid, 767676) == 1 then if param == "" then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você precisa escolher um item!") return true end if param == "wall" or param == "door" or param == "window" then if doPlayerRemoveItem(cid, itens[3], itens[4]) doCreateItem(itens[1], itens[2], pos) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You create "..itens[2]..""..getItemNameById(itens[1]).."(s)") return true else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need "..itens[4]..""..getItemNameById(itens[3]).." to create it!") return true end else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode criar este item!") return true end else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não está no local correto!") return true end data/talkactions/talkactions.xml <talkaction event="script" words="!create;/create" value="Creator.lua"/> data/movements/script/Creator.lua function onStepIn(cid, item, position, fromPosition) if(isPlayer(cid)) then setPlayerStorageValue(cid, 767676, 1) end return true end function onStepOut(cid, item, position, fromPosition) if(isPlayer(cid)) then setPlayerStorageValue(cid, 767676, 1) end return true end data/movements/movements.xml Caso queira colocar em um tile especifico use este! <movevent type="StepIn" itemid="TileID" event="script" value="Creator.lua"/> <movevent type="StepOut" itemid="TileID" event="script" value="Creator.lua"/> Caso queira colocar uma actionid em um tile use este! (ACONSELHO ESTE) <movevent type="StepIn" actionid="767676" event="script" value="Creator.lua"/> <movevent type="StepOut" actionid="767676" event="script" value="Creator.lua"/>
-
afkfishing
@Rafa3lL Posta o script do seu fishing
-
crystal arrow.
@Leomonti Como eu não tenho server de tibia baixado poderia me disponibilizar o .lua da arrow e o id da spell do exori ? E também não entendi muito bem essa parte: Você fala no sqm que o monstro tava quando a arrow acertou ?
-
[PEDIDO] DROWNING
@kmus1344 Testa ai por favor local condition = createConditionObject(CONDITION_DROWN) setConditionParam(condition, CONDITION_PARAM_PERIODICDAMAGE, -20) setConditionParam(condition, CONDITION_PARAM_TICKS, -1) setConditionParam(condition, CONDITION_PARAM_TICKINTERVAL, 2000) function StopDraw() doRemoveCondition(cid, condition) end function onStepIn(cid, item, position, fromPosition) if(isPlayer(cid)) then doAddCondition(cid, condition) addEvent(StopDraw, 2*60*1000) end return true end @kmus1344 Eu vi que fiz uma cagadinha ali kkk E primeiro script remove a condição de draw depois de 2 minutos mesmo o player não saindo do lugar. O segundo que vou te mandar agora só tira a condição de draw depois de 2 minutos depois do player sair do lugar. local condition = createConditionObject(CONDITION_DROWN) setConditionParam(condition, CONDITION_PARAM_PERIODICDAMAGE, -20) setConditionParam(condition, CONDITION_PARAM_TICKS, -1) setConditionParam(condition, CONDITION_PARAM_TICKINTERVAL, 2000) function onStepIn(cid, item, position, fromPosition) if(isPlayer(cid)) then doAddCondition(cid, condition) end return true end function StopDraw() doRemoveCondition(cid, condition) end function onStepOut(cid, item, position, fromPosition) addEvent(StopDraw, 2*60*1000) return true end
-
[PEDIDO] NPC
@mostps Esse era o script do meu server, eu dei uma editada nele pra você, mas eu não testei! Captain.xml <?xml version="1.0" encoding="UTF-8"?> <npc name="Captain" script="Captain.lua" walkinterval="3000" floorchange="0" access="5" level="100" maglevel="1"> <health now="15" max="15"/> <look type="335" head="114" body="7" legs="7" feet="7" addons="2"/> <parameters> <parameter key="message_greet" value="Welcome |PLAYERNAME|, you want some {quest}?"/> </parameters> </npc> Captain.lua local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function PArea(cid, message, keywords, parameters, node) if(not npcHandler:isFocused(cid)) then return false end local function backp() doTeleportThing(cid, parameters.exit) end if parameters.premium == false and not isPremium(cid) then npcHandler:say('Sorry, you need to be premium account!', cid) return true elseif doPlayerRemoveMoney(cid, parameters.price) == FALSE then npcHandler:say('Sorry, you dont have enought money!', cid) return true end doPlayerSendTextMessage(cid,22,'Good Luck!.') doTeleportThing(cid, parameters.enter) addEvent(backp, parameters.minutes*60*1000) npcHandler:resetNpc() return true end local node1 = keywordHandler:addKeyword({'quest'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Nessa {quest} possui monstros muito fortes você esta pronto para enfrenta-los?? Mais antes guarde suas pokebolas no DP....ah você so tem 60 minutos de tempo para realizar essa quest!!!!'}) node1:addChildKeyword({'yes'}, PArea, {premium = no, price = 0, enter = {x=1235, y=630, z=8}, exit = {x=1235, y=630, z=8}, minutes = 60}) node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Ok, then.', reset = true}) npcHandler:addModule(FocusModule:new())
-
Pedido - Teleport Item
@Bohr Não entendi mano poderia me explicar melhor ?
-
Alavanca que teleporta
@rizen Esse e o script que uso no meu server mas eu editei ele pra vc, da uma testada ai! -- Script Editado por Ckfox local config = { --XXX Quest-- [40000] = { -- ActionID que ficara no objeto da quest (EX:Alavanca) posis = { {'play1', {x=223, y=405, z=7}}, -- Posição de onde o player deve ficar {'play2', {x=223, y=407, z=7}}, -- Posição de onde o player deve ficar {'play3', {x=223, y=409, z=7}}, -- Posição de onde o player deve ficar {'play4', {x=225, y=410, z=7}}, -- Posição de onde o player deve ficar }, toPosi = {x=225, y=407, z=8}, -- Posição de onde o player será teleportado lvl = 150, -- Level necessario para fazer a quest item = {2160, 1}, -- Item necessario para entrar area1 = {x = 483, y = 1132, z = 8}, -- Essa parta e a area que os players estarão area2 = {x = 560, y = 1208, z = 8}, -- Essa parta e a area que os players estarão }, } function onUse(cid, item, frompos, item2, topos) local area1 = config[item.actionid].area1 local area2 = config[item.actionid].area2 if #getPlayerInArea(area1, area2) > 0 then doPlayerSendTextMessage(cid, 20, "Tem um player na quest, espere sua vez!") return true end local posis = config[item.actionid].posis local toPosi = config[item.actionid].toPosi local lvl = config[item.actionid].lvl local itens = config[item.actionid].item for _, array in ipairs(posis) do local p = getRecorderPlayer(array[2]) if not isPlayer(p) ~= array[1] and getPlayerLevel(cid) <= lvl then doPlayerSendTextMessage(cid, 27, "Alguém está fora do lugar ou não tem level suficiente para entrar!") return true end if not doPlayerRemoveItem(p, itens[1], itens[2]) doPlayerSendTextMessage(cid, 27, "Você precisa de "..itens[2]..""..itens[1].."para entrar!") return true end end for _, array in ipairs(posis) do local p = getRecorderPlayer(array[2]) if isPlayer(p) then doTeleportThing(p, toPosi) doSendMagicEffect(getThingPos(p), 21) end end return true end <action actionid="40000" event="script" value="group_quests.lua"/> No area 1 e area 2 funciona assim: 1000000000000000000 0000000000000000000 0000000000000000000 0000000000000000000 0000000000000000000 0000000000000000000 0000000000000000002 1 = area1 2 = area2 Isso e como se fosse seu um pedaço do mapa onde fica a quest e onde os players estarão você pega o posição do 1 e a do 2
- Ajudando, por favor, por favor
-
(Resolvido)[PEDIDO] Npc troca item por item e da storage
Pelo que eu li no script não tem nada constando o group, então funciona para ambos Aconselho só mudar o selfsay da linha 34 falando para o player que ele ja fez a troca. local cfg = { need_item = {5785, 10}, reward_item = {13506, 1}, storage = 40531, } local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid local msg = msg:lower() if msgcontains(msg, 'kefla') then if getPlayerStorageValue(cid, cfg.storage) < 1 then if doPlayerRemoveItem(cid, cfg.need_item[1], cfg.need_item[2]) then doPlayerAddItem(cid, cfg.reward_item[1], cfg.reward_item[2]) selfSay('You just swap '.. cfg.need_item[2] ..' '.. getItemNameById(cfg.need_item[1]) ..' for '.. cfg.reward_item[2] ..' '.. getItemNameById(cfg.reward_item[1]) ..'.', cid) setPlayerStorageValue(cid, cfg.storage, 1) else selfSay('You need '.. cfg.need_item[2] ..' '.. getItemNameById(cfg.need_item[1]) ..'.', cid) end else selfSay('You already did this exchange!', cid) end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
- [TUTORIAL] Como adicionar pokemons com {Icon System}.
-
Mining system
@Pepeco Então mano, seu script mesmo estando bem simples já faz a função de uma mineração. Oque eu modificaria no script era seguinte: 1 - O Shop por alavanca não que seja ruim mas não e uma opção muito viável a se utilizar eu optaria por um npc. 2 - Com a retirado do shop não haveria mais necessidade de utilizar o arquivo na lib 3 - Colocar um delay modificando o item minerado ou adicionando uma storange de time: local delay_sto = 99999 local delay_time = 5 -- Segundos setPlayerStorageValue(cid, delay_sto, os.time() + (delay_time*1)) 4 - Isso e apenas uma opinião particular minha, essa parta da explicação SUA eu não compreendi muito bem da primeira vez que li Isso são apenas sugestões, fora isso o script está muito bom.
-
[PROJETO] Rust Tibia
@pablobion Foi mal man n tinha visto, minha intenção e fazer um survive saca ? Vai ter apenas uma capital, o resto do mapa e hunt e tals vai ter os lugar no meio do nada pra tu fzer sua house, na house tu pode colocar por exemplo um fogão la pra assar as carne e pah aushaush faze um churras. Vai demorar um pouquinho pq to solo.
- [PROJETO] Rust Tibia
- [PROJETO] Rust Tibia
- [PROJETO] Rust Tibia
- [PROJETO] Rust Tibia
- [PROJETO] Rust Tibia
-
[PROJETO] Rust Tibia
--Por favor me digam se me apoião ou não! Isso e muito importante para mim !-- Mapa do tópico Resumo Inovações Introdução Vagas Objetivos Imagens Spoilers Atualizações Conclusão --Resumo-- Os players começarão com um livro de receitas básico que você fará apenas os itens necessários! Dentro do livro terá algumas receitas que se você possuir os materiais necessários para produzir a receita desejada você apenas precisa utiliza-la para criar o item! Com o tempo você vai evoluindo seu livro assim desbloqueando novas receitas. Cinza = Comum (Inicial) Azul = Incomum (Comprado) Amarelo = Raro (Vocation) Vermelho = Épico (Quest) Roxo = Lendário (???) OBS: Cada livro tem no mínimo 1 receita única! Estamos utilizando a versão 8.6 pois temos maior liberdade de modificações! O cliente será próprio pois terá diversos itens novos --Inovações-- Teremos diversos sistemas inovadores, mas que deixarei para descobrirem por si mesmos. Mas abaixo vou divulgando alguns para que desperte seus interesses em nosso servidor! House system O house system em nosso server terá um grande diferencial pois terá "terrenos" em diversas locais sorteados no meio do mapa pode ate mesmo ter um no meio de uma hunt e você mesmo construirá sua casa no espaço já delimitado! --Introdução-- Esta cansado desses serves padrões de poketibia, narutibia, dbo ou tibia ? Hoje venho trazer uma grande oportunidade/inovação para o mundo tibia ! Então hoje venho pedir uma ajuda da comunidade do tk ! Consigo fazer sprites e sistemas muito bons mas quero que a qualidade das sprites seja muito boas! Desenhar não e meu ponto forte, nem mesmo mapping, mas consigo me virar com o vago conhecimento que tenho nessa área! Por isto estou aqui pedindo a colaboração de vocês, para que nosso server seja o melhor possível! Que tal trazermos um mundo de sobrevivência ao tibia ? --Vagas-- Spriter -- Toda ajuda e bem vinda! Scripter -- Toda ajuda e bem vinda! WebDisigner -- Não sei se irei fazer site ainda! Mapper -- Toda ajuda e bem vinda! Programador -- Toda ajuda e bem vinda! Me viro em todas mas uma ajuda sempre e bem vinda! --Objetivos-- 1 Meu primeiro objetivo e fazer com que as pessoas saiam do automático e testem novas fronteiras no mundo tibia. 2 Criar sistemas com a melhor qualidade possível. 3 Trazer a felicidade as pessoas --Imagens-- OBS: tera muito mais ilhas! estas 3 são apenas uma demonstração do que ja foi feito o mesmo para os itens!!! To meio sem tempo agora mas quando possível disponibilizo mais imagens! --Spoilers-- --Atualizações-- 1.0 1.1 Para próxima atualização pretendo já ter feito a sprite e o script de todas receitas ! --Conclusão-- Então galera essa e minha ideia caso queiram ajudar ou dar sugestões e só comentar ai ! OBS: Não pretendo parar jamais com este projeto! Site provisório: http://rusttibia.webnode.com
-
Profissões no Tibia.
Cara eu vou fazer este sistema, mas e para 8.54 não garanto que todas as funções funcionem!
- Pedido [Ferreiro]
-
ajudem aki como faz quest portal leia tudo
Você adicionou pokemon no mapa ?
-
ajudem aki como faz quest portal leia tudo
em creaturescript/scripts/tp.lua adicione: local tpId = 1387 local tps = { ["Orshabaal"] = {pos = {x=761, y=57, z=7}, toPos = {x=767, y=52, z=7}, time = 30}, } function removeTp(tp) local t = getTileItemById(tp.pos, tpId) if t then doRemoveItem(t.uid, 1) doSendMagicEffect(tp.pos, CONST_ME_POFF) end end function onDeath(cid) local tp = tps[getCreatureName(cid)] if tp then doCreateTeleport(tpId, tp.toPos, tp.pos) doCreatureSay(cid, "O teleport irá sumir em "..tp.time.." segundos.", TALKTYPE_ORANGE_1) addEvent(removeTp, tp.time*1000, tp) end return TRUE end explicação: ["Orshabaal"] --------- Nome do monstro pos = {x=761, y=57, z=7} ----------- onde o Teleport irá abrir toPos = {x=767, y=52, z=7} ------- onde o teleport vai leva eles time = 30 ------------ tempo em segundos que o teleport ficará aberto em creaturescript/creaturescript.xml adicione: <event type="death" name="tp" event="script" value="tp.lua"/> no arquivo.xml do seu monstro adicione: <script> <event name="tp"/> </script> Creditos : TonyHalk
-
Auto Reload
Eu queria Um Script de global event que de reload em nc a cada 30 min e um que faça todos players deem !save a cada 1 min. E estou com um bug de npc que depois de um tempo começa a dar erros e não para no defautl.lua e npchandler.lua
- [TUTORIAL] Como adicionar pokemons com {Icon System}.
- DESIGN - FAÇA SEU PEDIDO