/*
 * Selectable border color, scheme and display.
 * I'm sure there are better ways to go about this
 * but it works on my game 100%.
 * In this version, i'll just be giving a few inputs
 * on each command.
 * No credit needed. Maybe give me some input on it at
 * some point, what you'd do instead etc..
 * Visit the game when opens. Final Fantasy After Crisis.
 */



File: act_comm.c
================
This is basically how all of the commands
work. You print them a list of options 
that they can change at anytime with a 
switchcase. It sets the color in the pfile
and allows for everyone to have whichever
color they would like to see the borders
of the game in.

Add:

void do_border (CHAR_DATA * ch, char *argument)
{
        char buf[MSL];
        if (IS_NPC (ch))
                return;

        if (argument[0] == '\0')
        {
                send_to_char("\r\nSyntax: border <number/letter>\r\n",ch);
                send_to_char("\r\nYou must select a border color from the following:\r\n\r\n",ch);
                send_to_char("{W5 - {YBright yellow{w    {W0 - {yDark yellow{w\r\n",ch);
                sprintf(buf,"\r\n{WYour current border color is: %sThis color{w\r\n", ch->pcdata->bordercolor);
                send_to_char(buf,ch);
                sprintf(buf,"{WYour current display color is: %s{w\r\n",ch->pcdata->display);
                send_to_char(buf,ch);
                return;
        }
       switch (*argument)
        {
                case '5':
                        ch->pcdata->bordercolor = "{Y";
                        send_to_char("{WYou will now see {Ybright yellow{W for your border color.\r\n",ch);
                        break;
                case '0':
                        ch->pcdata->bordercolor = "{y";
                        send_to_char("{WYou will now see {ydark yellow{W for your border color.\r\n",ch);
                        break;
                default:
                        ch->pcdata->bordercolor = "{C";
                        send_to_char("{WYou will now see {Cbright cyan{W for your border color.\r\n",ch);
                        break;
        }
        return;
}


File: merc.h
============
Search for: struct  pc_data
Add:

    char *              display;
    char *              bordercolor;



File: save.c
============
Find: fprintf( fp, "Name %s~\n",          ch->name                );
Add:
        fprintf( fp, "Display %s~\n", ch->pcdata->display);
        fprintf( fp, "Border %s~\n", ch->pcdata->bordercolor);

Find: ch->name                            = str_dup( name );
Add:
    ch->pcdata->bordercolor             = str_dup( "" );

Find: case 'B'
Add:            KEY( "Border",     ch->pcdata->bordercolor,    fread_string( fp ) );

File: act_info.c
================
Basically here you'll just add a %s where ever you would want
to put a border. Most people box score sheets in, so here is an
example score sheet.

At the top of the function where it shows 
char buf[MAX_STRING_LENGTH];
Add:
        char *bc,*ds;
	bc = ch->pcdata->bordercolor;
	ds = ch->pcdata->display

Now for your score sheet. This isn't what yours will look like
but just an example.

sprintf(buf, "%s| %s",  bc, ch->name);
send_to_char(buf,ch);

bordercolor will change the | symbol colors. You can add onto 
this by adding a setup just the same as border colors with display.
Remove the | and add %s. Make a command similar to bordercolor
that changes display instead. Make displays = "[" "*" or something
similar so people can change the border itself. Just tinker with it
it's very simple code but gets the job done entirely..

Files: interp.c and interp.h
=============================
Add something like:
{ "border",                     do_border,              POS_DEAD

DECLARE_DO_FUN (do_border);

File: comm.c
============

Before the character gets to see the first screen
of the game, have it set 
ch->pcdata->bordercolor = "{Y";
or whatever you want your characters to see on your
borders. The command allows for them to change it.