Postado Julho 24, 2020 4 anos task_monsters = { [1] = {name = "dragon", mons_list = {"", ""}, storage = 30000, amounte = 5, amount = 1, exp = 5850, pointsTask = {1, 1}, items = {{id = 2152, count = 20}}}, [2] = {name = "snake", mons_list = {"", ""}, storage = 30001, amounte = 5, amount = 1, exp = 7500, pointsTask = {1, 1}, items = {{id = 2152, count = 20}}}, [3] = {name = "bug", mons_list = {"", "", "", "", "", ""}, storage = 30002, amounte = 5, amount = 1, exp = 20250, pointsTask = {1, 1}, items = {{id = 2152, count = 25}}}, } if msgcontains(msg, 'normal') then local ret_t = getTaskInfos(player) if ret_t then if player:getStorageValue(ret_t.storage) == ret_t.amount then local pt1 = ret_t.pointsTask[1] local pt2 = ret_t.pointsTask[2] local txt = 'Thanks for finishing the task, your awards are: ' .. (pt1 > 1 and pt1 .. ' task points' or pt1 <= 1 and pt1 .. ' task point') .. ' and ' .. (pt2 > 1 and pt2 .. ' rank points' or pt2 <= 1 and pt2 .. ' rank point') .. ', ' if #getItemsFromTable(ret_t.items) > 0 then txt = txt .. 'in addition to winning: ' .. getItemsFromTable(ret_t.items) .. ', ' for g = 1, #ret_t.items do player:addItem(ret_t.items[g].id, ret_t.items[g].count) local txtValue = '' for g = 1, #task_monsters do local amounte = task_monsters[g].amounte txtValue = txtValue .. ' ' .. task_monsters[g].amounte player:sendTextMessage(19, 'Parabens por finalizar a task como recompensa voce recebeu ' .. amounte .. ' myth points.') end end player:addRiotPoint(getTaskInfos(player).amounte) end olá tks, a msg: player:sendTextMessage(19, 'Parabens por finalizar a task como recompensa voce recebeu ' .. amounte .. ' myth points.') esta mandando todos valores da variavel amounte que esta dentro da tabela. sei que é pq ta dentro do for mais se eu colocar ela fora, a msg n aparece. agradeço desde ja s2. Editado Julho 24, 2020 4 anos por robson pablo dos san (veja o histórico de edições)
Postado Julho 25, 2020 4 anos Coloca um if dentro do for, pra só enviar a msg se ele tiver no g correto.. Nao entendi bem seu script, mas parece que é um premio, faz ele verificar se ele completou a task[g], se sim, enviar a msg MEUS POSTS: [Source] Sistema Anti-PVP ~~ PvP on/off por comando [CreatureScript] Sugestão de balanceamento ~~ Uma pequena sugestão de balanceamento das vocations ? [NPC] Daily Task ~~ Daily Task com 4 opções diarias Contador de Monstros ~~Sistema pra contar quantos monstros tem no sv, e uma melhoria pro sistema de Daily Tasks Calma, por enquanto é só, e em breve mais coisas ;} SE AJUDEI, DÁ O REP+, ESQUECE NÃO, VLW BB
Postado Julho 26, 2020 4 anos Autor Em 24/07/2020 em 21:16, Mor3nao disse: Coloca um if dentro do for, pra só enviar a msg se ele tiver no g correto.. Nao entendi bem seu script, mas parece que é um premio, faz ele verificar se ele completou a task[g], se sim, enviar a msg Obrigado pelo comentario, eu consegui resolver da seguinte forma: if #getItemsFromTable(ret_t.items) > 0 then txt = txt..'in addition to winning: '..getItemsFromTable(ret_t.items)..', ' for g = 1, #ret_t.items do player:addItem(ret_t.items[g].id, ret_t.items[g].count) local txtValue = '' for g = 1, #task_monsters do local amounte = task_monsters[g].amounte txtValue = txtValue .. ' ' .. task_monsters[g].amounte end end local amounte = getTaskInfos(player).amounte player:sendTextMessage(19, 'Parabens por finalizar a task como recompensa voce recebeu ' .. amounte .. ' myth points.') player:addRiotPoint(getTaskInfos(player).amounte) end gerei a variavel amounte ali fora e funcionou. agradeço a atenção.
Postado Julho 26, 2020 4 anos Então, eu nao sei no teu, mas no meu sv essa linha n estaria servindo de nada, tipo, qd vai declarar variavel, vc só poe o "local" na primeira vez q declara, dps nao adianta por o local, pq ela nem vai ler local amounte = getTaskInfos(player).amounte exemplo: local value = 2 local value = 3 o value ia ser 2 e pronto, o "local value = 3" nao ia servir de nda... Então, acho que seria melhorar tirar o local, q aí muda a varriavel, e vê se ta tudo certo, ou então, tira tudo =v MEUS POSTS: [Source] Sistema Anti-PVP ~~ PvP on/off por comando [CreatureScript] Sugestão de balanceamento ~~ Uma pequena sugestão de balanceamento das vocations ? [NPC] Daily Task ~~ Daily Task com 4 opções diarias Contador de Monstros ~~Sistema pra contar quantos monstros tem no sv, e uma melhoria pro sistema de Daily Tasks Calma, por enquanto é só, e em breve mais coisas ;} SE AJUDEI, DÁ O REP+, ESQUECE NÃO, VLW BB
Postado Julho 26, 2020 4 anos Autor 35 minutos atrás, Mor3nao disse: Então, eu nao sei no teu, mas no meu sv essa linha n estaria servindo de nada, tipo, qd vai declarar variavel, vc só poe o "local" na primeira vez q declara, dps nao adianta por o local, pq ela nem vai ler local amounte = getTaskInfos(player).amounte exemplo: local value = 2 local value = 3 o value ia ser 2 e pronto, o "local value = 3" nao ia servir de nda... Então, acho que seria melhorar tirar o local, q aí muda a varriavel, e vê se ta tudo certo, ou então, tira tudo =v entao só que nesse caso ali ele ta fora de onde o primeiro local foi criado. é meio estranho mais funcionou perfect o.o
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.