Postado Fevereiro 10, 2022 3 anos Tenho um set no meu servidor que cada peça me dá 10% de vida máxima, totalizando 40% de vida ao todo, cada peça carrega esse atributo: <attribute key="maxhealthpercent" value="110" /> Porém, ao upar de nível a % não se aplica a quantidade de vida que o player ganhou, ex: Player level 1 - 150 + 40% = 210 (Essa é a vida que o player tem estando level 1 e com o set equipado) Player level 2 - 150 + 160 life por level +40% = 434 (Vida que o player deveria ter ao upar com o set equipado, mas o que acontece é isso) Player level 2 - 150 + 40% = 210 + 160 = 270 life final Ou seja, primeiro ele soma a vida inicial do player, que no caso é 150 e adiciona a % do set, pra depois adicionar a life por level que a vocação ganha. Teria uma forma de solucionar esse problema? Única forma que pensei foi dando uma espécie de "reload" no player e fazer a checagem nos itens que ele ta usando e atualizar, mas não sei como fazer Editado Agosto 16, 2022 2 anos por ZeeroBR (veja o histórico de edições)
Postado Fevereiro 11, 2022 3 anos 18 horas atrás, ZeeroBR disse: Tenho um set no meu servidor que cada peça me dá 10% de vida máxima, totalizando 40% de vida ao todo, cada peça carrega esse atributo: <attribute key="maxhealthpercent" value="110" /> Porém, ao upar de nível a % não se aplica a quantidade de vida que o player ganhou, ex: Player level 1 - 150 + 40% = 210 (Essa é a vida que o player tem estando level 1 e com o set equipado) Player level 2 - 150 + 160 life por level +40% = 434 (Vida que o player deveria ter ao upar com o set equipado, mas o que acontece é isso) Player level 2 - 150 + 40% = 210 + 160 = 270 life final Ou seja, primeiro ele soma a vida inicial do player, que no caso é 150 e adiciona a % do set, pra depois adicionar a life por level que a vocação ganha. Teria uma forma de solucionar esse problema? Única forma que pensei foi dando uma espécie de "reload" no player e fazer a checagem nos itens que ele ta usando e atualizar, mas não sei como fazer já tentou retirar o item e colocar novamente? Compre seus Scripts Agora totalmente seguro e de forma rápida, aceitamos também encomendas. discord.gg/phJZeHa2k4 Projeto ATS (Naruto) Informações Abaixo Facebook Youtube Discord Tutoriais / Conteúdos Clique Aqui
Postado Fevereiro 11, 2022 3 anos Autor 8 horas atrás, LeoTK disse: já tentou retirar o item e colocar novamente? Por algum motivo também não funciona, continua a mesma coisa
Postado Agosto 15, 2022 2 anos Solução Em 10/02/2022 em 16:06, ZeeroBR disse: Tenho um set no meu servidor que cada peça me dá 10% de vida máxima, totalizando 40% de vida ao todo, cada peça carrega esse atributo: vc vai precisar sempre dar um update desses items, indico fazer uma function na LIB com esses itens, uma table, e sempre que o player upar ou mover esse item, dar chamar a function da lib pra atualizar a vida com a % pois dessa maneira que está ele pega a max health apenas no momento do equip, ele não da um "update" pra checar o health a cada level. indico vc fazer uma tabela com esses itens na lib tipo function na lib: function executeItems(cid) local tabela = {1111,2222,333,4445,5555,5555,555,9999} for i=1, 9 do for j=1, #tabela do if getPlayerSlotItem(cid. i).itemid == tabela[j] then local save = getCreatureMaxHealth(cid) doSetCreatureMaxHealth(cid, (getCreatureMaxHealth(cid) * 1.1)) --1.1 = 110% da vida atual, ou seja, +10% doCreatureAddHealth(cid, (getCreatureMaxHealth(cid) - save)) -- adiciona 10% de vida end end end end e um function no creatureScripts: function onAdvance(cid, skill, oldLevel, newLevel) if(skill == SKILL__EXPERIENCE) then return true end if(skill == SKILL__LEVEL) then executeItem(cid) doPlayerSave(cid, true) end return true end tem que testar direitinho pra checar se não vai bugar e ficar add infinitamente, mas de base eh isso.
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.