Ir para conteúdo

RigBy

Visconde
  • Total de itens

    411
  • Registro em

  • Última visita

  • Dias Ganhos

    10

Tudo que RigBy postou

  1. Passagem Secreta Gif de como funciona Essa semana tava ajudando um cara chamado Farathor nesse topico, e foi uma ideia boa então decidi refazer e trazer pra cá Ela funciona da seguinte maneira, vai ter 3 coal basin (Você pode configurar e coloca quantas você quiser), ai você vai ter que joga 3 itens diferente em cada coal basin (no meu caso eu usei os 3 fields) a estatua vai se move criando um teleport ou não (configurado), depois que você entrar no teleport ele ira fechar ou não (configurado). Eu usei como exemplo os 3 field mas você pode alterar para algum item ou até adicionar ou remover mais locais onde tera que joga o item. Testei na TFS 0.4 rev 3887 Então vamos instalar: Crie um arquivo chamado Secret_Passage.lua na pasta movement/script e coloque isso dentro: Agora adicione essa duas linha em movement.xml: <movevent type="AddItem" tileitem="1" actionid="13501" event="script" value="Secret_Passage.lua.lua"/> <movevent type="StepIn" actionid="5555" event="script" value="Secret_Passage.lua.lua"/> Agora so basta você adicionar o actionid 13501 nos coal basin ou nos piso mesmo. Se você alterar o actionid "5555" você terar que alterar no Secret_Passage.lua também. Para adicionar mais locais so basta você adicionar outra linha com o id do item e o local onde terá que ruma o item e não esqueã de sempre coloca 1 a mais no inicio, exemplo: se tiver 3 ai você cria o outro um a mais ficando 4. [4] = {necessary_Item = 2160, tile = {x = 1062, y = 1027, z = 7, stackpos= 1}}, Isso ai, xau
  2. Existe esse feito pelo Snowsz,é praticamente oque você ta pedindo, so basta configurar. http://www.xtibia.com/forum/topic/221539-buff-sio/
  3. RigBy

    Codigo

    So basta usar um addEvent local savingEvent = 0 function onSay(cid, words, param, channel) if(isNumber(param)) then stopEvent(savingEvent) save(tonumber(param) * 60 * 1000) else doBroadcastMessage("Server Save!!") -- msg addEvent(doSaveServer, 5000) -- quanto tempo vai demorar depois da msg 5000 = 5s end return true end function save(delay) doSaveServer() if(delay > 0) then savingEvent = addEvent(save, delay, delay) end end
  4. RigBy

    Codigo

    1 - Ela faz com que some +1 na storage 90190 quando um player mata outro. 2 - substitui ai. local savingEvent = 0 function onSay(cid, words, param, channel) if(isNumber(param)) then stopEvent(savingEvent) save(tonumber(param) * 60 * 1000) else doSaveServer() end return true end function save(delay) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Sua conta foi salva.") doSaveServer() if(delay > 0) then savingEvent = addEvent(save, delay, delay) end end
  5. O client vanelina slá como escreve, o client normal do tibia não é open source então a maneira de você obter sucesso com isso é usando o otclient, acho que ele tem suporte para mais de 255 ou você modifica ja que é open source.
  6. posso ta falando asneira mas o client normal do tibia tem support até a skill 255 mas ainda continua subindo. Caso seja no Sword, axe, club... quando chega no 255 vai reseta mais a skill vai continuar a subir no caso do magic level vai trava no 255 mas vai continuar subindo. Joguei um ot é tava ml 398 mas no skills tava em 255
  7. Tinha esquecido de coloca uns negocio mas ta aqui. Substitui o statueback por esse, não esqueça de configurar. -- Do not remove the credits -- -- [MOVEMENT] Secret Teleport -- -- Developed by Rigby (João Vitor) -- local fields = {1492, 1495} -- id do fire field e energy field local tile1 = {x = 1066, y = 1020, z = 7, stackpos= 1} -- Posição do tile 1 local tile2 = {x = 1068, y = 1020, z = 7, stackpos= 1} -- Posição do tile 2 local statue_Of_Position = {x = 1067, y = 1020, z = 7} -- posição onde fica a estátua, que ira aparecer o teleport local teleport = {x = 1066, y = 1020, z = 7} -- posição da onde o player vai quando entrar no teleport local go_Backward = {x = 1067, y = 1019, z = 7} -- Posição para aonde a estátua vai local statue = 3697 -- id da estátua function onAddItem(cid, moveitem, tileitem, position) if getItemStack(go_Backward, statue) then if getItemStack(tile1, fields[1]) then doRemoveItem(getItemStack(tile1, fields[1]).uid, 1) elseif getItemStack(tile1, fields[2]) then doRemoveItem(getItemStack(tile1, fields[2]).uid, 1) elseif getItemStack(tile2, fields[1]) then doRemoveItem(getItemStack(tile2, fields[1]).uid, 1) elseif getItemStack(tile2, fields[2]) then doRemoveItem(getItemStack(tile2, fields[2]).uid, 1) end end end function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Bem vindo.") doTeleportThing(cid, teleport) doCreateItem(statue, 1, statue_Of_Position) doRemoveItem(getItemStack(statue_Of_Position, 1387).uid, 1) doRemoveItem(getItemStack(go_Backward, statue).uid, 1) return true end function getItemStack(pos, iid) for i = 1, 255 do posa = getThingFromPos({x=pos.x, y=pos.y, z=pos.z, stackpos=i}) if posa.itemid == iid then return posa end end return nil end e usa essa duas tag's <movevent type="AddItem" tileitem="1" actionid="13501" event="script" value="statueback.lua"/> <movevent type="StepIn" actionid="5555" event="script" value="statueback.lua"/>
  8. Substitiu ai local effectt = 35 -- coloque o efeito que você que local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, 10 * 60 * 1000) -- 10 minutes setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, 3) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, -10) setConditionParam(condition, CONDITION_PARAM_BUFF) function onUse(cid, item, fromPosition, itemEx, toPosition) if(not isSorcerer(cid) and not isDruid(cid)) then doCreatureSay(cid, "Only sorcerers and druids may drink this fluid.", TALKTYPE_ORANGE_1, cid) return true end doAddCondition(cid, condition) doSendMagicEffect(fromPosition, CONST_ME_MAGIC_RED) doRemoveItem(item.uid) doCreatureSay(cid, "You feel smarter.", TALKTYPE_ORANGE_1, cid) effect(cid, effectt) for a = 1, (10 * 60) do addEvent(effect, a * 1000, cid, effectt) end return true end function effect(cid, effect) if not isCreature(cid) then return true end doSendMagicEffect(getThingPos(cid), effect) return true end
  9. ue se você coloco o actionid na estatua, clica nela!
  10. Não entendo nada de db, mas eu tive esse problema quando baixei a TFS 0.4 e usava a database que tinha vindo nele, eu conseguir resolve trocando de database (aquele arquivo.s3db). tenta troca acho que vai funciona. :hi:
  11. RigBy

    Script Guild

    Movements: .lua function onStepIn(cid, item, position, fromPosition) if getPlayerGuildId(cid) > 0 then doPlayerSendTextMessage(cid, 27, "Voce entrou, sua guild é a "..getPlayerGuildName(cid)..".") else doPlayerSendTextMessage(cid, 27, "Voce não possue guild, portanto não pode entrar nessa zona.") doTeleportThing(cid, fromPosition) end return true end xml,tag <movevent type="StepIn" actionid="1431" event="script" value="Nomedoscript.lua"/> so basta por 1431 nos tile que não poderão passa.
  12. Aqui duuh, vai manda a msg quando entrar no tp: pronto ai: Sim, eu coloquei para funcionar tanto da direita para esquerda ou esquerda para direita. #Foi tudo resolvido, se quiser mais algo crie um tópico fazendo seu pedido.
  13. Era melhor eles te feito ao contrário, da 10% de bônus para quem faz suas própria runas, se esse sistema fosse lançado conserteza afetaria apenas os mages lower level, bem pouco os paladin já que level 50+ já usa arrow que não tá no sistema e não afetaria nada do knight já que não dependem mais das uhs. Por isso esse sistema é bem falho.
  14. So basta simplesmente não deixa o cara se auto marca como melhor resposta do mesmo jeito que não da para se auto curtir. e criar o botão de "retirar a melhor resposta" fazendo com que o tópico volte para a área que tava, como se fosse o botão descurtir.
  15. Pronto agora ta muito melhor, acho que não vai ter nenhum bug, testei todos os jeitos de buga. Movement: .lua -- Do not remove the credits -- -- [MOVEMENT] Secret Teleport -- -- Developed by Rigby (João Vitor) -- function onAddItem(cid, moveitem, tileitem, position) local fields = {1492, 1495} -- id do fire field e energy field local tile1 = {x = 1066, y = 1020, z = 7, stackpos= 1} -- Posição do tile 1 local tile2 = {x = 1068, y = 1020, z = 7, stackpos= 1} -- Posição do tile 2 local statue_Of_Position = {x = 1067, y = 1020, z = 7} -- posição onde fica a estátua, que ira aparecer o teleport local teleport = {x = 1066, y = 1020, z = 7} -- posição da onde o player vai quando entrar no teleport local go_Backward = {x = 1067, y = 1019, z = 7} -- Posição para aonde a estátua vai local statue = 3697 -- id da estátua local tempo = 5 -- tempo em segundos que o teleporte ficara aberto local pos1 = getThingfromPos(tile1) local pos2 = getThingfromPos(tile2) if (pos1.itemid == fields[1] and pos2.itemid == fields[2]) or (pos1.itemid == fields[2] and pos2.itemid == fields[1]) then if getItemStack(statue_Of_Position, statue) then doRemoveItem(getItemStack(statue_Of_Position, statue).uid, 1) doCreateTeleport(1387, teleport, statue_Of_Position) doCreateItem(statue, 1, go_Backward) if getItemStack(tile1, fields[1]) then doRemoveItem(getItemStack(tile1, fields[1]).uid, 1) doRemoveItem(getItemStack(tile2, fields[2]).uid, 1) else doRemoveItem(getItemStack(tile1, fields[2]).uid, 1) doRemoveItem(getItemStack(tile2, fields[1]).uid, 1) end addEvent(function() doCreateItem(statue, 1, statue_Of_Position) doRemoveItem(getItemStack(statue_Of_Position, 1387).uid, 1) doRemoveItem(getItemStack(go_Backward, statue).uid, 1) end, tempo*1000) end end if getItemStack(go_Backward, statue) then if getItemStack(tile1, fields[1]) then doRemoveItem(getItemStack(tile1, fields[1]).uid, 1) elseif getItemStack(tile1, fields[2]) then doRemoveItem(getItemStack(tile1, fields[2]).uid, 1) elseif getItemStack(tile2, fields[1]) then doRemoveItem(getItemStack(tile2, fields[1]).uid, 1) elseif getItemStack(tile2, fields[2]) then doRemoveItem(getItemStack(tile2, fields[2]).uid, 1) end end end function getItemStack(pos, iid) for i = 1, 255 do posa = getThingFromPos({x=pos.x, y=pos.y, z=pos.z, stackpos=i}) if posa.itemid == iid then return posa end end return nil end .xml, tag <movevent type="AddItem" tileitem="1" actionid="13501" event="script" value="Nomedoscript.lua"/> So basta coloca o actionid no piso que ira solta os fields
  16. Action: .lua function onUse(cid, item, fromPosition, itemEx, toPosition) if isPremium(cid) then doTeleportThing(cid, toPosition) doTransformItem(item.uid, item.itemid+1) doPlayerSendCancel(cid, "Bem Vindo") else doPlayerSendCancel(cid, "Você não é premium") end return true end tag, .xml <action actionid="43436" event="script" value="nomedoscript.lua"/> So basta você coloca o actionid "43436" na porta e pronto.
  17. Sim a estatua volta para seu lugar de origem, só não tava removendo os fields mas ja coloquei para remover. Aqui a versão sem aparecer o teleport:
  18. Minha sugestão é o seguinte, assim que a pessoa marca como melhor resposta o pedido automaticamente fosse movido para área de Duvidas e pedidos resolvidos. Assim meio que evitaria que os moderadores tive-se que fica olhando la toda hora para ver se tem algum tópico resolvido e ficar ganhando post falando "Tópico movido para a seção de dúvidas e pedidos resolvidos." Minha sugestão é essa cabe ao administrador usar ou não.
  19. Sim, sem conta a area de aprovação de tutorial, acho que deveria fica aberto para todo mundo até que algum moderador veja e o mova.
  20. Opa gostei do seu pedido. Eu pensei em fazer usa globalevent mas isso iria da lag no seu servidor. Então eu fiz por action, tipo quando você usar os fields no piso e clica em alguma coisa(recomendo você coloca para clicar na estatua mas pode coloca em uma alavanca ou qualquer coisa) a estatua vai mover para trás e vai aparecer o teleport, depois de um tempo configurado ela volta para o lugar. Ta aqui: .lua -- Do not remove the credits -- -- [ACTION] Secret Teleport -- -- Developed by Rigby (João Vitor) -- function onUse(cid, item, fromPosition, itemEx, toPosition) local fields = {1492, 1495} -- id do fire field e energy field local tile1 = {x = 1066, y = 1020, z = 7, stackpos= 1} -- Posição do tile 1 local tile2 = {x = 1068, y = 1020, z = 7, stackpos= 1} -- Posição do tile 2 local statue_Of_Position = {x = 1067, y = 1020, z = 7} -- posição onde fica a estátua, que ira aparecer o teleport local teleport = {x = 1066, y = 1020, z = 7} -- posição da onde o player vai quando entrar no teleport local go_Backward = {x = 1067, y = 1019, z = 7} -- Posição para aonde a estátua vai local statue = 3697 -- id da estátua local tempo = 5 -- tempo em segundos que o teleporte ficara aberto local pos1 = getThingfromPos(tile1) local pos2 = getThingfromPos(tile2) if (pos1.itemid == fields[1] and pos2.itemid == fields[2]) or (pos1.itemid == fields[2] and pos2.itemid == fields[1]) then if getItemStack(statue_Of_Position, statue) then doRemoveItem(getItemStack(statue_Of_Position, statue).uid, 1) doCreateTeleport(1387, teleport, statue_Of_Position) doCreateItem(statue, 1, go_Backward) if getItemStack(tile1, fields[1]) then doRemoveItem(getItemStack(tile1, fields[1]).uid, 1) doRemoveItem(getItemStack(tile2, fields[2]).uid, 1) else doRemoveItem(getItemStack(tile1, fields[2]).uid, 1) doRemoveItem(getItemStack(tile2, fields[1]).uid, 1) end addEvent(function() doCreateItem(statue, 1, statue_Of_Position) doRemoveItem(getItemStack(statue_Of_Position, 1387).uid, 1) doRemoveItem(getItemStack(go_Backward, statue).uid, 1) end, tempo*1000) end end end function getItemStack(pos, iid) for i = 1, 255 do posa = getThingFromPos({x=pos.x, y=pos.y, z=pos.z, stackpos=i}) if posa.itemid == iid then return posa end end return nil end Xml, tag <action actionid="6567" event="script" value="NomedoScript.lua"/> So basta coloca o actionid 6567 na estatua ou outro item.
  21. Ta agora você coloca o actionid 1001 para que player level igual ou maior que 1 possa passar. Caso esse não funcione, você vai em action/script, cria um arquivo.lua e coloca isso dentro function onUse(cid, item, fromPosition, itemEx, toPosition) doTeleportThing(cid, toPosition) doTransformItem(item.uid, item.itemid+1) return true end e no xml, tag adiciona isso <action actionid="25524" event="script" value="nome_do_arquivo.lua"/> Ai só basta coloca esse actionid 25524 na porta. Espero que tenha resolvido.
  22. Hum, se foi resolvido marca como melhor resposta para que fechem o tópico.
  23. Existe vários tutorias aqui no xtibia: Escola de Scripting Qualquer coisa me adiciona no skype que eu posso te ensina o básico. jv.alves97
  24. por que não usa a Gate of Expertise, ela ja é programada para fecha quando passam por ela ou a Quest door.
  25. ue, muda a porta para uma experience door é coloca o mesmo actionid. ou então faz um movement para quando sair do piso que ta a porta fecha a porta.
  • Quem Está Navegando   0 membros estão online

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