diff options
Diffstat (limited to 'src/nickcore.cpp')
-rw-r--r-- | src/nickcore.cpp | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/src/nickcore.cpp b/src/nickcore.cpp index 756b40d83..9b44dc61a 100644 --- a/src/nickcore.cpp +++ b/src/nickcore.cpp @@ -146,7 +146,29 @@ Serializable *NickCore::Unserialize(Serializable *obj, Serialize::Data &data) b = false; data["extensible:KILLPROTECT"] >> b; if (b) - nc->Extend<bool>("KILLPROTECT"); + nc->Extend<bool>("PROTECT"); + + b = false; + data["KILLPROTECT"] >> b; + if (b) + { + nc->Extend<bool>("PROTECT"); + nc->Extend("PROTECT_AFTER", Config->GetModule("nickserv").Get<time_t>("kill", "60s")); + } + b = false; + data["KILL_QUICK"] >> b; + if (b) + { + nc->Extend<bool>("PROTECT"); + nc->Extend("PROTECT_AFTER", Config->GetModule("nickserv").Get<time_t>("killquick", "20s")); + } + b = false; + data["KILL_IMMED"] >> b; + if (b) + { + nc->Extend<bool>("PROTECT"); + nc->Extend("PROTECT_AFTER", 0); + } /* end compat */ return nc; |