Ir para conteúdo

(Resolvido)[PRECISO] 2 scripts (item at x Level/bless ate o level X)

Featured Replies

Postado
  Em 02/12/2014 em 17:11, Suicide disse:

 

Script do Printer.

Amigo, callback onLogin não registra creature event.

 

Você quer dizer não dropar loot se for morto por players durante os níveis 20~50, certo?

lootp.lua (data/creaturescripts/scripts):

function onPrepareDeath(cid, killer)
    local level = {20, 50}
    local player = Player(cid)
    if player ~= nil and killer:isPlayer() and player:getLevel() >= level[1] and player:getLevel() < level[2] + 1 then
        player:setDropLoot(false)
    end
    
    return true
end

 

Registre o creature event em login.lua:

registerCreatureEvent(cid, "LootProtection")

 

Tag - creaturescripts.xml (data/creaturescripts):

<event type="preparedeath" name="LootProtection" script="lootp.lua"/>

 

 

  Em 02/12/2014 em 04:00, Absolute disse:

 

Bless para leveis inferiores a 20:

 

 

data/creaturescripts/scripts crie um arquivo com o nome de bleeslvl20.lua e dentro adicione:

local freeBlessMaxLevel = 20

function onLogin(cid)
    local player = Player(cid)
    if player:getLevel() <= freeBlessMaxLevel then
        for i = 1, 5 do
            player:addBlessing(i)
        end
        player:say('FREE BLESS! -20', TALKTYPE_ORANGE_1)
        player:getPosition():sendMagicEffect(CONST_ME_HOLYDAMAGE)
    end
    return true
end

Em data/creaturescripts/creaturescripts.xml adicione a seguinte linha:

 <event type="login" name="blesslvl20" event="script" value="blesslvl20.lua"/>

Em data/creaturescripts/scripts/others/login.lua, registre o evento abaixo de um normal:

registerCreatureEvent(cid, "blesslvl20")

 

 

  Em 01/12/2014 em 23:53, jplellis disse:

mt obrigado, 1 de meus problemas 100% resolvido. 

 

BOM DIA GENTE, TUDO DEU CERTO, MENOS O BLESS PROTECT PVP, FIZ TUDO CERTINHO 100%, MAS TESTEI ME MATANDO PRA PLAYER E DROPOU LOOT IGUAL. ACHO QUE A DIVERGENCIA ESTA NO MEU LOGUIN.LUA, VO POSTAR ELE AQUI EM BAIXO PARA VOCÊS ME DIZER AONDE DEVO ADICIONAR A TAG NO LOGIN.: NOTE QUE COLOQUEI EM NEGRITO PRA FACILITAR A LOCALIZAÇÃO.

-- ordered as in creaturescripts.xml
local events = {
'pythiusDead',
'bossesGrayIsland',
'ElementalSpheres',
'ElementalSpheresKill',
'ElementalSpheresLogin',
'WarzoneThree',
'WarzoneTwo',
'bossesWarzone',
'SvargrondArenaKill',
'PharaoKillPortal',
'inServiceOfYalaharQuestsDiseased',
'inServiceOfYalaharQuestsMorik',
'inServiceOfYalaharQuestsQuara',
'inquisitionQuestBosses',
'inquisitionQuestUngreez',
'killingInTheNameOfQuestKills',
'TaskCustom',
'Yielothax',
'Energized',
'Raging',
'MastersVoiceServants',
'wrathBoss',
'wrathZalamon',
'PlayerDeath',
'ThievesGuildNomad',
'AdvanceSave',
'SpikeDrillworm',
'SecretServiceBlackKnight'
}
 
function onLogin(cid)
local player = Player(cid)
 
local loginStr = 'Welcome to ' .. configManager.getString(configKeys.SERVER_NAME) .. '!'
if player:getLastLoginSaved() <= 0 then
loginStr = loginStr .. ' Please choose your outfit.'
player:sendTutorial(1)
registerCreatureEvent(cid, "PremiumRate")
registerCreatureEvent(cid, "blesslvl20")
else
if loginStr ~= '' then
player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr)
end
 
loginStr = string.format('Your last visit was on %s.', os.date('%a %b %d %X %Y', player:getLastLoginSaved()))
end
player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr)
 
for i = 1, #events do
player:registerEvent(events)
end
return true
end

GOSTOU? ;D AJUDEI DE ALGUMA FORMA? REP+ :rock: , clica em Gostei.

 

  • Respostas 6
  • Visualizações 693
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Fiz o do item, vai testando, jájá faço o resto:     data/creaturescripts/scripts: recompensa.lua function onAdvance(cid, skill, oldlevel, newlevel) if getPlayerLevel(cid) >= 20 and g

  • Script do Printer. Amigo, callback onLogin não registra creature event.   Você quer dizer não dropar loot se for morto por players durante os níveis 20~50, certo? lootp.lua (data/creatu

  • No caso do seu login.lua, os creature events registrados pelo comando for antes de retornar e encerrar o callback são os que estão na tabela events. Então sempre que adicionar um novo creature event a

Postado

No caso do seu login.lua, os creature events registrados pelo comando for antes de retornar e encerrar o callback são os que estão na tabela events. Então sempre que adicionar um novo creature event ao creaturescripts.xml e o mesmo precisar ser registrado, apenas adicione ele à mesma tabela.

local events = {
    'pythiusDead',
    'bossesGrayIsland',
    'ElementalSpheres',
    'ElementalSpheresKill',
    'ElementalSpheresLogin',
    'WarzoneThree',
    'WarzoneTwo',
    'bossesWarzone',
    'SvargrondArenaKill',
    'PharaoKillPortal',
    'inServiceOfYalaharQuestsDiseased',
    'inServiceOfYalaharQuestsMorik',
    'inServiceOfYalaharQuestsQuara',
    'inquisitionQuestBosses',
    'inquisitionQuestUngreez',
    'killingInTheNameOfQuestKills',
    'TaskCustom',
    'Yielothax',
    'Energized',
    'Raging',
    'MastersVoiceServants',
    'wrathBoss',
    'wrathZalamon',
    'PlayerDeath',
    'ThievesGuildNomad',
    'AdvanceSave',
    'SpikeDrillworm',
    'SecretServiceBlackKnight',
    'PremiumRate',
    'LootProtection',
    'blesslvl20'
}
 
function onLogin(cid)
    local player = Player(cid)
    local loginStr = 'Welcome to ' .. configManager.getString(configKeys.SERVER_NAME) .. '!'
    if player:getLastLoginSaved() <= 0 then
        loginStr = loginStr .. ' Please choose your outfit.'
        player:sendTutorial(1)
    else
        if loginStr ~= '' then
            player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr)
        end
        loginStr = string.format('Your last visit was on %s.', os.date('%a %b %d %X %Y', player:getLastLoginSaved()))
    end
    
    player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr)
    for i = 1, #events do
        player:registerEvent(events[i])
    end
    return true
end

The corrupt fear us.

The honest support us.

The heroic join us.

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.7k

Informação Importante

Confirmação de Termo