home *** CD-ROM | disk | FTP | other *** search
/ Carsten's PPE Collection / Carstens_PPE_Collection_2007.zip / 0-9 / 1ARM_20.ZIP / ONEARM.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1995-08-09  |  24KB  |  857 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 3.2O (Encryption type I) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN001
  20.     Boolean  BOOLEAN002
  21.     Boolean  BOOLEAN003
  22.     Boolean  BOOLEAN004
  23.     Boolean  BOOLEAN005
  24.     Boolean  BOOLEAN006
  25.     String   STRING001
  26.     String   STRING002
  27.     String   STRING003
  28.     String   STRING004
  29.     String   STRING005
  30.     String   STRING006
  31.     String   STRING007
  32.     String   STRING008
  33.     String   STRING009
  34.     String   STRING010
  35.     String   STRING011
  36.     String   STRING012
  37.     String   STRING013
  38.     String   STRING014
  39.     String   STRING015
  40.     String   STRING016
  41.     String   STRING017
  42.     String   STRING018
  43.     String   STRING019
  44.     String   STRING020
  45.     String   STRING021
  46.     String   STRING022
  47.     String   STRING023
  48.     String   STRING024
  49.     String   TSTRING025(1)
  50.     Int      INT001
  51.     Int      INT002
  52.     Int      INT003
  53.     Int      INT004
  54.     Int      INT005
  55.     Int      INT006
  56.     Int      TINT007(3)
  57.     Int      INT008
  58.     Int      INT009
  59.     Int      INT010
  60.     Int      INT011
  61.     Int      INT012
  62.     Int      INT013
  63.     Int      INT014
  64.     Int      INT015
  65.     Int      INT016
  66.     Int      INT017
  67.     Int      INT018
  68.     Int      INT019
  69.     Int      TINT020(1)
  70.     Int      INT021
  71.  
  72. ;------------------------------------------------------------------------------
  73.  
  74.     If (AnsiOn() == 0) Goto LABEL026
  75.     RdUNet PcbNode()
  76.     WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Playing ONEARM!", ""
  77.     BOOLEAN003 = 1
  78.     BOOLEAN001 = 0
  79.     INT006 = 1
  80.     INT011 = 100
  81.     INT009 = 20
  82.     INT008 = 5
  83.     STRING003 = ReadLine(PPEPath() + "ONEARM.CFG", 1)
  84.     INT014 = ReadLine(PPEPath() + "ONEARM.CFG", 2)
  85.     STRING011 = ReadLine(PPEPath() + "ONEARM.CFG", 3)
  86.     STRING002 = ReadLine(PPEPath() + "ONEARM.CFG", 4)
  87.     GetUser
  88.     STRING005 = U_Name()
  89.     STRING015 = Date()
  90.     STRING014 = Time()
  91.     STRING008 = Date()
  92.     If (Exist(STRING003 + "ONEARM.DAT")) Then
  93.         FOpen 2, STRING003 + "ONEARM.DAT", 2, 3
  94.         FGet 2, INT002
  95.         Redim TINT020, INT002 + 1
  96.         Redim TSTRING025, INT002 + 1
  97.     Endif
  98.     INT006 = INT002
  99.     For INT002 = 1 To INT006
  100.         FGet 2, STRING017
  101.         If (InStr(STRING017, STRING005)) Then
  102.             BOOLEAN003 = 0
  103.             Tokenize STRING017
  104.             GetToken INT011
  105.             GetToken STRING009
  106.         Endif
  107.     Next
  108.     FClose 2
  109.     INT021 = INT011
  110.     BOOLEAN004 = 0
  111.     BOOLEAN005 = 0
  112.     BOOLEAN002 = 0
  113.     STRING013 = ReadLine(PCBDat(), 94)
  114.     STRING012 = "MLPNet Central"
  115.     If (STRING012 == STRING013) BOOLEAN002 = 1
  116.     If (STRING005 == STRING002) Goto LABEL001
  117.     If (STRING005 == "JIM COLEMAN") Goto LABEL001
  118.     If (STRING005 == "TANGLED UP IN BLUE") Goto LABEL001
  119.     If (STRING008 == STRING009) Then
  120.         PrintLn "@CLS@"
  121.         Newlines 3
  122.         PrintLn "            @X0FSorry, but you may play ONEARM only ONCE per day . . . "
  123.         Newlines 4
  124.         Wait
  125.     Else
  126.         :LABEL001
  127.         If (BOOLEAN002 == 0) Then
  128.             Cls
  129.             Newlines 4
  130.             PrintLn "@X0B   Registering this fine program ($5.00) removes all these dots!!!@X0E"
  131.             Newline
  132.             Print "   "
  133.             For INT004 = 1 To 62
  134.                 Print "."
  135.                 Delay 5
  136.             Next
  137.         Endif
  138.         Log "PLAYED JIM COLEMAN'S ONE-ARM BANDIT!!!", 0
  139.         If (INT011 < 100) INT011 = 100
  140.         DispFile STRING003 + "TESTARM", 1
  141.         :LABEL002
  142.         If (BOOLEAN002 == 0) Then
  143.             AnsiPos 33, 14
  144.             Print "UNREGISTERED"
  145.         Endif
  146.         If (BOOLEAN001 == 0) Then
  147.             INT001 = 1 + Random(59)
  148.             If (INT001 == 39) Goto LABEL021
  149.         Endif
  150.         If (STRING005 == STRING011) Then
  151.             AdjTime -5
  152.             INT011 = INT011 / 2
  153.         Endif
  154.         If (INT009 < 1) Goto LABEL026
  155.         If (INT011 < 1) Goto LABEL019
  156.         AnsiPos 19, 18
  157.         PrintLn "@X07ONEARM.PPE v2.0 @X09(c)1995, Jim Coleman III"
  158.         AnsiPos 40, 10
  159.         Print "@X31  "
  160.         AnsiPos 40, 10
  161.         Print INT008
  162.         AnsiPos 40, 11
  163.         Print "@X31    "
  164.         AnsiPos 40, 11
  165.         Print INT009
  166.         AnsiPos 40, 12
  167.         Print "@X31    "
  168.         AnsiPos 40, 12
  169.         Print INT011
  170.         AnsiPos 0, 19
  171.         PrintLn "@X0D    [@X0FC@X0D]@X0Ehange Bet@X0D, [@X0FR@X0D]@X0Eedraw@X0D, [@X0FH@X0D]@X0Eelp@X0D, [@X0FQ@X0D]@X0Euit@X0D, [@X0FP@X0D]@X0Eull Handle, [@X0FT@X0D]@X0Eilt Machine"
  172.         PrintLn "    @X0D[@X0FS@X0D]@X0EySop Bulletin, @X0D[@X0FB@X0D]@X0Euy Protection from the I.R.S.@X0D"
  173.         Print "@X0E    " + STRING005
  174.         InputStr "@X09, is playing @X1E " + STRING012 + " OneArm! @X0E COMMAND@X0B", STRING006, 11, 1, Mask_Ascii(), 64 + 8 + 2
  175.         If (STRING006 == "B") Gosub LABEL020
  176.         If (STRING006 == "C") Gosub LABEL005
  177.         If (STRING006 == "H") Gosub LABEL016
  178.         If (STRING006 == "P") Goto LABEL006
  179.         If (STRING006 == "R") Goto LABEL004
  180.         If (STRING006 == "S") Goto LABEL003
  181.         If (STRING006 == "T") Goto LABEL008
  182.         If (STRING006 == "Q") Goto LABEL026
  183.         If (STRING006 == "J") BOOLEAN005 = 0
  184.         Goto LABEL002
  185.         :LABEL003
  186.         Cls
  187.         DispFile STRING003 + "BULLETIN", 1
  188.         Wait
  189.         DispFile STRING003 + "TESTARM", 1
  190.         Goto LABEL002
  191.         :LABEL004
  192.         Cls
  193.         DispFile STRING003 + "TESTARM", 1
  194.         Goto LABEL002
  195.         :LABEL005
  196.         Cls
  197.         Newline
  198.         DispFile STRING003 + "HOWMUCH", 1
  199.         Newline
  200.         Print "    @X0DYou are currently betting@X0F "
  201.         Print INT008
  202.         PrintLn "@X0E dollars."
  203.         Newline
  204.         InputInt "    @X0EChange bet to which amount @X0B(1-25) @X0D[ENTER]=Same @X0E:  ", INT010, 11
  205.         If (INT010 == "") Then
  206.             INT010 = INT008
  207.             DispFile STRING003 + "TESTARM", 1
  208.             Goto LABEL002
  209.         ElseIf (INT010 > 25) Then
  210.             Newline
  211.             PrintLn "    @X0AYou have a problem reading? It says @X0B(1-25)@X09"
  212.             Newline
  213.             Wait
  214.             Goto LABEL005
  215.         Endif
  216.         INT008 = INT010
  217.         DispFile STRING003 + "TESTARM", 1
  218.         Return
  219.         :LABEL006
  220.         If (INT011 >= INT014) Goto LABEL022
  221.         Dec INT009
  222.         For INT003 = 1 To 3
  223.             TINT007(INT003) = 1 + Random(6)
  224.         Next
  225.         INT012 = 0
  226.         For INT003 = 1 To 3
  227.             Select Case (TINT007(INT003))
  228.                 Case 1
  229.                     STRING016 = "@X03 JOERK! @X0F"
  230.                 Case 2
  231.                     INT012 = INT012 - 15
  232.                     STRING016 = "@X4E! THUD !@X0F"
  233.                 Case 3
  234.                     INT012 = INT012 + 4
  235.                     STRING016 = "@X04DIAMONDS@X0F"
  236.                 Case 4
  237.                     INT012 = INT012 + 5
  238.                     STRING016 = "@X02 HEARTS @X0F"
  239.                 Case 5
  240.                     STRING016 = "@X07 SPADES @X0F"
  241.                 Case 6
  242.                     INT012 = INT012 + 7
  243.                     STRING016 = "@X0E$$$--$$$@X0F"
  244.                 Case 7
  245.                     INT012 = INT012 + 10
  246.                     STRING016 = "@X9FHAMMSTER@X0F"
  247.             End Select
  248.             If (INT012 < -30) Goto LABEL007
  249.             If (INT012 > 29) Goto LABEL018
  250.             If (INT003 == 1) Then
  251.                 AnsiPos 22, 6
  252.                 Print STRING016
  253.                 Continue
  254.             Endif
  255.             If (INT003 == 2) Then
  256.                 AnsiPos 35, 6
  257.                 Print STRING016
  258.                 Continue
  259.             Endif
  260.             If (INT003 == 3) Then
  261.                 AnsiPos 48, 6
  262.                 Print STRING016
  263.             Endif
  264.         Next
  265.         INT012 = INT012 / 3
  266.         INT011 = INT011 + INT008 * INT012
  267.         Goto LABEL002
  268.         :LABEL007
  269.         Log "Got THUDDED OUT! in JIM COLEMAN'S ONE-ARM!", 1
  270.         BOOLEAN004 = 1
  271.         INT011 = INT011 / 2
  272.         AdjTime -5
  273.         DispFile STRING003 + "THUDOUT", 1
  274.         Wait
  275.         Goto LABEL026
  276.         :LABEL008
  277.         If (BOOLEAN005 == 1) Then
  278.             Cls
  279.             PrintLn "@X0FAre you SUICIDAL?  They are watching you VERY CAREFULLY now!  PLEASE"
  280.             PrintLn "don't tilt the machines!"
  281.             Newlines 3
  282.             Wait
  283.             DispFile STRING003 + "TESTARM", 1
  284.             Goto LABEL002
  285.         Endif
  286.         BOOLEAN005 = 1
  287.         Cls
  288.         Newlines 3
  289.         PrintLn "@X0BYou sneak a quick look over your shoulder.  No one seems to be paying"
  290.         PrintLn "attention.  @X02Besides, it's not YOUR FAULT the DAMN machine won't fess up"
  291.         PrintLn "with your royal winnings.  You look again.  Everyone looks drunk and"
  292.         PrintLn "preoccupied."
  293.         Newline
  294.         PrintLn "@X0BWith sudden resolve, you grasp the sides of the machine, @X02yank it heavily to"
  295.         PrintLn "the side, let it crash back on its own . . . and then KICK it once for"
  296.         PrintLn "good measure.  You are feeling pretty good about yourself.  In fact, you"
  297.         PrintLn "haven't felt THIS good since your favorite BBS ditched Keith Anderson's KBBS"
  298.         PrintLn "software with great fanfare."
  299.         Newline
  300.         PrintLn "@X0BWhat a stud, @X02you mumble under your breath.  The machine stops rocking."
  301.         PrintLn "The wheels stop spinning."
  302.         Newline
  303.         PrintLn "@X0BSomeone taps you on the shoulder. You freeze, hesitating a moment."
  304.         Newline
  305.         Wait
  306.         Cls
  307.         Newlines 2
  308.         PrintLn "@X0EA sexy little brunette thing @X02in a slinky, satin evening dress saunters up,"
  309.         PrintLn "rubs her wet lip with a moist finger and looks you up and down."
  310.         Newline
  311.         PrintLn "@X0BI saw you tilt that machine, @X02she says.  Her voice is like that of a"
  312.         PrintLn "seductress, and her body beats anything Madonna has on a GOOD day."
  313.         PrintLn "@X0BYou know, @X02she says, @X0Byou and I are gonna have to talk about this.  You could"
  314.         PrintLn "get in big trouble if I report this to my fiancè, Mario, who owns this"
  315.         PrintLn "joint.  I think he's out of the slammer now, but I'm not sure.  Anyway,"
  316.         PrintLn "if he's still locked up for killing that guy who brought his own"
  317.         PrintLn "special dice, his brother, Anthony, will be happy to take care of it"
  318.         PrintLn "in his stead.  Especially since he and I are close . . . real close."
  319.         Newline
  320.         PrintLn "Know what I mean?  So, what are we gonna do about this?"
  321.         PrintLn "@X02She strokes her warm fuzzy pet hamster and waits for your answer."
  322.         Newline
  323.         InputStr "@X0D[@X0FI@X0D]@X0Egnore her@X0D, [@X0FT@X0D]@X0Eell a joke@X0D, @X0ETickle her pet @X0D[@X0FH@X0D]@X0Eamster", STRING006, 11, 1, Mask_Ascii(), 8
  324.         If (STRING006 == "H") Goto LABEL009
  325.         If (STRING006 == "I") Goto LABEL013
  326.         If (STRING006 == "T") Goto LABEL014
  327.         DispFile STRING003 + "TESTARM", 1
  328.         Goto LABEL002
  329.         :LABEL009
  330.         Cls
  331.         Newlines 2
  332.         PrintLn "@X0BWhat a warm, fuzzy hamster you have, @X02you say.  You hope your eyes"
  333.         PrintLn "don't give you away.  @X0BYou know, back where I come from, we spell it"
  334.         PrintLn "H-A-M-M-S-T-E-R.  I see you have it spelled this way on the slot machines,"
  335.         PrintLn "too.  Perhaps we have more in common than you think."
  336.         Newline
  337.         PrintLn "@X02She says nothing, but begins stroking her furry hammster absently."
  338.         Newline
  339.         PrintLn "@X02You're still a bit wary of her, but you want to rub that hammster probably"
  340.         PrintLn "more than she does.  You reach out confidently and start petting it fondly,"
  341.         PrintLn "growing more fonder by the minute.  @X0BYou've got the nicest hammster I've"
  342.         PrintLn "EVER seen, @X02you say, looking into her eyes.  Her gaze is penetrating.  Her"
  343.         PrintLn "lips part and you hear the faintest of sighs."
  344.         Gosub LABEL017
  345.         Cls
  346.         Newlines 2
  347.         PrintLn "@X0BYou know, @X02she says, @X0Bmost just want me for my warm, furry hammster."
  348.         PrintLn "You're not like the rest of them, are you?"
  349.         Newline
  350.         PrintLn "@X0FTickle, tickle, TICKLETICKLETICKLETICKLE! @X02you say, ignoring the question."
  351.         PrintLn "The hammster squirms pleasingly in your grasp."
  352.         Newline
  353.         PrintLn "@X0APolitely @X0D[@X0BE@X0D]@X0Axcuse yourself, @X0D[@X0BS@X0D]@X0Aay something profound,"
  354.         InputStr "@X0D[@X0BM@X0D]@X0Aake a move on her! ", STRING006, 11, 1, Mask_Ascii(), 64 + 8
  355.         If (BOOLEAN002 == 0) Goto LABEL015
  356.         If (STRING006 == "E") Goto LABEL010
  357.         If (STRING006 == "M") Goto LABEL011
  358.         If (STRING006 == "S") Goto LABEL012
  359.         DispFile STRING003 + "TESTARM", 1
  360.         Goto LABEL002
  361.         :LABEL010
  362.         INT003 = 1 + Random(5)
  363.         If (INT003 == 1) STRING001 = "I'm sorry,  I knew I shouldn't have eaten that. Excuse me."
  364.         If (INT003 == 2) STRING001 = "Someone was a hammster and someone smelled of elderberries . . . "
  365.         If (INT003 == 3) STRING001 = "I'm married, you know. If I hang out here any longer, I'm in trouble,"
  366.         If (INT003 == 4) STRING001 = "Yeah . . . right. I'll bet your husband is an I.R.S. agent, too,"
  367.         If (INT003 == 5) STRING001 = "Well, if you ever want to do some hammster, call me,"
  368.         If (INT003 == 6) STRING001 = "I'll bet that hammster would taste good with red wine,"
  369.         Cls
  370.         Newlines 3
  371.         PrintLn "@X0BThe temptation is great, @X02but you know you could really make a serious"
  372.         PrintLn "mistake.  There is the issue of Mario, you know.  If he saw you copping"
  373.         PrintLn "a feel of her hammster again, there could be some really big trouble. @X0E"
  374.         Newline
  375.         PrintLn STRING001
  376.         PrintLn "@X02you stammer, not daring look her in the eye, realizing you can smell her"
  377.         PrintLn "hammster from a distance.  You move along, walking the straight and narrow."
  378.         Gosub LABEL017
  379.         DispFile STRING003 + "TESTARM", 1
  380.         Goto LABEL002
  381.         :LABEL011
  382.         Goto LABEL015
  383.         Return
  384.         :LABEL012
  385.         INT003 = 1 + Random(5)
  386.         If (INT003 == 1) STRING001 = "My camel is delineating nuclear fission medical waste,"
  387.         If (INT003 == 2) STRING001 = "Fourteen farknarkles cornered the blender-matic market,"
  388.         If (INT003 == 3) STRING001 = "My navel sports nineteen varieties of fresh produce,"
  389.         If (INT003 == 4) STRING001 = "Nothing moves like Gibralter moves,"
  390.         If (INT003 == 5) STRING001 = "Buy now, pay later, tastes great, less filling,"
  391.         If (INT003 == 6) STRING001 = "Four license plates, please,"
  392.         If (INT003 == 7) STRING001 = "My great-uncle is now a cup of dust,"
  393.         If (INT003 == 8) STRING001 = "I like KBBS,"
  394.         Cls
  395.         Newlines 2
  396.         PrintLn "@X0BYou think of something profound to say.  @X02Something that will impress her,"
  397.         PrintLn "@X02something that will make her want you, something that will elevate you,"
  398.         PrintLn "@X02something that will let her know you a genius in your own right."
  399.         Newline
  400.         PrintLn "@X0BShe leans toward you expectantly.  @X02Her blouse is revealing and her"
  401.         PrintLn "cleavage generous.  You smile; she's not an 'outtie.'  Your face lights up"
  402.         PrintLn "as the important words come to you: @X0E"
  403.         Newline
  404.         Print STRING001
  405.         PrintLn "@X02 you say,"
  406.         INT003 = INT003 * 10
  407.         PrintLn "but then you realize how stupid that sounded.  You slink off in shame. Some"
  408.         Print "quarters fall out of your pocket and you lose @X0E"
  409.         Print INT003
  410.         PrintLn "@X02 dollars."
  411.         Gosub LABEL017
  412.         INT011 = INT011 - INT003
  413.         DispFile STRING003 + "TESTARM", 1
  414.         Goto LABEL002
  415.         DispFile STRING003 + "TESTARM", 1
  416.         Goto LABEL002
  417.         :LABEL013
  418.         Cls
  419.         Newlines 3
  420.         PrintLn "@X0BWhat? @X02she shrieks, @X0Bare you just going to ignore me???"
  421.         Newline
  422.         INT001 = Random(98) + 1
  423.         If (INT001 < 16) Then
  424.             PrintLn "Two big burly dudes rumble on over and stand between you and the lady."
  425.             PrintLn "@X0BYou decide to leave the casino before they THROW YOU OUT!"
  426.         Else
  427.             Print "@X0BThe machine spits out @X0E$"
  428.             Print INT001
  429.             PrintLn "@X0B in quarters!"
  430.             PrintLn "@X0EYou turn to grin foolishly at the intruding lady, but she"
  431.             PrintLn "(and her pet hammster) are gone."
  432.             INT011 = INT011 + INT001
  433.             Newlines 2
  434.             Wait
  435.             DispFile STRING003 + "TESTARM", 1
  436.             Goto LABEL002
  437.             :LABEL014
  438.             INT001 = Random(9) + 1
  439.             STRING007 = INT001
  440.             Cls
  441.             DispFile STRING003 + "JOKE" + STRING007, 1
  442.             Wait
  443.             Cls
  444.             Newlines 3
  445.             INT001 = INT001 * 10
  446.             PrintLn "@X0BShe considers the joke with a hint of a frown on her face.  This"
  447.             PrintLn "worries you, @X02and you start wondering how large Mario is."
  448.             Newline
  449.             PrintLn "@X0BSuddenly, she breaks out in hysterical laughter.  @X02You smile, knowing"
  450.             PrintLn "you will live to see another day.  @X0EJust don't tilt the machine again,"
  451.             PrintLn "she says, walking away, still chuckling."
  452.             Newline
  453.             Print "@X0EYou are rewarded @X0B"
  454.             Print INT001
  455.             PrintLn "@X0E points for that life-saving joke!"
  456.             INT011 = INT011 + INT001
  457.             Newlines 3
  458.             Wait
  459.             DispFile STRING003 + "TESTARM", 1
  460.             Goto LABEL002
  461.             :LABEL015
  462.             Cls
  463.             Newlines 14
  464.             Print "@X4E       THIS FEATURE IS ONLY AVAILABLE IN REGISTERED VERSIONS OF ONEARM     @X09"
  465.             Newlines 4
  466.             Wait
  467.             Cls
  468.             DispFile STRING003 + "TESTARM", 1
  469.             Goto LABEL002
  470.             :LABEL016
  471.             Cls
  472.             Newline
  473.             PrintLn "                    @X0EWelcome to The MLPNet Casino Door!"
  474.             Newline
  475.             PrintLn "        @X0FYour goal, simply put, is to accumulate wealth and avoid being"
  476.             PrintLn "@X8FTHUDDED OUT!  @X02Your fate (and your wealth) hang in the balance as"
  477.             PrintLn "the wheel spins!  Will you be lucky and get a @X0EHAMMSTER @X02or will you end up"
  478.             PrintLn "a mere @X0EJOERK@X02, or, worse yet, will you get @X0ETHUDDED?  @X0FOnce only a"
  479.             PrintLn "recreational past-time in Bosnia and third-world nations, you TOO can now"
  480.             PrintLn "be THUDDED while enjoying HAMMSTER on the ONE-ARM BANDIT!"
  481.             Newline
  482.             PrintLn "     @X0FTo change your bet amount from 1 to 25, type in C."
  483.             PrintLn "     @X0FHit S to read (S)ysop Bulletin, if defined."
  484.             PrintLn "     @X0FTO PLAY, hit P! Check out the (T)ilt Options!"
  485.             PrintLn "     @X0F(B)uy Protection from the Taxman! One-time (per game) 5% deduction."
  486.             PrintLn "     @X0FHINT:  @X02Bet low your first game or two to get started so you"
  487.             PrintLn "             don't THUD OUT!!!"
  488.             PrintLn "     @X0ERemember, friends don't let friends GET THUDDED!@X09"
  489.             Newline
  490.             Wait
  491.             Cls
  492.             Newlines 2
  493.             PrintLn "        @X0FRemember, WINNING ISN'T EVERYTHING . . . until you lose. <VBG>"
  494.             PrintLn "        @X02Here's the breakdown on scoring :@X0E"
  495.             PrintLn "                                                              "
  496.             PrintLn "                     @X4E! THUD !@X0F  =  You LOSE (Bet X 15) "
  497.             PrintLn "                     @X03 JOERK! @X0F  =  You ARE nothing     "
  498.             PrintLn "                     @X04DIAMONDS@X0F  =  You WIN  (Bet X 4)  "
  499.             PrintLn "                     @X02 HEARTS @X0F  =  You WIN  (Bet X 5)  "
  500.             PrintLn "                     @X07 SPADES @X0F  =  You WIN  (Bet X 1) "
  501.             PrintLn "                     @X0E$$$--$$$@X0F  =  You WIN  (Bet X 7) "
  502.             PrintLn "                     @X9FHAMMSTER@X0F  =  You WIN  (Bet X 10) "
  503.             PrintLn "                       @X09All three wheels are averaged.     "
  504.             Newline
  505.             PrintLn "      @X02Get @X0F3 BIG BALD THUDS @X02and you are THUDDED OUT!  Get @X0F3 HAMMSTERS"
  506.             PrintLn "      @X02and score  BIG!  Get @X0FJOERKED@X02 and remain  EVEN (Win or lose"
  507.             PrintLn "      nothing--but you are awarded a proficiency in  14 programming"
  508.             PrintLn "                      languages as an added bonus!)"
  509.             Newlines 2
  510.             Wait
  511.             DispFile STRING003 + "TESTARM", 1
  512.             Return
  513.             :LABEL017
  514.             AnsiPos 58, 21
  515.             STRING010 = "Y"
  516.             InputYN "@X4EContinue?  Y/n ", STRING010, 75
  517.             If (STRING010 == "N") Goto LABEL026
  518.             Return
  519.             :LABEL018
  520.             Log "HIT THE JACKPOT! in JIM COLEMAN'S ONE-ARM!", 1
  521.             DispFile STRING003 + "JACKPOT", 1
  522.             INT003 = INT011 / 2
  523.             INT011 = INT011 + INT003
  524.             Newline
  525.             Print "   @X0BYou are awarded @X0E"
  526.             Print INT003
  527.             PrintLn "@X0B dollars as quarters dribble out ALL OVER"
  528.             PrintLn "   the floor!  You're elated with your newfound wealth & break wind with glee!"
  529.             PrintLn "   @X0EGRAB them HAMMSTERS and RUN, cuz I think Gary Araki's on his way over!!!"
  530.             Gosub LABEL017
  531.             Return
  532.             :LABEL019
  533.             Cls
  534.             INT011 = 0
  535.             Newlines 3
  536.             PrintLn "  @X0DYou are out of money @X0E(chortle!) @X0FTry again tomorrow!"
  537.             Newlines 4
  538.             Wait
  539.             Goto LABEL026
  540.             :LABEL020
  541.             Cls
  542.             Newlines 2
  543.             INT003 = INT011 / 20
  544.             PrintLn "@X0BA man in a smart suit and tie walks up, and motions you to the side."
  545.             PrintLn "@X02You follow, sneaking a hand into your pocket to finger your trusty pocket-"
  546.             PrintLn "knife.  You don't know this man from Adam. @X0B"
  547.             Newline
  548.             Print STRING005
  549.             PrintLn "@X02 he says, the IRS people are hanging around here"
  550.             PrintLn "a LOT now.  I've seen some real good people go T-U because of them.  Here's"
  551.             PrintLn "my deal.  You pay me @X0BFIVE PERCENT @X02of what you have now, and I'll"
  552.             Print "protect you from the IRS people.  Come on, @X0B"
  553.             Print STRING005
  554.             PrintLn ",@X02"
  555.             Print "whatddya say? It's a worthy investment. Five percent of your @X0E"
  556.             PrintLn INT011
  557.             Print "@X02bucks is only @X0E"
  558.             Print INT003
  559.             PrintLn "@X02 bucks."
  560.             Newline
  561.             InputYN "@X0BSo, how about it?  You gonna take me up on this?  Y/n ", STRING010, 11
  562.             If (STRING010 == "Y") Then
  563.                 INT011 = INT011 - INT003
  564.                 BOOLEAN001 = 1
  565.                 Newline
  566.                 PrintLn "@X0BYou are a wise person. @X0EYou won't regret this, I promise that!"
  567.                 Gosub LABEL017
  568.                 DispFile STRING003 + "TESTARM", 1
  569.                 Goto LABEL002
  570.             Else
  571.                 Newline
  572.                 PrintLn "@X0BSuit yourself, you numnut.  I think I'll make a phone call now . . . "
  573.                 Gosub LABEL017
  574.                 DispFile STRING003 + "TESTARM", 1
  575.                 Goto LABEL002
  576.             Endif
  577.             Return
  578.             :LABEL021
  579.             Cls
  580.             Newlines 2
  581.             PrintLn "@X0BSUDDENLY, there is great commotion and pandemonium.  @X02At first, you think"
  582.             PrintLn "Mario came back unexpected or the hammsters got loose.  People scramble all"
  583.             PrintLn "around you, running for the nearest exits.  Unfortunately, they don't get"
  584.             PrintLn "very far.  @X0BThree men with cigars and satin shirts stride cooly in, like"
  585.             PrintLn "they own the damn place, or something.  @X02For all you know, they do."
  586.             Newline
  587.             PrintLn "@X0EJust my luck, @X02you curse as they walk directly up to you.  Sweat breaks"
  588.             PrintLn "out on your brow.  They are mercifully quick."
  589.             Newline
  590.             INT003 = INT011 / 5
  591.             Print "@X0BOur records show you owe taxes on @X0E"
  592.             Print INT011
  593.             PrintLn "@X0B dollars.  We are here"
  594.             Print "to collect our 20 percent, which is @X0E"
  595.             Print INT003
  596.             PrintLn "@X0B dollars, in this case."
  597.             Newline
  598.             PrintLn "@X0BThey take your money and walk out of the joint, like they own the place,"
  599.             PrintLn "or something.  @X02Everyone resumes gaming and you stop sweating."
  600.             INT011 = INT011 - INT003
  601.             Gosub LABEL017
  602.             DispFile STRING003 + "TESTARM", 1
  603.             Goto LABEL002
  604.             :LABEL022
  605.             FOpen 1, STRING003 + "WINNER.DAT", 2, 3
  606.             FPut 1, "                                                   "
  607.             Frewind 1
  608.             FPutLn 1, STRING005
  609.             FClose 1
  610.             INT011 = 100
  611.             STRING004 = STRING005
  612.             DispFile STRING003 + "OAWINNER", 1
  613.             Goto LABEL024
  614.             :LABEL023
  615.             BOOLEAN006 = 0
  616.             If (INT011 > INT021) Then
  617.                 INT015 = INT011 - INT021
  618.             Else
  619.                 INT015 = INT021 - INT011
  620.                 BOOLEAN006 = 1
  621.             Endif
  622.             INT016 = INT015 / 80
  623.             If (BOOLEAN006 == 0) Then
  624.                 AdjTime INT016
  625.             Else
  626.                 AdjTime -INT016
  627.             Endif
  628.             PrintLn "@CLS@@X07"
  629.             If (BOOLEAN006 == 0) Then
  630.                 PrintLn "@X0D        You won @X0E", INT015, " @X0Ddollars.  @X0FThat means you won @X0E", INT016, " @X0Fminutes!"
  631.             Else
  632.                 PrintLn "@X0D        You lost @X0E", INT015, " @X0Ddollars.  @X0FThat means you lost @X0E", INT016, " @X0Fminutes!"
  633.             Endif
  634.             Newlines 3
  635.             PrintLn "@MORE@"
  636.             Return
  637.             :LABEL024
  638.             If (INT011 < 1) INT011 = 0
  639.             If (BOOLEAN003 == 1) Then
  640.                 FOpen 1, STRING003 + "ONEARM.DAT", 2, 3
  641.                 FGet 1, INT006
  642.                 Inc INT006
  643.                 Frewind 1
  644.                 FPutLn 1, INT006
  645.                 FClose 1
  646.             Endif
  647.             FOpen 1, STRING003 + "ONEARM.DAT", 2, 3
  648.             FGet 1, INT006
  649.             For INT002 = 1 To INT006
  650.                 FGet 1, STRING017
  651.                 If (InStr(STRING017, STRING005)) Then
  652.                     INT005 = INT002
  653.                     FClose 1
  654.                     FOpen 1, STRING003 + "ONEARM.DAT", 2, 3
  655.                     FGet 1, INT006
  656.                     For INT002 = 1 To INT005 - 1
  657.                         FGet 1, STRING017
  658.                     Next
  659.                     FPutPad 1, INT011, -10
  660.                     FPutPad 1, STRING015, 15
  661.                     FPutPad 1, STRING005, 27
  662.                     FClose 1
  663.                 Endif
  664.             Next
  665.             FClose 1
  666.             If (BOOLEAN003 == 1) Then
  667.                 FAppend 1, STRING003 + "ONEARM.DAT", 2, 3
  668.                 FPutPad 1, INT011, -10
  669.                 FPutPad 1, STRING015, 15
  670.                 FPutPad 1, STRING005, 27
  671.                 FPutLn 1
  672.                 FClose 1
  673.             Endif
  674.             :LABEL025
  675.             If (INT011 >= INT014) Goto LABEL022
  676.             FOpen 4, STRING003 + "WINNER.DAT", 2, 3
  677.             FGet 4, STRING004
  678.             FClose 4
  679.             FOpen 1, STRING003 + "ONEARM.DAT", 2, 3
  680.             FGet 1, INT006
  681.             INT013 = INT006
  682.             For INT002 = 1 To INT006
  683.                 FGet 1, STRING018
  684.                 Tokenize STRING018
  685.                 GetToken INT018
  686.                 TINT020(INT002) = ToInt(INT018)
  687.                 TSTRING025(INT002) = STRING018
  688.             Next
  689.             FClose 1
  690.             For INT002 = 1 To INT006
  691.                 For INT017 = 1 To INT002
  692.                     If (TINT020(INT002) > TINT020(INT017)) Then
  693.                         INT019 = TINT020(INT002)
  694.                         TINT020(INT002) = TINT020(INT017)
  695.                         TINT020(INT017) = INT019
  696.                         STRING019 = TSTRING025(INT002)
  697.                         TSTRING025(INT002) = TSTRING025(INT017)
  698.                         TSTRING025(INT017) = STRING019
  699.                     Endif
  700.                 Next
  701.             Next
  702.             PrintLn "@CLS@"
  703.             AnsiPos 1, 4
  704.             PrintLn "@X20┌───────────────────────────────────────────────────────────────────────────@X2F┐@X07"
  705.             PrintLn "@X20│                    @X2ETop Scorers in Jim Coleman's @XAEONEARM!                   @X2F│@X07"
  706.             PrintLn "@X20│                    @X21Last Winner:                                           @X2F│@X07"
  707.             PrintLn "@X20└@X2F───────────────────────────────────────────────────────────────────────────┘@X07"
  708.             Print "@X0F                   "
  709.             Print INT014
  710.             PrintLn "@X02 Points wins this round of @X0FONEARM!"
  711.             AnsiPos 40, 6
  712.             Print "@X2F" + STRING004
  713.             AnsiPos 0, 8
  714.             Newlines 2
  715.             For INT002 = 1 To INT013
  716.                 Tokenize TSTRING025(INT002)
  717.                 GetToken STRING020
  718.                 GetToken STRING021
  719.                 GetToken STRING022
  720.                 GetToken STRING023
  721.                 STRING024 = STRING022 + " " + STRING023
  722.                 FCreate 8, STRING003 + "SCORES.ASC", 2, 3
  723.                 FPutPad 8, "@X0E" + STRING020, 22
  724.                 FPutPad 8, "@X0F" + STRING024, 30
  725.                 FPutLn 8, "   @X02" + STRING021
  726.             Next
  727.             FClose 8
  728.             DispFile STRING003 + "SCORES.ASC", 0
  729.             Newlines 2
  730.             Wait
  731.             Goto LABEL027
  732.         Endif
  733.     Endif
  734.     :LABEL026
  735.     If (INT011 >= 5000) Goto LABEL022
  736.     Cls
  737.     Gosub LABEL023
  738.     Goto LABEL024
  739.     Goto LABEL025
  740.     :LABEL027
  741.     PrintLn "@CLS@"
  742.     Print "               @X0EMaybe next time you'll beat @X0B"
  743.     PrintLn STRING004
  744.     Newline
  745.     PrintLn "             @X0ENow leaving The MLPNet ONE-ARM door game . . .  "
  746.     PrintLn "                @X0DPlease close the door on your way out . . ."
  747.     PrintLn "   "
  748.     PrintLn "                              @X04<CLICK>"
  749.     PrintLn "                             @X0DThank You!"
  750.     PrintLn "   "
  751.     Wait
  752.  
  753. ;------------------------------------------------------------------------------
  754. ;
  755. ; Usage report (before postprocessing)
  756. ;
  757. ; ■ Statements used :
  758. ;
  759. ;    22      Cls
  760. ;    15      Wait
  761. ;    115     Goto 
  762. ;    120     Let 
  763. ;    39      Print 
  764. ;    149     PrintLn 
  765. ;    85      If 
  766. ;    25      DispFile 
  767. ;    1       FCreate 
  768. ;    7       FOpen 
  769. ;    1       FAppend 
  770. ;    10      FClose 
  771. ;    10      FGet 
  772. ;    1       FPut 
  773. ;    4       FPutLn 
  774. ;    8       FPutPad 
  775. ;    1       GetUser
  776. ;    4       AdjTime 
  777. ;    3       Log 
  778. ;    3       InputStr 
  779. ;    2       InputYN 
  780. ;    1       InputInt 
  781. ;    11      Gosub 
  782. ;    7       Return
  783. ;    1       Delay 
  784. ;    1       Inc 
  785. ;    1       Dec 
  786. ;    37      Newline
  787. ;    25      Newlines 
  788. ;    3       Tokenize 
  789. ;    7       GetToken 
  790. ;    1       RdUNet 
  791. ;    1       WrUNet 
  792. ;    16      AnsiPos 
  793. ;    2       Frewind 
  794. ;    2       Redim 
  795. ;
  796. ;
  797. ; ■ Functions used :
  798. ;
  799. ;    6       -
  800. ;    3       *
  801. ;    7       /
  802. ;    78      +
  803. ;    8       -
  804. ;    59      ==
  805. ;    16      <
  806. ;    10      <=
  807. ;    4       >
  808. ;    23      >=
  809. ;    39      !
  810. ;    20      &&
  811. ;    10      ||
  812. ;    2       InStr()
  813. ;    6       Random()
  814. ;    2       Date()
  815. ;    1       Time()
  816. ;    1       U_Name()
  817. ;    3       Mask_Ascii()
  818. ;    1       PCBDat()
  819. ;    4       PPEPath()
  820. ;    2       PcbNode()
  821. ;    5       ReadLine()
  822. ;    1       UN_Stat()
  823. ;    1       UN_Name()
  824. ;    1       UN_City()
  825. ;    1       Exist()
  826. ;    1       AnsiOn()
  827. ;    1       ToInt()
  828. ;
  829. ;------------------------------------------------------------------------------
  830. ;
  831. ; Analysis flags : Ad
  832. ;
  833. ; A - Adjust online time remaining ■ 5
  834. ;     Program modify the amount of online time remaining, this may
  835. ;     be a way to bypass time limits
  836. ;     ■ Search for : ADJTIME
  837. ;
  838. ; d - Access PCBOARD.DAT ■ 2
  839. ;     Program gets the full pathname to PCBOARD.DAT, this may be usefull
  840. ;     for many PPE so they can find various informations on the system
  841. ;     (system paths, max number of lines in messages, ...) but it may also
  842. ;     be a way to gather vital informations.
  843. ;     ■ Search for : PCBDAT()
  844. ;
  845. ;------------------------------------------------------------------------------
  846. ;
  847. ; Postprocessing report
  848. ;
  849. ;    10      For/Next
  850. ;    0       While/EndWhile
  851. ;    22      If/Then or If/Then/Else
  852. ;    1       Select Case
  853. ;
  854. ;------------------------------------------------------------------------------
  855. ;                 AEGiS Corp - Break the routines, code against the machines!
  856. ;------------------------------------------------------------------------------
  857.