Postado Março 23, 2015 10 anos Olá, estou com um script porem está dando erro, é um globalevent que sumona um monstro em uma determinada hora... local configInv = { ["07:43"] = {nome = "Demon", pos = {x=1115, y=1068, z=7}, monster = {"1 Demon"}}, } function onThink(interval, lastExecution) local hours = tostring(os.date("%X")):sub(1, 5) if configInv[hours] then if GlobalStorageValue(95473) == hours then return true end doBroadcastMessage(hours .. " - " .. tb.nome .. " iníciou.") for _,x in pairs(tb.monster) do for s = 1, tonumber(x:match("%d+")) do doSummonCreature(x:match("%s(.+)"), tb.pos) end end setGlobalStorageValue(95473, hours) end return true end e aqui está o erro: [Error - GlobalEvent Interface] data/globalevents/scripts/invasion.lua:onThink Description: data/globalevents/scripts/invasion.lua:7: attempt to call global 'GlobalStorageValue' (a nil value) stack traceback: data/globalevents/scripts/invasion.lua:7: in function <data/globalevents/scripts/invasion.lua:4> Por favor me ajude, rep ++
Postado Março 23, 2015 10 anos Troca o GlobalStorageValue por getGlobalStorageValue. ➥ Regras | Seções OTServ | Seções BOT
Postado Março 23, 2015 10 anos local configInv = { ["07:43"] = {nome = "Demon", pos = {x=1115, y=1068, z=7}, monster = {"1 Demon"}}, } function onThink(interval, lastExecution) local hours = tostring(os.date("%X")):sub(1, 5) if configInv[hours] then if getGlobalStorageValue(95473) == hours then return true end doBroadcastMessage(hours .. " - " .. tb.nome .. " iníciou.") for _,x in pairs(tb.monster) do for s = 1, tonumber(x:match("%d+")) do doSummonCreature(x:match("%s(.+)"), tb.pos) end end setGlobalStorageValue(95473, hours) end return true end
Postado Março 23, 2015 10 anos Solução Cara, pelo que vi o script ta mega bugado ... Pela lógica assim não daria na mesma? -- <globalevent name="SummonDay" time="07:43:00" script="summon_day.lua" /> local summon = {"Demon", {x = 0, y =0, z =0}} function onTime(interval) doSummonCreature(summon[1], summon[2]) return true end STYLLER OT 2022
Postado Março 23, 2015 10 anos Dei uma testada aqui, faltou definir tb: local configInv = { ["09:15"] = {nome = "Demon", pos = {x=1035, y=1028, z=7}, monster = {"2 Demon"}}, } function onThink(interval, lastExecution) local hours = tostring(os.date("%X")):sub(1, 5) local tb = configInv[hours] if configInv[hours] then if getGlobalStorageValue(95473) == hours then return true end doBroadcastMessage(hours .. " - " .. tb.nome .. " iniciou.") for _,x in pairs(tb.monster) do for s = 1, tonumber(x:match("%d+")) do doSummonCreature(x:match("%s(.+)"), tb.pos) end end setGlobalStorageValue(95473, hours) end return true end ➥ Regras | Seções OTServ | Seções BOT
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.