Ir para conteúdo
  • Cadastre-se

Posts Recomendados

É o seguinte galera eu uso exp por hit em meu servidor mais ele esta com uma exp fixa que seria muito ruin para meu servidor, alguem que saiba mexe com isso pode tentar deixar esse script com stages, e tambem que o script funcione com ring de exp...Segue abaixo o script que uso...\/

\/

rateExp = 7

------------------------------

function CalculeExp(monsterhp, exptotal, hit)

local x = hit <= monsterhp and math.ceil(exptotal * hit / monsterhp) or 0

local x2 = x - 20 + math.random(20)

return x2 > 0 and x2 or 0

end

function isSummon(uid)

return uid ~= getCreatureMaster(uid) or false

end

function onStatsChange(cid, attacker, type, combat, value)

if type == STATSCHANGE_HEALTHLOSS then

if isMonster(cid) then

if isCreature(attacker) then

local sid = isSummon(attacker) == true and getCreatureMaster(attacker) or attacker

if isPlayer(sid) then

local expg = CalculeExp(getCreatureMaxHealth(cid), getMonsterExperience(getCreatureName(cid)) * rateExp, value)

doPlayerSendTextMessage(sid, 23, "You gain "..expg.." exp.")

doPlayerAddExp(sid, expg)

end

end

end

elseif type == STATSCHANGE_HEALTHGAIN then

return false

end

return true

end

function onCombat(cid, target)

if isMonster(target) and not isSummon(target) and not isPlayer(target) then

registerCreatureEvent(target, "ExpGain")

end

return true

end

AAA claro esqueci de dizer vou dar rep++ clarooo

Editado por Fabiano Alberto (veja o histórico de edições)

SE AJUDEI REP+ ;D, NÃO CUSTA NADA.

uRti.png

<a href="http://central.evenhost.net/aff.php?aff=020"><img src="http://i.imm.io/uRti.png" width="500" height="82" border="0"></a>

Link para o post
Compartilhar em outros sites

Eu fiz agora testa ai...

rateExp = 50 -- 0 a 20

rateExp1 = 20 -- 21 a 50

rateExp2 = 15 -- 51 a 100

rateExp3 = 10 -- 101 a 200

rateExp4 = 5 -- 201 a 300

rateExp5 = 4 -- 301 a 350

rateExp6 = 3 -- 351 em diante

bonus = 1 -- Bonus por estar com exp ring

expringid = 1000 -- Id do exp ring

------------------------------

function CalculeExp(monsterhp, exptotal, hit)

local x = hit <= monsterhp and math.ceil(exptotal * hit / monsterhp) or 0

local x2 = x - 20 + math.random(20)

return x2 > 0 and x2 or 0

end

function isSummon(uid)

return uid ~= getCreatureMaster(uid) or false

end

function onStatsChange(cid, attacker, type, combat, value)

if type == STATSCHANGE_HEALTHLOSS then

if isMonster(cid) then

if isCreature(attacker) then

local sid = isSummon(attacker) == true and getCreatureMaster(attacker) or attacker

if isPlayer(sid) and getPlayerLevel(sid) <= 20 then

local expg = CalculeExp(getCreatureMaxHealth(cid), getMonsterExperience(getCreatureName(cid)) * rateExp, value)

doPlayerSendTextMessage(sid, 23, "You gain "..expg.." exp.")

doPlayerAddExp(sid, expg)

elseif isPlayer(sid) and getPlayerLevel(sid) > 21 and getPlayerLevel(sid) <= 50 then

local expg1 = CalculeExp(getCreatureMaxHealth(cid), getMonsterExperience(getCreatureName(cid)) * rateExp1, value)

doPlayerSendTextMessage(sid, 23, "You gain "..expg1.." exp.")

doPlayerAddExp(sid, expg1)

elseif isPlayer(sid) and getPlayerLevel(sid) > 51 and getPlayerLevel(sid) <= 100 then

local expg2 = CalculeExp(getCreatureMaxHealth(cid), getMonsterExperience(getCreatureName(cid)) * rateExp2, value)

doPlayerSendTextMessage(sid, 23, "You gain "..expg2.." exp.")

doPlayerAddExp(sid, expg2)

elseif isPlayer(sid) and getPlayerLevel(sid) > 101 and getPlayerLevel(sid) <= 200 then

local expg3 = CalculeExp(getCreatureMaxHealth(cid), getMonsterExperience(getCreatureName(cid)) * rateExp3, value)

doPlayerSendTextMessage(sid, 23, "You gain "..expg3.." exp.")

doPlayerAddExp(sid, expg3)

elseif isPlayer(sid) and getPlayerLevel(sid) > 201 and getPlayerLevel(sid) <= 300 then

local expg4 = CalculeExp(getCreatureMaxHealth(cid), getMonsterExperience(getCreatureName(cid)) * rateExp4, value)

doPlayerSendTextMessage(sid, 23, "You gain "..expg4.." exp.")

doPlayerAddExp(sid, expg4)

elseif isPlayer(sid) and getPlayerLevel(sid) > 301 and getPlayerLevel(sid) <= 350 then

local expg5 = CalculeExp(getCreatureMaxHealth(cid), getMonsterExperience(getCreatureName(cid)) * rateExp5, value)

doPlayerSendTextMessage(sid, 23, "You gain "..expg5.." exp.")

doPlayerAddExp(sid, expg5)

elseif isPlayer(sid) and getPlayerLevel(sid) > 351 then

local expg6 = CalculeExp(getCreatureMaxHealth(cid), getMonsterExperience(getCreatureName(cid)) * rateExp6, value)

doPlayerSendTextMessage(sid, 23, "You gain "..expg6.." exp.")

doPlayerAddExp(sid, expg6)

elseif isPlayer(sid) and item.itemid == expringid then

local expbonus = CalculeExp(getCreatureMaxHealth(cid), getMonsterExperience(getCreatureName(cid)) * bonus, value)

doPlayerSendTextMessage(sid, 23, "You gain "..expbonus.." bonus exp.")

doPlayerAddExp(sid, expbonus)

end

end

end

elseif type == STATSCHANGE_HEALTHGAIN then

return false

end

return true

end

function onCombat(cid, target)

if isMonster(target) and not isSummon(target) and not isPlayer(target) then

registerCreatureEvent(target, "ExpGain")

end

return true

end

Bruno de Carvalho Câmara / Administrador TibiaKing

[email protected]


 

btn_donateCC_LG.gif

 

Em 26/12/2016 em 03:47, Spraypaint disse:

A força da alienação vem dessa fragilidade dos indivíduos, quando apenas conseguem identificar o que os separa e não o que os une.

-miltinho

 

wMwSJFE.png?1

 

Link para o post
Compartilhar em outros sites

Dei seu Rep...Vlw mesmo cara...vc e d++

SE AJUDEI REP+ ;D, NÃO CUSTA NADA.

uRti.png

<a href="http://central.evenhost.net/aff.php?aff=020"><img src="http://i.imm.io/uRti.png" width="500" height="82" border="0"></a>

Link para o post
Compartilhar em outros sites

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.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo