
Tudo que MaXwEllDeN postou
-
[PEDIDO] NoMove e FirstItem
local firstItems = { [0] = { [7] = 2130, [8] = 2643 }, [1] ={ [7] = 2130, [8] = 2643 }, [2] = { [7] = 2130, [8] = 2643 }, [3] = { [7] = 2130, [8] = 2643 }, [4] = { [7] = 2130, [8] = 2643 }, } function onLogin(cid) if getPlayerStorageValue(cid, 30001) == -1 then for slot, id in pairs(firstItems[getPlayerVocation(cid)]) do doPlayerAddItem(cid, firstItems[getPlayerVocation(cid)][i], 1, false, slot) end if getPlayerSex(cid) == 0 then doPlayerAddItem(cid, 2465, 1) else doPlayerAddItem(cid, 2465, 1) end local bag = doPlayerAddItem(cid, 10518, 1) doAddContainerItem(bag, 2160, 1) doAddContainerItem(bag, 2554, 1) doAddContainerItem(bag, 2120, 1) doAddContainerItem(bag, 7618, 1) doAddContainerItem(bag, 2383, 1) setPlayerStorageValue(cid, 30001, 1) end return true end Entre as [] você coloca o id do slot e depois da igualdade o id do item. [0] = { [7] = 2130, [8] = 2643 },
-
[PEDIDO] NoMove e FirstItem
Posta um firstitems normal ai plox.
-
[Resolvido] [PEDIDO] Script amuleto e level
local amuletos = { [1] = 2130, [2] = 2131, [3] = 2132, [4] = 2133, [5] = 2135, [6] = 2136, } function onLogin(cid) if getPlayerLastLoginSaved(cid) < 1 then doPlayerAddItem(cid, amuletos[getPlayerLevel(cid)]) end local amuleto = amuletos[getPlayerLevel(cid)] if amuleto and getPlayerItemCount(cid, amuleto) > 0 then registerCreatureEvent(cid, "AmuletoChange") end return true end function onAdvance(cid, skill, oldlevel, newlevel) if skill == 8 then local amuleto = amuletos[oldlevel] if getPlayerItemCount(cid, amuleto) > 0 and amuletos[newlevel] then doPlayerRemoveItem(cid, amuleto, 1) doPlayerAddItem(cid, amuletos[newlevel], 1, false, CONST_SLOT_NECKLACE) end end return true end Agora sim está certo.
-
Lua quest log
Bem lembrado Matheus, tomei o cuidado de escrever tudo em minusculo já pra evitar alguma complicação no Linux e acabei esquecendo que essa ÚNICA pasta tem o nome em maiúsculo . Valeu, vou upar novamente!
-
Lua quest log
Olá, galerinha. Hoje estou trazendo a vocês um modo, ao meu ver, mais prático e organizado de configurar e gerenciar os logs de quest do seu servidor. Eu sempre gostei de RPG e tudo que fosse relacionado a ele, quests bem elaboradas com npcs, desafios e coisas do tipo sempre me atraíram muito, e ai que entra o questlog, quando você tem várias missões é bom dar uma orientação pro player do que ele tem que fazer(mas não spoilers, isso tira toda a graça da missão), o questlog é uma ferramenta bem bacana que pode servir para dar essa orientação ao player e lembrar a ele que ele tem algumas missões ou etapa de missão, que não foi concluída e que ele pode fazer para receber alguma recompensa. Por padrão os servidores já vêm com um único arquivo que tem a responsabilidade de guardar as informações sobre as missões, só que eu sempre achei que ter várias informações em um único arquivo tornava tudo muito desorganizado, uma bagunça. Então tive a ideia de fazer uma pasta e colocar lá dentro arquivos com informações sobre as missões, e logo quando o servidor estivesse sendo iniciado um script simples iria transformar esses arquivos Lua, em um quest.xml prontinho para ser usado, bem vamos deixar de papo-furado e botar a mão na massa. Em primeiro lugar é bom você fazer um backup do seu quest.xml antigo, só pra ter guardadinho caso tenha necessidade de usar depois. Em segundo, você deve baixar o arquivo abaixo, descompactar ele e jogar no diretório raiz do seu OTServer. Lua quest log.rar Pra configurar é simples, você vai na pasta questlog que fica dentro da pasta data do seu servidor e adiciona os arquivos lua lá com as configurações da sua quest. Tem um arquivo de exemplo lá na pasta já, é só baixar e ler, o arquivo está todo comentado é só ler e aprender , o nome da quest vai ser igual ao nome do arquivo(não pode usar acentos no nome da missão). Essa é a quest de exemplo que vem na pasta questlog, quando você baixar o arquivo anexado: -- Lua quest log -- by Maxwell Alcantara[MaXwEllDeN] -- [email protected] local geral = { storage_id = 30031, -- Storage value da quest startstorage = 1, -- Valor inicial da storage(Só vai aparecer no quest log do player quando a storage 30031 tiver o id 1) missions = { ["The head of Kiper"] = { -- Nome da missão 1 storageid = 1001, -- Storage value da missão start_value = 1, -- valor inicial da storage end_value = 3, -- valor final da storage states = { [1] = "Kill Kiper!", -- Descrição do state 1 [2] = "Give his head to Talaturen!", -- Descrição do state 2 [3] = "Take the medal you got from Talaturen to Ruly!", -- Descrição do state 3 } }, ["Ruly's Revenge"] = { -- Nome da missão 2 storageid = 30031, -- Storage value da missão start_value = 4, -- valor inicial da storage end_value = 6, -- valor final da storage states = { [4] = "You received a document with instructions from Ruly, follow them.", -- Descrição do state 4 [5] = "Go back to Ruly and tell him that you followed his instructions to the end.", -- Descrição do state 5 [6] = "You got a reward from Ruly, he was very thankful with that you helped him to take his revenge.", -- descrição do state 6 } }, } } É só isso pessoal, até a próxima .
-
[Resolvido] [PEDIDO] Script amuleto e level
Pega esse, o antigo tem um problema: local amuletos = {2170, 2171, 2172, 2173, 2174, 2175} function onLogin(cid) if getPlayerLastLoginSaved(cid) < 1 then doPlayerAddItem(cid, amuletos[1]) end if getPlayerItemCount(cid, amuleto1) > 0 then registerCreatureEvent(cid, "AmuletoChange") end return true end function onAdvance(cid, skill, oldlevel, newlevel) if skill == 8 then for index, id in ipairs(amuletos) do if getPlayerItemCount(cid, id) > 0 and amuletos[index + 1] then doPlayerRemoveItem(cid, id) doPlayerAddItem(cid, amuletos[index + 1]) break end end end return true end
-
Map Editor 10.10
Interessante Bruno, achei dahora. Onde posso conseguir a source?
-
[Resolvido] [PEDIDO] Script amuleto e level
Não, não seria assim, se você ler o que está acontecendo ai, ele adiciona todos amuletos e remove NO MESMO INSTANTE. Ou seja, o player só ficaria com o último amuleto, SEMPRE, toda vez que ele upasse ele ia receber todos os amuletos, e remover todos, menos o último. @Daniel Ah, todo level vai ser um amuleto diferente? Então faz assim: local amuletos = {2170, 2171, 2172, 2173, 2174, 2175} function onLogin(cid) if getPlayerLastLoginSaved(cid) < 1 then doPlayerAddItem(cid, amuletos[1]) end if getPlayerItemCount(cid, amuleto1) > 0 then registerCreatureEvent(cid, "AmuletoChange") end return true end function onAdvance(cid, skill, oldlevel, newlevel) if skill == 8 then for index, id in ipairs(amuletos) do if getPlayerItemCount(cid, id) > 0 and amuletos[index + 1] then doPlayerRemoveItem(cid, id) doPlayerAddItem(cid, amuleto[index + 1]) break end end end return true end local amuletos = {2170, 2171, 2172, 2173, 2174, 2175} Nessa tabela você vai adicionando o id dos amuletos, na ordem que eles vão ser trocados.
-
[Resolvido] [PEDIDO] Script amuleto e level
Cria um dois itens no otb que tenham a opção de não ser móvel. Anote os ids deles, e depois crie os itens no xml com as respectivas informações dos amuletos que você quiser. Depois instale esse script: local amuleto1 = 2170 local amuleto2 = 2171 function onLogin(cid) if getPlayerLastLoginSaved(cid) < 1 then doPlayerAddItem(cid, amuleto1) end if getPlayerItemCount(cid, amuleto1) > 0 then registerCreatureEvent(cid, "AmuletoChange") end return true end function onAdvance(cid, skill, oldlevel, newlevel) if skill == 8 and getPlayerItemCount(cid, amuleto1) > 0 then doPlayerRemoveItem(cid, amuleto1) doPlayerAddItem(cid, amuleto2) end return true end <event type = "login" name = "LoginAmuleto" event = "script" value = "Amuletos.lua" /> <event type = "advance" name = "AmuletoChange" event = "script" value = "Amuletos.lua" />
-
Como mudar senha do god?
Amigo, preste atenção onde cria seus tópicos. O certo seria em Suporte OTServ e não em Atendimento Geral. E outra: sempre use como título algo que descreve sua dúvida, nesse caso algo como Como mudar senha do God?
- [Resolvido] PEDIDO Tile que faz parede desaparece por um tempo
-
Quest 4 Salas
Ao clicar na estátua ele será mandado para próxima sala, ou terá uma sala com portas ou teletransporte para outras salas?
-
{Ajuda} iten que da Life
local life = 100 -- Quantidade de vida que será adicionada function onEquip(cid, item) setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) + life) doCreatureAddHealth(cid, 1) doCreatureAddHealth(cid, -1) return true end function onDeEquip(cid, item) setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) - life) doCreatureAddHealth(cid, 1) doCreatureAddHealth(cid, -1) return true end
-
[Resolvido] [Dúvida] If / else ou switch
Dúvida sanada, tag adicionada. Tópico movido!
-
[Resolvido] [Dúvida] If / else ou switch
O switch vai executar um determinado escopo depedendo do valor de uma variável. Exemplo: int num = 3; switch(num) { case 1: printf("O número é 1"); break; case 2: printf("O número é 2"); break; case 3: printf("O número é 3"); break; default: printf("O número é %d", num); } Esse exemplo ai é em C++
-
[Resolvido] [Dúvida] If / else ou switch
Switch não existe em Lua. O if vai executar um escopo caso uma condição seja verdadeira, o else só pode ser colocado depois do escopo de um if, e o que tiver no seu escopo vai ser executado caso a condição do if seja falsa. if 1 > 2 then print("1 é maior que 2") else print("1 é menor que 2") end
-
emiAAC - Laravel 4 with Bootstrap
Haha beautiful job bro, i liked it. Bootstrap is cool [:
-
Script
Poderia postar a versão do seu servidor e uma foto do erro que está ocorrendo?
- Evoluindo um mapa a mais de 3 anos
- Ajuda, Problema com [MOD] do MAX
- Ajuda, Problema com [MOD] do MAX
- Ajuda, Problema com [MOD] do MAX
- Ajuda, Problema com [MOD] do MAX
-
DenkoRPG, a grande estréia!
Lindo, Renato! Parabéns pelo trabalho cara, sucesso!
-
[CTF] Capture The Flag
O mapa deve estar em PVP, normal. O antigo eu não tenho mais.