Devil 280 Posted December 27, 2016 Boas ppl, é o seguinte nas files que estou a usar o drop no txt tem apenas o mob e o repetivo drop, mas o que eu queria era eliminar isso e criar algo do genero: Monstro: X Drops : X, Y, Z, V chance de drope: 10% 15% 50% 75% Nivel min para dropar: 5 Nivel max para dropar: 10 Monstro: Z Drops : X, Y, Z, V chance de drope: 10% 15% 50% 75% Nivel min para dropar: 5 Nivel max para dropar: 10 e por ai fora penso que dá para entender, se alguem tiver algo do genero e se me poder passar agradeço. cumps e obrigado. Share this post Link to post Share on other sites
.ukitobi 42 Posted December 27, 2016 Penso que isso já existe... Group mob { type limit mob x level_limit 10 1 x 1 10 2 y 1 15 3 z 1 50 4 v 1 75 } Senão quiseres assim podes fazer em quest. 1 Devil reacted to this Share this post Link to post Share on other sites
Devil 280 Posted December 27, 2016 Group mob { type limit mob x <<---- nr do mob level_limit 10 <<----- o 10 define 10lvl acima e abaixo do mob certo ? 1 x 1 10 << ---- aqui é que nao entendo bem se me poderes definir sff. 2 y 1 15 3 z 1 50 4 v 1 75 Share this post Link to post Share on other sites
.ukitobi 42 Posted December 27, 2016 1 minute ago, iDevil said: Group mob { type limit mob x <<---- nr do mob level_limit 10 <<----- o 10 define 10lvl acima e abaixo do mob certo ? 1 x 1 10 << ---- aqui é que nao entendo bem se me poderes definir sff. 2 y 1 15 3 z 1 50 4 v 1 75 x é o nº do mob, level_limit é o nivel maximo para conseguir dropar. 1 -> ordem x -> vnum do item 1 -> quantidade 10 -> probabilidade 1 Devil reacted to this Share this post Link to post Share on other sites
Devil 280 Posted December 27, 2016 entendi :p obrigado pela ajuda irei testar. Share this post Link to post Share on other sites
NewWars 875 Posted December 27, 2016 -- questlib functions -- dropTable = { -- mobV, chance, min, max, drops{...} 101 = {10, 5, 15, {{1024, 1}, {3000, 5}}} } function CheckDrops(mobVnum) if dropTable[mobVnum] ~= nil then local chance = math.random(dropTable[mobVnum][2], dropTable[mobVnum][3]) if dropTable[mobVnum][1] < chance for i = 1, table.getn(dropTable[mobVnum][4]) do game.drop_item_with_ownership(dropTable[mobVnum][4][i][1], dropTable[mobVnum][4][i][2]) end end end end Estou super enferrujado em lua/quest, não programo razoavelmente faz uns meses, mas o meu exemplo não esta muito longe disso, pode é ter uns quantos erros de syntax, não estou seguro quanto à forma que indexei na tabela, visto que é um dos pontos mais fáceis de errar se não se tiver habituado, a meu ver. Para deixar mais limpo, organizado e agradável, basta fazer um parser e meter as informações de drops dentro de um ficheiro de texto e usar o parser no mesmo. Cumprimentos. 2 .ukitobi and Devil reacted to this Share this post Link to post Share on other sites
Devil 280 Posted December 27, 2016 (edited) 2 horas atrás, NewWars disse: -- questlib functions -- dropTable = { -- mobV, chance, min, max, drops{...} 101 = {10, 5, 15, {{1024, 1}, {3000, 5}}} } function CheckDrops(mobVnum) if dropTable[mobVnum] ~= nil then local chance = math.random(dropTable[mobVnum][2], dropTable[mobVnum][3]) if dropTable[mobVnum][1] < chance for i = 1, table.getn(dropTable[mobVnum][4]) do game.drop_item_with_ownership(dropTable[mobVnum][4][i][1], dropTable[mobVnum][4][i][2]) end end end end Estou super enferrujado em lua/quest, não programo razoavelmente faz uns meses, mas o meu exemplo não esta muito longe disso, pode é ter uns quantos erros de syntax, não estou seguro quanto à forma que indexei na tabela, visto que é um dos pontos mais fáceis de errar se não se tiver habituado, a meu ver. Para deixar mais limpo, organizado e agradável, basta fazer um parser e meter as informações de drops dentro de um ficheiro de texto e usar o parser no mesmo. Cumprimentos. irei testar as duas. obrigado aos dois pela ajuda. EDIT: criei a quest e não funciona nem dá erro a atualizar, será que falta fazer alguma coisa? Edited December 27, 2016 by iDevil (see edit history) Share this post Link to post Share on other sites
Wolvarinhas 107 Posted December 29, 2016 if dropTable[mobVnum] ~= nil then Porque o ~? Se o valor da tabela = nulo então..... 1 Devil reacted to this Share this post Link to post Share on other sites
Devil 280 Posted December 29, 2016 12 minutos atrás, NoNamePT´s disse: if dropTable[mobVnum] ~= nil then Porque o ~? Se o valor da tabela = nulo então..... por acaso tmb reparei nisso e retirei, testei de ambas as maneiras e continuou sem dar. Share this post Link to post Share on other sites
'PACI 2,317 Posted December 29, 2016 3 horas atrás, NoNamePT´s disse: if dropTable[mobVnum] ~= nil then Porque o ~? Se o valor da tabela = nulo então..... Em lua ~= é equivalente a !=. Ou seja, diferente de. Share this post Link to post Share on other sites