-
Total de itens
276 -
Registro em
-
Última visita
Histórico de Reputação
-
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!
-
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()) -
Duuhzinhow recebeu reputação de NerdaoTibiano em Tibia OldSchool 7.4 - com Addons e cidades atuais!
vou dar uma olhada pra ver se agrada
-
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!
-
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")
-
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..
-
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 -
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:
-
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.
-
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!
-
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.
-
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. =)
-
Duuhzinhow deu reputação a gabriel28 em Alguem me explica?
Você tem as source do seu server? Os arquivos .cpp e .h?
-
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.
-
-
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.
-
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
-
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" />
-
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. -
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.
-
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 -
-
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 -
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 -
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.