-
Total de itens
1347 -
Registro em
-
Última visita
-
Dias Ganhos
36
Tudo que Oneshot postou
-
dúvida [Encerrado] Quem Intende Pela Mor De Deus Ajuda -.-
tópico respondeu ao mACAKOO de Oneshot em Tópicos Sem Resposta
Será que você não parou para pensar que o servidor está carregando o mapa e com esse processador e RAM, ele demora um pouco? -
Characters Market System (In Game)
tópico respondeu ao LuckOake de Oneshot em Mods, funções e outros
Muito bom, amigo. Ficou muito bacana a sua ideia. Rep+ -
Vejamos 1. Sim 2. Sim 3. Não, ao ligar o servidor, os globalevents que não são do tipo startup não são executados. Eles são apenas executados depois que o primeiro intervalo de tempo passar. Se o servidor terminou de carregar em, por exemplo, 14:35 e um globalevent tem um intervalo de tempo de, digamos, 30 minutos, a sua primeira execução ocorrerá as 15:05. Lembrando também que o campo interval deve ser preenchido com um valor em segundos ou em milissegundos (dependendo do servidor)
-
Se eu não me engano, retornar false em um creaturescript onAdvance funciona como um limitador de skills e maglevel. Ficaria mais ou menos assim. local skills = { [sKILL_FIST] = 400, [sKILL_CLUB] = 400, [sKILL_SWORD] = 400, [sKILL_AXE] = 400, [sKILL_DISTANCE] = 400, [sKILL_SHIELD] = 400, [sKILL__MAGLEVEL] = 300 } function onAdvance(cid, skill, oldLevel, newLevel) if skill == SKILL__LEVEL then return true end if not skills[skill] then return true end if newLevel > skills[skill] then return false end end Abraços.
-
Obrigado, mas eu voltei atrás e o tópico já havia até afundado. Quando for assim, olhem a data do tópico ou do último post, antes de pensarem em postar. Vou reportar para fecharem o tópico. Abçs.
-
doCreatureSetStorage(cid, 3000, getCreatureStorage(cid, 5000))
-
Desculpe a grosseria, mas se contente com o que foi disponibilizado, ou comece a estudar LUA para fazer seus scripts como quer.
- 3 respostas
-
- plz alguém me arruma :)
- otserv
- (e 2 mais)
-
Não basta apenas alterar o arquivo changegold.lua. São necessárias algumas variadas alterações, como seguem abaixo. 1. Abra o arquivo items.xml e procure pelo item que você deseja como dinheiro, como exemplo, usaremos o gold nugget <item id="2157" article="a" name="gold nugget" plural="gold nuggets"> <attribute key="weight" value="10" /> </item> 2. Adicione o atributo worth ao item, o valor do atributo deve ser quanto uma unidade do item valeria. Por exemplo, a crystal coin vale 10000, se quiséssemos um item que valesse 100 crystal coins, então teríamos o valor 1000000. <item id="2157" article="a" name="gold nugget" plural="gold nuggets"> <attribute key="weight" value="10" /> <attribute key="worth" value="1000000" /> </item> 3. Agora, abra o arquivo 000-constant.lua, localizado em data/lib e procure por; ITEM_CRYSTAL_COIN Adicione logo abaixo: ITEM_GOLD_NUGGET = 2157 Você pode seguir o modelo para outras moedas, criando um nome de variável básico, seguido do ID do item. 4. Basta agora, editarmos o arquivo changegold.lua, seguindo o modelo proposto pelo arquivo, algumas revisões de servidores possuem arquivos de mais fácil edição.
-
Crie um arquivo de nome staff.lua em data/talkactions/script, utilize o seguinte conteúdo: function onSay(cid, words, param, channel) local result = db.getResult("SELECT `name` FROM `players` WHERE `group_id` > 1 ORDER BY `group_id` DESC") local msg = "Server Staff\n\n" if result:getID() == -1 then while true do local name = result:getDataString("name") msg = msg .. name .."\n" if not result:next() then break end end end doPlayerPopupFYI(cid, msg) return true end Abra o arquivo talkactions.xml e adicione a seguinte chave <talkaction words="/staff" event="script" value="staff.lua"/> Fiz este código para listar em ordem decrescente de acesso todos os jogadores que não pertençam ao grupo padrão. Ou seja, até tutores serão listados.
-
Respondi nos dois fóruns, abçs local positions = { {x = 1351, y = 1666, z = 5}, {x = 1352, y = 1666, z = 5}, {x = 1353, y = 1666, z = 5} } local gates = { [9485] = 9484, [9484] = 9485 } function onUse(cid, item, fromPosition, itemEx, toPosition) for _, position in ipairs(positions) do for fg, tg in pairs(gates) do local g = getTileItemById(position, fg) if g.uid > 0 then doTransformItem(g.uid, tg) end end end return true end
-
Fala aê. Para impedir que os jogadores forjem em qualquer lugar e apenas em uma bigorna, usem a seguinte action. function onUse(cid, item, fromPosition, itemEx, toPosition) local recipe = nil if getTileItemById(toPosition, 2555).uid == 0 then doPlayerSendCancel(cid, "Sorry, you must put your ingredients in an anvil.") doSendMagicEffect(toPosition, CONST_ME_POFF) return true end for _, v in ipairs(Recipes) do recipe = v:get(toPosition) if(recipe ~= false) then break end end if(recipe) then recipe:create(cid) else doPlayerSendCancel(cid, "This is not a valid recipe.") end return true end Depois eu implemento um sistema de chances. Abraços.
-
Muito bom, ótimo trabalho. Um pequeno bug que acho que pode ser consertado, é fazer o IPB entender que a tecla TAB é um tipo de espaçamento maior na hora de escrever posts e tópicos. Além de melhorar organização de tópicos, finalmente códigos LUA ficariam indentados sem o auxílio do Pastebin, que não deixa de ser um ótimo BBCode.
-
Garoto, você me surpreendeu mais uma vez. Conheço seu servidor, Subwat Extreme Fun e a família Oake, rsrs. Ótimo tutorial e vai ajudar bastante aqueles poucos que buscam aprender scripting. Quando digo poucos, digo a realidade, as pessoas se acomodaram um pouco demais e só sabem pedir e já não correm mais atrás. Seria muito interessante se elas ao menos abrissem os arquivos como era quase que obrigatório antigamente - os recursos eram meio escassos - então se você queria uma magia sequer, você mesmo tinha que abrir um arquivo e mudar as coisas até chegar no seu gosto. Parabéns.
- 19 respostas
-
- aprendendo
- scriptear
-
(e 2 mais)
Tags:
-
Acho que uma pic com o fundo equivalente ao título fica legal, por exemplo, o fundo do "Sou scripter" podia ser um código em LUA com 50% de opacidade.
-
Nossa, notle2012, desse seu jeito aí o cara ia ter que criar 200 arquivos para 200 itens... inviável, não é?
-
Bela iniciativa, Eitor, mas function banana(a, b) return a[b] ~= nil end Faz a mesma coisa que sua função sem precisar aumentar uma variável interna e tal.
-
pedido Pedido Distro The Forgotten Server 0.4_Svn Pra Versão 9.60
pergunta respondeu ao KennyConrad de Oneshot em Scripts
A revisão do The Forgotten Server mais atual é disponibilizada no SVN privado da comunidade otland.net, o qual apenas doadores tem acesso. -
Deixando Servidores 100% Em Português Sem Erros!
tópico respondeu ao KUNGLOW de Oneshot em Tutoriais de Scripting
Bela dica, nem eu sabia dessa. Obrigado pela contribuição. -
[Lua] Mega Tutorial De Oop [Avançado]
tópico respondeu ao SkyDangerous de Oneshot em Tutoriais de Scripting
Seu tutorial e sua iniciativa foram legais, mas o que ele tem de colorido, ele não tem de conteúdo. Desculpe a crítica, mas analisando seu tutorial, acho ele bastante superficial, você dá voltas e voltas, define os meta-métodos e só. Você podia ter começado dizendo que Lua não possui orientação a objetos e o uso das meta-tabelas é só um modo de contornar isso. Para mim, este é mais uma definição de meta-tabelas do que um tutorial de orientação a objetos, uma vez que uma aula/tutorial voltado a esse tema, deve girar em torno da definição de classe, atributo e método. Mesmo assim, não é sua culpa, pois você mesmo disse que adaptou o conteúdo de um blog e tal. Abração. -
[Lua] Escrevendo Em Um Arquivo [Básico]
tópico respondeu ao SkyDangerous de Oneshot em Tutoriais de Scripting
Não necessariamente o arquivo deve estar no mesmo local de trabalho. local file = io.open(getDataDir().."/logs/bans/ban.txt/", "w") Os modos de leitura do arquivo são estes "r" -- modo de leitura "w" -- modo de escrita "a" -- modo de adição "r+" -- modo de atualização, preservando dados anteriores "w+" -- modo de atualização, apagando todos dados anteriores "a+" -- modo de atualização, preserva dados anteriores, novos dados apenas no fim do arquivo Vale lembrar também que quando você usa io.open direcionando para um arquivo que não existe, a função cria o arquivo. -
Você voltou, Jhon! Estava com um peso na consciência do caramba de ter sido a causa do seu banimento x_x Abraços.
-
Corno manso
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.