Example #1
0
void main(int argc, char **argv)
{
  struct char_data ch;
  struct obj_data *o,*p;
  FILE *f,*g;
  char s[80];
  int i,look,count;

  object_list=NULL;

  if (argc!=2) {
	fprintf(stderr,"purge <min days>\n");
	exit(1);
  }
  time_frame=atoi(argv[1])*DAY;
  if (time_frame<30*DAY) {
	fprintf(stderr,"purge <min days>\n\nmin days must be>=30.\n");
	exit(1);
  }
  f=fopen("players.new","r");
  if (!f) { perror("players.new"); exit(1); }
  g=fopen("immortals","w");
  if (!g) { perror("immortals"); exit(1); }
  count=0;
  while (fgets(s,80,f)) {
    s[strlen(s)-1]='\0';
    fprintf(stderr, "%d:%s%c[K",count++,s,27);
    bzero(&ch,sizeof(struct char_data));

    if (new_load_char(&ch,s)>0) {
      if (should_delete(&ch)) {
	printf("%-20s %4d %3d\n",s,ch.player.level,
		(time(0)-ch.specials.last_logon)/DAY);
	unlink(name_to_path(s));
      } else if (ch.player.level>=2000)
        fprintf(g,"%-20s %4d %7d %7d\n",ch.player.name,ch.player.level,
                ch.build_lo, ch.build_hi);
      while (object_list) {
	struct obj_data *o;
	o=object_list->next;
	free_obj(object_list);
	object_list=o;
      }
    } else {
	printf("Couldn't load %s\n",s);
	unlink(name_to_path(s));
    }
  }
  fclose(f);
  fclose(g);
}
Example #2
0
	void utp_socket_manager::tick(ptime now)
	{
		for (socket_map_t::iterator i = m_utp_sockets.begin()
			, end(m_utp_sockets.end()); i != end;)
		{
			if (should_delete(i->second))
			{
				delete_utp_impl(i->second);
				if (m_last_socket == i->second) m_last_socket = 0;
				m_utp_sockets.erase(i++);
				continue;
			}
			tick_utp_impl(i->second, now);
			++i;
		}
	}