Ir para conteúdo

Featured Replies

Postado
  • Este é um post popular.

Este script dá double exp à todos os player que estiverem online ou entrarem durante o tempo especificado no dia X.

 

Pra quem não sabe, apenas crie um arquivo "QUALQUER-NOME.xml" na pasta "mods" (mesmo lugar do executável do servidor), cole isso dentro e salve:

<?xml version='1.0' encoding='UTF-8'?>
<mod name='HappyHours' version='1.0' author='Tomek/Xevis' contact='[email protected]' enabled='yes'>

    <config name='happyHoursConf'>
        <![CDATA[
            HH_STORAGE = 2327 -- nº storage, tenha certeza de colocar uma não usada
            HH_EXTRA_EXP_PERCENT = 10 -- porcentagem à mais de exp, caso queira double, coloque 100
         

            -- CONFIGURAR O DIA E A DURAÇÃO DO EVENTO
            -- EXEMPLO: ['DIA], from = '10:00:00', to = '11:00:00' (formato 24 horas)
            -- EXPLICAÇÃO: ocorrerá no dia tal, das 10 de manhã às 11 da manhã.

            DAYS = {
                ['Monday'] = {
                    {from = '16:00:00', to = '22:00:00'} 
                },
                ['Tuesday'] = {
                    {from = '16:00:00', to = '22:00:00'}
                },
                ['Sunday'] = {
                    {from = '16:00:00', to = '22:00:00'}
                },
                ['Wednesday'] = {
                    {from = '16:00:00', to = '22:00:00'}
                },
                ['Thursday'] = {
                    {from = '16:00:00', to = '22:00:00'}
                },
                ['Friday'] = {
                    {from = '16:00:00', to = '22:00:00'}
                },
                ['Saturday'] = {
                    {from = '16:00:00', to = '22:00:00'}
                },
                ['Sunday'] = {
                    {from = '16:00:00', to = '22:00:00'}
                }
            }
         
        ]]>
    </config>

    <lib name='happyHoursLib'>
        <![CDATA[
            function doPlayerSetSkills(cid, value)
                for i = 0, 8 do
                    doPlayerSetRate(cid, i, value)
                end
            end

            function stopNewWorld()
                doSetStorage(HH_STORAGE, -1)

                for _, cid in ipairs(getPlayersOnline()) do
                    doPlayerSetSkills(cid, 1)
                end

                doBroadcastMessage('MSG QUANDO ACABAR')
            end
        ]]>
    </lib>
 
    <globalevent name="happyHoursStop" interval="1000" event="script">
        <![CDATA[
            domodlib('happyHoursConf')
            domodlib('happyHoursLib')

            local daysOpen = {}
         
            for k, v in pairs(DAYS) do
                table.insert(daysOpen, k)
            end
         
            function onThink(interval)
                if isInArray(daysOpen, os.date('%A')) then
                    for k, v in pairs(DAYS[os.date('%A')]) do
                        if isInArray(v.to, os.date('%X', os.time())) then
                                stopNewWorld()
                            break
                        end
                    end
                end
                return true
            end
        ]]>
    </globalevent> 
 
    <globalevent name="happyHoursStart" interval="1000" event="script">
        <![CDATA[
            domodlib('happyHoursConf')
            domodlib('happyHoursLib')

            local daysOpen = {}
         
            for k, v in pairs(DAYS) do
                table.insert(daysOpen, k)
            end
         
            function onThink(cid, interval)
                if isInArray(daysOpen, os.date('%A')) then
                    for _, d in pairs(DAYS[os.date('%A')]) do
                        if isInArray(d.from, os.date('%X', os.time())) then
                            local newRate = 1 + (HH_EXTRA_EXP_PERCENT/100)

                            for _, cid in ipairs(getPlayersOnline()) do
                                doPlayerSetSkills(cid, newRate)
                            end
                         
                            doSetStorage(HH_STORAGE, 1)
                         
                            doBroadcastMessage('MSG À TODOS DO SERVIDOR', MESSAGE_STATUS_WARNING)
                            break
                        end
                    end
                end
                return true
            end
        ]]>
    </globalevent>

    <event type='login' name='happyHoursLogin' event='script'>
        <![CDATA[
            domodlib('happyHoursConf')
            domodlib('happyHoursLib')

            function onLogin(cid)
                if getStorage(HH_STORAGE) == 1 then
                    local newRate = 1 + (HH_EXTRA_EXP_PERCENT/100)
                    doPlayerSetSkills(cid, newRate)
                    doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, 'MSG QUANDO O PLAYER LOGAR')
                else
                    doPlayerSetSkills(cid, 1)                 
                end
                return true
            end
        ]]>
    </event>
</mod>

 

 

É isso aí galera, caso tenha dúvidas poste aqui.

 

Créditos:

Script: Tomek

           Xevis

Tópico: Eu '-'

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

  • 2 weeks later...
  • Respostas 11
  • Visualizações 4.1k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • 1 year later...

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo