Ir para conteúdo

Evento Double Exp


SkyLigh

Posts Recomendados

Muito bom esse script, está funcionando.

Eu só tive que mudar o calculo da exp nessa parte aqui:

 

local count = ((getMonsterInfo(string.lower(getCreatureName(target))).experience*0.5*exp))

 

Pois no meu server não esta adicionando diretamente na exp que o monstro dá, pula uma segunda exp depois de matar o mob.

 

Dai estava ficando exp do mob + 2x exp.

 

Rep+

Link para o comentário
Compartilhar em outros sites

  • 1 month later...
  • 8 months later...
  • 1 month later...
  • 3 years later...
Em 14/10/2015 em 21:47, SkyLigh disse:

Fala galera tudo bem? Essa semana teve um membro que pediu um evento de double exp até que consegui fazer usando alguns scripts como base, então vamos ao código.

INSTALAÇÃO

Separador.PNG

 

Vá em data/creaturescripts/scripts e em creaturescripts.xml adicione a seguinte tag.


<event type="kill" name="ExpBonus" event="script" value="exp.lua"/>

Em data/creaturescripts/scripts crie um arquivo .lua e renomeie para exp.lua e adicione o seguinte código.


function onKill(cid, target)
if isPlayer(cid) and isMonster(target) then
if getGlobalStorageValue(102590) - os.time() >= 1 then
local exp = getExperienceStage(getPlayerLevel(cid), getVocationInfo(getPlayerVocation(cid)).experienceMultiplier)
local count = ((getMonsterInfo(string.lower(getCreatureName(target))).experience*1.5*exp)/2)
doPlayerAddExperience(cid, count)
addEvent(doSendAnimatedText, 500, getCreaturePosition(cid), '+'..count, math.random(50,60))
end
else
return TRUE
end
return TRUE
end


Agora no data/creaturescripts/scripts e login.lua adicione a seguinte tag.


registerCreatureEvent(cid, "ExpBonus")


Agora vá em data/talkactions/scripts talkactions.xml


<talkaction words="/doubleexp" access="5" event="script" value="exp.lua"/>

Em data/talkactions/scripts crie um arquivo.lua e o renomeio para exp.lua e adicione o seguinte código dentro.


function onSay(cid, words, param, channel)
local config = {
storage = 102590,
}
if(param == 'cancel') then
if getGlobalStorageValue(config.storage) > 0 then
setGlobalStorageValue(config.storage, -1)
doBroadcastMessage("Double Exp cancelado")
end
return true
end
	
param = tonumber(param)
if(not param or param < 0) then
doPlayerSendCancel(cid, "Digite por quantas horas o evento ira durar")
return true
end
if getGlobalStorageValue(config.storage) - os.time() <= 0 then
setGlobalStorageValue(config.storage, os.time()+param*60*60)
doBroadcastMessage("Exp bonus ativado 50% + EXP  por "..param.." horas! Aproveite.")
end
return true
end

Separador.PNG

 

COMO UTILIZAR

 

Para ativar o comando digite /doubleexp Quantidade de horas que vai durar o evento Exemplo /doubleexp 3 o evento ira durar por 3 horas.

Para cancelar o evento basta digitar /doubleexp cancel apenas os GOD'S podem utilizar os 2 comandos.

 

Separador.PNG

Créditos

--- Pela postagem do tópico e edição nos códigos.

--- Por eu tê pego uma parte de um script dele do creaturescripts.

 

Espero que gostem :)

 

 

 

na base pokemon d DXP

 

activa mais nao da exp 

 

 


[07/05/2020 20:23:39] > Broadcasted message: "Exp bonus ativado 50% + EXP  por 3 horas! Aproveite.".

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...