bool shuttingdown;
bool timedOut(Player *p);
-void updateTS(Player *p);
+void updateTS(Player *p);
void timeOutEvent(Player *p);
bool is_playing(char *u); // True if the given nickname in the clients list is playing.
temp = players[hv].insertAtBack_RLN(user);
temp->setPtr(user); // This is an extra step, but necessary for now
+ // Update the last login time
+ user->stats->lastlogin = time(NULL);
+
notice(s_GameServ, u, "Player %s registered with password %s.", user->stats->name, password);
notice(s_GameServ, u, "Write this password down. If you lose it, there is no way to retrieve it!");
log("Nickname %s registered player %s.", u, user->stats->name);
setPlaying(user); // set the playing flag
temp->setPtr(user);
+
+ // Update the last login time
+ user->stats->lastlogin = time(NULL);
+
notice(s_GameServ, u, "Password Accepted. Identified.");
showNews(u, todaysnews);
}
<< it->armor << ' ' << it->weapon << ' '
<< it->forest_fights << ' ' << it->player_fights << ' '
<< it->getFlags() << ' ' << it->password << ' ' << it->inventory.Healing()
- << ' ' << it->inventory.Strength() << ' ' << it->inventory.Defense() << ' ' << it->inventory.HP() << endl;
+ << ' ' << it->inventory.Strength() << ' ' << it->inventory.Defense() << ' ' << it->inventory.HP()
+ << ' ' << it->lastlogin << endl;
ptr = ptr->Next();
}
}
tempname = strtok(NULL, " ");
if (tempname)
p->inventory.setHP(stringtoint(tempname));
+
+ tempname = strtok(NULL, " ");
+ if (tempname)
+ p->lastlogin = stringtoint(tempname);
+ else
+ p->lastlogin = time(NULL);
+
unsigned long hv = iHASH((unsigned char *) temp->stats->name);
temp->stats->client = NULL;