local config = {
loginMessage = getConfigValue('loginMessage'),
useFragHandler = getBooleanFromString(getConfigValue('useFragHandler'))
}
function onLogin(cid)
if(InitHistory == 0) then
local historyPage = addEvent(historyPage, 60000, {})
InitHistory = historyPage
end
registerCreatureEvent(cid, "PlayerDeath")
return TRUE
end
local guild, enemy, guildFrags, enemyFrags = getPlayerGuildId(cid)
local fightingGuilds = {}
local tmp = db.getResult("SELECT `guild_id`, `enemy_id`, `guild_kills`, `enemy_kills`, `frags` FROM `guild_wars` WHERE `guild_id` = "..guild.." OR `enemy_id` = "..guild.." AND `status` = 1;")
if tmp:getID() ~= -1 then
i = 1
repeat
if tmp:getDataInt("guild_id") == guild then
enemy = tmp:getDataInt("enemy_id")
guildFrags = tmp:getDataInt("guild_kills")
enemyFrags = tmp:getDataInt("enemy_kills")
else
enemy = tmp:getDataInt("guild_id")
guildFrags = tmp:getDataInt("enemy_kills")
enemyFrags = tmp:getDataInt("guild_kills")
end
local enemyName, _tmp = "", db.getResult("SELECT `name` FROM `guilds` WHERE `id` = " .. enemy)
if(_tmp:getID() ~= -1) then
enemyName = _tmp:getDataString("name")
_tmp:free()
end
fightingGuilds[i] = {}
fightingGuilds[i].name = enemyName
fightingGuilds[i].guildFrags = guildFrags
fightingGuilds[i].enemyFrags = enemyFrags
fightingGuilds[i].limit = tmp:getDataInt("frags")
i = i + 1
until not(tmp:next())
tmp:free()
table.sort(fightingGuilds, function (a, b)
return (a.name < b.name)
end)
local warString
for k, v in pairs(fightingGuilds) do
if not warString then
warString = "Your guild is currently in war with the " .. v.name .. " (" .. v.guildFrags .. ":" .. v.enemyFrags .. " frags, limit ".. v.limit ..")"
else
warString = warString .. " and with the " .. v.name .. " (" .. v.guildFrags .. ":" .. v.enemyFrags.." frags, limit ".. v.limit .. ")"
end
end
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, warString .. ".")
end
function historyPage(parameters)
local historyPage = addEvent(historyPage, 60000, {})
if (tonumber(os.date("%d")) ~= getGlobalStorageValue(23456)) then
setGlobalStorageValue(23456, (tonumber(os.date("%d"))))
db.executeQuery("UPDATE `players` SET `onlinetime7`=players.onlinetime6, `onlinetime6`=players.onlinetime5, `onlinetime5`=players.onlinetime4, `onlinetime4`=players.onlinetime3, `onlinetime3`=players.onlinetime2, `onlinetime2`=players.onlinetime1, `onlinetime1`=players.onlinetimetoday, `onlinetimetoday`=0;")
db.executeQuery("UPDATE `players` SET `exphist7`=players.exphist6, `exphist6`=players.exphist5, `exphist5`=players.exphist4, `exphist4`=players.exphist3, `exphist3`=players.exphist2, `exphist2`=players.exphist1, `exphist1`=players.experience-players.exphist_lastexp, `exphist_lastexp`=players.experience;")
end
db.executeQuery("UPDATE `players` SET `onlinetimetoday`=players.onlinetimetoday+60, `onlinetimeall`=players.onlinetimeall+60 WHERE `online` = 1;")
end
function onLogin(cid)
local loss = getConfigValue('deathLostPercent')
if(loss ~= nil) then
doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, loss * 10)
end
local accountManager = getPlayerAccountManager(cid)
if(accountManager == MANAGER_NONE) then
local lastLogin, str = getPlayerLastLoginSaved(cid), config.loginMessage
if(lastLogin > 0) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str)
str = "Your last visit was on " .. os.date("%a %b %d %X %Y", lastLogin) .. "."
else
str = str .. " Please choose your outfit."
doPlayerSendOutfitWindow(cid)
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str)
elseif(accountManager == MANAGER_NAMELOCK) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, it appears that your character has been namelocked, what would you like as your new name?")
elseif(accountManager == MANAGER_ACCOUNT) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to manage your account and if you want to start over then type 'cancel'.")
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to create an account or type 'recover' to recover an account.")
end
if(not isPlayerGhost(cid)) then
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT)
end
registerCreatureEvent(cid, "")
registerCreatureEvent(cid, "")
registerCreatureEvent(cid, "")
registerCreatureEvent(cid, "")
registerCreatureEvent(cid, "")
registerCreatureEvent(cid, "")
registerCreatureEvent(cid, "")
registerCreatureEvent(cid, "")
registerCreatureEvent(cid, "")
registerCreatureEvent(cid, "")
registerCreatureEvent(cid, "")
registerCreatureEvent(cid, "")
registerCreatureEvent(cid, "")
if(config.useFragHandler) then
registerCreatureEvent(cid, "")
end
registerCreatureEvent(cid, "")
registerCreatureEvent(cid, "")
registerCreatureEvent(cid, "")
registerCreatureEvent(cid, "")
registerCreatureEvent(cid, "")
return true
end