/* Copyright by Gregor Stipicic, 2001 */
#if defined(macintosh)
#include <types.h>
#include <time.h>
#else
#include <sys/types.h>
#include <sys/time.h>
#endif
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include "merc.h"
#include "recycle.h"
#define ROOM_VNUM_BANK 20117
void do_deposit(CHAR_DATA *ch,char *argument)
{
char buf[MAX_STRING_LENGTH];
int amount;
if(IS_NPC(ch))
return;
if(!is_number(argument))
{
send_to_char("Deposit how much platinum?\n\r",ch);
return;
}
if(ch->in_room->vnum!=ROOM_VNUM_BANK)
{
send_to_char("That's not a bank.\n\r",ch);
return;
}
amount=atoi(argument);
if(amount<1)
{
send_to_char("That's not a positive number.\n\r",ch);
return;
}
if((amount%10)!=0)
{
send_to_char("Deposits must be made in multiples of 10 platinum.\n\r",ch);
return;
}
if(amount>ch->platinum)
{
send_to_char("You don't have that much platinum.\n\r",ch);
return;
}
if((ch->balance+amount)>30000)
{
send_to_char("The bank can only hold 30,000 platinum coins.\n\r",ch);
return;
}
ch->balance+=amount;
ch->platinum-=amount;
sprintf(buf,"You deposit %d platinum.\n\r",amount);
send_to_char(buf,ch);
sprintf(buf,"Your new balance is %d platinum.\n\r",ch->balance);
send_to_char(buf,ch);
return;
}
void do_withdraw(CHAR_DATA *ch,char *argument)
{
char buf[MAX_STRING_LENGTH];
int amount;
if(IS_NPC(ch))
return;
if(!is_number(argument))
{
send_to_char("Withdraw how much platinum?\n\r",ch);
return;
}
if(ch->in_room->vnum!=ROOM_VNUM_BANK)
{
send_to_char("That's not a bank.\n\r",ch);
return;
}
amount = atoi(argument);
if(amount<1)
{
send_to_char("That's not a positive number.\n\r",ch);
return;
}
if(((amount%10)!=0) && (ch->balance>=10))
{
send_to_char("Withdrawals must be made in multiples of 10 platinum.\n\r",ch);
return;
}
if(amount>ch->balance)
{
send_to_char("You don't have that much platinum on your account.\n\r",ch);
return;
}
ch->platinum+=amount;
ch->balance-=amount;
sprintf(buf,"You withdraw %d platinum.\n\r",amount);
send_to_char(buf,ch);
sprintf(buf,"Your new balance is %d platinum.\n\r",ch->balance);
send_to_char(buf,ch);
return;
}
void do_balance(CHAR_DATA *ch,char *argument)
{
char buf[MAX_STRING_LENGTH];
if(IS_NPC(ch))
return;
if(ch->in_room->vnum!=ROOM_VNUM_BANK)
{
send_to_char("That's not a bank.\n\r",ch);
return;
}
sprintf(buf,"Your current balance is %d platinum.\n\r",ch->balance);
send_to_char(buf,ch);
return;
}