Jump to content
TLThings

Recommended Posts

Fiz dessa maneira, porém não funcionou.

quest drop_especial begin
    state start begin
        --- desta forma é para todos os moobs, se quiseres moobs certos usa
        -- when kill with npc.get_race() == 101 begin    --- para cães selvagens
        -- when kill with npc.get_race() == 101 or npc.get_race() == 102 begin    --- para 2 moobs para mais, basta ires fazendo or  npc.get_race() == vnum do mob
        
        when kill with not npc.is_pc() begin  
                -- Diferença maior que 10 niveis
                if math.abs(pc.get_level() - npc.get_level()) > 10 then
                return
                else
                pc.setqf("drop_especial", pc.getqf("drop_especial") + 1)
                if pc.getqf("drop_especial") == 10 then        ---    Altera para o numero de kills a fazer para o drop
                -- Drop aleatório
                local drop = {50135, 50136, 50137}
                game.drop_item_with_ownership(drop[number(1, table.getn(drop))])
                pc.setqf("drop_especial",0)                --- remove esta linha se não queres que eles dropem sempre de x em x moobs
                end                
            end
        end
    end
end

Link to post
Share on other sites
Please login or register to see this quote.

@PACI tu não imaginas, mas eu aprendi bastante a nível de quests contigo. E uma vez mais, acabei de aprender uma nova forma para o drop aleatório. Eu usava outra forma, mas com mais uma linha.... é sempre bom, e tenho imenso orgulho\prazer  nisto que te digo: "é delirante ver a "delicadeza" das tuas quests ;)

Obrigado por tudo.

Edited by Aeglon
  • Like 1
Link to post
Share on other sites
Please login or register to see this quote.

Desconhecia de todo essa função. 

Quando puderes e se puderes, explica (com exemplos) qual a diferença entre math.random() math.randomseed(os.time())

edit: no need! 

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

Edited by Aeglon
Link to post
Share on other sites

Estou tendo esse erro aqui.

SYSERR: Dec  6 19:58:07 :: RunState: LUA_ERROR: [string "drop_especial"]:1: attempt to call field `get_level' (a nil value)
SYSERR: Dec  6 19:58:07 :: WriteRunningStateToSyserr: LUA_ERROR: quest drop_especial.start click

Link to post
Share on other sites

Não possuis a função npc.get_level().
Coloca a seguinte no teu questlua_npc.cpp e adiciona-o ao array de funções.

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

 

Edited by PACI
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.