GA

Como Por O Comando !spells No Meu Otserver?

Por Galinho15, 11 de dez. de 2009 em Archived

otserv
7
2.5k
Galinho15G
11 de dezembro de 2009 às 22:35

Pessoal tenho um ot server 8.50 SQL e quero por o comando !Spells para informar as magias e os levels dela.

Como se fosse um !notice mais em forma de !spells

Como faço isso?

obrigado.

rockstar96R
12 de dezembro de 2009 às 12:30

/data/talkactions/scripts/spells.lua

function onSay(cid, words, param)
    local count = getPlayerInstantSpellCount(cid)
    local text = ""
    local t = {}
    for i = 0, count - 1 do
        local spell = getPlayerInstantSpellInfo(cid, i)
        if spell.level ~= 0 then
            if spell.manapercent > 0 then
                spell.mana = spell.manapercent .. "%"
            end
            table.insert(t, spell)
        end
    end
    table.sort(t, function(a, b) return a.level < b.level end)
    local prevLevel = -1
    for i, spell in ipairs(t) do
        local line = ""
        if prevLevel ~= spell.level then
            if i ~= 1 then
                line = "\n"
            end
            line = line .. "Spells for Level " .. spell.level .. "\n"
            prevLevel = spell.level
        end
        text = text .. line .. "  " .. spell.words .. " - " .. spell.name .. " : " .. spell.mana .. "\n"
    end
    doPlayerPopupFYI(cid, text)
    return TRUE
end

 

/data/talkactions/talkactions.xml

<talkaction words="!spells" event="script" value="spells.lua"/>

 

 

 

 

 

 

Este script foi feito pela equipe TFS, adaptado para funcionar com talkactions.

Editado Dezembro 12 por iRockStar

KilluaK
13 de dezembro de 2009 às 15:32

Mas, iRockStar. Isso eu tenho que mudar todas as magias ou ele automáticamente se adapta às magias do meu OT?

 

 

Galinho15G
14 de dezembro de 2009 às 19:24
Mas, iRockStar. Isso eu tenho que mudar todas as magias ou ele automáticamente se adapta às magias do meu OT?

 

Faço de suas palavras, as minhas.

 

KilluaK
14 de dezembro de 2009 às 19:29
Faço de suas palavras, as minhas.

 

Haha, que pena. Mas, independente disso essa talkaction nao está funcionando aqui. Deve ser por eu usar a versão 7.92 =~/

gkaonicx72G
14 de dezembro de 2009 às 19:34

Acho mais fácil você testar e ver, mais pelo que entendo de scripting acho que ele vai se adaptar somente as que o player pode usar. Por exemplo se ele for knight só vai aparecer as de knight e pro level dele.

Até mais.

Galinho15G
16 de dezembro de 2009 às 07:24
/data/talkactions/scripts/spells.lua

function onSay(cid, words, param)
    local count = getPlayerInstantSpellCount(cid)
    local text = ""
    local t = {}
    for i = 0, count - 1 do
        local spell = getPlayerInstantSpellInfo(cid, i)
        if spell.level ~= 0 then
            if spell.manapercent > 0 then
                spell.mana = spell.manapercent .. "%"
            end
            table.insert(t, spell)
        end
    end
    table.sort(t, function(a, b) return a.level < b.level end)
    local prevLevel = -1
    for i, spell in ipairs(t) do
        local line = ""
        if prevLevel ~= spell.level then
            if i ~= 1 then
                line = "\n"
            end
            line = line .. "Spells for Level " .. spell.level .. "\n"
            prevLevel = spell.level
        end
        text = text .. line .. "  " .. spell.words .. " - " .. spell.name .. " : " .. spell.mana .. "\n"
    end
    doPlayerPopupFYI(cid, text)
    return TRUE
end

 

/data/talkactions/talkactions.xml

<talkaction words="!spells" event="script" value="spells.lua"/>

 

 

 

 

 

 

Este script foi feito pela equipe TFS, adaptado para funcionar com talkactions.

 

Testei isso no meu slayer yurotss 8.50 e não pegou...

Eu falo o comando !spells mais não acontece simplesmente nada.