#include "users.h"
#include "modes/cmode_l.h"
-ModeChannelLimit::ModeChannelLimit(InspIRCd* Instance) : ModeHandler(Instance, 'l', 1, 0, false, MODETYPE_CHANNEL, false)
+ModeChannelLimit::ModeChannelLimit() : ModeHandler(NULL, "limit", 'l', PARAM_SETONLY, MODETYPE_CHANNEL)
{
}
-ModePair ModeChannelLimit::ModeSet(User*, User*, Channel* channel, const std::string ¶meter)
-{
- std::string climit = channel->GetModeParameter('l');
- if (!climit.empty())
- {
- return std::make_pair(true, climit);
- }
- else
- {
- return std::make_pair(false, parameter);
- }
-}
-
-bool ModeChannelLimit::CheckTimeStamp(std::string &their_param, const std::string &our_param, Channel*)
+bool ModeChannelLimit::ResolveModeConflict(std::string &their_param, const std::string &our_param, Channel*)
{
/* When TS is equal, the higher channel limit wins */
return (atoi(their_param.c_str()) < atoi(our_param.c_str()));
}
-ModeAction ModeChannelLimit::OnModeChange(User*, User*, Channel* channel, std::string ¶meter, bool adding, bool servermode)
+ModeAction ModeChannelLimit::OnModeChange(User*, User*, Channel* channel, std::string ¶meter, bool adding)
{
if (adding)
{