exodus2/
exodus2/area/mobscr/
exodus2/area/mobvoc/
exodus2/bin/
exodus2/clans/
exodus2/gods/
exodus2/player/A/
exodus2/player/B/
exodus2/player/D/
exodus2/player/E/
exodus2/player/L/
exodus2/player/M/
exodus2/player/O/
exodus2/player/R/
exodus2/src/obj/clans/
//
// version.c
//
// Programmer: Akamai
// Date: 12/07/98
//
// Remember to update the defined constants each time the code is built.
// If we were using real configuration managment tools, we could do this
// automatically.
//
#include <sys/types.h>
#include <stdio.h>
#include <string.h>
#include <time.h>
#include "merc.h"

#define CVS_ID "$Id: version.c,v 1.49 2004/10/30 19:32:10 dijoist Exp $"

#define VERS_DATE "October 27, 2004"
#define VERS_TIME "12.30 PM PST"
#define VERS_VERS "Exodus 2.6"
//Upped to 2.5 because of cardgame
struct credits_type
{
  char *real_name;
  char *imm_char_name;
  char *alt_char_names;
  char *coding_start;
  char *coding_finish;
  char *changes[10];
};
const struct credits_type version_credits[] = {
  /* 0 */
  {"Jack I. Muramatsu", "Shinowlan", "Shinowlan", "1/1998", "Present",
   {"Bank bug", "And other misc bugs", '\0', '\0', '\0', '\0', '\0',
    '\0', '\0', '\0'},},
  /* 1 */
  {"David W. McDonald", "Akamai   ", "Pulewai, Percy, Arbormists",
   "5/1998", "Present", {"Complete re-write of clan code",
			 "Hero changes, hero training",
			 "And other misc bugs", '\0', '\0', '\0',
			 '\0', '\0', '\0', '\0'},},
  /* 2 */ {"Flemming K. Hansen",
	   "Morgan   ", "Felicia, Christina, Kastagir", "7/2000",
	   "Present ", {"Changed bad_summon to default off",
			"tweaked creation points a bit",
			"Changed update.c to force people into void when ld",
			"added the immcommands linkload and lunload",
			"Added several functions to do_auction, minbid is in",
			"Added hearclan, admin channel, newsockets",
			"added configurable colors to immchannel and adminchannel",
			"pfiles are now version 7",
			"NonPK protection, toggleable by imm with 'safe_nopk'",
			"fixed a few bugs"}},
  /* 3 */ {"Devin Brown",
	   "Minax    ", "Possum", "7/2001", "Present ",
	   {"Added Assassins",
	    "Added Reavers (with substantial outside help)",
	    "Added Avatars",
	    "Numerous other well needed additions", '\0', '\0',
	    '\0', '\0', '\0', '\0'}},
  /* 4 */ {"Nicholas Jackson",
	   "Iblis    ", "Flanch, Dijo, Aenima, Pingo", "5/2003",
	   "Present ", {"Converted to a new experience system",
			"Added Monks, Necros, Liches, new Avatars",
			"Added Multiclassing capabilities, Chaos Jesters",
			"Fixed Reavers to be bugfree",
			"Added Litans, Kalians, and new AC/Hitroll system",
			"Added Super Duel and Battle Royale",
			"Added the Card Game, multi-slot eq",
			"Finished object triggers (and added lag/chance etc)",
			"and various bug fixes", 
			'\0'}},
  /* 5 */ {"Josh Smykal",
	   "Adeon    ", "Cory, Xeroth, Augustus", "7/2003",
	   "9/2003  ", {"Added several new building features",
			"Bug fixes",
			"Added immortal only board 'projects'",
			'\0', '\0', '\0', '\0', '\0', '\0',
			'\0'}},
  /* 6 */ {"Daniel Rife",
	   "????    ", "Paarshad, Sargon, Poe, Ophidias, Psi, ...", "6/2004",
	   "Present ", {"Created Traps",
			"Bug fixes",
			"A bunch of little stuff",
			'\0', '\0', '\0', '\0', '\0', '\0',
			'\0'}},
  /* 7 */ {"Justin B. Emery",
	   "Eldridge", "Clive, Grukmuck, Elervan, Clyve, ...", "5/2006",
	   "Present ", {"Fixed Vro'ath hp gain",
			"Bug fixes",
			"Changed area encryption to reread .are format",
			"Added in 'scatter' command for immortals",
			'\0', '\0', '\0', '\0', '\0',
			'\0'}},
  /* 8 */ {'\0', '\0', '\0', '\0', '\0',
	   {'\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0',
	    '\0'}}
};
void do_version (CHAR_DATA * ch, char *argument)
{
  char buf[MAX_STRING_LENGTH];
  char arg[MAX_STRING_LENGTH];

  //   char name[MAX_INPUT_LENGTH];
  int i;
  argument = one_argument (argument, arg);
  if (arg[0] == '\0')
    {
      sprintf (buf, "Version: %s\n\rBuild: %s %s\n\r", VERS_VERS,
	       VERS_DATE, VERS_TIME);
      send_to_char (buf, ch);
    }

  else
    {
      sprintf (buf, "Coders:\n\r");
      send_to_char (buf, ch);
      for (i = 0; version_credits[i].imm_char_name != NULL; i++)
	{
	  sprintf (buf, "\t%s\t%s to %s\n\r",
		   version_credits[i].imm_char_name,
		   version_credits[i].coding_start,
		   version_credits[i].coding_finish);
	  send_to_char (buf, ch);
	}
    }
}