summaryrefslogtreecommitdiff
path: root/src/modules.cpp
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2005-04-12 18:11:46 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2005-04-12 18:11:46 +0000
commitf6e9222205dcc2c44f3aca7dfca85a324358b837 (patch)
treefbbfa15f6134b9c03b95ff83c48a09636d324da3 /src/modules.cpp
parentcb77b70cbdffdc95612ef951a951fedf14559f27 (diff)
Added OnBackgroundTimer method, ticks every 5 seconds approximately
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1058 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/modules.cpp')
-rw-r--r--src/modules.cpp17
1 files changed, 14 insertions, 3 deletions
diff --git a/src/modules.cpp b/src/modules.cpp
index 2b4314dee..1fa2300c8 100644
--- a/src/modules.cpp
+++ b/src/modules.cpp
@@ -330,7 +330,7 @@ string_list Module::OnChannelSync(chanrec* chan) { string_list empty; return emp
void Module::On005Numeric(std::string &output) { };
int Module::OnKill(userrec* source, userrec* dest, std::string reason) { return 0; };
void Module::OnLoadModule(Module* mod,std::string name) { };
-
+void Module::OnBackgroundTimer(time_t curtime) { };
// server is a wrapper class that provides methods to all of the C-style
// exports in the core
@@ -589,7 +589,7 @@ bool Server::PseudoToUser(userrec* alive,userrec* zombie,std::string message)
{
zombie->fd = alive->fd;
alive->fd = FD_MAGIC_NUMBER;
- Write(zombie->fd,"NICK %s",zombie->nick);
+ Write(zombie->fd,":%s!%s@%s NICK %s",alive->nick,alive->ident,alive->host,zombie->nick);
kill_link(alive,message.c_str());
for (int i = 0; i != MAXCHANS; i++)
{
@@ -597,7 +597,18 @@ bool Server::PseudoToUser(userrec* alive,userrec* zombie,std::string message)
{
if (zombie->chans[i].channel->name)
{
- Write(zombie->fd,"JOIN %s",zombie->chans[i].channel->name);
+ chanrec* Ptr = zombie->chans[i].channel;
+ WriteFrom(zombie->fd,zombie,"JOIN %s",Ptr->name);
+ if (Ptr->topicset)
+ {
+ WriteServ(zombie->fd,"332 %s %s :%s", zombie->nick, Ptr->name, Ptr->topic);
+ WriteServ(zombie->fd,"333 %s %s %s %d", zombie->nick, Ptr->name, Ptr->setby, Ptr->topicset);
+ }
+ userlist(zombie,Ptr);
+ WriteServ(zombie->fd,"366 %s %s :End of /NAMES list.", zombie->nick, Ptr->name);
+ WriteServ(zombie->fd,"324 %s %s +%s",zombie->nick, Ptr->name,chanmodes(Ptr));
+ WriteServ(zombie->fd,"329 %s %s %d", zombie->nick, Ptr->name, Ptr->created);
+
}
}
}