Annotation of 43BSDReno/games/larn/bill.c, revision 1.1.1.1

1.1       root        1: #include "header.h"
                      2: /* bill.c               "Larn is copyrighted 1986 by Noah Morgan. */
                      3: static char mail600[32];
                      4: /*
                      5:  *     function to create the tax bill for the user
                      6:  */
                      7: static int pid;
                      8: static letter1()
                      9:   {
                     10:   sprintf(mail600,"/tmp/#%dmail600",pid); /* prepare path */
                     11:   if (lcreat(mail600) < 0) { write(1,"can't write 600 letter\n",23); return(0);}
                     12:   lprcat("\n\n\n\n\n\n\n\n\n\n\n\n");
                     13:   standout("From:"); lprcat("  the LRS (Larn Revenue Service)\n");
                     14:   standout("\nSubject:"); lprcat("  undeclared income\n");
                     15:   lprcat("\n   We heard you survived the caverns of Larn.  Let me be the");
                     16:   lprcat("\nfirst to congratulate you on your success.  It is quite a feat.");
                     17:   lprcat("\nIt must also have been very profitable for you.");
                     18:   lprcat("\n\n   The Dungeon Master has informed us that you brought");
                     19:   lprintf("\n%d gold pieces back with you from your journey.  As the",(long)c[GOLD]);
                     20:   lprcat("\ncounty of Larn is in dire need of funds, we have spared no time");
                     21:   lprintf("\nin preparing your tax bill.  You owe %d gold pieces as",
                     22:        (long)c[GOLD]*TAXRATE);
                     23:   lprcat("\nof this notice, and is due within 5 days.  Failure to pay will");
                     24:   lprcat("\nmean penalties.  Once again, congratulations, We look forward");
                     25:   lprcat("\nto your future successful expeditions.\n");
                     26:   lwclose(); return(1);
                     27:   }
                     28: 
                     29: static letter2()
                     30:   {
                     31:   sprintf(mail600,"/tmp/#%dmail600",pid); /* prepare path */
                     32:   if (lcreat(mail600) < 0) { write(1,"can't write 601 letter\n",23); return(0);}
                     33:   lprcat("\n\n\n\n\n\n\n\n\n\n\n\n");
                     34:   standout("From:"); lprcat("  His Majesty King Wilfred of Larndom\n");
                     35:   standout("\nSubject:"); lprcat("  a noble deed\n");
                     36:   lprcat("\n   I have heard of your magnificent feat, and I, King Wilfred,");
                     37:   lprcat("\nforthwith declare today to be a national holiday.  Furthermore,");
                     38:   lprcat("\nhence three days, Ye be invited to the castle to receive the");
                     39:   lprcat("\nhonour of Knight of the realm.  Upon thy name shall it be written. . .");
                     40:   lprcat("\nBravery and courage be yours.");
                     41:   lprcat("\nMay you live in happiness forevermore . . .\n");
                     42:   lwclose(); return(1);
                     43:   }
                     44: 
                     45: static letter3()
                     46:   {
                     47:   sprintf(mail600,"/tmp/#%dmail600",pid); /* prepare path */
                     48:   if (lcreat(mail600) < 0) { write(1,"can't write 602 letter\n",23); return(0);}
                     49:   lprcat("\n\n\n\n\n\n\n\n\n\n\n\n");
                     50:   standout("From:"); lprcat("  Count Endelford\n");
                     51:   standout("\nSubject:"); lprcat("  You Bastard!\n");
                     52:   lprcat("\n   I heard (from sources) of your journey.  Congratulations!");
                     53:   lprcat("\nYou Bastard!  With several attempts I have yet to endure the");
                     54:   lprcat(" caves,\nand you, a nobody, makes the journey!  From this time");
                     55:   lprcat(" onward, bewarned\nupon our meeting you shall pay the price!\n");
                     56:   lwclose(); return(1);
                     57:   }
                     58: 
                     59: static letter4()
                     60:   {
                     61:   sprintf(mail600,"/tmp/#%dmail600",pid); /* prepare path */
                     62:   if (lcreat(mail600) < 0) { write(1,"can't write 603 letter\n",23); return(0);}
                     63:   lprcat("\n\n\n\n\n\n\n\n\n\n\n\n");
                     64:   standout("From:"); lprcat("  Mainair, Duke of Larnty\n");
                     65:   standout("\nSubject:"); lprcat("  High Praise\n");
                     66:   lprcat("\n   With a certainty a hero I declare to be amongst us!  A nod of");
                     67:   lprcat("\nfavour I send to thee.  Me thinks Count Endelford this day of");
                     68:   lprcat("\nright breath'eth fire as of dragon of whom ye are slayer.  I");
                     69:   lprcat("\nyearn to behold his anger and jealously.  Should ye choose to");
                     70:   lprcat("\nunleash some of thy wealth upon those who be unfortunate, I,");
                     71:   lprcat("\nDuke Mainair, Shall equal thy gift also.\n");
                     72:   lwclose(); return(1);
                     73:   }
                     74: 
                     75: static letter5()
                     76:   {
                     77:   sprintf(mail600,"/tmp/#%dmail600",pid); /* prepare path */
                     78:   if (lcreat(mail600) < 0) { write(1,"can't write 604 letter\n",23); return(0);}
                     79:   lprcat("\n\n\n\n\n\n\n\n\n\n\n\n");
                     80:   standout("From:"); lprcat("  St. Mary's Children's Home\n");
                     81:   standout("\nSubject:"); lprcat("  these poor children\n");
                     82:   lprcat("\n   News of your great conquests has spread to all of Larndom.");
                     83:   lprcat("\nMight I have a moment of a great man's time.  We here at St.");
                     84:   lprcat("\nMary's Children's Home are very poor, and many children are");
                     85:   lprcat("\nstarving.  Disease is widespread and very often fatal without");
                     86:   lprcat("\ngood food.  Could you possibly find it in your heart to help us");
                     87:   lprcat("\nin our plight?  Whatever you could give will help much.");
                     88:   lprcat("\n(your gift is tax deductible)\n");
                     89:   lwclose(); return(1);
                     90:   }
                     91: 
                     92: static letter6()
                     93:   {
                     94:   sprintf(mail600,"/tmp/#%dmail600",pid); /* prepare path */
                     95:   if (lcreat(mail600) < 0) { write(1,"can't write 605 letter\n",23); return(0);}
                     96:   lprcat("\n\n\n\n\n\n\n\n\n\n\n\n");
                     97:   standout("From:"); lprcat("  The National Cancer Society of Larn\n");
                     98:   standout("\nSubject:"); lprcat("  hope\n");
                     99:   lprcat("\nCongratulations on your successful expedition.  We are sure much");
                    100:   lprcat("\ncourage and determination were needed on your quest.  There are");
                    101:   lprcat("\nmany though, that could never hope to undertake such a journey");
                    102:   lprcat("\ndue to an enfeebling disease -- cancer.  We at the National");
                    103:   lprcat("\nCancer Society of Larn wish to appeal to your philanthropy in");
                    104:   lprcat("\norder to save many good people -- possibly even yourself a few");
                    105:   lprcat("\nyears from now.  Much work needs to be done in researching this");
                    106:   lprcat("\ndreaded disease, and you can help today.  Could you please see it");
                    107:   lprcat("\nin your heart to give generously?  Your continued good health");
                    108:   lprcat("\ncan be your everlasting reward.\n");
                    109:   lwclose(); return(1);
                    110:   }
                    111: 
                    112: /*
                    113:  *     function to mail the letters to the player if a winner
                    114:  */
                    115: static int (*pfn[])()= { letter1, letter2, letter3, letter4, letter5, letter6 };
                    116: mailbill()
                    117:        {
                    118:        register int i;
                    119:        char buf[128];
                    120:        wait(0);  pid=getpid();
                    121:        if (fork() == 0)
                    122:                {
                    123:                resetscroll();
                    124:                for (i=0; i<sizeof(pfn)/sizeof(int (*)()); i++)
                    125:                        if ((*pfn[i])())
                    126:                                {
                    127:                                sleep(20);  sprintf(buf,"mail %s < %s",loginname,mail600);
                    128:                                system(buf);  unlink(mail600);
                    129:                                }
                    130:                exit();
                    131:                }
                    132:        }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.