The QBasic / QB64 Discussion Forum      Other Subforums, Links and Downloads
 
Respond to this messageReturn to Index
Original Message
  • wargame4.bas mod
    • (no login)
      Posted Jul 18, 2009 1:44 PM

      DECLARE SUB POPULARSUPPORT (PS%)
      DECLARE SUB MILITARYMORAL (MM%)
      DECLARE SUB TOPSCORES ()
      DECLARE SUB COMPMAINT ()
      DECLARE SUB IMPROVEMENTS ()
      DECLARE SUB RANDOMEVENTS (FF&, FA&, PS%, P&, G&, TR&, HU&, TK&, JT&, BM&, AG&, MB&, F&, FM&)
      DECLARE SUB CREATEINDUSTRY (FA&, P&, G&, TR%, TR&, HU%, HU&, TK%, TK&, JT%, JT&, BM%, BM&, AG%, AG&, MB%, MB&)
      DECLARE SUB STATUS ()
      DECLARE SUB EDITOR (A$, D4, D3)
      DECLARE SUB CREATECOMP (D4, D3)
      DECLARE SUB FOODMARKET (D4!, G&, FM&, F&)


      COMMON SHARED A$
      COMMON SHARED A

      IF A$ = "N" THEN CALL COMPMAINT: GOTO NEWTURN
      IF A$ = "Q" THEN CALL COMPMAINT


      TITLE: CLS : WIDTH 80, 50
      COLOR 11: LOCATE 12, 33: PRINT "!!! WARGAME 4 !!!"
      COLOR 10: LOCATE 24, 1: PRINT "(Q)uit Game"
      PRINT : PRINT "(P)lay Saved Game"
      PRINT : PRINT "(C)urrent Status"
      PRINT : PRINT "(R)ecent Additions and Upgrades"
      PRINT : PRINT "(T)op Current Scores"
      PRINT : PRINT
      PRINT "(*) Reset Game / New Game / Editor / Run Before Playing First Time"
      COLOR 11: PRINT : PRINT
      PRINT "What is your choice?"
      DO: A$ = UCASE$(INKEY$)
      LOOP UNTIL A$ <> ""
      SELECT CASE A$
      CASE "*": GOTO GAMERESET
      CASE "P": C = 0: GOSUB AUTOLOAD: GOTO NEWTURN
      CASE "Q": END
      CASE "R": CALL IMPROVEMENTS: GOTO TITLE
      CASE "C": CALL STATUS: GOSUB AUTOLOAD: GOTO TITLE
      CASE "T": CALL TOPSCORES: GOTO TITLE
      END SELECT
      GOTO TITLE


      GAMERESET: PRINT
      CALL EDITOR(A$, D4, D3): IF A$ = "E" THEN GOTO TITLE
      KILL "MARKET"
      FOR C = 1 TO 20: C$ = STR$(C): KILL "WAR4-" + C$: NEXT C
      CALL CREATECOMP(D4, D3)
      C = 0: GOSUB AUTOLOAD

      'VARIABLE DEFINITIONS in war data file
      'D0 = difficulty
      'D1 = turns per day
      'D2 = turns of protection
      'D3 = amount of factories required
      'D4 = price of food
      'D5
      'D6 = starting population
      'D7 = covert ops per day
      'D8
      'D9 = starting food in food market
      'D10 = interest rate
      'D11 = cheats enabled
      'VR = WG4 version
      F& = 20: 'F& = food
      G& = 0: 'G& = gold
      BG& = 0: 'BG& = bank gold
      '
      P& = D6: 'P& = population
      TR& = 0: 'TR& = soldiers
      HU& = 0: 'HU& = humvees
      TK& = 0: 'TK& = tanks
      JT& = 0: 'JT& = jets
      BM& = 0: 'BM& = bombers
      MB& = 0: 'MB& = missile bases
      AG& = 0: 'AG& = aaguns
      SP& = 0: 'SP& = spys
      FF& = 0: 'FF& = food farms
      FA& = 0: 'FA& = factories
      '
      '
      PS% = 100: 'PS% = popular support
      TX% = 5: 'TX% = tax rate
      IR% = RND(D10) * (D10): 'IR% = interest rate
      HU% = 0: 'HU% = humvee production %
      TR% = 0: 'TR% = soldier production %
      TK% = 0: 'TK% = tank production %
      JT% = 0: 'JT% = jet production %
      BM% = 0: 'BM% = bomber production %
      BM% = 0: 'MB% = missile base production %
      AG% = 0: 'AG% = aagun production %
      UL% = 0: 'UL% = unemployment level
      MM% = 100: 'MM% = military moral
      CT% = RND(21) * 21: 'CT%= Current Target
      'N$ = YOUR NAME
      D$ = DATE$: 'D$ = current date
      EN = 0: 'EN = draft
      EN1 = 0: 'EN1 = martial law
      EN2 = 0: 'EN2 = patriot act
      CO = D7: 'CO = covert ops left
      E1 = D1: 'E1 = turns left today
      E2 = D2: 'E2 = turns of protection left
      E3 = 0: 'E3 = total turns taken
      EN3 = 0: 'EN3 = terrorism
      EN4 = 0: 'EN4 = food rationing
      SR1 = 0: 'super soldiers
      SR2 = 0: 'stealth bombers
      SR3 = 0: 'anti missile system
      SR4 = 0: 'sub missile launches
      SR5 = 0: 'The One bomb
      SR6 = 0: '


      'variable definitions for market file
      FM& = D9: 'FM&= Food Market Food
      'OM& = Oil Market Oil
      'SM&= Stock Market Level

      EDITNAME: CLS : COLOR 10
      PRINT "Everyone knows that a name says alot. A strong name can be an advantage as a"
      PRINT
      PRINT "deterant against other players. You now have the chance to pick your own"
      PRINT
      PRINT "nation's name. Choose wisely, for you will keep this for the duration of the"
      PRINT
      PRINT "game. There is a 25 character limit to a name."
      PRINT : PRINT : COLOR 11
      PRINT "Your nation's name"; : INPUT B$
      B$ = LEFT$(B$, 25)
      PRINT : PRINT : COLOR 10
      PRINT B$; : PRINT ", is this correct (Y/N)"
      DO: A$ = UCASE$(INKEY$)
      LOOP UNTIL A$ <> ""
      SELECT CASE A$
      CASE "Y": GOTO EDITNAME1
      CASE "N": GOTO EDITNAME
      END SELECT
      GOTO EDITNAME

      EDITNAME1: PRINT
      FOR C = 1 TO 20
      C$ = STR$(C)
      OPEN "WAR4-" + C$ FOR RANDOM AS 1
      GET 1, 44, N$
      CLOSE
      IF B$ = "" THEN COLOR 12: PRINT "That name cannot be used!": GOTO EDITNAMEEND
      IF B$ = N$ THEN COLOR 12: PRINT "That name is already taken!": GOTO EDITNAMEEND
      NEXT C: N$ = B$: COLOR 11: PRINT
      PRINT "That sounds like a great name!"
      PRINT : PRINT
      COLOR 7: PRINT : PRINT "Get Ready To Rumble!! Press a key"
      DO: A$ = UCASE$(INKEY$): LOOP UNTIL A$ <> "": C = 0: GOSUB AUTOSAVE: GOTO NEWTURN

      EDITNAMEEND: PRINT : COLOR 7
      PRINT "Press a key": DO: A$ = UCASE$(INKEY$)
      LOOP UNTIL A$ <> "": GOTO EDITNAME


      AUTOSAVE: C$ = STR$(C)
      OPEN "WAR4-" + C$ FOR RANDOM AS 1
      PUT 1, 1, D0: PUT 1, 2, D1: PUT 1, 3, D2
      PUT 1, 4, D3: PUT 1, 5, D4: PUT 1, 6, D5
      PUT 1, 7, D6: PUT 1, 8, D7: PUT 1, 9, D8
      PUT 1, 10, D9: PUT 1, 11, D10: PUT 1, 12, D11
      PUT 1, 13, VR: PUT 1, 14, F&: PUT 1, 15, G&
      PUT 1, 16, BG&: PUT 1, 17, XX&: PUT 1, 18, P&
      PUT 1, 19, TR&: PUT 1, 20, HU&: PUT 1, 21, TK&
      PUT 1, 22, JT&: PUT 1, 23, BM&: PUT 1, 24, MB&
      PUT 1, 25, AG&: PUT 1, 26, SP&: PUT 1, 27, FF&
      PUT 1, 28, FA&: PUT 1, 29, X&: PUT 1, 30, X&
      PUT 1, 31, PS%: PUT 1, 32, TX%: PUT 1, 33, IR%
      PUT 1, 34, HU%: PUT 1, 35, TR%: PUT 1, 36, TK%
      PUT 1, 37, JT%: PUT 1, 38, BM%: PUT 1, 39, MB%
      PUT 1, 40, AG%: PUT 1, 41, UL%: PUT 1, 42, MM%
      PUT 1, 43, CT%: PUT 1, 44, N$: PUT 1, 45, D$
      PUT 1, 46, EN: PUT 1, 47, EN1: PUT 1, 48, EN2
      PUT 1, 49, CO: PUT 1, 50, E1: PUT 1, 51, E2
      PUT 1, 52, E3: PUT 1, 53, EN3: PUT 1, 54, EN4
      PUT 1, 55, SR1: PUT 1, 56, SR2: PUT 1, 57, SR3
      PUT 1, 58, SR4: PUT 1, 59, SR5: PUT 1, 60, SR6
      CLOSE
      OPEN "MARKET" FOR RANDOM AS 1
      PUT 1, 1, FM&: PUT 1, 2, OM&: PUT 1, 3, SM&
      CLOSE : RETURN


      AUTOLOAD: C$ = STR$(C)
      OPEN "WAR4-" + C$ FOR RANDOM AS 1
      GET 1, 1, D0: GET 1, 2, D1: GET 1, 3, D2
      GET 1, 4, D3: GET 1, 5, D4: GET 1, 6, D5
      GET 1, 7, D6: GET 1, 8, D7: GET 1, 9, D8
      GET 1, 10, D9: GET 1, 11, D10: GET 1, 12, D11
      GET 1, 13, VR: GET 1, 14, F&: GET 1, 15, G&
      GET 1, 16, BG&: GET 1, 17, XX&: GET 1, 18, P&
      GET 1, 19, TR&: GET 1, 20, HU&: GET 1, 21, TK&
      GET 1, 22, JT&: GET 1, 23, BM&: GET 1, 24, MB&
      GET 1, 25, AG&: GET 1, 26, SP&: GET 1, 27, FF&
      GET 1, 28, FA&: GET 1, 29, X&: GET 1, 30, X&
      GET 1, 31, PS%: GET 1, 32, TX%: GET 1, 33, IR%
      GET 1, 34, HU%: GET 1, 35, TR%: GET 1, 36, TK%
      GET 1, 37, JT%: GET 1, 38, BM%: GET 1, 39, MB%
      GET 1, 40, AG%: GET 1, 41, UL%: GET 1, 42, MM%
      GET 1, 43, CT%: GET 1, 44, N$: GET 1, 45, D$
      GET 1, 46, EN: GET 1, 47, EN1: GET 1, 48, EN2
      GET 1, 49, CO: GET 1, 50, E1: GET 1, 51, E2
      GET 1, 52, E3: GET 1, 53, EN3: GET 1, 54, EN4
      GET 1, 55, SR1: GET 1, 56, SR2: GET 1, 57, SR3
      GET 1, 58, SR4: GET 1, 59, SR5: GET 1, 60, SR6
      CLOSE
      OPEN "MARKET" FOR RANDOM AS 1
      GET 1, 1, FM&: GET 1, 2, OM&: GET 1, 3, SM&
      CLOSE : RETURN

      NEWTURN: GOSUB AUTOLOAD: PRINT
      IF E1 = 0 THEN GOTO NEWTURN1
      IF D4 = 0 THEN GOTO GAMERESET
      IF N$ = "" THEN GOTO GAMERESET

      IF D$ = DATE$ THEN GOTO NEWTURN2
      D$ = DATE$
      E1 = D1
      GOTO NEWTURN2

      NEWTURN1: COLOR 12
      IF D$ = DATE$ THEN PRINT "You are out of turns!! Come back tomorrow! Press a key!"
      IF D$ = DATE$ THEN DO: A$ = UCASE$(INKEY$): LOOP UNTIL A$ <> "": GOTO TITLE
      D$ = DATE$
      E1 = D1
      GOTO NEWTURN2

      NEWTURN2: CLS : COLOR 10
      CO = D7: IR% = RND(D10) * (D10)
      E1 = E1 - 1: E2 = E2 - 1: E3 = E3 + 1
      PRINT "You have"; : COLOR 11: PRINT E1; : COLOR 10: PRINT "turns left today"
      IF E2 > 0 THEN PRINT "You have"; : COLOR 11: PRINT E2; : COLOR 10: PRINT "turns of protection left"
      PRINT "You have taken"; : COLOR 11: PRINT E3; : COLOR 10: PRINT "turns total"

      'this creates new military moral
      A% = RND(2) * 2
      B% = RND(100 - PS%) * (100 - PS%)
      MM% = MM% + EN1 + A% - (B% / 25)
      IF MM% > 100 THEN MM% = 100
      IF MM% < 0 THEN MM% = 0

      'this creates new unemployment
      UL% = UL% - (FA&) + (P& / D3) + (TX% / 5)
      IF UL% < 0 THEN UL% = 0
      IF UL% > 100 THEN UL% = 100
      A% = RND(100) * 100
      B% = RND(15) * 15
      C% = RND(110 - PS%) * (110 - PS%)

      'this creates new popular support
      PS% = PS% + (B% - TX% - UL%) * .5
      IF PS% > 100 THEN PS% = 100
      IF EN > 0 THEN PS% = PS% - 2: 'draft penalty
      IF EN1 > 0 THEN PS% = PS% - 1: 'martial law penalty
      IF EN2 > 0 THEN PS% = PS% - 1: 'patriot act penatly
      IF EN4 > 0 THEN PS% = PS% - 3: 'food rationing penalty
      IF PS% < 0 THEN PS% = 0
      CC% = (A% - C% - TX%)
      IF P& + CC% < 0 THEN CC% = 0
      P& = P& + CC%
      PRINT : PRINT : COLOR 10
      IF CC% < 0 THEN PRINT "You lost"; : COLOR 11: PRINT CC% * -1; : COLOR 10: PRINT "million people"
      IF CC% >= 1 THEN PRINT "You gained"; : COLOR 11: PRINT CC%; : COLOR 10: PRINT "million people"
      IF CC% = 0 THEN PRINT "Your population remained constant"
      COLOR 10
      PRINT "You now have"; : COLOR 11: PRINT P&; : COLOR 10: PRINT "million people"
      COLOR 10
      PRINT "Your Unemployment Rate is now"; : COLOR 11: PRINT UL%; : COLOR 10: PRINT "%"
      PRINT : COLOR 10
      PRINT "Your Popular Support is now"; : COLOR 11: PRINT PS%; : PRINT "%"
      CALL POPULARSUPPORT(PS%)
      PRINT : COLOR 10
      PRINT "Your Military Moral is now"; : COLOR 11: PRINT MM%; : PRINT "%"
      CALL MILITARYMORAL(MM%)
      PRINT : COLOR 10
      PRINT "Your Tax Rate is"; : COLOR 11: PRINT TX%; : PRINT "%"
      A& = TX% * (P& / 100)
      G& = G& + A&
      COLOR 10
      IF TX% > 0 THEN PRINT "You gained"; : COLOR 11: PRINT A&; : COLOR 10: PRINT "Gold from Taxes"
      IF BG& * (IR% / 100) > 0 THEN PRINT "You earned"; : COLOR 11: PRINT BG& * (IR% / 100); : COLOR 10: PRINT "Gold from Interest": G& = G& + (BG& * (IR% / 100))
      PRINT

      'this area grows your food
      IF D4 = 0 THEN GOTO GAMERESET
      A& = (P& / (10 * D4)) + (TR& / (150 * D4))
      IF EN4 > 0 THEN A& = A& - (A& / 3)
      B& = RND(P& / 10) * (P& / 10)
      C& = RND(FF& * 10) * (FF& * 10)
      F& = F& + B& + C&
      COLOR 10
      PRINT "You grew"; : COLOR 11: PRINT B&; : COLOR 10: PRINT "tons of Food today"
      COLOR 10
      IF FF& > 0 THEN PRINT "You grew"; : COLOR 11: PRINT C&; : COLOR 10: PRINT "extra tons with Food Farms"
      COLOR 10
      PRINT "Your people and military require"; : COLOR 11: PRINT A&; : COLOR 10: PRINT "tons of Food to survive"

      TURNFOOD0: A& = (P& / (10 * D4)) + (TR& / (150 * D4)): IF EN4 > 0 THEN A& = A& - (A& / 3)
      IF A& > F& THEN GOSUB TURNFOOD
      F& = F& - A&
      IF F& >= 0 THEN COLOR 15: PRINT : PRINT "Your people are fed!"
      IF F& < 0 THEN F& = 0
      COLOR 10
      GOSUB TERRORISM
      IF EN4 > 0 THEN GOSUB RATIONINGDEATHS
      CALL RANDOMEVENTS(FF&, FA&, PS%, P&, G&, TR&, HU&, TK&, JT&, BM&, AG&, MB&, F&, FM&)
      PRINT : PRINT : COLOR 7: PRINT "Press a key"
      DO: A$ = UCASE$(INKEY$): LOOP UNTIL A$ <> ""
      CALL CREATEINDUSTRY(FA&, P&, G&, TR%, TR&, HU%, HU&, TK%, TK&, JT%, JT&, BM%, BM&, AG%, AG&, MB%, MB&)
      C = 0: GOSUB AUTOSAVE: CHAIN "MAINMENU"

      TURNFOOD: COLOR 12: PRINT
      PRINT "You dont have enough Food to feed them!! You need"; : COLOR 15: PRINT A& - F&; : COLOR 12: PRINT "tons of Food!"
      PRINT "Goto Food Market? (Y/N)"
      DO: A$ = UCASE$(INKEY$): LOOP UNTIL A$ <> ""
      SELECT CASE A$
      CASE "N": GOTO TURNFOOD1
      CASE "Y": CALL FOODMARKET(D4, G&, FM&, F&): GOTO TURNFOOD0
      END SELECT
      GOTO TURNFOOD

      TURNFOOD1: COLOR 12: PRINT
      PRINT "You deciede not to feed your people this turn!"
      PRINT "Riots have ensued and engulfed your nation!"
      PRINT
      A% = RND(PS% / 2) * (PS% / 2): PS% = PS% - A%
      PRINT " Popularity is down"; : COLOR 15: PRINT A%; : COLOR 12: PRINT "%"
      B& = RND(P& / 5) * (P& / 5): P& = P& - B&
      COLOR 15: PRINT B&; : COLOR 12: PRINT "million civilians have fled!"
      B& = RND(TR& / 10) * (TR& / 10)
      COLOR 15: PRINT B&; : COLOR 12: PRINT "Soldiers have deserted!!"
      TR& = TR& - B&
      IF MM% > 0 THEN MM% = MM% * .9: PRINT " Military Moral is also down!"
      RETURN

      RATIONINGDEATHS: 'this is food rationing starving deaths
      A% = RND(10) * 10: IF A% < 5 THEN RETURN
      A& = RND(P& / 100) * (P& / 100)
      IF A& = 0 AND P& > 0 THEN A& = 1
      COLOR 11: PRINT : PRINT A&; : COLOR 12: PRINT "million citizens died from starvation because of Food Rationing!"
      P& = P& - A&: RETURN

      TERRORISM: 'this checks if you do a terrorist attack or not
      IF EN3 = 0 THEN RETURN
      A% = RND(100) * 100: IF A% < 10 THEN EN3 = EN3 + 1: IF EN3 > 100 THEN EN3 = 100
      B% = RND(100) * 100: IF B% > EN3 THEN GOTO TERRORISM1
      PRINT : COLOR 12: PRINT "You were struck by a terrorist attack!! Popular Support is down "; : COLOR 11: PRINT "1"; : COLOR 12: PRINT " % !!"
      PS% = PS% - 1: IF PS% < 0 THEN PS% = 0
      A% = RND(5) * 5
      IF A% = 0 THEN A& = P&: A$ = "Million Civilians"
      IF A% = 1 THEN A& = TR&: A$ = "Soldiers"
      IF A% = 2 THEN A& = HU&: A$ = "Humvees"
      IF A% = 3 THEN A& = MB&: A$ = "Missile Bases"
      IF A% >= 4 THEN A& = AG&: A$ = "Anti-Aircraft Guns"
      B& = RND(A&) * (A&): B& = B& / 50
      PRINT : PRINT "You lost"; : COLOR 11: PRINT B&; : PRINT A$; : COLOR 12: PRINT " in the unprovoked attack!"
      IF A% = 0 THEN P& = P& - B&
      IF A% = 1 THEN TR& = TR& - B&
      IF A% = 2 THEN HU& = HU& - B&
      IF A% = 3 THEN MB& = MB& - B&
      IF A% >= 4 THEN AG& = AG& - B&
      RETURN

      TERRORISM1: 'this does a terrorist strike to other nation
      C = 0: GOSUB AUTOSAVE
      C = CT%: GOSUB AUTOLOAD
      PS% = PS% - 1: IF PS% < 0 THEN PS% = 0
      A% = RND(5) * 5
      IF A% = 0 THEN A& = P&
      IF A% = 1 THEN A& = TR&
      IF A% = 2 THEN A& = HU&
      IF A% = 3 THEN A& = MB&
      IF A% >= 4 THEN A& = AG&
      B& = RND(A&) * (A&): B& = B& / 50
      IF A% = 0 THEN P& = P& - B&
      IF A% = 1 THEN TR& = TR& - B&
      IF A% = 2 THEN HU& = HU& - B&
      IF A% = 3 THEN MB& = MB& - B&
      IF A% >= 4 THEN AG& = AG& - B&
      GOSUB AUTOSAVE: C = 0: GOSUB AUTOLOAD: RETURN


      'data meanings: #, name, descript,cost,attack,defend,x,x,x
      DATA 1,Soldiers,,10,1,2,0,0,0
      DATA 2,Humvees,,15,2,1,0,0,0
      DATA 3,Tanks,,40,4,4,0,0,0
      DATA 4,Jets,,30,3,3,0,0,0
      DATA 5,Bombers,,35,4,1,0,0,0
      DATA 6,Anti Aircraft Guns,,10,0,2,0,0,0
      DATA 7,Missile Bases,,20,0,3,0,0,0
      DATA 8,Covert Agent,,50,0,0,0,0,0
      DATA 9,Food Farms,,500,0,0,0,0,0
      DATA 10,Industrial Factories,,1000,0,0,0,0,0


      'data meanings: #,name,descript,cost,populat,troops,ground,air,success rate
      DATA 11,BIOLOGICAL ATTACK,TARGETS ENEMY POPULATION,20,10,0,0,0,95
      DATA 12,CHEMICAL ATTACK,TARGETS ENEMY TROOPS,30,0,15,0,0,95
      DATA 13,EMP ATTACK,TARGETS ENEMY AIRCRAFT,40,0,0,0,15,95
      DATA 14,SMALL NUCLEAR STRIKE,HITS ENEMY MILITARY AND POPULATION,60,20,15,10,10,95
      DATA 15,LARGE NUCLEAR STRIKE,HITS ENEMY MILITARY AND POPULATION,80,40,25,20,15,90
      DATA 16,HYDROGEN BOMB,STRONGER THAN NUCLEAR STRIKE,100,50,40,30,30,85
      DATA 17,ION BOMB,TARGETS ENEMY AIRCRAFT,130,0,0,0,45,90
      DATA 18,PLANET BUSTER,TARGETS ALL MILITARY AND POPULATION,160,70,50,40,40,70
      DATA 19,RADION BOMB,INCINERATES THE PLANET,250,85,60,60,60,60
      DATA 20,THE ONE,DESTROYS ENEMY AND POSSIBLY YOU ALSO,320,100,80,80,80,50

      SUB COMPMAINT


      COMPMAINT: CLS
      COLOR 10
      PRINT "PLEASE WAIT WHILE WE RUN COMPUTER MAINTANCE. THIS MAY TAKE SEVERAL MINUTES!"

      'THIS RETRIEVES COMP DATA
      FOR C = 1 TO 20
      C$ = STR$(C)
      OPEN "WAR4-" + C$ FOR RANDOM AS 1
      GET 1, 1, D0: GET 1, 2, D1: GET 1, 3, D2
      GET 1, 4, D3: GET 1, 5, D4: GET 1, 6, D5
      GET 1, 7, D6: GET 1, 8, D7: GET 1, 9, D8
      GET 1, 10, D9: GET 1, 11, D10: GET 1, 12, D11
      GET 1, 13, VR: GET 1, 14, F&: GET 1, 15, G&
      GET 1, 16, BG&: GET 1, 17, XX&: GET 1, 18, P&
      GET 1, 19, TR&: GET 1, 20, HU&: GET 1, 21, TK&
      GET 1, 22, JT&: GET 1, 23, BM&: GET 1, 24, MB&
      GET 1, 25, AG&: GET 1, 26, SP&: GET 1, 27, FF&
      GET 1, 28, FA&: GET 1, 29, X&: GET 1, 30, X&
      GET 1, 31, PS%: GET 1, 32, TX%: GET 1, 33, IR%
      GET 1, 34, HU%: GET 1, 35, TR%: GET 1, 36, TK%
      GET 1, 37, JT%: GET 1, 38, BM%: GET 1, 39, MB%
      GET 1, 40, AG%: GET 1, 41, UL%: GET 1, 42, MM%
      GET 1, 43, CT%: GET 1, 44, N$: GET 1, 45, D$
      GET 1, 46, EN: GET 1, 47, EN1: GET 1, 48, EN2
      GET 1, 49, CO: GET 1, 50, E1: GET 1, 51, E2
      GET 1, 52, E3
      CLOSE
      OPEN "MARKET" FOR RANDOM AS 1
      GET 1, 1, FM&: GET 1, 2, OM&: GET 1, 3, SM&
      CLOSE

      COMPMAINT1: 'THIS CREATES NEW POPULATION
      IF C = 1 THEN A = 120
      IF C = 2 THEN A = 150
      IF C = 3 THEN A = 140
      IF C = 4 THEN A = 90
      IF C = 5 THEN A = 130
      IF C = 6 THEN A = 80
      IF C = 7 THEN A = 65
      IF C = 8 THEN A = 75
      IF C = 9 THEN A = 80
      IF C = 10 THEN A = 85
      IF C = 11 THEN A = 90
      IF C = 12 THEN A = 80
      IF C = 13 THEN A = 45
      IF C = 14 THEN A = 140
      IF C = 15 THEN A = 90
      IF C = 16 THEN A = 100
      IF C = 17 THEN A = 85
      IF C = 18 THEN A = 75
      IF C = 19 THEN A = 100
      IF C = 20 THEN A = 80
      A% = RND(A) * A
      C% = RND(110 - PS%) * (110 - PS%)
      CC% = (A% - C% - TX%)
      IF P& + CC% < 0 THEN CC% = 0
      P& = P& + CC%


      MAINTTAXES: 'THIS CREATES NEW TAX RATE
      IF PS% < 60 THEN TX% = TX% - 1
      IF PS% < 80 THEN TX% = TX% - 1
      IF PS% < 95 THEN TX% = TX
      IF PS% >= 95 THEN TX% = TX% + 1
      IF PS% = 100 THEN TX% = TX% + 1
      IF PS% < 30 THEN TX% = 0
      IF TX% < 0 THEN TX% = 0
      IF PS% > 80 AND TX% = 0 THEN TX% = 1
      GOTO MAINTUNEMPLOYMENT

      MAINTUNEMPLOYMENT: 'THIS CREATES NEW UNEMPLOYMENT
      UL% = UL% - (FA&) + (P& / D3) + (TX% / 5)
      IF UL% < 0 THEN UL% = 0
      IF UL% > 100 THEN UL% = 100

      MAINTMMORAL: 'THIS CREATES THE NEW MILITARY MORAL
      A% = RND(2) * 2
      B% = RND(100 - PS%) * (100 - PS%)
      MM% = MM% + A% - (B% / 25)
      IF MM% > 100 THEN MM% = 100

      MAINTPS: 'THIS CREATES NEW POPULAR SUPPORT
      B% = RND(15) * 15
      PS% = PS% + (B% - TX% - UL%) * .5
      IF PS% < 0 THEN PS% = 0
      IF PS% > 100 THEN PS% = 100

      MAINTGOLD: 'THIS GIVES TAX GOLD TO COMP
      A& = TX% * (P& / 100)
      G& = G& + A&

      MAINTFOOD: 'THIS CREATES FOOD FOR COMP
      A& = (P& / (10 * D4)) + (TR& / (150 * D4))
      B& = RND(P& / 10) * (P& / 10)
      C& = RND(FF& * 10) * (FF& * 10)
      F& = F& + B& + C&

      MAINTFOOD1: 'THIS DETERMINES IF COMP HAS ENOUGH FOOD TO FEED PEOPLE
      IF A& > F& THEN GOTO MAINTFOODBUY
      F& = F& - A&
      IF F& < 0 THEN GOTO MAINTFOODPUNISH
      GOTO MAINTFOODSELL

      MAINTFOODBUY: 'BUYS FOOD FOR COMP
      B& = G& / D4
      IF B& > FM& THEN B& = FM&
      IF B& = 0 THEN GOTO MAINTFOODPUNISH
      G& = G& - (B& * D4)
      F& = F& + B&
      FM& = FM& - B&
      GOTO MAINTFOOD1

      MAINTFOODPUNISH: 'PUNISHES COMP FOR NOT FEEDING THE CIVILIANS
      A% = RND(PS% / 2) * (PS% / 2)
      PS% = PS% - A%
      IF PS% < 0 THEN PS% = 0
      B& = RND(P& / 10) * (P& / 10)
      P& = P& - B&
      AA& = RND(TR& / 10) * (TR& / 10)
      IF TR& > 0 THEN TR& = TR& - AA&
      F& = 0
      GOTO MAINTFOODSELL

      MAINTFOODSELL: 'THIS DETERMINES IF THE COMP CAN SELL FOOD
      IF F& < A& * 5 THEN GOTO MAINTINDUSTRY
      AA& = F& / 5
      G& = G& + (AA& * (D4 / 2))
      FM& = FM& + AA&
      F& = F& - AA&
      GOTO MAINTINDUSTRY


      MAINTINDUSTRY: 'THIS IS THE COMPS INDUSTRIAL PRODUCTION
      IF C = 1 THEN TR% = 5: HU% = 5: TK% = 35: JT% = 10: BM% = 10: AG% = 10: MB% = 5
      IF C = 2 THEN TR% = 5: HU% = 1: TK% = 50: JT% = 15: BM% = 7: AG% = 1: MB% = 1
      IF C = 3 THEN TR% = 25: HU% = 5: TK% = 20: JT% = 10: BM% = 5: AG% = 10: MB% = 5
      IF C = 4 THEN TR% = 10: HU% = 5: TK% = 25: JT% = 15: BM% = 10: AG% = 5: MB% = 10
      IF C = 5 THEN TR% = 20: HU% = 5: TK% = 20: JT% = 30: BM% = 2: AG% = 1: MB% = 12
      IF C = 6 THEN TR% = 5: HU% = 5: TK% = 30: JT% = 30: BM% = 1: AG% = 5: MB% = 14
      IF C = 7 THEN TR% = 35: HU% = 5: TK% = 15: JT% = 10: BM% = 5: AG% = 5: MB% = 5
      IF C = 8 THEN TR% = 15: HU% = 10: TK% = 15: JT% = 10: BM% = 15: AG% = 10: MB% = 5
      IF C = 9 THEN TR% = 20: HU% = 10: TK% = 20: JT% = 5: BM% = 10: AG% = 5: MB% = 10
      IF C = 10 THEN TR% = 10: HU% = 15: TK% = 15: JT% = 20: BM% = 1: AG% = 9: MB% = 20
      IF C = 11 THEN TR% = 5: HU% = 5: TK% = 35: JT% = 20: BM% = 5: AG% = 5: MB% = 5
      IF C = 12 THEN TR% = 20: HU% = 30: TK% = 10: JT% = 5: BM% = 5: AG% = 5: MB% = 5
      IF C = 13 THEN TR% = 40: HU% = 3: TK% = 15: JT% = 10: BM% = 1: AG% = 1: MB% = 10
      IF C = 14 THEN TR% = 20: HU% = 5: TK% = 20: JT% = 20: BM% = 5: AG% = 10: MB% = 10
      IF C = 15 THEN TR% = 5: HU% = 30: TK% = 5: JT% = 10: BM% = 10: AG% = 10: MB% = 10
      IF C = 16 THEN TR% = 5: HU% = 5: TK% = 50: JT% = 5: BM% = 5: AG% = 5: MB% = 5
      IF C = 17 THEN TR% = 5: HU% = 5: TK% = 5: JT% = 50: BM% = 5: AG% = 5: MB% = 5
      IF C = 18 THEN TR% = 5: HU% = 5: TK% = 10: JT% = 5: BM% = 5: AG% = 15: MB% = 35
      IF C = 19 THEN TR% = 25: HU% = 15: TK% = 10: JT% = 5: BM% = 10: AG% = 5: MB% = 10
      IF C = 20 THEN TR% = 15: HU% = 15: TK% = 20: JT% = 15: BM% = 5: AG% = 5: MB% = 5
      IF PS% < 70 THEN TR% = 10: HU% = 10: TK% = 10: JT% = 10: BM% = 10: MB% = 10: AG% = 10
      IF UL% > 5 THEN TR% = 10: HU% = 10: TK% = 10: JT% = 10: BM% = 10: MB% = 10: AG% = 10
      IF PS% < 50 THEN TR% = 5: HU% = 5: TK% = 5: JT% = 5: BM% = 5: MB% = 5: AG% = 5
      IF PS% < 30 THEN TR% = 0: HU% = 0: TK% = 0: JT% = 0: BM% = 0: MB% = 0: AG% = 0
      B& = (P& / 10) * (TR% / 100)
      TR& = TR& + B&
      B& = (P& / 15) * (HU% / 100)
      HU& = HU& + B&
      B& = (P& / 40) * (TK% / 100)
      TK& = TK& + B&
      B& = (P& / 30) * (JT% / 100)
      JT& = JT& + B&
      B& = (P& / 35) * (BM% / 100)
      BM& = BM& + B&
      B& = (P& / 10) * (AG% / 100)
      AG& = AG& + B&
      B& = (P& / 20) * (MB% / 100)
      MB& = MB& + B&
      B& = P& * ((100 - TR% - HU% - TK% - JT% - BM% - AG% - MB%) / 100)
      IF B& > 0 THEN G& = G& + B&

      MAINTFACTORY: 'this is comp factory output
      IF FA& = 0 THEN GOTO MAINTPURCHASE
      B& = FA&
      IF FA& > P& / 100 THEN B& = P& / 100
      TR& = TR& + (B& * 2)
      HU& = HU& + (B& * 1)
      TK& = TK& + (B& * 1)
      JT& = JT& + (B& * 1)
      BM& = BM& + (B& * 1)
      AG& = AG& + (B& * 1)
      MB& = MB& + (B& * 1)
      GOTO MAINTPURCHASE

      MAINTPURCHASE: 'this is where comp makes smart purchases
      IF FM& < 2000 THEN GOSUB MAINTBUYFOODFARM
      IF A& > (FF& * 5) + (P& / 20) THEN GOSUB MAINTBUYFOODFARM
      IF FA& < (P& / 500) + 1 THEN GOSUB MAINTBUYFACTORY
      IF SP& < CO THEN GOSUB MAINTBUYSPY
      GOSUB MAINTBUYTHINGS
      IF TR& < 500000 THEN GOSUB MAINTBUYFACTORY
      IF HU& < 400000 THEN GOSUB MAINTBUYFACTORY
      IF TK& < 300000 THEN GOSUB MAINTBUYFACTORY
      IF JT& < 350000 THEN GOSUB MAINTBUYFACTORY
      IF BM& < 200000 THEN GOSUB MAINTBUYFACTORY
      IF AG& < 300000 THEN GOSUB MAINTBUYFACTORY
      IF MB& < 200000 THEN GOSUB MAINTBUYFACTORY
      GOTO MAINTCOVERTOP

      MAINTBUYFOODFARM: 'comp buys food farms
      IF G& < 500 THEN RETURN
      B& = G& / 500
      G& = G& - (B& * 500)
      FF& = FF& + B&
      RETURN

      MAINTBUYFACTORY: 'the comp buys factories
      IF G& < 1000 THEN RETURN
      B& = G& / 1000
      G& = G& - (B& * 1000)
      FA& = FA& + B&
      RETURN

      MAINTBUYTHINGS: 'this determines what the comp will purchase
      IF PS% < 80 THEN RETURN
      IF UL% > 0 THEN RETURN
      IF G& < 200 THEN GOSUB MAINTBANKWITHDRAW
      A% = RND(15) * 15
      IF A% = 0 THEN GOTO MAINTBANK
      IF A% = 1 THEN GOTO MAINTBANK
      IF A% = 2 THEN GOTO MAINTBUYTROOPS
      IF A% = 3 THEN GOTO MAINTBUYHUMVEES
      IF A% = 4 THEN GOTO MAINTBUYTANKS
      IF A% = 5 THEN GOTO MAINTBUYJETS
      IF A% = 6 THEN GOTO MAINTBUYBOMBERS
      IF A% = 7 THEN GOTO MAINTBUYAAGUNS
      IF A% = 8 THEN GOTO MAINTBUYMISSILEBASES
      IF A% = 9 THEN GOTO MAINTBUYSPY
      IF A% >= 10 THEN GOTO MAINTBANK
      RETURN

      MAINTBANKWITHDRAW: 'this is where comp takes gold from bank
      G& = G& + (BG& / 10)
      BG& = BG& - (BG& / 10)
      RETURN


      MAINTBANK: 'this is where comp deposits gold in the bank
      IF G& < 1500 THEN RETURN
      BG& = BG& + 1000
      G& = G& - 1000
      RETURN

      MAINTBUYTROOPS: 'this is where comp buys soldiers
      B& = G& / 10
      TR& = TR& + B&
      G& = G& - (B& * 10)
      RETURN

      MAINTBUYHUMVEES: 'this is where comp buys humvees
      B& = G& / 15
      HU& = HU& + B&
      G& = G& - (B& * 15)
      RETURN

      MAINTBUYTANKS: 'this is where comp buys tanks
      B& = G& / 40
      TK& = TK& + B&
      G& = G& - (B& * 40)
      RETURN

      MAINTBUYJETS: 'this is where comp buys jets
      B& = G& / 30
      JT& = JT& + B&
      G& = G& - (B& * 30)
      RETURN

      MAINTBUYBOMBERS: 'this is where comp buys bombers
      B& = G& / 35
      BM& = BM& + B&
      G& = G& - (B& * 35)
      RETURN

      MAINTBUYAAGUNS: 'this is where comp buys aa guns
      B& = G& / 10
      AG& = AG& + B&
      G& = G& - (B& * 10)
      RETURN

      MAINTBUYMISSILEBASES: 'this is where comp buys missile bases
      B& = G& / 20
      MB& = MB& + B&
      G& = G& - (B& * 20)
      RETURN

      MAINTBUYSPY: 'this is where comp buys spys
      IF SP& > CO * 10 THEN RETURN
      B& = G& / 50
      SP& = SP& + B&
      G& = G& - (B& * 50)
      RETURN

      MAINTCOVERTOP: 'this lets comp do covert ops




      MAINTSAVEDATA: 'This saves the comp data
      C$ = STR$(C)
      OPEN "WAR4-" + C$ FOR RANDOM AS 1
      PUT 1, 1, D0: PUT 1, 2, D1: PUT 1, 3, D2
      PUT 1, 4, D3: PUT 1, 5, D4: PUT 1, 6, D5
      PUT 1, 7, D6: PUT 1, 8, D7: PUT 1, 9, D8
      PUT 1, 10, D9: PUT 1, 11, D10: PUT 1, 12, D11
      PUT 1, 13, VR: PUT 1, 14, F&: PUT 1, 15, G&
      PUT 1, 16, BG&: PUT 1, 17, XX&: PUT 1, 18, P&
      PUT 1, 19, TR&: PUT 1, 20, HU&: PUT 1, 21, TK&
      PUT 1, 22, JT&: PUT 1, 23, BM&: PUT 1, 24, MB&
      PUT 1, 25, AG&: PUT 1, 26, SP&: PUT 1, 27, FF&
      PUT 1, 28, FA&: PUT 1, 29, X&: PUT 1, 30, X&
      PUT 1, 31, PS%: PUT 1, 32, TX%: PUT 1, 33, IR%
      PUT 1, 34, HU%: PUT 1, 35, TR%: PUT 1, 36, TK%
      PUT 1, 37, JT%: PUT 1, 38, BM%: PUT 1, 39, MB%
      PUT 1, 40, AG%: PUT 1, 41, UL%: PUT 1, 42, MM%
      PUT 1, 43, CT%: PUT 1, 44, N$: PUT 1, 45, D$
      PUT 1, 46, EN: PUT 1, 47, EN1: PUT 1, 48, EN2
      PUT 1, 49, CO: PUT 1, 50, E1: PUT 1, 51, E2
      PUT 1, 52, E3
      CLOSE
      OPEN "MARKET" FOR RANDOM AS 1
      PUT 1, 1, FM&: PUT 1, 2, OM&: PUT 1, 3, SM&
      CLOSE
      NEXT C

      END SUB

      SUB CREATECOMP (D4, D3)

      CREATECOMP: FOR C = 1 TO 20
      PS% = 100: 'Popular Support
      TX% = RND(10) * 10: 'Starting Tax Rate
      F& = RND(300) * 300: 'Starting Food
      SP& = RND(50) * 50: ' Starting Spys
      IF C = 1 THEN N$ = "Renegade's Realm": FA& = 7: P& = 180
      IF C = 2 THEN N$ = "The One World Order": FA& = 10: P& = 300
      IF C = 3 THEN N$ = "Bishop's Realm": FA& = 6: P& = 250
      IF C = 4 THEN N$ = "The Banana Republic": FA& = 2: P& = 100
      IF C = 5 THEN N$ = "Clintron": FA& = 7: P& = 200
      IF C = 6 THEN N$ = "United Socialist States": FA& = 1: P& = 110
      IF C = 7 THEN N$ = "The Land Of Zod": FA& = 2: P& = 90
      IF C = 8 THEN N$ = "Republiconia": FA& = 1: P& = 85
      IF C = 9 THEN N$ = "Reaper's Realm": FA& = 2: P& = 90
      IF C = 10 THEN N$ = "Stonia": FA& = 1: P& = 95
      IF C = 11 THEN N$ = "Iraqinam": FA& = 2: P& = 100
      IF C = 12 THEN N$ = "Endor": FA& = 1: P& = 65
      IF C = 13 THEN N$ = "Peacenik": FA& = 1: P& = 40
      IF C = 14 THEN N$ = "United Terrorist League": FA& = 2: P& = 200
      IF C = 15 THEN N$ = "Destroyer's Realm": FA& = 1: P& = 80
      IF C = 16 THEN N$ = "Gorf Island Chain": FA& = 3: P& = 120
      IF C = 17 THEN N$ = "The Kingdom Of Gohan": FA& = 4: P& = 60
      IF C = 18 THEN N$ = "Blundor": FA& = 1: P& = 55
      IF C = 19 THEN N$ = "Democratia": FA& = 1: P& = 90
      IF C = 20 THEN N$ = "Warmonger Realm": FA& = 2: P& = 80
      FF& = RND(5) * 5
      P& = RND(300) * 300
      G& = ((TX% / 100) * P&)
      BG& = 0
      UL% = 0
      MM% = 100

      CREATECT: 'This creates current target for the comp nations
      A% = RND(21) * (21)
      IF A% = C THEN GOTO CREATECT
      IF A% = 21 THEN GOTO CREATECT
      CT% = A%


      C$ = STR$(C)
      OPEN "WAR4-" + C$ FOR RANDOM AS 1
      PUT 1, 1, D0: PUT 1, 2, D1: PUT 1, 3, D2
      PUT 1, 4, D3: PUT 1, 5, D4: PUT 1, 6, D5
      PUT 1, 7, D6: PUT 1, 8, D7: PUT 1, 9, D8
      PUT 1, 10, D9: PUT 1, 11, D10: PUT 1, 12, D11
      PUT 1, 13, VR: PUT 1, 14, F&: PUT 1, 15, G&
      PUT 1, 16, BG&: PUT 1, 17, XX&: PUT 1, 18, P&
      PUT 1, 19, TR&: PUT 1, 20, HU&: PUT 1, 21, TK&
      PUT 1, 22, JT&: PUT 1, 23, BM&: PUT 1, 24, MB&
      PUT 1, 25, AG&: PUT 1, 26, SP&: PUT 1, 27, FF&
      PUT 1, 28, FA&: PUT 1, 29, X&: PUT 1, 30, X&
      PUT 1, 31, PS%: PUT 1, 32, TX%: PUT 1, 33, IR%
      PUT 1, 34, HU%: PUT 1, 35, TR%: PUT 1, 36, TK%
      PUT 1, 37, JT%: PUT 1, 38, BM%: PUT 1, 39, MB%
      PUT 1, 40, AG%: PUT 1, 41, UL%: PUT 1, 42, MM%
      PUT 1, 43, CT%: PUT 1, 44, N$: PUT 1, 45, D$
      PUT 1, 46, EN: PUT 1, 47, EN1: PUT 1, 48, EN2
      PUT 1, 49, CO: PUT 1, 50, E1: PUT 1, 51, E2
      PUT 1, 52, E3
      CLOSE : NEXT C

      END SUB

      SUB CREATEINDUSTRY (FA&, P&, G&, TR%, TR&, HU%, HU&, TK%, TK&, JT%, JT&, BM%, BM&, AG%, AG&, MB%, MB&)

      CREATEINDUSTRY: CLS
      COLOR 11
      PRINT "Because of your Industries, you produced the following:"
      COLOR 10: PRINT : PRINT
      A& = (P& / 10) * (TR% / 100)
      PRINT "Soldiers:"; : COLOR 11: PRINT A&
      TR& = TR& + A&
      PRINT
      A& = (P& / 15) * (HU% / 100)
      COLOR 10: PRINT "Humvees:"; : COLOR 11: PRINT A&
      HU& = HU& + A&
      PRINT
      A& = (P& / 40) * (TK% / 100)
      COLOR 10: PRINT "Tanks:"; : COLOR 11: PRINT A&
      TK& = TK& + A&
      PRINT
      A& = (P& / 30) * (JT% / 100)
      COLOR 10: PRINT "Jets:"; : COLOR 11: PRINT A&
      JT& = JT& + A&
      PRINT
      A& = (P& / 35) * (BM% / 100)
      COLOR 10: PRINT "Bombers:"; : COLOR 11: PRINT A&
      BM& = BM& + A&
      PRINT
      A& = (P& / 10) * (AG% / 100)
      COLOR 10: PRINT "Anti Aircraft:"; : COLOR 11: PRINT A&
      AG& = AG& + A&
      PRINT
      A& = (P& / 20) * (MB% / 100)
      COLOR 10: PRINT "Missile Bases:"; : COLOR 11: PRINT A&
      MB& = MB& + A&
      PRINT
      COLOR 10
      A& = P& * ((100 - TR% - HU% - TK% - JT% - BM% - AG% - MB%) / 100)
      PRINT "You produced"; : COLOR 11: PRINT A&; : COLOR 10: PRINT "Gold"
      IF A& > 0 THEN G& = G& + A&
      IF FA& > 0 THEN GOSUB FACT
      PRINT : PRINT : PRINT "Press a key"
      DO: A$ = UCASE$(INKEY$)
      LOOP UNTIL A$ <> ""
      EXIT SUB


      FACT: PRINT
      A& = FA&
      IF FA& > P& / 100 THEN A& = P& / 100
      A1& = A& * 2
      A2& = A& * 1
      A3& = A& * 1
      A4& = A& * 1
      A5& = A& * 1
      A6& = A& * 1
      A7& = A& * 1


      TR& = TR& + A1&
      HU& = HU& + A2&
      TK& = TK& + A3&
      JT& = JT& + A4&
      BM& = BM& + A5&
      AG& = AG& + A6&
      MB& = MB& + A7&
      PRINT : COLOR 11
      PRINT "Factories produced:"
      COLOR 10: PRINT : PRINT
      PRINT "Soldiers:"; : COLOR 11: PRINT A1&
      PRINT
      COLOR 10: PRINT "Humvees:"; : COLOR 11: PRINT A2&
      PRINT
      COLOR 10: PRINT "Tanks:"; : COLOR 11: PRINT A3&
      PRINT
      COLOR 10: PRINT "Jets:"; : COLOR 11: PRINT A4&
      PRINT
      COLOR 10: PRINT "Bombers:"; : COLOR 11: PRINT A5&
      PRINT
      COLOR 10: PRINT "Anti Aircraft:"; : COLOR 11: PRINT A6&
      PRINT
      COLOR 10: PRINT "Missile Bases:"; : COLOR 11: PRINT A7&
      RETURN


      END SUB

      SUB EDITOR (A$, D4, D3)

      EDITOR: CLS
      COLOR 10
      PRINT "Welcome to the WarGame4 Editor! With this you can change most of the major"
      PRINT : PRINT "variables in the game."
      PRINT : PRINT
      PRINT "Current Settings:"
      PRINT "================="
      GOSUB CURRENTSETTINGS
      COLOR 10
      PRINT
      PRINT "(R)andom Options Generator"
      PRINT
      PRINT "(Y)our Own Settings"
      PRINT
      PRINT "(C)ontinue with Reset using above settings (Game will be Reset)"
      PRINT
      PRINT "(E)xit Editor (No save changes/no game Reset)"
      GOSUB EDITORREPLY
      SELECT CASE A$
      CASE "R": GOSUB RANDOMED: GOTO EDITOR
      CASE "Y": GOTO EDITOR1
      CASE "C": GOTO EDITOREND
      CASE "E": EXIT SUB
      END SELECT
      GOTO EDITOR

      EDITORREPLY: PRINT : PRINT : PRINT : COLOR 11
      PRINT "What is your choice?"
      DO: A$ = UCASE$(INKEY$): LOOP UNTIL A$ <> ""
      RETURN

      RANDOMED: 'this creates random editor options
      D0 = 0
      A% = RND(5) * 5: IF A% = 5 THEN A% = 2
      IF A% = 0 THEN D1 = 500: D0 = D0 + 0
      IF A% = 1 THEN D1 = 250: D0 = D0 + 2.5
      IF A% = 2 THEN D1 = 100: D0 = D0 + 5
      IF A% = 3 THEN D1 = 50: D0 = D0 + 7.5
      IF A% = 4 THEN D1 = 25: D0 = D0 + 10
      A% = RND(5) * 5: IF A% = 5 THEN A% = 2
      IF A% = 0 THEN D2 = 100: D0 = D0 + 0
      IF A% = 1 THEN D2 = 75: D0 = D0 + 2.5
      IF A% = 2 THEN D2 = 50: D0 = D0 + 5
      IF A% = 3 THEN D2 = 25: D0 = D0 + 7.5
      IF A% = 4 THEN D2 = 5: D0 = D0 + 10
      A% = RND(5) * 5: IF A% = 5 THEN A% = 2
      IF A% = 0 THEN D3 = 1000: D0 = D0 + 0
      IF A% = 1 THEN D3 = 800: D0 = D0 + 2.5
      IF A% = 2 THEN D3 = 600: D0 = D0 + 5
      IF A% = 3 THEN D3 = 400: D0 = D0 + 7.5
      IF A% = 4 THEN D3 = 200: D0 = D0 + 10
      A% = RND(5) * 5: IF A% = 5 THEN A% = 2
      IF A% = 0 THEN D4 = 2.5: D0 = D0 + 0
      IF A% = 1 THEN D4 = 2: D0 = D0 + 2.5
      IF A% = 2 THEN D4 = 1.5: D0 = D0 + 5
      IF A% = 3 THEN D4 = 1: D0 = D0 + 7.5
      IF A% = 4 THEN D4 = .75: D0 = D0 + 10
      A% = RND(5) * 5: IF A% = 5 THEN A% = 2
      IF A% = 0 THEN D6 = 400: D0 = D0 + 0
      IF A% = 1 THEN D6 = 300: D0 = D0 + 2.5
      IF A% = 2 THEN D6 = 200: D0 = D0 + 5
      IF A% = 3 THEN D6 = 100: D0 = D0 + 7.5
      IF A% = 4 THEN D6 = 10: D0 = D0 + 10
      A% = RND(5) * 5: IF A% = 5 THEN A% = 2
      IF A% = 0 THEN D7 = 20: D0 = D0 + 0
      IF A% = 1 THEN D7 = 15: D0 = D0 + 2.5
      IF A% = 2 THEN D7 = 10: D0 = D0 + 5
      IF A% = 3 THEN D7 = 5: D0 = D0 + 7.5
      IF A% = 4 THEN D7 = 1: D0 = D0 + 10
      A% = RND(5) * 5: IF A% = 5 THEN A% = 2
      IF A% = 0 THEN D9 = 25000: D0 = D0 + 0
      IF A% = 1 THEN D9 = 20000: D0 = D0 + 2.5
      IF A% = 2 THEN D9 = 15000: D0 = D0 + 5
      IF A% = 3 THEN D9 = 10000: D0 = D0 + 7.5
      IF A% = 4 THEN D9 = 5000: D0 = D0 + 10
      A% = RND(5) * 5: IF A% = 5 THEN A% = 2
      IF A% = 0 THEN D10 = 5: D0 = D0 + 0
      IF A% = 1 THEN D10 = 4: D0 = D0 + 2.5
      IF A% = 2 THEN D10 = 3: D0 = D0 + 5
      IF A% = 3 THEN D10 = 2: D0 = D0 + 7.5
      IF A% = 4 THEN D10 = 1: D0 = D0 + 10
      RETURN

      CURRENTSETTINGS: COLOR 11
      IF D1 = 0 THEN GOSUB DEFAULT
      D0 = 0
      IF D1 = 500 THEN B$ = "Very Easy": D0 = D0 + 0
      IF D1 = 250 THEN B$ = "Easy": D0 = D0 + 2.5
      IF D1 = 100 THEN B$ = "Normal": D0 = D0 + 5
      IF D1 = 50 THEN B$ = "Hard": D0 = D0 + 7.5
      IF D1 = 25 THEN B$ = "Very Hard": D0 = D0 + 10
      PRINT "Turns per day:"; : COLOR 15: PRINT D1; : PRINT "... "; : PRINT B$
      PRINT : COLOR 11
      IF D2 = 100 THEN B$ = "Very Easy": D0 = D0 + 0
      IF D2 = 75 THEN B$ = "Easy": D0 = D0 + 2.5
      IF D2 = 50 THEN B$ = "Normal": D0 = D0 + 5
      IF D2 = 25 THEN B$ = "Hard": D0 = D0 + 7.5
      IF D2 = 5 THEN B$ = "Very Hard": D0 = D0 + 10
      PRINT "Turns of Protection:"; : COLOR 15: PRINT D2; : PRINT "... "; : PRINT B$
      PRINT : COLOR 11
      IF D3 = 1000 THEN B$ = "Very Easy": D0 = D0 + 0
      IF D3 = 800 THEN B$ = "Easy": D0 = D0 + 2.5
      IF D3 = 600 THEN B$ = "Normal": D0 = D0 + 5
      IF D3 = 400 THEN B$ = "Hard": D0 = D0 + 7.5
      IF D3 = 200 THEN B$ = "Very Hard": D0 = D0 + 10
      PRINT "Factory requirement:"; : COLOR 15: PRINT D3; : PRINT "... "; : PRINT B$
      PRINT : COLOR 11
      IF D4 = 2.5 THEN B$ = "Very Easy": D0 = D0 + 0
      IF D4 = 2 THEN B$ = "Easy": D0 = D0 + 2.5
      IF D4 = 1.5 THEN B$ = "Normal": D0 = D0 + 5
      IF D4 = 1 THEN B$ = "Hard": D0 = D0 + 7.5
      IF D4 = .75 THEN B$ = "Very Hard": D0 = D0 + 10
      PRINT "Price of Food:"; : COLOR 15: PRINT D4; : PRINT "... "; : PRINT B$
      PRINT : COLOR 11
      IF D6 = 400 THEN B$ = "Very Easy": D0 = D0 + 0
      IF D6 = 300 THEN B$ = "Easy": D0 = D0 + 2.5
      IF D6 = 200 THEN B$ = "Normal": D0 = D0 + 5
      IF D6 = 100 THEN B$ = "Hard": D0 = D0 + 7.5
      IF D6 = 10 THEN B$ = "Very Hard": D0 = D0 + 10
      PRINT "Starting Population:"; : COLOR 15: PRINT D6; : PRINT "... "; : PRINT B$
      PRINT : COLOR 11
      IF D7 = 20 THEN B$ = "Very Easy": D0 = D0 + 0
      IF D7 = 15 THEN B$ = "Easy": D0 = D0 + 2.5
      IF D7 = 10 THEN B$ = "Normal": D0 = D0 + 5
      IF D7 = 5 THEN B$ = "Hard": D0 = D0 + 7.5
      IF D7 = 1 THEN B$ = "Very Hard": D0 = D0 + 10
      PRINT "Covert Ops per turn:"; : COLOR 15: PRINT D7; : PRINT "... "; : PRINT B$
      PRINT : COLOR 11
      IF D9 = 25000 THEN B$ = "Very Easy": D0 = D0 + 0
      IF D9 = 20000 THEN B$ = "Easy": D0 = D0 + 2.5
      IF D9 = 15000 THEN B$ = "Normal": D0 = D0 + 5
      IF D9 = 10000 THEN B$ = "Hard": D0 = D0 + 7.5
      IF D9 = 5000 THEN B$ = "Very Hard": D0 = D0 + 10
      PRINT "Food in Food Market:"; : COLOR 15: PRINT D9; : PRINT "... "; : PRINT B$
      PRINT : COLOR 11
      IF D10 = 5 THEN B$ = "Very Easy": D0 = D0 + 0
      IF D10 = 4 THEN B$ = "Easy": D0 = D0 + 2.5
      IF D10 = 3 THEN B$ = "Normal": D0 = D0 + 5
      IF D10 = 2 THEN B$ = "Hard": D0 = D0 + 7.5
      IF D10 = 1 THEN B$ = "Very Hard": D0 = D0 + 10
      PRINT "Interest Rate: "; : COLOR 15: PRINT "0 -"; : PRINT D10; : PRINT "% ... "; : PRINT B$
      PRINT : COLOR 11
      PRINT "Overall Difficulty:"; : COLOR 15: PRINT D0; : PRINT "%"
      PRINT : RETURN

      DEFAULT: 'default settings
      D0 = 35: 'difficulty level
      D1 = 100: 'turns per day
      D2 = 50: 'turns of protection
      D3 = 600: 'factory requirement
      D4 = 1.5: 'price of food
      D5 = 0
      D6 = 200: 'starting population
      D7 = 10: 'covert ops per turn
      D8 = 0
      D9 = 15000: 'start foodmarket food
      D10 = 3: 'interest rate
      D11 = 0: 'enanble cheats
      VR = 4.01
      RETURN

      EDITOREND: PRINT
      GOSUB EDITSAVE
      EXIT SUB

      EDITOR1: CLS : COLOR 11
      PRINT "Turns per Day:"
      PRINT "=============="
      COLOR 10
      PRINT "This is how many turns per day you have. The less you have, the slower and"
      PRINT
      PRINT "longer it will take to complete. A higher amount tends to speed up the game"
      PRINT
      PRINT "and allow for faster building. A higher amount is definitely easier but will"
      PRINT
      PRINT "also give you less points."
      PRINT : PRINT
      PRINT "A very easy setting (1) gives you 500 turns per day"
      PRINT
      PRINT "An easy setting (2) gives you 250 turns per day"
      PRINT
      PRINT "A normal setting (3) gives you 100 turns per day"
      PRINT
      PRINT "A hard setting (4) gives you 50 turns per day"
      PRINT
      PRINT "A very hard setting (5) gives you 25 turns per day"
      GOSUB EDITORREPLY: SELECT CASE A$
      CASE "1": D1 = 500: B = 0: GOTO EDITOR2
      CASE "2": D1 = 250: B = 2.5: GOTO EDITOR2
      CASE "3": D1 = 100: B = 5: GOTO EDITOR2
      CASE "4": D1 = 50: B = 7.5: GOTO EDITOR2
      CASE "5": D1 = 25: B = 10: GOTO EDITOR2
      END SELECT: GOTO EDITOR1

      EDITOR2: CLS : COLOR 11
      PRINT "Turns of Protection:"
      PRINT "===================="
      COLOR 10
      PRINT "This is how many turns you get at the beginning of your nations existance"
      PRINT
      PRINT "where you are free from attacks. A lower setting is harder and will get you"
      PRINT
      PRINT "killed more often. A higher setting will allow you to build to where you can"
      PRINT
      PRINT "properly defend yourself."
      PRINT : PRINT
      PRINT "A very easy setting (1) gives you 100 turns of Protection"
      PRINT
      PRINT "An easy setting (2) gives you 75 turns of Protection"
      PRINT
      PRINT "A normal setting (3) gives you 50 turns of Protection"
      PRINT
      PRINT "A hard setting (4) gives you 25 turns of Protection"
      PRINT
      PRINT "A very hard setting (5) gives you 5 turns of protection"
      GOSUB EDITORREPLY: SELECT CASE A$
      CASE "1": D2 = 100: B = B + 0: GOTO EDITOR3
      CASE "2": D2 = 75: B = B + 2.5: GOTO EDITOR3
      CASE "3": D2 = 50: B = B + 5: GOTO EDITOR3
      CASE "4": D2 = 25: B = B + 7.5: GOTO EDITOR3
      CASE "5": D2 = 5: B = B + 10: GOTO EDITOR3
      END SELECT: GOTO EDITOR2

      EDITOR3: CLS : COLOR 11
      PRINT "Factory Requirements:"
      PRINT "====================="
      COLOR 10
      PRINT "This option determines how many Industrial Factories you will need for every"
      PRINT
      PRINT "x amount of citizens. More people per Factory means you will not have to buy"
      PRINT
      PRINT "as many Factories to keep Unemployment stable. Less people per Factory means"
      PRINT
      PRINT "you must purchase more Factories to combat Unemployment. Example, if one had"
      PRINT
      PRINT "a national Population of 2400 million people, on very easy mode they would"
      PRINT
      PRINT "only require 2 Factories to keep Unemployment down. But on very hard setting,"
      PRINT
      PRINT "you would need 6 Factories to accomplish the same thing. "
      PRINT : PRINT
      PRINT "A very easy setting (1) needs 1 Factory for every 1000 million citizens"
      PRINT
      PRINT "An easy setting (2) needs 1 Factory for every 800 million citizens"
      PRINT
      PRINT "A normal setting (3) needs 1 Factory for every 600 million citizens"
      PRINT
      PRINT "A hard setting (4) needs 1 Factory for every 400 million citizens"
      PRINT
      PRINT "A very hard setting (5) needs 1 Factory for every 200 million citizens"
      GOSUB EDITORREPLY: SELECT CASE A$
      CASE "1": D3 = 1000: B = B + 0: GOTO EDITOR4
      CASE "2": D3 = 800: B = B + 2.5: GOTO EDITOR4
      CASE "3": D3 = 600: B = B + 5: GOTO EDITOR4
      CASE "4": D3 = 400: B = B + 7.5: GOTO EDITOR4
      CASE "5": D3 = 200: B = B + 10: GOTO EDITOR4
      END SELECT: GOTO EDITOR3

      EDITOR4: CLS : COLOR 11
      PRINT "Price of Food:"
      PRINT "=============="
      COLOR 10
      PRINT "This is how much Food will cost per ton. At first glance it would appear that"
      PRINT
      PRINT "a cheaper price would be easier, but its not. This is because the lower the"
      PRINT
      PRINT "Food cost, the more Food they consume. Civilians and Soldiers on very hard"
      PRINT
      PRINT "eat over 3 times the amount of Food as those on very easy. Hard and very hard"
      PRINT
      PRINT "modes are difficult and you will be spending alot of Gold on Food Farms."
      PRINT : PRINT
      PRINT "A very easy setting (1) makes the price 2.5 Gold per ton"
      PRINT
      PRINT "An easy setting (2) makes the price 2 Gold per ton"
      PRINT
      PRINT "A normal setting (3) makes the price 1.5 Gold per ton"
      PRINT
      PRINT "A hard setting (4) makes the price 1 Gold per ton"
      PRINT
      PRINT "A very hard setting (5) makes the price .75 Gold per ton"
      GOSUB EDITORREPLY: SELECT CASE A$
      CASE "1": D4 = 2.5: B = B + 0: GOTO EDITOR5
      CASE "2": D4 = 2: B = B + 2.5: GOTO EDITOR5
      CASE "3": D4 = 1.5: B = B + 5: GOTO EDITOR5
      CASE "4": D4 = 1: B = B + 7.5: GOTO EDITOR5
      CASE "5": D4 = .75: B = B + 10: GOTO EDITOR5
      END SELECT: GOTO EDITOR4

      EDITOR5: GOTO EDITOR6

      EDITOR6: CLS : COLOR 11
      PRINT "Starting Population:"
      PRINT "===================="
      COLOR 10
      PRINT "This is the number of civilians you start with. Although they may not look"
      PRINT
      PRINT "like much of a difference, in the early game having a larger Population to"
      PRINT
      PRINT "start out can help greatly. With the larger Population, you could be 5-6"
      PRINT
      PRINT "turns ahead of what you would be with a lower setting."
      PRINT : PRINT
      PRINT "A very easy setting (1) has you start with 400 million"
      PRINT
      PRINT "An easy setting (2) has you start with 300 million"
      PRINT
      PRINT "A normal setting (3) has you start with 200 million"
      PRINT
      PRINT "A hard setting (4) has you start with 100 million"
      PRINT
      PRINT "A very hard setting (5) has you start with 10 million"
      GOSUB EDITORREPLY: SELECT CASE A$
      CASE "1": D6 = 400: B = B + 0: GOTO EDITOR7
      CASE "2": D6 = 300: B = B + 2.5: GOTO EDITOR7
      CASE "3": D6 = 200: B = B + 5: GOTO EDITOR7
      CASE "4": D6 = 100: B = B + 7.5: GOTO EDITOR7
      CASE "5": D6 = 10: B = B + 10: GOTO EDITOR7
      END SELECT: GOTO EDITOR6

      EDITOR7: CLS : COLOR 11
      PRINT "Amount of Covert Ops per turn:"
      PRINT "=============================="
      COLOR 10
      PRINT "This is how many Covert Ops you can perform each turn. More Covert Ops allow"
      PRINT
      PRINT "you to do more destruction to your enemies, and is easier. A harder setting"
      PRINT
      PRINT "will make Covert Ops less a factor in the overall game. This will severely"
      PRINT
      PRINT "restrict your ability to wage war on the other nations."
      PRINT : PRINT
      PRINT "A very easy setting (1) gives you 20 Covert operations per turn"
      PRINT
      PRINT "AN easy setting (2) gives you 15 Covert Operations per turn"
      PRINT
      PRINT "A normal setting (3) gives you 10 Covert Operations per turn"
      PRINT
      PRINT "A hard setting (4) gives you 5 Covert Operations per turn"
      PRINT
      PRINT "A very hard setting (5) gives you 1 Covert Operation per turn"
      GOSUB EDITORREPLY: SELECT CASE A$
      CASE "1": D7 = 20: B = B + 0: GOTO EDITOR8
      CASE "2": D7 = 15: B = B + 2.5: GOTO EDITOR8
      CASE "3": D7 = 10: B = B + 5: GOTO EDITOR8
      CASE "4": D7 = 5: B = B + 7.5: GOTO EDITOR8
      CASE "5": D7 = 1: B = B + 10: GOTO EDITOR8
      END SELECT: GOTO EDITOR7

      EDITOR8: CLS : GOTO EDITOR9

      EDITOR9: CLS : COLOR 11
      PRINT "Starting amount of Food in Food Market:"
      PRINT "======================================="
      COLOR 10
      PRINT "This setting determines the amount of Foof that starts out in the Food Market."
      PRINT
      PRINT "A higher amount is recommended for those who dont want to see Food shortages."
      PRINT
      PRINT "As comps also buy and sell Food, they can deplete the amount of Food in the"
      PRINT
      PRINT "Food Market."
      PRINT : PRINT
      PRINT "A very easy setting (1) sets the amount at 25,000 tons"
      PRINT
      PRINT "AN easy setting (2) sets the amount at 20,000 tons"
      PRINT
      PRINT "A normal setting (3) sets the amount at 15,000 tons"
      PRINT
      PRINT "A hard setting (4) sets the amount at 10,000 tons"
      PRINT
      PRINT "A very hard setting (5) sets the amount at 5000 tons"
      GOSUB EDITORREPLY: SELECT CASE A$
      CASE "1": D9 = 25000: B = B + 0: GOTO EDITOR10
      CASE "2": D9 = 20000: B = B + 2.5: GOTO EDITOR10
      CASE "3": D9 = 15000: B = B + 5: GOTO EDITOR10
      CASE "4": D9 = 10000: B = B + 7.5: GOTO EDITOR10
      CASE "5": D9 = 5000: B = B + 10: GOTO EDITOR10
      END SELECT: GOTO EDITOR9

      EDITOR10: CLS : COLOR 11
      PRINT "Interest Rate:"
      PRINT "======================================"
      COLOR 10
      PRINT "This is how much Interest you recieve when you invest Gold in the Bank. Higher"
      PRINT
      PRINT "interest Rates will get you more Gold but lower your overall point total at"
      PRINT
      PRINT "the end of the game."
      PRINT : PRINT
      PRINT "A very easy setting (1) sets the Interest Rate at 0%-5%"
      PRINT
      PRINT "An easy setting (2) sets the Interest Rate at 0%-4%"
      PRINT
      PRINT "A normal setting (3) sets the Interset Rate at 0%-3%"
      PRINT
      PRINT "A hard setting (4) sets the Interest Rate at 0%-2%"
      PRINT
      PRINT "A very hard setting (5) sets the Interest Rate at 0%-1%"
      GOSUB EDITORREPLY: SELECT CASE A$
      CASE "1": D10 = 5: B = B + 0: GOTO EDITOR11
      CASE "2": D10 = 4: B = B + 2.5: GOTO EDITOR11
      CASE "3": D10 = 3: B = B + 5: GOTO EDITOR11
      CASE "4": D10 = 2: B = B + 7.5: GOTO EDITOR11
      CASE "5": D10 = 1: B = B + 10: GOTO EDITOR11
      END SELECT: GOTO EDITOR10

      EDITOR11: PRINT : PRINT : PRINT : PRINT
      COLOR 10: D0 = B
      PRINT "Your Overall Difficulty is"; : PRINT B; : PRINT "%"
      GOSUB EDITSAVE
      PRINT : PRINT "Press a key": DO: A$ = UCASE$(INKEY$): LOOP UNTIL A$ <> ""
      GOTO EDITOR

      EDITSAVE: PRINT
      C = 0
      C$ = STR$(C)
      OPEN "WAR4-" + C$ FOR RANDOM AS 1
      PUT 1, 1, D0: PUT 1, 2, D1: PUT 1, 3, D2
      PUT 1, 4, D3: PUT 1, 5, D4: PUT 1, 6, D5
      PUT 1, 7, D6: PUT 1, 8, D7: PUT 1, 9, D8
      PUT 1, 10, D9: PUT 1, 11, D10: PUT 1, 12, D11
      PUT 1, 13, VR: PUT 1, 14, F&: PUT 1, 15, G&
      PUT 1, 16, BG&: PUT 1, 17, XX&: PUT 1, 18, P&
      PUT 1, 19, TR&: PUT 1, 20, HU&: PUT 1, 21, TK&
      PUT 1, 22, JT&: PUT 1, 23, BM&: PUT 1, 24, MB&
      PUT 1, 25, AG&: PUT 1, 26, SP&: PUT 1, 27, FF&
      PUT 1, 28, FA&: PUT 1, 29, X&: PUT 1, 30, X&
      PUT 1, 31, PS%: PUT 1, 32, TX%: PUT 1, 33, IR%
      PUT 1, 34, HU%: PUT 1, 35, TR%: PUT 1, 36, TK%
      PUT 1, 37, JT%: PUT 1, 38, BM%: PUT 1, 39, MB%
      PUT 1, 40, AG%: PUT 1, 41, UL%: PUT 1, 42, MM%
      PUT 1, 43, X%: PUT 1, 44, N$: PUT 1, 45, D$
      PUT 1, 46, EN: PUT 1, 47, EN1: PUT 1, 48, EN2
      PUT 1, 49, CO: PUT 1, 50, E1: PUT 1, 51, E2
      PUT 1, 52, E3
      CLOSE
      OPEN "MARKET" FOR RANDOM AS 1
      PUT 1, 1, FM&: PUT 1, 2, OM&: PUT 1, 3, SM&
      CLOSE : RETURN


      END SUB

      SUB FOODMARKET (D4, G&, FM&, F&)

      FOODMARKET: CLS : COLOR 10: A = 0
      PRINT "Planetary Food Market:": PRINT "======================"
      IF FM& <= 5000 THEN GOSUB LOWFOOD
      IF FM& < 0 THEN FM& = 0
      PRINT : COLOR 10
      PRINT "We have"; : COLOR 11: PRINT FM&; : COLOR 10: PRINT "tons of Food."
      PRINT
      PRINT "We are selling Food for"; : COLOR 11: PRINT D4 + A; : COLOR 10: PRINT "Gold per ton."
      PRINT
      PRINT "We are buying Food for"; : COLOR 11: PRINT D4 / 2; : COLOR 10: PRINT "Gold per ton."
      PRINT
      PRINT "You have"; : COLOR 11: PRINT F&; : COLOR 10: PRINT "tons of Food."
      PRINT
      PRINT "You also have"; : COLOR 11: PRINT G&; : COLOR 10: PRINT "Gold."
      PRINT : PRINT : PRINT : COLOR 11
      PRINT "(B)uy Food"
      PRINT : PRINT "(E)xit Food Market"
      PRINT : PRINT : COLOR 10
      PRINT "What is your choice?"
      DO: A$ = UCASE$(INKEY$)
      LOOP UNTIL A$ <> ""
      SELECT CASE A$
      CASE "E": EXIT SUB
      CASE "B": GOTO BUYFOOD
      END SELECT
      GOTO FOODMARKET

      LOWFOOD: COLOR 12
      IF FM& = 0 THEN PRINT "We have no Food to sell!! Perhaps you could sell us some!": RETURN
      IF FM& <= 1000 THEN PRINT "We have little Food to sell! We are forced to yet again raise prices!": A = 3: RETURN
      IF FM& <= 3000 THEN PRINT "We are very short on Food! This does not bode well for the future!": A = 2: RETURN
      IF FM& <= 5000 THEN PRINT "We have a Food shortage! We have no choice but to raise our prices!": A = 1: RETURN

      BUYFOOD: CLS : COLOR 10
      PRINT "We are selling our Food Market brand Food for"; : COLOR 11: PRINT D4 + A; : COLOR 10: PRINT "Gold per ton."
      PRINT
      PRINT "We have"; : COLOR 11: PRINT FM&; : COLOR 10: PRINT "tons of Food for sale."
      PRINT
      PRINT "You have"; : COLOR 11: PRINT G&; : COLOR 10: PRINT "Gold."
      PRINT
      A& = G& / (D4 + A)
      IF A& > FM& THEN A& = FM&
      PRINT "You can buy"; : COLOR 11: PRINT A&; : COLOR 10: PRINT "tons of Food."
      PRINT : PRINT
      PRINT "How much would you like to buy (0 -"; : PRINT A&; : PRINT ")"; : INPUT B&
      IF B& = 9778 THEN F& = F& + 100: GOTO FOODMARKET
      IF B& < 0 THEN GOTO BUYFOOD
      IF B& > A& THEN GOTO BUYFOOD
      IF B& = 0 THEN GOTO FOODMARKET
      G& = G& - (B& * (D4 + A))
      F& = F& + B&: FM& = FM& - B&
      GOTO FOODMARKET

      END SUB

      SUB IMPROVEMENTS

      IMPROVEMENTS: CLS : COLOR 11
      PRINT "Recent Improvements: Version 4.00"
      PRINT "================================"
      COLOR 10
      PRINT "* Finished Food Market options"
      PRINT "* Finished Global Bank options"
      PRINT "* Finished Purchase Units options"
      PRINT "* Finished Top Ten list"
      PRINT "* Finished Industrial Output options"
      PRINT "* Finished Current Status"
      PRINT : PRINT : COLOR 11
      PRINT "Recent Improvements: Version 4.01"
      PRINT "================================="
      COLOR 10
      PRINT "* Finished Policies/Taxes options"
      PRINT "* Finished Covert Operations options"
      PRINT "* Finished Advisors options"
      PRINT : PRINT
      PRINT "Press a key"
      DO: A$ = UCASE$(INKEY$)
      LOOP UNTIL A$ <> ""

      END SUB

      SUB MILITARYMORAL (MM%)

      COLOR 15
      IF MM% = 100 THEN PRINT "Your military sees you as the perfect commander!": EXIT SUB
      IF MM% > 95 THEN PRINT "Your military has confidence in your ability to lead!": EXIT SUB
      IF MM% > 90 THEN PRINT "The military trusts you when you issue commands!": EXIT SUB
      IF MM% > 85 THEN PRINT "Your military, for the most part, agree with your orders!": EXIT SUB
      IF MM% > 80 THEN PRINT "Some military personel are puzzled by your tactics!": EXIT SUB
      IF MM% > 75 THEN PRINT "Your military officers are questioning your orders!": EXIT SUB
      IF MM% > 60 THEN PRINT "The military has little trust in your leadership qualities!": EXIT SUB
      IF MM% > 45 THEN PRINT "The military is divided on your ability to lead them!": EXIT SUB
      IF MM% > 30 THEN PRINT "Many in the military speak hostily of you!": EXIT SUB
      IF MM% > 15 THEN PRINT "Your military has no confidence in your ability to lead them!": EXIT SUB
      IF MM% > 0 THEN PRINT "Most of your generals are calling for your overthrow!": EXIT SUB
      IF MM% = 0 THEN PRINT "You just survived a military coup!": EXIT SUB


      END SUB

      SUB POPULARSUPPORT (PS%)

      POPULARSUPPORT: COLOR 15
      IF PS% = 100 THEN PRINT "The people love you! You are loved by everyone!!": EXIT SUB
      IF PS% > 95 THEN PRINT "Your citizens admire you for your decision making skills!": EXIT SUB
      IF PS% > 90 THEN PRINT "The people of the nation think highly of your policies!": EXIT SUB
      IF PS% > 85 THEN PRINT "You are well liked by the citizens of the nation!": EXIT SUB
      IF PS% > 75 THEN PRINT "Some people are questioning your policies!": EXIT SUB
      IF PS% > 60 THEN PRINT "A slim majority of your citizens appove of your actions!": EXIT SUB
      IF PS% > 45 THEN PRINT "The nation is divided by your policies!": EXIT SUB
      IF PS% > 30 THEN PRINT "Most citizens are disgusted by your administration!": EXIT SUB
      IF PS% > 15 THEN PRINT "The citizens want you out of office!": EXIT SUB
      IF PS% > 0 THEN PRINT "You have just survived an assassination attempt! WATCH OUT!!": EXIT SUB
      IF PS = 0 THEN PRINT "You just survived a presidental car bombing! This isnt good!": EXIT SUB


      END SUB

      SUB RANDOMEVENTS (FF&, FA&, PS%, P&, G&, TR&, HU&, TK&, JT&, BM&, AG&, MB&, F&, FM&)

      RANDOMEVENTS: COLOR 10
      B% = RND(100) * 100
      IF B% >= 11 THEN EXIT SUB
      A% = RND(34) * 34
      IF A% = 1 THEN GOTO RANDOMEVENTS1
      IF A% = 2 THEN GOTO RANDOMEVENTS2
      IF A% = 3 THEN GOTO RANDOMEVENTS3
      IF A% = 4 THEN GOTO RANDOMEVENTS4
      IF A% = 5 THEN GOTO RANDOMEVENTS5
      IF A% = 6 THEN GOTO RANDOMEVENTS6
      IF A% = 7 THEN GOTO RANDOMEVENTS7
      IF A% = 8 THEN GOTO RANDOMEVENTS8
      IF A% = 9 THEN GOTO RANDOMEVENTS9
      IF A% = 10 THEN GOTO RANDOMEVENTS10
      IF A% = 11 THEN GOTO RANDOMEVENTS11
      IF A% = 12 THEN GOTO RANDOMEVENTS12
      IF A% = 13 THEN GOTO RANDOMEVENTS13
      IF A% = 14 THEN GOTO RANDOMEVENTS14
      IF A% = 15 THEN GOTO RANDOMEVENTS15
      IF A% = 16 THEN GOTO RANDOMEVENTS16
      IF A% = 17 THEN GOTO RANDOMEVENTS17
      IF A% = 18 THEN GOTO RANDOMEVENTS18
      IF A% = 19 THEN GOTO RANDOMEVENTS19
      IF A% = 20 THEN GOTO RANDOMEVENTS20
      IF A% = 21 THEN GOTO RANDOMEVENTS21
      IF A% = 22 THEN GOTO RANDOMEVENTS22
      IF A% = 23 THEN GOTO RANDOMEVENTS23
      IF A% = 24 THEN GOTO RANDOMEVENTS24
      IF A% = 25 THEN GOTO RANDOMEVENTS25
      IF A% = 26 THEN GOTO RANDOMEVENTS26
      IF A% = 27 THEN GOTO RANDOMEVENTS27
      IF A% = 28 THEN GOTO RANDOMEVENTS28
      IF A% = 29 THEN GOTO RANDOMEVENTS29
      IF A% = 30 THEN GOTO RANDOMEVENTS30
      IF A% = 31 THEN GOTO RANDOMEVENTS31
      IF A% = 32 THEN GOTO RANDOMEVENTS32
      IF A% = 33 THEN GOTO RANDOMEVENTS33
      'IF A% = 34 THEN GOTO RANDOMEVENTS34
      EXIT SUB

      RANDOMEVENTS1: COLOR 15
      A& = RND(P& / 2) * (P& / 2): P& = P& + A&: PRINT
      PRINT A&; : PRINT "million people have immigrated to your nation!!"
      EXIT SUB

      RANDOMEVENTS2: COLOR 15
      A& = RND(P& / 2) * (P& / 2): P& = P& - A&: PRINT
      PRINT A&; : PRINT "million people were killed from a government released virus!"
      PRINT "Popular Support is also lowered as a result!"
      A% = RND(20) * 20: PS% = PS% - A%: IF PS% < 0 THEN PS% = 0
      EXIT SUB

      RANDOMEVENTS3: COLOR 15
      A& = RND(P& / 4) * (P& / 4): P& = P& + A&: PRINT
      PRINT "Because of a cloning experiment gone wrong, your population has dramatically"
      PRINT "increased by"; : PRINT A&; : PRINT "million!"
      EXIT SUB

      RANDOMEVENTS4: COLOR 15
      A& = RND(TR& / 5) * (TR& / 5): TR& = TR& + A&: PRINT
      PRINT A&; : PRINT "extra Soldiers enlist in your military!"
      EXIT SUB

      RANDOMEVENTS5: COLOR 15
      A& = RND(TR& / 5) * (TR& / 5): TR& = TR& - A&: PRINT
      PRINT A&; : PRINT "Soldiers are killed from an ammo explosion!"
      EXIT SUB

      RANDOMEVENTS6: COLOR 15
      A& = RND(TR& / 10) * (TR& / 10): TR& = TR& + A&: PRINT
      PRINT A&; : PRINT "Soldiers are re-activated from inactive duty!"
      EXIT SUB

      RANDOMEVENTS7: COLOR 15
      A& = RND(TR& / 10) * (TR& / 10): TR& = TR& - A&: PRINT
      PRINT "Because of friendly fire,"; : PRINT A&; : PRINT "Soldiers are killed!"
      EXIT SUB

      RANDOMEVENTS8: COLOR 15
      A& = RND(HU& / 10) * (HU& / 10): HU& = HU& + A&: PRINT
      PRINT "Because of strong output,"; : PRINT A&; : PRINT "extra Humvees were produced!"
      EXIT SUB

      RANDOMEVENTS9: COLOR 15
      A& = RND(HU& / 10) * (HU& / 10): HU& = HU& - A&: PRINT
      PRINT A&; : PRINT "Humvees mysteriously explode!"
      EXIT SUB

      RANDOMEVENTS10: COLOR 15
      A& = RND(HU& / 15) * (HU& / 15): HU& = HU& + A&: PRINT
      PRINT "The Hummer dealership donates"; : PRINT A&; : PRINT "Humvees to your army!!"
      EXIT SUB

      RANDOMEVENTS11: COLOR 15
      A& = RND(HU& / 15) * (HU& / 15): HU& = HU& - A&: PRINT
      PRINT "Because of faulty workmanship,"; : PRINT A&; : PRINT "Humvees explode!"
      EXIT SUB

      RANDOMEVENTS12: COLOR 15
      A& = RND(TK& / 5) * (TK& / 5): TK& = TK& + A&: PRINT
      PRINT "An ally presents you with"; : PRINT A&; : PRINT "Tanks as a gift!"
      EXIT SUB

      RANDOMEVENTS13: COLOR 15
      A& = RND(TK& / 5) * (TK& / 5): TK& = TK& - A&: PRINT
      PRINT "A rumble is heard outside! Crap! Its"; : PRINT A&; : PRINT "Tanks exploding!"
      EXIT SUB

      RANDOMEVENTS14: COLOR 15
      A& = RND(TK& / 4) * (TK& / 4): TK& = TK& + A&: PRINT
      PRINT "A rumble is heard outside!"; : PRINT A&; : PRINT "Tanks mysteriously appear!"
      EXIT SUB

      RANDOMEVENTS15: COLOR 15
      A& = RND(TK& / 4) * (TK& / 4): TK& = TK& - A&: PRINT
      PRINT A&; : PRINT "Tanks are abducted by aliens!"
      EXIT SUB

      RANDOMEVENTS16: COLOR 15
      A& = RND(JT& / 10) * (JT& / 10): JT& = JT& + A&: PRINT
      PRINT "You win the lottery and buy"; : PRINT A&; : PRINT "Jets for your army!"
      EXIT SUB

      RANDOMEVENTS17: COLOR 15
      A& = RND(JT& / 5) * (JT& / 5): JT& = JT& + A&: PRINT
      PRINT "Factories produce"; : PRINT A&; : PRINT "extra Jets!"
      EXIT SUB

      RANDOMEVENTS18: COLOR 15
      A& = RND(JT& / 5) * (JT& / 5): JT& = JT& - A&: PRINT
      PRINT A&; : PRINT "Jets run out of fuel in mid-air and crash!"
      EXIT SUB

      RANDOMEVENTS19: COLOR 15
      A& = RND(JT& / 10) * (JT& / 10): JT& = JT& - A&: PRINT
      PRINT A&; : PRINT "Jets were destroyed from pilot error!"
      EXIT SUB

      RANDOMEVENTS20: COLOR 15
      A& = RND(BM& / 5) * (BM& / 5): BM& = BM& + A&: PRINT
      PRINT "Your loyal subjects build an extra"; : PRINT A&; : PRINT "Bombers!"
      EXIT SUB

      RANDOMEVENTS21: COLOR 15
      A& = RND(F& / 5) * (F& / 5): F& = F& - A&: PRINT
      PRINT "Because of poor storage,"; : PRINT A&; : PRINT "tons of Food spoil!"
      EXIT SUB

      RANDOMEVENTS22: COLOR 15
      A& = RND(TR& / 10) * (TR& / 10): TR& = TR& - A&: PRINT
      PRINT A&; : PRINT "Soldiers die from complications from Agent Orange!"
      EXIT SUB

      RANDOMEVENTS23: COLOR 15
      A& = RND(HU& / 10) * (HU& / 10): HU& = HU& - A&: PRINT
      PRINT A&; : PRINT "Humvees were given Jet fuel and explode!"
      EXIT SUB

      RANDOMEVENTS24: COLOR 15
      A& = RND(TK& / 10) * (TK& / 10): TK& = TK& - A&: PRINT
      PRINT A&; : PRINT "Tanks were melted for scrap metal!"
      EXIT SUB

      RANDOMEVENTS25: COLOR 15
      A& = RND(JT& / 10) * (JT& / 10): JT& = JT& - A&: PRINT
      PRINT A&; : PRINT "Jets were lost in the Bermuda Triangle!"
      EXIT SUB

      RANDOMEVENTS26: COLOR 15
      A& = RND(BM& / 10) * (BM& / 10): BM& = BM& - A&: PRINT
      PRINT A&; : PRINT "Bombers were destroyed in mid-air collisions!"
      EXIT SUB

      RANDOMEVENTS27: COLOR 15
      A& = RND(FF& / 10) * (FF& / 10): FF& = FF& - A&: PRINT
      PRINT A&; : PRINT "Food Farms were destroyed by floods!"
      EXIT SUB

      RANDOMEVENTS28: COLOR 15
      A& = RND(FA& / 10) * (FA& / 10): FA& = FA& - A&: PRINT
      PRINT A&; : PRINT "Factories explode from bad chemical reactions!"
      EXIT SUB

      RANDOMEVENTS29: COLOR 15
      A& = RND(F& / 10) * (F& / 10): F& = F& - A&: PRINT
      PRINT A&; : PRINT "tons of food are devoured by rats and other vermin!"
      EXIT SUB

      RANDOMEVENTS30: COLOR 15
      A& = RND(G& / 10) * (G& / 10): G& = G& - A&: PRINT
      PRINT A&; : PRINT "Gold disappears from your treasury!"
      EXIT SUB

      RANDOMEVENTS31: COLOR 15
      A& = RND(P& / 10) * (P& / 10): P& = P& - A&: PRINT
      PRINT A&; : PRINT "million citizens die from a nationwide hunger strike!"
      EXIT SUB

      RANDOMEVENTS32: COLOR 15
      A& = RND(FM& / 10) * (FM& / 10): FM& = FM& - A&: PRINT
      PRINT A&; : PRINT "tons of Food Market food is destroyed by mold!"
      EXIT SUB

      RANDOMEVENTS33: COLOR 15
      A& = RND(PS% / 10) * (PS% / 10): PS% = PS% - A&: PRINT
      PRINT "Your Popular Support dropped"; : PRINT A&; : PRINT "% from a scandal!"
      EXIT SUB


      END SUB

      SUB STATUS

      STATUS: C = 0
      GOSUB AUTOLOAD1
      'IF N$ = "" THEN EXIT SUB
      CLS : COLOR 11
      PRINT N$; : COLOR 10: LOCATE , 55: PRINT "Difficulty:"; : COLOR 11: PRINT D0; : COLOR 10: PRINT "%"
      PRINT "============================================================================"
      PRINT "Turns left today:"; : COLOR 11: PRINT E1
      IF E2 > 0 THEN COLOR 10: PRINT "Turns of protection left:"; : COLOR 11: PRINT E2
      COLOR 10: PRINT "Total turns taken thus far:"; : COLOR 11: PRINT E3
      PRINT
      COLOR 10: PRINT "Current population:"; : COLOR 11: PRINT P&; : COLOR 10: PRINT "million"
      PRINT "Popular Support:"; : COLOR 11: PRINT PS%; : COLOR 10: PRINT "%"
      PRINT "Tax Rate:"; : COLOR 11: PRINT TX%; : COLOR 10: PRINT "%"
      PRINT "Unemployment Rate:"; : COLOR 11: PRINT UL%; : COLOR 10: PRINT "%"
      PRINT "Current Interest Rate:"; : COLOR 11: PRINT IR%; : COLOR 10: PRINT "%"
      PRINT "Gold:"; : COLOR 11: PRINT G&
      COLOR 10: PRINT "Gold in bank:"; : COLOR 11: PRINT BG&
      PRINT
      COLOR 10: PRINT "Military Moral:"; : COLOR 11: PRINT MM%; : COLOR 10: PRINT "%"
      COLOR 10: PRINT "Soldiers:"; : COLOR 11: PRINT TR&
      COLOR 10: PRINT "Humvees:"; : COLOR 11: PRINT HU&
      COLOR 10: PRINT "Tanks:"; : COLOR 11: PRINT TK&
      COLOR 10: PRINT "Jets:"; : COLOR 11: PRINT JT&
      COLOR 10: PRINT "Bombers:"; : COLOR 11: PRINT BM&
      COLOR 10: PRINT "Anti-Aircraft:"; : COLOR 11: PRINT AG&
      COLOR 10: PRINT "Missile Bases:"; : COLOR 11: PRINT MB&
      PRINT
      COLOR 10: PRINT "Tons of Food:"; : COLOR 11: PRINT F&
      COLOR 10: PRINT "Food Farms:"; : COLOR 11: PRINT FF&
      COLOR 10: PRINT "Factories:"; : COLOR 11: PRINT FA&
      PRINT
      COLOR 10: PRINT "Spys:"; : COLOR 11: PRINT SP&
      COLOR 10: PRINT "Covert Operations left this turn:"; : COLOR 11: PRINT CO
      PRINT
      FOR C = 1 TO CT%
      NEXT C
      GOSUB AUTOLOAD1
      COLOR 10: PRINT "Current Target: "; : COLOR 11: PRINT N$
      PRINT : PRINT : COLOR 7
      PRINT "Would you like to change your Current Target? (Y/N)"
      DO: A$ = UCASE$(INKEY$)
      LOOP UNTIL A$ <> ""
      SELECT CASE A$
      CASE "Y": GOTO CURRENTTARGET
      CASE "N": EXIT SUB
      END SELECT
      GOTO STATUS

      AUTOLOAD1: C$ = STR$(C)
      OPEN "WAR4-" + C$ FOR RANDOM AS 1
      GET 1, 1, D0: GET 1, 2, D1: GET 1, 3, D2
      GET 1, 4, D3: GET 1, 5, D4: GET 1, 6, D5
      GET 1, 7, D6: GET 1, 8, D7: GET 1, 9, D8
      GET 1, 10, D9: GET 1, 11, D10: GET 1, 12, D11
      GET 1, 13, VR: GET 1, 14, F&: GET 1, 15, G&
      GET 1, 16, BG&: GET 1, 17, FM&: GET 1, 18, P&
      GET 1, 19, TR&: GET 1, 20, HU&: GET 1, 21, TK&
      GET 1, 22, JT&: GET 1, 23, BM&: GET 1, 24, MB&
      GET 1, 25, AG&: GET 1, 26, SP&: GET 1, 27, FF&
      GET 1, 28, FA&: GET 1, 29, X&: GET 1, 30, X&
      GET 1, 31, PS%: GET 1, 32, TX%: GET 1, 33, IR%
      GET 1, 34, HU%: GET 1, 35, TR%: GET 1, 36, TK%
      GET 1, 37, JT%: GET 1, 38, BM%: GET 1, 39, MB%
      GET 1, 40, AG%: GET 1, 41, UL%: GET 1, 42, MM%
      GET 1, 43, CT%: GET 1, 44, N$: GET 1, 45, D$
      GET 1, 46, EN: GET 1, 47, EN1: GET 1, 48, EN2
      GET 1, 49, CO: GET 1, 50, E1: GET 1, 51, E2
      GET 1, 52, E3
      CLOSE
      RETURN

      CURRENTTARGET: 'this changes your current target
      CLS : COLOR 11: PRINT "Nation # Nation Name"
      PRINT "====================================="
      FOR C = 1 TO 20
      GOSUB AUTOLOAD1
      IF N$ = "" THEN GOTO CURRENTTARGET1
      COLOR 10
      LOCATE , 3: PRINT C; : LOCATE , 20: PRINT N$
      CURRENTTARGET1: NEXT C
      COLOR 11: PRINT
      PRINT "Which nation do you want as your Current Target (0 exits)"; : INPUT A%
      IF A% < 0 THEN GOTO CURRENTTARGET
      IF A% = 0 THEN EXIT SUB
      IF A% > 20 THEN GOTO CURRENTTARGET
      C = A%: GOSUB AUTOLOAD1
      IF N$ = "" THEN GOTO NOTARGET
      C = 0: GOSUB AUTOLOAD1
      CT% = A% - 1: GOSUB AUTOSAVE1
      GOTO STATUS


      AUTOSAVE1: PRINT
      C = 0
      C$ = STR$(C)
      OPEN "WAR4-" + C$ FOR RANDOM AS 1
      PUT 1, 1, D0: PUT 1, 2, D1: PUT 1, 3, D2
      PUT 1, 4, D3: PUT 1, 5, D4: PUT 1, 6, D5
      PUT 1, 7, D6: PUT 1, 8, D7: PUT 1, 9, D8
      PUT 1, 10, D9: PUT 1, 11, D10: PUT 1, 12, D11
      PUT 1, 13, VR: PUT 1, 14, F&: PUT 1, 15, G&
      PUT 1, 16, BG&: PUT 1, 17, XX&: PUT 1, 18, P&
      PUT 1, 19, TR&: PUT 1, 20, HU&: PUT 1, 21, TK&
      PUT 1, 22, JT&: PUT 1, 23, BM&: PUT 1, 24, MB&
      PUT 1, 25, AG&: PUT 1, 26, SP&: PUT 1, 27, FF&
      PUT 1, 28, FA&: PUT 1, 29, X&: PUT 1, 30, X&
      PUT 1, 31, PS%: PUT 1, 32, TX%: PUT 1, 33, IR%
      PUT 1, 34, HU%: PUT 1, 35, TR%: PUT 1, 36, TK%
      PUT 1, 37, JT%: PUT 1, 38, BM%: PUT 1, 39, MB%
      PUT 1, 40, AG%: PUT 1, 41, UL%: PUT 1, 42, MM%
      PUT 1, 43, CT%: PUT 1, 44, N$: PUT 1, 45, D$
      PUT 1, 46, EN: PUT 1, 47, EN1: PUT 1, 48, EN2
      PUT 1, 49, CO: PUT 1, 50, E1: PUT 1, 51, E2
      PUT 1, 52, E3
      CLOSE : RETURN

      NOTARGET: COLOR 12
      PRINT : PRINT "This nation no longer exists!! Please choose a different one!"
      COLOR 7: PRINT : PRINT "Press a key"
      DO: A$ = UCASE$(INKEY$)
      LOOP UNTIL A$ <> ""
      GOTO CURRENTTARGET


      END SUB

      SUB TOPSCORES


      TOPSCORES: 'this creates top ten list
      CLS : COLOR 10
      PRINT "WarGame4 - Top Ten nations with highest net value:"
      COLOR 11
      LOCATE 4, 1: PRINT "Rank"; : LOCATE 4, 15: PRINT "Nation"; : LOCATE 4, 50: PRINT "Net Worth"
      PRINT "==========================================================================="
      S& = 0: S$ = "": C = 0
      GOSUB LOADTOPSCORES


      COLOR 12
      S& = (TR& * 10) + (HU& * 15) + (TK& * 40) + (JT& * 30) + (BM& * 35)
      S& = S& + (AG& * 10) + (MB& * 20) + (SP& * 50) + (FF& * 500) + (FA& * 1000)
      S& = S& + (F&) + (G&) + (BG&)
      S0$ = N$: B$ = S0$: S0& = S&: B& = S0&: B% = 1
      FOR C = 1 TO 20
      S& = 0: S$ = ""
      GOSUB LOADTOPSCORES
      IF N$ = "" THEN GOTO TC
      S& = (TR& * 10) + (HU& * 15) + (TK& * 40) + (JT& * 30) + (BM& * 35)
      S& = S& + (AG& * 10) + (MB& * 20) + (SP& * 50) + (FF& * 500) + (FA& * 1000)
      S& = S& + (F&) + (G&) + (BG&)
      IF S& > B& THEN B% = B% + 1

      IF S& > S0& THEN S9& = S8&: S8& = S7&: S7& = S6&: S6& = S5&: S5& = S4&
      IF S& > S0& THEN S9$ = S8$: S8$ = S7$: S7$ = S6$: S6$ = S5$: S5$ = S4$
      IF S& > S0& THEN S4$ = S3$: S3$ = S2$: S2$ = S1$: S1$ = S0$: S0$ = N$
      IF S& > S0& THEN S4& = S3&: S3& = S2&: S2& = S1&: S1& = S0&: S0& = S&: GOTO TC

      IF S& > S1& THEN S9& = S8&: S8& = S7&: S7& = S6&: S6& = S5&: S5& = S4&
      IF S& > S1& THEN S9$ = S8$: S8$ = S7$: S7$ = S6$: S6$ = S5$: S5$ = S4$
      IF S& > S1& THEN S4$ = S3$: S3$ = S2$: S2$ = S1$: S1$ = N$
      IF S& > S1& THEN S4& = S3&: S3& = S2&: S2& = S1&: S1& = S&: GOTO TC

      IF S& > S2& THEN S9& = S8&: S8& = S7&: S7& = S6&: S6& = S5&: S5& = S4&
      IF S& > S2& THEN S9$ = S8$: S8$ = S7$: S7$ = S6$: S6$ = S5$: S5$ = S4$
      IF S& > S2& THEN S4$ = S3$: S3$ = S2$: S2$ = N$
      IF S& > S2& THEN S4& = S3&: S3& = S2&: S2& = S&: GOTO TC

      IF S& > S3& THEN S9& = S8&: S8& = S7&: S7& = S6&: S6& = S5&: S5& = S4&
      IF S& > S3& THEN S9$ = S8$: S8$ = S7$: S7$ = S6$: S6$ = S5$: S5$ = S4$
      IF S& > S3& THEN S4$ = S3$: S3$ = N$
      IF S& > S3& THEN S4& = S3&: S3& = S&: GOTO TC

      IF S& > S4& THEN S9& = S8&: S8& = S7&: S7& = S6&: S6& = S5&: S5& = S4&
      IF S& > S4& THEN S9$ = S8$: S8$ = S7$: S7$ = S6$: S6$ = S5$: S5$ = S4$
      IF S& > S4& THEN S4$ = N$
      IF S& > S4& THEN S4& = S&: GOTO TC

      IF S& > S5& THEN S9$ = S8$: S8$ = S7$: S7$ = S6$: S6$ = S5$: S5$ = N$
      IF S& > S5& THEN S9& = S8&: S8& = S7&: S7& = S6&: S6& = S5&: S5& = S&: GOTO TC

      IF S& > S6& THEN S9$ = S8$: S8$ = S7$: S7$ = S6$: S6$ = N$
      IF S& > S6& THEN S9& = S8&: S8& = S7&: S7& = S6&: S6& = S&: GOTO TC

      IF S& > S7& THEN S9$ = S8$: S8$ = S7$: S7$ = N$
      IF S& > S7& THEN S9& = S8&: S8& = S7&: S7& = S&: GOTO TC

      IF S& > S8& THEN S9$ = S8$: S8$ = N$: S9& = S8&: S8& = S&: GOTO TC

      IF S& > S9& THEN S9$ = N$: S9& = S&: GOTO TC

      TC: NEXT C


      COLOR 10
      IF S0$ = B$ THEN COLOR 12
      LOCATE , 2: PRINT "1"; : LOCATE , 11: PRINT S0$; : LOCATE , 50: PRINT S0&
      COLOR 10
      IF S1$ = B$ THEN COLOR 12
      LOCATE , 2: PRINT "2"; : LOCATE , 11: PRINT S1$; : LOCATE , 50: PRINT S1&
      COLOR 10
      IF S2$ = B$ THEN COLOR 12
      LOCATE , 2: PRINT "3"; : LOCATE , 11: PRINT S2$; : LOCATE , 50: PRINT S2&
      COLOR 10
      IF S3$ = B$ THEN COLOR 12
      LOCATE , 2: PRINT "4"; : LOCATE , 11: PRINT S3$; : LOCATE , 50: PRINT S3&
      COLOR 10
      IF S4$ = B$ THEN COLOR 12
      LOCATE , 2: PRINT "5"; : LOCATE , 11: PRINT S4$; : LOCATE , 50: PRINT S4&
      COLOR 10
      IF S5$ = B$ THEN COLOR 12
      LOCATE , 2: PRINT "6"; : LOCATE , 11: PRINT S5$; : LOCATE , 50: PRINT S5&
      COLOR 10
      IF S6$ = B$ THEN COLOR 12
      LOCATE , 2: PRINT "7"; : LOCATE , 11: PRINT S6$; : LOCATE , 50: PRINT S6&
      COLOR 10
      IF S7$ = B$ THEN COLOR 12
      LOCATE , 2: PRINT "8"; : LOCATE , 11: PRINT S7$; : LOCATE , 50: PRINT S7&
      COLOR 10
      IF S8$ = B$ THEN COLOR 12
      LOCATE , 2: PRINT "9"; : LOCATE , 11: PRINT S8$; : LOCATE , 50: PRINT S8&
      COLOR 10
      IF S9$ = B$ THEN COLOR 12
      LOCATE , 2: PRINT "10"; : LOCATE , 11: PRINT S9$; : LOCATE , 50: PRINT S9&
      IF B% > 10 THEN COLOR 12: LOCATE , 1: PRINT B%; : LOCATE , 11: PRINT B$; : LOCATE , 50: PRINT B&
      PRINT : PRINT : PRINT
      COLOR 10
      PRINT "Your nation's net worth is the total worth in gold of your military units,"
      PRINT
      PRINT "spys, food farms, factories, gold, and amount of food. A higher net value"
      PRINT
      PRINT "does not always mean a stronger military and vice versa. It is representative"
      PRINT
      PRINT "of a nation's overall strength."
      PRINT : COLOR 7
      PRINT : PRINT : PRINT "Press a key"
      DO: A$ = UCASE$(INKEY$)
      LOOP UNTIL A$ <> ""
      GOTO TOPEND

      LOADTOPSCORES: C$ = STR$(C)
      OPEN "WAR4-" + C$ FOR RANDOM AS 1
      GET 1, 14, F&: GET 1, 15, G&: GET 1, 16, BG&
      GET 1, 19, TR&: GET 1, 20, HU&: GET 1, 21, TK&
      GET 1, 22, JT&: GET 1, 23, BM&: GET 1, 24, MB&
      GET 1, 25, AG&: GET 1, 26, SP&: GET 1, 27, FF&
      GET 1, 28, FA&: GET 1, 44, N$
      CLOSE : RETURN

      TOPEND: END SUB

    Login Status
  • You are not logged in
    • Login
      Password
       

      Optional
      Provides additional benefits such as notifications, signatures, and user authentication.


      Create Account
    Your Name
    Your Email
    (Optional)
    Message Title
    Message Text
    Options Also send responses to my email address
          


    Newbies usually go to www.qbasic.com and click on The QBasic Forum
    Forum regulars have their own ways, which include The QBasic Community Forums