first error\/
init.lua \/
second error \/
example temple.lua \/
globalevents \/
if want some lib.lua just tell.
If some1 can help me or give me a tip, I will be grateful.
Thx a lot.
[19/10/2012 19:07:41] [Error - GlobalEvent Interface]
[19/10/2012 19:07:41] data/globalevents/scripts/init.luanStartup
[19/10/2012 19:07:41] Description:
[19/10/2012 19:07:41] data/globalevents/scripts/init.lua:9: attempt to call field 'executeQuery' (a nil value)
[19/10/2012 19:07:41] stack traceback:
[19/10/2012 19:07:41] data/globalevents/scripts/init.lua:9: in function <data/globalevents/scripts/init.lua:8>
init.lua \/
local config = {
creationTime = 7 * 86400,
checkTime = 7 * 86400,
viceCount = 4,
memberCount = 10
}
function onStartup()
db.executeQuery("DELETE FROM `guild_wars` WHERE `status` = 0 AND `begin` < " .. (os.time() - 2 * 86400) .. ";")
db.executeQuery("UPDATE `guild_wars` SET `status` = 5, `end` = " .. os.time() .. " WHERE `status` = 1 AND `end` > 0 AND `end` < " .. os.time() .. ";")
local data, time, result = {}, os.time(), db.getResult("SELECT `id`, `ownerid`, `creationdata`, `checkdata` FROM `guilds` WHERE `world_id` = " .. getConfigValue('worldId') .. ";")
if(result:getID() ~= -1) then
repeat
data[result:getDataInt("id")] = {result:getDataInt("ownerid"), result:getDataInt("creationdata"), result:getDataInt("checkdata")}
until not(result:next())
result:free()
end
for id, v in ipairs(data) do
local owner, created, check = v[1], v[2], v[3]
if(created < (time - config.creationTime)) then
result = db.getResult("SELECT `id`, `level` FROM `guild_ranks` WHERE `guild_id` = " .. id .. ";")
if(result:getID() ~= -1) then
local rank, ranks = 0, {}
repeat
ranks[result:getDataInt("id")] = result:getDataInt("level")
if(result:getDataInt("level") == 1) then
rank = result:getDataInt("id")
end
until not(result:next())
result:free()
local members = {0, 0, 0, 0}
for k, v in ipairs(ranks) do
result = db.getResult("SELECT COUNT(`id`) AS `count` FROM `players` WHERE `rank_id` = " .. k .. ";")
if(result:getID() ~= -1) then
members[v] = members[v] + result:getDataInt("count")
result:free()
end
if(v == 2) then
result = db.getResult("SELECT `p`.`id` FROM `players` p LEFT JOIN `accounts` a ON `p`.`account_id` = `a`.`id` WHERE `p`.`rank_id` = " .. k .. " AND (`a`.`premdays` = 0 OR (`a`.`lastday` + (`a`.`premdays` * 86400) <= 0));")
if(result:getID() ~= -1) then
local demote = ""
repeat
demote = demote .. result:getDataInt("id") .. ","
members[2] = members[2] - 1
members[1] = members[1] + 1
until not(result:next())
result:free()
if(demote ~= "" and rank ~= 0) then
db.executeQuery("UPDATE `players` SET `rank_id` = " .. rank .. " WHERE `id` IN (" .. demote:sub(1, -2) .. ");")
end
end
end
end
for i = 1, 3 do
members[4] = members[4] + members
end
if(members[2] < config.viceCount or members[4] < config.memberCount) then
if(check == 0) then
db.executeQuery("UPDATE `guilds` SET `checkdata` = " .. (time + config.checkTime) .. " WHERE `id` = " .. id .. ";")
elseif(check < time) then
local tmp = ""
for rank, _ in ipairs(ranks) do
tmp = tmp .. rank .. ","
end
db.executeQuery("UPDATE `players` SET `rank_id` = 0, `guildnick` = '', `guildjoin` = 0 WHERE `rank_id` IN (" .. tmp:sub(1, -2) .. ");")
db.executeQuery("DELETE FROM `guilds` WHERE `id` = " .. id .. ";")
end
end
end
end
end
db.executeQuery("UPDATE `players` SET `online` = 0 WHERE `world_id` = " .. getConfigValue('worldId') .. " AND `online` > 0;")
return true
end
function onGlobalSave()
if(getGameState() ~= GAMESTATE_CLOSING) then
return onStartup()
end
return true
end
second error \/
[19/10/2012 19:07:06] [Error - GlobalEvent::configureEvent] No valid type "globalsave" for globalevent with name globalsave
[19/10/2012 19:07:06] [Warning - BaseEvents::loadFromXml] Cannot configure an event
[19/10/2012 19:07:06] [Warning - Event::loadScript] Event onTimer not found (data/globalevents/scripts/temple.lua)
[19/10/2012 19:07:06] [Warning - Event::loadScript] Event onTimer not found (data/globalevents/scripts/temple.lua)
[19/10/2012 19:07:06] [Warning - Event::loadScript] Event onTimer not found (data/globalevents/scripts/temple.lua)
[19/10/2012 19:07:06] [Warning - Event::loadScript] Event onTimer not found (data/globalevents/scripts/templeoff.lua)
example temple.lua \/
function onTime()
doBroadcastMessage("Temple of Darkness otwarty, wejscie pod depo...")
setGlobalStorageValue(6500, 1)
setGlobalStorageValue(6501, 1)
setGlobalStorageValue(6502, 1)
setGlobalStorageValue(6503, 1)
return TRUE
end
globalevents \/
<?xml version="1.0" encoding="UTF-8"?>
<globalevents>
<globalevent name="DemonCastle" interval="7200000" event="script" value="demon_castle.lua"/>
<globalevent name="EffectTile" interval="3" script="effectile.lua"/>
<globalevent name="save" interval="1600000" event="script" value="save.lua"/>
<globalevent name="globalsave" type="globalsave" event="script" value="init.lua"/>
<globalevent name="afk" interval="3000" event="script" value="afk.lua"/>
<globalevent name="shop" interval="30000" event="script" value="shop.lua"/>
<!-- <globalevent name="reklama" interval="3700000" event="script" value="reklama.lua"/> -->
<globalevent name="init" type="startup" event="script" value="init.lua"/>
<globalevent name="TempleOfDarkness1" time="19:00:00" event="script" value="temple.lua"/>
<globalevent name="TempleOfDarkness2" time="21:00:00" event="script" value="temple.lua"/>
<globalevent name="TempleOfDarkness3" time="20:00:00" event="script" value="temple.lua"/>
<globalevent name="TempleOfDarkness4" time="22:00:00" event="script" value="templeoff.lua"/>
<globalevent name="lottery" interval="18000000" event="script" value="lottery.lua"/>
<globalevent name="playersrecord" type="record" event="script" value="record.lua"/>
<globalevent name="clean" interval="7200000" event="script" value="clean.lua"/>
</globalevents>
if want some lib.lua just tell.
If some1 can help me or give me a tip, I will be grateful.
Thx a lot.
Last edited: