Ir para conteúdo
  • 0

[CREATURESCRIPT] Msg On Advance ML (10 reps)


gmstrikker

Pergunta

Alguém me ajuda a arrumar esse meu script? Não está funcionando...

Sem erros, sem nada, achei ele num fórum gringo, mas o cara não testou eu fui testar, não está mandando msg nenhuma

 

A ideia era

Quando upa-se magic lvl, manda-se uma msg com as spells liberadas por esse ML, dou 10 reps se alguém souber como me ajudar

 

Pls

 

 

local spells = {
   [1] = { --sorcerer
     level = {
       [1] = "utevo lux", "exura", "adori",
       [40] = "exevo gran mas vis"
     }
   },

   [2] = { --druid
     level = {
       [1] = "utevo lux", "exura", "adori",
       [28] = "exevo gran mas pox"
     }
   },
 
   [3] = { --paladin
     level = {
       [1] = "utevo lux", "exura", "exevo con",
       [14] = "exevo con vis"
     }
   },

   [4] = { --knight
     level = {
       [1] = "utevo lux", "exura",
       [5] = "exori"
     }
   }
}
local array_sorc = {"Sorcerer", "Master Sorcerer", "Epic Sorcerer"}
local array_druid = {"Druid", "Elder Druid", "Epic Druid"}
local array_paladin = {"Paladin", "Royal Paladin", "Epic Paladin"}
local array_knight = {"Knight", "Elite Knight", "Epic Knight"}
local text = ""
function onAdvance(cid, skill, oldLevel, newLevel)
if skill == SKILL__MAGLEVEL then
    player = Player(cid)
        if isInArray(array_sorc, player:getVocation()) then
            CONFIG = spells[1]
        elseif isInArray(array_druid, player:getVocation()) then
            CONFIG = spells[2]
        elseif isInArray(array_paladin, player:getVocation()) then
            CONFIG = spells[3]
        elseif isInArray(array_knight, player:getVocation()) then
            CONFIG = spells[4]
    end
        if not CONFIG then return false end
            EVENT = CONFIG.level[player:getMagLevel()]
        if not EVENT then
    return false
    end
        for i, v in ipairs(EVENT) do
            text = text..""..i..", "
        end
            player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "New spells: "..text.."")
        end
    return true
end
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Tente assim:

 

 

 

 

local spells = {
   [1] = { --sorcerer
     level = {
       [1] = "utevo lux", "exura", "adori",
       [40] = "exevo gran mas vis"
     }
   },
 
   [2] = { --druid
     level = {
       [1] = "utevo lux", "exura", "adori",
       [28] = "exevo gran mas pox"
     }
   },
 
   [3] = { --paladin
     level = {
       [1] = "utevo lux", "exura", "exevo con",
       [14] = "exevo con vis"
     }
   },
 
   [4] = { --knight
     level = {
       [1] = "utevo lux", "exura",
       [5] = "exori"
     }
   }
}
local array_sorc = {1,4}
local array_druid = {2,5}
local array_paladin = {3,6}
local array_knight = {4,7}
local text = ""
 
function onAdvance(player, skill, oldLevel, newLevel)
if skill ~= SKILL_LEVEL then
player = Player(cid)
if player:getVocation():getBase():getId() == array_sorc then
CONFIG = spells[1]
 
elseif player:getVocation():getBase():getId() == array_druid then
CONFIG = spells[2]
 
elseif player:getVocation():getBase():getId() == array_paladin then
CONFIG = spells[3]
 
elseif player:getVocation():getBase():getId() == array_knight then
CONFIG = spells[4]
end
 
if not CONFIG then
return false
end
 
EVENT = CONFIG.level[player:getLevel()]
if not EVENT then
return false
end
 
for i, v in ipairs(EVENT) do
text = text..""..i..", "
end
player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "New spells: "..text.."")
end
return true
end

 

 

Editado por danilomeloo
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...