Ir para conteúdo

Duuhzinhow

Visconde
  • Total de itens

    276
  • Registro em

  • Última visita

Histórico de Reputação

  1. Upvote
    Duuhzinhow recebeu reputação de Bolado' em Adicionar exaust   
    Bom galera, vejo que muita gente pede ajuda para adicionar condowl em magias, runas, actions, etc.. entao vim aqui ensianr como adicionar o tao procurado condowl
     
    Primeiramente abra seu script, e procure onde ele faz a funçao como:
     


     
    Na linha a baixo da funçao, adicione isto :
     
     
    23006 é o storage do exaust, coloque diferente em cada magia/action/talkaction para nao interferir umas nas outras.
     
    20 é o tempo em segundos para poder usar a magia/action/talkaction/ novamente.
     
     
     
    Após adicionar isto, e configura-lo, pule uma linha e pronto
     
    Espero ter ajudado!
     
  2. Upvote
    Duuhzinhow recebeu reputação de Fjinst em Ajuda com npc   
    tenta mudar essa parte
    npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) coloca
    npcHandler:setCallback(CALLBACK_ONTHINK, thinkCallback) npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
  3. Upvote
    Duuhzinhow recebeu reputação de NerdaoTibiano em Tibia OldSchool 7.4 - com Addons e cidades atuais!   
    vou dar uma olhada pra ver se agrada
  4. Upvote
    Duuhzinhow recebeu reputação de williamserravalle em Adicionar exaust   
    Bom galera, vejo que muita gente pede ajuda para adicionar condowl em magias, runas, actions, etc.. entao vim aqui ensianr como adicionar o tao procurado condowl
     
    Primeiramente abra seu script, e procure onde ele faz a funçao como:
     


     
    Na linha a baixo da funçao, adicione isto :
     
     
    23006 é o storage do exaust, coloque diferente em cada magia/action/talkaction para nao interferir umas nas outras.
     
    20 é o tempo em segundos para poder usar a magia/action/talkaction/ novamente.
     
     
     
    Após adicionar isto, e configura-lo, pule uma linha e pronto
     
    Espero ter ajudado!
     
  5. Upvote
    Duuhzinhow deu reputação a RigBy em Marcar mapa   
    Daniel acho que ele que um jeito que quando loga, deixa aquelas figuras no mapa, tipo assim
    http://prntscr.com/7tl3in
     
    Aqui fiz o codigo, ta ai
    Creaturescript:
    .lua
    function onLogin(cid) local config = { [1] = {pos = {x = 1065, y = 1030, z = 7}, id = 5, discription = "Templo"}, [2] = {pos = {x = 1068, y = 1025, z = 7}, id = 4, discription = "Dp"}, [3] = {pos = {x = 1062, y = 1025, z = 7}, id = 1, discription = "Pipi"}, [4] = {pos = {x = 1062, y = 1025, z = 7}, id = 1, discription = "Pipi"}, [5] = {pos = {x = 1062, y = 1025, z = 7}, id = 1, discription = "Pipi"}, [6] = {pos = {x = 1062, y = 1025, z = 7}, id = 1, discription = "Pipi"}, -- So basta id adicionando +1 a cada novo --[7] = {pos = {x = 1062, y = 1025, z = 7}, id = 1, discription = "Pipi"}, } for i = 1, #config do doPlayerAddMapMark(position, config[i].pos, config[i].id, config[i].discription) end return true end Xml: <event type="login" name="MarkMap" event="Nome_do_Scriptt"> Login.lua antes do ultimo, return true registerCreatureEvent(cid, "MarkMap")  
  6. Upvote
    Duuhzinhow deu reputação a cheveko em Atributos de cada vocaçao   
    Nunca cheguei a testar, mas creio que seja da seguinte forma... se o player tiver causar 20 de dano com uma arma qualquer com o meleeDamage="1.0", se for 2.0, ele dará 40, seria o multiplicador de dano, entendeu? se tiver ="5.0", o dano será 5x maior..
  7. Upvote
    Duuhzinhow deu reputação a RigBy em [Pedido] Passagem Secreta Diferente   
    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
  8. Upvote
    Duuhzinhow deu reputação a RigBy em [Pedido] Passagem Secreta Diferente   
    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:
     
     
     
  9. Upvote
    Duuhzinhow deu reputação a RigBy em [Pedido] Passagem Secreta Diferente   
    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.  
     
  10. Upvote
    Duuhzinhow recebeu reputação de Administrador em Adicionar exaust   
    Bom galera, vejo que muita gente pede ajuda para adicionar condowl em magias, runas, actions, etc.. entao vim aqui ensianr como adicionar o tao procurado condowl
     
    Primeiramente abra seu script, e procure onde ele faz a funçao como:
     


     
    Na linha a baixo da funçao, adicione isto :
     
     
    23006 é o storage do exaust, coloque diferente em cada magia/action/talkaction para nao interferir umas nas outras.
     
    20 é o tempo em segundos para poder usar a magia/action/talkaction/ novamente.
     
     
     
    Após adicionar isto, e configura-lo, pule uma linha e pronto
     
    Espero ter ajudado!
     
  11. Upvote
    Duuhzinhow deu reputação a Bruno em Poque nao funciona?   
    function onSay(cid, words, param) local text = "orc berserker = level = 30, mana = 150\norc leader = level = 35, mana = 180 \nMinotaur archer = level = 35, mana = 170\nfire elemental = level = 40, mana = 300\ndragon hatchling = level = 50, mana = 300\ndragon lord hatchling = level = 65, mana = 450\nfrost dragon hatchling = level = 65, mana = 450\ndragon = level = 80, mana = 600\nWyrm = level = 100, mana = 800\ndragon lord = level = 150, mana = 1000\nfrost dragon = level = 150, mana = 1000" doPlayerPopupFYI(cid, text) return true end Tópico movido para a seção de dúvidas e pedidos resolvidos.
  12. Upvote
    Duuhzinhow deu reputação a gabriel28 em Alguem me explica?   
    Se já baixou tudo, abre o Dev-c++ > File > Open Project or File > procure a pasta onde você extraiu as source e abra a pasta dev-cpp > clique no arquivo TheForgottenServer.dev e depois em abrir.
     
    Feito isso, espere carregar, no lado <esquerdo, você verá os arquivos em que você fará as modificações que achar necessário, depois que tudo estiver ao seu gosto, só compilar e por o executável na pasta de seu OT.
     
    Se tiver dúvidas, chama privado que te ajudarei no que eu puder, porque creio que esse tópico já está ficando grande de mais. =)
  13. Upvote
    Duuhzinhow deu reputação a gabriel28 em Alguem me explica?   
    Você tem as source do seu server? Os arquivos .cpp e .h?
  14. Upvote
    Duuhzinhow deu reputação a gabriel28 em Alguem me explica?   
    Então, ou você encontra as source do seu server, ou encontra uma compatível.
  15. Upvote
    Duuhzinhow deu reputação a gabriel28 em Alguem me explica?   
    Qual a versão do servidor?
  16. Upvote
    Duuhzinhow deu reputação a gabriel28 em Alguem me explica?   
    Procura pelas source do TFS 0.4 rev 3884 e baixe o Dev-c++ Stians Repack, creio que ambos você encontra aqui mesmo, no fórum.
  17. Upvote
    Duuhzinhow deu reputação a valakas em Player nao ganha xp   
    <?xml version="1.0" encoding="UTF-8"?> <stages> <world id="0" multiplier="1"> <stage minlevel="1" maxlevel="8" multiplier="240"/> <stage minlevel="9" maxlevel="50" multiplier="200"/> <stage minlevel="51" maxlevel="80" multiplier="175"/> <stage minlevel="81" maxlevel="100" multiplier="150"/> <stage minlevel="101" maxlevel="150" multiplier="120"/> <stage minlevel="151" maxlevel="200" multiplier="100"/> <stage minlevel="201" maxlevel="240" multiplier="70"/> <stage minlevel="241" multiplier="50"/> </world> </stages> boa sorte
     
    no config.lua eu recomendo deixar Zero
    rateExperience = 0
    rateExperienceFromPlayers = 0
  18. Upvote
    Duuhzinhow deu reputação a RigBy em Summon spell   
    Eu não sabia como fazer isso por spell então fiz por talkaction.
    Esse é meu primeiro talk que eu fiz na vida
     
    .lua
    local limite = 2 -- limite de summons local vocation = {1, 2, 3} -- Vocações que poderão usar a magia local config = { --[Nome do monstro] = {level, mana}, ["rat"] = {level = 25, mana = 300}, ["orc"] = {level = 50, mana = 2000}, ["demon"] = {level = 50, mana = 7000}, } function onSay(cid, words, param, channel) if(param == '') then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Exemplo: Test orc") return true end if isInArray(vocation, getPlayerVocation(cid)) then if #getCreatureSummons(cid) < limite then local t = config[param] if t then if getPlayerLevel(cid) >= t.level then if getCreatureMaxMana(cid) >= t.mana then doConvinceCreature(cid, doSummonCreature(param, getCreaturePosition(cid))) doCreatureAddMana(cid, - t.mana) else doPlayerSendCancel(cid, "é necessário "..t.mana.." para summonar!") end else doPlayerSendCancel(cid, "Você não tem level necessário para summonar ele!") end else doPlayerSendCancel(cid, "Esse monstro não esta na lista!") end else doPlayerSendCancel(cid, "Você ja atingiu o limite de "..limite.." summons!") end else doPlayerSendCancel(cid, "Sua vocação não permite usar essa magia!") end return true end .xml, tag <talkaction words="test" script="nomedoscript.lua" />  
  19. Upvote
    Duuhzinhow deu reputação a RigBy em Summon spell   
    mermão você que ta usando errado para summona é assim: utore rat
     
    acho que você ta usando assim: utore "rat
    assim não vai funciona pq não existe nenhum monstro chamado "rat.
     
    e troca isso:
    if(param == '') then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Invocou") return true end por isso:
    if(param == '') then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Se usa assim: utore nome do mostro , EX: utore rat") return true end essa parte é tipo um exemplo caso o player fale apenas utore. para que apareça no spellbook cria uma magia com o mesmo nome do utore mas vazia, apenas com o efeito e pronto. problema resolvido.
  20. Upvote
    Duuhzinhow deu reputação a RigBy em Um bom mapa para download   
    Azeroth
    Eternal Kingdoms
    tem o Atlantic e um mapa baseado no WOW mas não achei o site.
  21. Upvote
    Duuhzinhow deu reputação a RigBy em Script e npc   
    Reformulei o script do npc
    -- Do not remove the credits -- -- Developed by Rigby -- -- Xtibia.com -- 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 local needVocation = 1 local config = { ["Master sorcerer"] = {items = {2033, 1}, items2 = {5882, 5}, gainVocation = 5, storage = 221321321}, ["Dark wizard"] = {items = {4852, 1}, items2 = {2144, 15}, gainVocation = 11, storage = 221321322}, ["Blood Mage"] = {items = {10601, 10}, items2 = {5905, 2}, gainVocation = 12, storage = 221321323}, } function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if msgcontains(msg, 'yes') then if getPlayerVocation(cid) == needVocation then selfSay('Qual você quer?', cid) for k, v in pairs(config) do selfSay('{'..k..'}', cid) talkState[talkUser] = 1 end else selfSay('Sua vocação não e digna destas promotions, ou voce ja recebeu sua promotion.', cid) end end for i, q in pairs(config) do if talkState[talkUser] == 1 and msgcontains(msg, ''..i..'') then if getPlayerItemCount(cid, q.items[1]) >= q.items[2] and getPlayerItemCount(cid, q.items2[1]) >= q.items[2] then selfSay('Parabêns você acaba de se tornar '..i..'', cid) doPlayerSetVocation(cid, q.gainVocation) doPlayerRemoveItem(cid, q.items[1], q.items[2]) doPlayerRemoveItem(cid, q.items2[1], q.items2[2]) setPlayerStorageValue(cid, q.storage, 1) talkState[talkUser] = 2 else selfSay('Você ter '..q.items[2]..' '..getItemNameById(q.items[1])..' e '..q.items2[2]..' '..getItemNameById(q.items2[1])..'.', cid) end end end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) e para que ele não perca a vocation local config = { --[storage] = vocation, [221321321] = 5, [221321322] = 11, [221321323] = 12, } function onLogin(cid) for i, q in pairs(config) do if getPlayerStorageValue(cid, i) == 1 then doPlayerSetVocation(cid, q) end end return true end
  22. Upvote
    Duuhzinhow deu reputação a RigBy em Summon spell   
    Summon por level
    Summon não ganha exp
  23. Upvote
    Duuhzinhow recebeu reputação de Administrador em Spell manda você para outra dimensao   
    Bem galera, alguns dias atras postei aqui uma spell que mandaria o alvo para outra dimensao por "x" segundos, agora vou postar uma que manda você mesmo que usa para outra dimensao por "x" segundos com condowl...
     

    Entao é isso galera, uma spell bem legal e facil de configurar, espero que gostem
  24. Upvote
    Duuhzinhow recebeu reputação de Furabio em Spell manda você para outra dimensao   
    Bem galera, alguns dias atras postei aqui uma spell que mandaria o alvo para outra dimensao por "x" segundos, agora vou postar uma que manda você mesmo que usa para outra dimensao por "x" segundos com condowl...
     

    Entao é isso galera, uma spell bem legal e facil de configurar, espero que gostem
  25. Upvote
    Duuhzinhow recebeu reputação de Wend ll em Spell manda para outra dimensao   
    Bem galera, vim aqui disponibilizar para voces do uma spell que consiste em mandar seu alvo para outra dimensao, e ele voltar em "x" segundos (configuravel) e com um condowl para usar a magia novamente
     
    Basta voce criar uma area no seu rme.
     

    aqui voce seleciona as cordenadas para onde o alvo sera levado.
     
    aqui o tempo que ele ira ficar na outra dimensao até voltar.
     
    nessa linha voce seleciona o efeito que quer que saia em cima do alvo.
     
    20 é o tempo do condowl
    No restante nao há necessidade de mecher :3
  • Quem Está Navegando   0 membros estão online

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