Bank Interest v1.0 **NOTE: This is not my code, I noticed you cannot find this code anywhere anymore and its a nice piece of code for anything based from SWR. I do not take any credit for this code, I just simply made it available again. Who knows? I may even make this snippet a little easier to read(I don't remember how the last one was written). I also do not remember the original writer of this code, but whoever you are, the credit goes to you. What this does: This will allow a player to gain a certain percentage of interest every hour, on the hour, based on their balance in the bank. The percent they gain is based off of a number that looks like this, .001, which is basically 1% interest. I have also included a commented part that would allow a character to gain their interest once every MUD week. What you will need to change: update.c *Always remember to backup the files you will change incase of an error with installation, or an error with the code. cp .bak What you will need to add: Nothing at the moment, you can always add your own twists to things. ------------------------------------------------------------------------------------------------- update.c Find, void char_update args( ( void ) ); Below it add, void bank_update args( ( void ) ); Find, if ( --pulse_taxes <= 0 ) Somewhere in there add, bank_update ( ); At the bottom of the file, add this function void bank_update() { CHAR_DATA *ch; int value1, value2; char buf[MAX_INPUT_LENGTH]; /* day = time_info.day + 1; if ( day % 7 != 6 ) /* Uncomment to have once a MUD week updates */ return;*/ for ( ch = last_char; ch; ch = gch_prev ) { if ( ch == first_char && ch->prev ) { bug( "char_update: first_char->prev != NULL... fixed", 0 ); ch->prev = NULL; } gch_prev = ch->prev; set_cur_char( ch ); if ( gch_prev && gch_prev->next != ch ) { bug( "char_update: ch->prev->next != ch", 0 ); return; } if ( !IS_NPC( ch ) ){ value1 = ch->pcdata->bank; value2 = (value1 * .001); /* 1% interest */ ch->pcdata->bank += value2; sprintf(buf, "&C[Monthly Bank Update] %s you made: %d credits this month.&W\n\r", ch->name, value2); send_to_char(buf, ch); } } } ------------------------------------------------------------------------------------------------- make clean make copyover/reboot mud *You should notice it working immediately after a copyover, after a reboot it will take some time to work(an hour). **Basically so you know how this works, with 1% interest, they will gain 1% of whatever they have in the bank, so if they have 100 credits, they will gain 1 credit. If they have 100,000 credits, they would gain 1,000 credit. etc. Any problems please contact me at the provided email address, -,,,.,,,,- _'Diablo'_ Star Wars Development '''''' [*]------------------------------------------------[*] ||| If you have any problems please contact me at: ||| ||| crazy_mike_316@hotmail.com ||| [*]------------------------------------------------[*]