Postado Janeiro 29, 2015 10 anos Solução @Murilosky, Tenta agora: coloquei o mínimo e arrumei as porcentagens de cada vocação.., lembrando que a distro não atualiza a vida na hora, depois vejo com max sobre o script que faz atualizar... function onDeath(cid, corpse, deathList) if not isPlayer(cid) then return true end local config = { mages = {1, 5, 2, 6}, pallys = {3, 7}, knights = {4, 8}, } local percents = { perdevida5 = 5, perdevida3 = 3, perdemana5 = 5, perdemana3 = 3, } if isInArray(config.mages, getPlayerVocation(cid)) and getPlayerMaxMana(cid) > 3695 then -- Mana mínima dos mages setCreatureMaxMana(cid, getPlayerMaxMana(cid) - (getPlayerMaxMana(cid)*percents.perdemana5/100)) elseif isInArray(config.pallys, getPlayerVocation(cid)) then if getCreatureMaxHealth(cid) > 1405 then -- Vida mínima do pala setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) - (getCreatureMaxHealth(cid)*percents.perdevida3/100)) if getPlayerMaxMana(cid) > 1255 then -- Mana mínima do para setCreatureMaxMana(cid, getPlayerMaxMana(cid) - (getPlayerMaxMana(cid)*percents.perdemana3/100)) elseif isInArray(config.knights, getPlayerVocation(cid)) and getCreatureMaxHealth(cid) > 1405 then -- Vida mínima de kina setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) - (getCreatureMaxHealth(cid)*percents.vida5/100)) end end end return true end Se você quiser re-configurar é só alterar os números da tabela percents... Editado Janeiro 29, 2015 10 anos por Caronte (veja o histórico de edições) Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado). Tópicos: [FAQ] BBCODE [LIB] Constant [RME] Administrando bordas. [TALK] Broadcast Editável. [TALK] Sugest. [TALK] Checkpoint. [MOVE] Pântano pegajoso. [ACTION] Piggy Bank. (Cassino). [GLOBAL] Uptime Ad. [C0DE] Consertando 'Invalid Password' [PROGRAM] Quest Maker
Postado Janeiro 29, 2015 10 anos Autor Funcionou certinho, o chato é que se vc tiver por exemplo, 1 de hp e 1 de mana a mais que o limite a puniçao vai ser aplicada e vai ficar com menos hp q o limite, mas depois disso a puniçao para de ser aplicada, mas ta quebrando o galho, muito obrigado cara.
Postado Janeiro 29, 2015 10 anos Funcionou certinho, o chato é que se vc tiver por exemplo, 1 de hp e 1 de mana a mais que o limite a puniçao vai ser aplicada e vai ficar com menos hp q o limite, mas depois disso a puniçao para de ser aplicada, mas ta quebrando o galho, muito obrigado cara. De nada posso ver se dá para fazer uma alteração aqui, se setar menor que a vida limite voltar para a vida limite.. local config = { mages = { vocs = {1, 5, 2, 6}, percent = 5, min_mana = 3695, }, pallys = { vocs = {3, 7}, percent = 3, min_hp = 1405, min_mana = 1255, }, knights = { vocs = {4, 8}, percent = 3, min_hp = 1405 }, } function onDeath(cid, corpse, deathList) local minha_voc = getPlayerVocation(cid) local max_mana = getPlayerMaxMana(cid) local max_hp = getCreatureMaxHealth(cid) if isInArray(config.mages, minha_voc) and max_mana > config.mages.min_mana then -- Mana mínima dos mages setCreatureMaxMana(cid, max_mana - (max_mana * (config.mages.percent / 100))) if getCreatureMaxMana(cid) < config.mages.min_mana then setCreatureMaxMana(cid, config.mages.min_mana) end elseif isInArray(config.pallys, minha_voc) then if max_hp > config.pallys.min_hp then -- Vida mínima do pala setCreatureMaxHealth(cid, max_hp - (max_hp * (config.pallys.percent / 100))) if getCreatureMaxHealth(cid) < config.pallys.min_hp then setCreatureMaxHealth(cid, config.pallys.min_hp) end end if getPlayerMaxMana(cid) > config.pallys.min_mana then -- Mana mínima do pala setCreatureMaxMana(cid, max_mana - (max_mana * (config.pallys.percent /100))) if getCreatureMaxMana(cid) < config.pallys.min_mana then setCreatureMaxMana(cid, config.pallys.min_mana) end end elseif isInArray(config.knights, minha_voc) and max_hp > config.knights.min_hp then -- Vida mínima de kina setCreatureMaxHealth(cid, max_hp - (max_hp * (percents.vida5/100))) if getCreatureMaxHealth(cid) < config.knights.min_hp then setCreatureMaxHealth(cid, config.knights.min_hp) end end return true end Vê aí. agora sempre que colocar a vida menor que a mínima, ele vai voltar para a mínima automáticamente. Editado Janeiro 29, 2015 10 anos por Caronte (veja o histórico de edições) Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado). Tópicos: [FAQ] BBCODE [LIB] Constant [RME] Administrando bordas. [TALK] Broadcast Editável. [TALK] Sugest. [TALK] Checkpoint. [MOVE] Pântano pegajoso. [ACTION] Piggy Bank. (Cassino). [GLOBAL] Uptime Ad. [C0DE] Consertando 'Invalid Password' [PROGRAM] Quest Maker
Postado Janeiro 29, 2015 10 anos Autor Esse ai não funcionou e nem deu erro no console, não funcionou nada dele
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.