Annotation of 43BSDReno/games/larn/bill.c, revision 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.