local config = {
	loginMessage = getConfigValue('loginMessage'),
	useFragHandler = getBooleanFromString(getConfigValue('useFragHandler'))
}

function onLogin(cid)
registerCreatureEvent(cid, "onPrepareDeathinifi")
	local loss = getConfigValue('deathLostPercent')
	if(loss ~= nil) then
		doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, loss * 10)
	end
		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
									setPlayerStorageValue(cid, 30024, 0)
		end


	if(not isPlayerGhost(cid)) then
		doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT)
	end

	registerCreatureEvent(cid, "Shenlong_Event")
	registerCreatureEvent(cid, "deathchannel")
	registerCreatureEvent(cid, "mail")
	registerCreatureEvent(cid, "skullcheck")
	registerCreatureEvent(cid, "nopartyattack")
	registerCreatureEvent(cid, "tirabattle")
	registerCreatureEvent(cid, "deathplayer")
	registerCreatureEvent(cid, "CombatDodge")
	registerCreatureEvent(cid, "targetCreature")
	registerCreatureEvent(cid, "castAttack")
    registerCreatureEvent(cid, "castHits")
    registerCreatureEvent(cid, "castLogout")
	if(config.useFragHandler) then
		registerCreatureEvent(cid, "skullcheck")
		registerCreatureEvent(cid, "reward")
	end
	registerCreatureEvent(cid, "fullhpmana")
	registerCreatureEvent(cid, "advancesave")
	registerCreatureEvent(cid, "zombieattack")
	registerCreatureEvent(cid, "blesscheck")
	registerCreatureEvent(cid, "advance")
	registerCreatureEvent(cid, "skullcheck")
	registerCreatureEvent(cid, "reportbug")
	registerCreatureEvent(cid,"outfit")
	registerCreatureEvent(cid, "fragreward")
	registerCreatureEvent(cid, "niwdeath")
	registerCreatureEvent(cid, "advancesave")
	registerCreatureEvent(cid, "levelrecompense")
	registerCreatureEvent(cid, "boasvindas")
	registerCreatureEvent(cid, "broaddeath")
	registerCreatureEvent(cid, "savestamina")
	registerCreatureEvent(cid, "vip")
	registerCreatureEvent(cid, "fraglook")
	--------- SHOP ---------
	registerCreatureEvent(cid, "vocshenron")
	registerCreatureEvent(cid, "vocvegetto")
	registerCreatureEvent(cid, "voctapion")
	registerCreatureEvent(cid, "vockame")
	registerCreatureEvent(cid, "vockagome")
	registerCreatureEvent(cid, "vockingvegeta")
	registerCreatureEvent(cid, "voczaiko")
	registerCreatureEvent(cid, "vocchilled")
	registerCreatureEvent(cid, "vocc8")
	registerCreatureEvent(cid, "vocgoku")
	registerCreatureEvent(cid, "vocbills")
	registerCreatureEvent(cid, "vockitera")
	registerCreatureEvent(cid, "voczamasu")
	registerCreatureEvent(cid, "vocbergamo")
	registerCreatureEvent(cid, "voctrunks")
	registerCreatureEvent(cid, "voccukatail")
	registerCreatureEvent(cid, "vocdaishinkan")
	registerCreatureEvent(cid, "vocwhiss")
	registerCreatureEvent(cid, "vocgogeta")
	registerCreatureEvent(cid, "vocultimatehitto")
	registerCreatureEvent(cid, "vocvegettoblack")
	registerCreatureEvent(cid, "vocvegettoblue")
	registerCreatureEvent(cid, "vocshenronevo")
	registerCreatureEvent(cid, "voczeno")
	registerCreatureEvent(cid, "vocliquer")
	registerCreatureEvent(cid, "vocvermouth")
	registerCreatureEvent(cid, "vocmajora")
	registerCreatureEvent(cid, "vocvegettoblack")
	registerCreatureEvent(cid, "removedordefrags")
	--------------- REFLECT ----------------
	registerCreatureEvent(cid, "reflect")
	if getPlayerStorageValue(cid, 3482101) ~= 0 then
			setPlayerStorageValue(cid, 3482101, 0) 
	end

return true
end