home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1994 March / Source_Code_CD-ROM_Walnut_Creek_March_1994.iso / compsrcs / x / volume20 / xboing / part12 < prev    next >
Encoding:
Text File  |  1993-09-03  |  54.4 KB  |  1,157 lines

  1. Newsgroups: comp.sources.x
  2. From: jck@kimba.catt.citri.edu.au (Justin Kibell)
  3. Subject: v20i119:  xboing - a simple blockout type game, Part12/26
  4. Message-ID: <1993Sep3.123326.7578@sparky.sterling.com>
  5. X-Md4-Signature: 1a431141f291af44065dce2604ce6cc0
  6. Sender: chris@sparky.sterling.com (Chris Olson)
  7. Organization: Sterling Software
  8. Date: Fri, 3 Sep 1993 12:33:26 GMT
  9. Approved: chris@sterling.com
  10.  
  11. Submitted-by: jck@kimba.catt.citri.edu.au (Justin Kibell)
  12. Posting-number: Volume 20, Issue 119
  13. Archive-name: xboing/part12
  14. Environment: X11, xpm, color
  15.  
  16. #! /bin/sh
  17. # This is a shell archive.  Remove anything before this line, then feed it
  18. # into a shell via "sh file" or similar.  To overwrite existing files,
  19. # type "sh file -c".
  20. # Contents:  bitmaps/background2.xpm bitmaps/background5.xpm level.c
  21. #   sfx.h
  22. # Wrapped by chris@sparky on Fri Sep  3 07:14:46 1993
  23. PATH=/bin:/usr/bin:/usr/ucb:/usr/local/bin:/usr/lbin ; export PATH
  24. echo If this archive is complete, you will see the following message:
  25. echo '          "shar: End of archive 12 (of 26)."'
  26. if test -f 'bitmaps/background2.xpm' -a "${1}" != "-c" ; then 
  27.   echo shar: Will not clobber existing file \"'bitmaps/background2.xpm'\"
  28. else
  29.   echo shar: Extracting \"'bitmaps/background2.xpm'\" \(17313 characters\)
  30.   sed "s/^X//" >'bitmaps/background2.xpm' <<'END_OF_FILE'
  31. X/* XPM */
  32. Xstatic char *background2_xpm[] = {
  33. X/* width height ncolors chars_per_pixel */
  34. X"128 128 19 1",
  35. X/* colors */
  36. X"` c #191315",
  37. X"a c #846342",
  38. X"b c #342114",
  39. X"c c #806B61",
  40. X"d c #110F0E",
  41. X"e c #8D7360",
  42. X"f c #594123",
  43. X"g c #3F343B",
  44. X"h c #372915",
  45. X"i c #988067",
  46. X"j c #6C4E35",
  47. X"k c #725C58",
  48. X"l c #A58C72",
  49. X"m c #231A1D",
  50. X"n c #2D262A",
  51. X"o c #4A3118",
  52. X"p c #594544",
  53. X"q c #615259",
  54. X"r c #030203",
  55. X/* pixels */
  56. X"fohofffohffobofffohbbmbhfjaeeiiiiiiiiieajfohhbbhfjjjfhbmhffjffoohbdrrmpqqqpggggqkccqgmmngggggpkcccqpggggg`dnpccecckpgggnmmrr`qaj",
  57. X"ooofjfoooffoboffohbbbbbofjaakccccccceaajfhbbbmmhffffobbboffjjffobmdrdggppqqpgggqcecqgm`nggggpqkcccqpgnnnnddnpceecccqpggm`mdrdgfo",
  58. X"offjffoofffohoffobbbbbhffpgm```````mgpjfohbbbbbbooooobbbofjjjjfob`rr`nggpqqpgggqceekgm`mngppqqqqqqqpgnmm`ddmpceeecckpgn`mn`rrmbb",
  59. X"hofffohffjfohofobhohhhohm`drrrrrrrrrd`mhhhhhhhhbbhofoohhofjajfobh`rrmmmnpkkqpgpkceckgm``ngpkkqqppqqpgn`d`ddmgkeeeeccqgm`ngmrr`bb",
  60. X"hhooohofjjfohooohofohm`drrrdgkcqpndrrrrd`mhoooobbofffohhfjaajfbbhdrdmd`ngqkqpppkcccqpgn`mgpkkqppppppgndd```mgqceeeccqgmmgpgdrdho",
  61. X"ohhbbhofjjfobbbhohm`drrrdgqccqkpppqpndrrrrd`mhbhojjjfhbhfjaajohhmrr``rdmgpqqpqqkckqqqpg`dnpkkqpggpppgmddmm``npceeeckpn`mgpq`rrmo",
  62. X"oohbbhfjjjfobmbm`drrrdnqccqkcckpgngppqpndrrrrddmgpajfbbofaajfoof`rrmdddmggppqkcckqpqqkpndmpqqppggggggmd`nm``ngkceckqpn`mgppmrr`h",
  63. X"ffhbbhfjjjfhmddrrrdnqcckkceeeckpgnnggngpqpndrrrrd`mhombojajfhhfhdrdmddd`mngpqcccqppqcckg`mgpppppggggn`dmnm``ngqcccqpgm`mgggndrdh",
  64. X"ffhbbhfpgm`drrrdnpccqpqqkceeecqgggggn`dmgqqqgndrrrrd``bojjfobhfmrr``dd`d`mngqcccqppqcccpnmnggpppgggnm```m```ngpqkqppgm``ngnmdrrm",
  65. X"fobmbhm`drrrrnpcckgngpkccccccqpgggggn`d`gqccqqqgmdrrrrd`mhobbof`rr`dd`````mgpcccqppqceekgm`mggppggn`dd```d`mnggppppggmdd```ddrr`",
  66. X"mhb``drrrrmpcckkkgnngqccccckqpggggggndd`gpceeekqqqgmrrrrrd`mhhndrdnmmnnmm`mnpqcckqqkceecpnd`ngggggn`dddddd`mnngggggggn`ddd```drd",
  67. X"dddrrrrmpcckqpqkqgmngqccccqpgggggggnmddmgpkccckpggpqpgmrrrrrdddrrdgggggnm``ngpqccccceeecqgmd`mgggnmddddddd`mmmmmnngggnm```mmmdrr",
  68. X"rrrr`pcccccckqqqpn`mgqccckpggnggggnnmd`ngppqppppgnnmgpqpg`rrrrrrrdgpppggn``mggpkceeeeeeckpg`d`nggnm`dddddd``````mnggggnnnnnnndrr",
  69. X"rdgkcqggqceeckqpgm`mgqkckqgnnnngnnm`ddmngggggggggm`d``mgpqpgdrrrrrdmgqpgndddngpceeceeecckqpn`d`mnnnmmddd``dd``dddmngggggnngmdrrr",
  70. X"rckgmd`gqceeccpgn`mngppqqpgnnmnnm``dd`mnggnnnnnnn`dd`d`mggppqrrrrrrrd`mgn`ddmnpceckkcccckqqgg`ddmnnnn`d`m`d`mm`dd`ngpppgm`drrrrr",
  71. X"rkgdddmgqcelecpn`dmngggggggnnmm``````mnnnm````mmmdd```d`ngqcndrmldrrrrrd`m`dmnpcecqqcccckkkqgn`d`mgggmdmnmdmnm`dddmggm`drrrrrddr",
  72. X"rgkdd`ngqceeckgmddnnngnnnnnnnm``mnnnnnmmmddd`mmmm`mmmmm`mgqcmrrpajfmdrrrrrd`mgqcecpqkcccccckpgn``mgggmd`mm`mnnmdddm`drrrrrmpilnd",
  73. X"r`cmmngpqccckpg`ddmnnmm````mm`dmnggggnm`ddd`nnggnnmmnnn``gqq`rrijfjaajo`rrrrrd`mgqqpkcecccccqpgm`mggnmdd`dd`mnmdddrrrrrmpiliajfm",
  74. X"drkgggpppqqqpgndddmmmm`ddd````mngqppgn`d``nggppppgnnnnn``gqgdrmlfffffjjajfmrrrrrd`mgqceecccckpgm`mngn`dddddd``drrrrrmpilijjfffoh",
  75. X"`rgkgqqqpgggnm`ddddd`dddddd```ngqckqgnddmnggpkkkqpgnnnn`dnqmrrqiffohofaeaaajphdrrrrd`mgqcccckpgmd`nnmm`dddddrrrrrmpiliafbofohhoh",
  76. X"mr`cpkkqgnm``ddddddd````mmmnnngpqcckpmddnggqkccckqpggnn``gq`rrijfooofaiiiiicaaajfmrrrrd`mgqckpg`ddmmmmmddrrrrrmpilieaffhoofhbboh",
  77. X"bdrcqkkpnm`d`dddddd`mm``mngggggpkcecpmd`ggpkcceeccqpgnmdmggdrmlohbofjilliiilllckjajfbdrrrd`mgpgmdd`m`drrrrrmpiliaaaajfohohhhoofo",
  78. X"o`rpkqpgn`mmnmm```mnnnm`ngqkkqppkcccpn`mgpqkceeeeccqgn`dmgmrrqebbhfaelllillliillicjjjajodrrrd`mm`ddrrrrrmpilijffjjjjjfohhbbffjfo",
  79. X"omrmcpgn``mnngnm``nggnmmgqceecqqkcckpnmnpqqcceeeeeckgmddnp`rdipbhfjeillliiiiiiiieajfffjjajfmrrrdrrrrrmpiliajfffjjjjjfohbbbojjjfo",
  80. X"fgdrcpn`ddmggggn`mnnnnngpceeecckkccqgmmnpqqcceecceecg`d`ggdrnloofaaiiiiiiieiiiieajfffffoofjaajhdrrmpiliejfffffjjfffffobmbofjajfo",
  81. X"jq`rpq`dddmgpppn``nnnngpceeeeeeckqqpgm`npqqcccccceecg`d`gmrrjehfjaiiiiieeeeiiieajffffffoobbofpjaaaliieajffffjjfoohhhhbbmhfjaajff",
  82. X"aemrmc`dd`mgpqpn`dm`mnpceeccceeckqpgg`dmgpqcccccccckgm`ng`rdijfjaiiieeaaeiiiiiajjfffffffohoffjffjaaeaajffoffffohbbbbbbbbofjajfff",
  83. X"aegdrcgd`mngpqpnmd`dmgqccckkceecqpggn`dmggpccccccccqgmmngdrhlfjaiiiieaaeiillieajjjjffffoooffjjjjjaaajfobbhoohoofoohhbmmhfjjjfffj",
  84. X"jap`rpq`mngpppggn``dmpcckqqkceecqpggnm``ngpceccccckpn`mnmrrkefaiiiiieeeillllieaajjjffffohoffjffjjjjjfhbbbhhmbofjjjffobbhffffffff",
  85. X"fffmrnc`ngpqpgggnmm`nqccqpqceeccqpggnmm`mgpceececcqgn`mn`rdlaaillliieiiillllieaaajjffffobhffffffffooooooooohofaeeajfobbboffoooof",
  86. X"oofhddcgnpqkpggngmmmgkeckqkceeckkqpggnn``npceeeeckpnm`mndrglaiilllliiilllllliieaajjffffobhofffffobbofjjjjfffjeiiiejfobbbhoooohhh",
  87. X"bofp`rppgqccqgnngmdmpceeccceeckkkqppggn``npccecckqgmddmmrrcieillilliiillillliieaajjjjjfohbhhohhoooffjaaaajjaeillieafobbbbhhhhbbb",
  88. X"ofjamrncpcccqggnnddnpceeeeeeccccckqppgg``npqkckkqpgmddm`rdliiiiiiiliiilliillliiaaajjjjjffhbbbbbofjaaaeeaaaaeillliejfhbbbbhhhhbbb",
  89. X"fjaagddcpceekpgm`d`gqccccccccccccckqpgg`d`gppppppgn`ddmdrgliliieiiliiiliiiillieaaaaaajjjfohmbbofaeeieeeeeeeilllliajobmbhhooohbbh",
  90. X"fjaap`rpqccccpg`d`ngqkkkqqkkccccccckqgn`ddnngggpggn```mrrciiieaeiiiiiiiieeillieaaaaaajjjjfobbojaeiiiiiiiieiilllliafhbbooooooohof",
  91. X"jaajfmrncqcccqgm`ngppppppppqkcccceccqgnm``m``mgggnm````rdleieaailiiiiieaaeiliieeeeeaaaaajfobofaiiiiiiiiiiiilllliejobhofffffoooof",
  92. X"jjjjfhddcpcccpgnnggpggggggpqkcceeeecpggnggnmd`nggnm```drpiliaaailieilieaeilliiiiiieaaaaajfohfjeiliiiiiiiiiilllliafohfffffffffffj",
  93. X"jjjjjp`rqpkckpnnngggnmmmnggpqkceeeckpgggppgn`d`nnnm`ddrrcelieeiliieilieeiiliiiiiiiaaaaaajooojaillliiillllliiiiieafbofjjjfffffjjj",
  94. X"jaaaeemrncqqpgmmnnnm`dd`ngggpkceeecqpppqkcqpgmdmnnm`ddrdleiiiilieaeiliiilliiilliieaaaaajfoofailllliiillliiieeeeajoofaaajjjjjajjj",
  95. X"aeiliigddcppgn`d`mmm`dd`ngggpqceeckppqceeeckpnd`nnm`ddrpiilliiieaaeillilllliilllieaaaaajfofjaillliiiilliieaaaaafhofaeeaaaaaaaaaa",
  96. X"eillliq`rqpgnm`d``mnn`d`nggggqceccqqkceeeeecqn`mnnm`drriiillieaaaailllllllliilllieaaajjffffjeilliiiiiiieajjffjjobfaiiiieeiiiieaa",
  97. X"illliicmrgcnmmmmnnngn`d`nggggqkccqqcceecceeekg``nnm`dr`laeiieaaaaeillliiiiiiillieajjjjfffffjeiiieeeeeeajfohhohhboailllliilllliii",
  98. X"lieeiiigddcgmnnggppggmd`nggggpqqqqkceckqccecqgm`mm``drpijaaaaaaeiiilliieeeeiilieajfffffffffjaeeaaaaaaajfobbbbmbfailliillllllliil",
  99. X"iaaaaiiq`rqpnggpqqqpgmddnngggppppqccckppqcecqgnm`dddrrijfjjjaaiiilliieaaaeiiiieajfooofffoffjjaaajaaajfohhhohhbojilliiiiiiiilllii",
  100. X"ajjjaiicmrgkgpqkkkqpgmddmnnggppppkcckpppqcccpggnn`ddrrlpfjjaeiillllieaaaeillieajfoohofffooffjjjjjjjjfhbhffjfffjeiieaaaaeeeiiiiii",
  101. X"jfffjilenddcgqcccckpgmddd`nggppgpcecqggpkccqgggggn`drdijfjaiilllllieaaaeiiliiajffhhoofffohoofffjjjjfobofjaajjjailiajjjjaaaaeeiea",
  102. X"jfffailcmr`cgkceeckpgm`dddmggpppqcecqgpkccqpggpqpgn`rrpifaillliiiieaaaeilliieajffooofffohbbhoffjjjfoofjaaaaaaaeiiejfffjjaaaaaeaa",
  103. X"jffaiiiq`rgkgkeeeckpnm```ddngqqkkeecqpqcccpgggqccqgmrrmlaiilliiieaaaaaiilllieajffoofffoohbhbhoffffoofjaeeeaaaeiiiafffffjjaaaaaaa",
  104. X"ajjiliagdrkpgkeeeckpnmmmnddmpkccceeckkccckpggpqcccqndrdiiiiieeeaaaaaaeiillliiajffooofoohooohbofffoofaaaeaaaaaeiiejfoffjjaaaeeiea",
  105. X"ieiiiajmr`cngqceeckpgnnnn`dmgkeeceeecccckppgpqkeeekndrrqllieaaajjjaaeeiiillliajfohhooooofffhmhfohofjaaaaaaaaailiajfoffjaeiiiiiii",
  106. X"ilieaff`rgkmgpceeecqgnnnn``mgceeceeeecckpppppqceeekg`rrnliaajjjjjjaaaaeeillleafobbbbhhofjjfohofobofjajjjjjjaailiajjfjaeiilllllll",
  107. X"iieajfhdrcpmngqceeckpgnmmddmpceeccecckqppgppqkceeckgmdrdiijjffffjaaaaaaailliajobbbbbbhffffoofffobofjjffffjaaillleajjaiiiiillllli",
  108. X"aajjjfmrmcgnngpceeecqgn``ddnpceeccckpggggppqqkccccqpg`rrqijffoffjjajjjaeilieafobbbhbbofffhbojjjfohoooooffjaeiillieeeilliiiiiiiie",
  109. X"jjjjjf`rpkgnmngkeeecqgnd`dmgpcceeecqgnnngpqqqkccckqpgmrrnljohhofjjjffjailliajfoooohbbbhoooojaaafohhbhbofjaeiiiiiliiilliieeeieaaj",
  110. X"ffjjjhdrcqgnnngqcecckgmdmnggpqkceecpn``ngpqqqqqkkkqqpgdrdiabbhffjffffjailleajfffoohbbmbbofjaaajfobbbbhfjaeieeaeiillliieaaaeeajff",
  111. X"ofjjjmrmcpggnngqceeeknddngppggpkcckgmddmgqkqpppqkkkkkq`rrqibbhfffffffaillieajjffohbbbbhhofjaaajfhbbbhojaeieaajaailllieaaaaaajohb",
  112. X"fjjjf`rpkpggggpqceecqndmgppggnggqkqg`ddmgqqqpppqkcccccmrrnlobooffoffjeiliieajjfohbbbooffffjaajfobmhhofjaaaajffjaeiiieaaaaaafobbh",
  113. X"faajhdrcpggppqqkccccpn`npqpgnmmggpgn`ddmgpppggpqkkcceegdrdijhooooofjaillieaajfobbmboffffffjjjjfbmmhofjjaajjffofjaeieaajaajjob`mo",
  114. X"aaaamrmcggpqkccccckqgnngqqggm`mnngnmdd`mgggggppqqkccccq`rrqihhohoofaiiiieaajfhbbbhoffffoffjjjfobbmbofjjjjffooofjaeeeaaaajjfhbmof",
  115. X"aiep`rpqngpkceeckqpgmmgpqpgn`d`````ddd`mnnggppqpqkcccppmrrnlfbhbofaiiieaaajfhmmmhfffffooffjjffhbbmbofjjjffohhofjaeeeaaaajffbbhfj",
  116. X"iiigddcgngpceeeckpgmdmgppgnm`ddddd`ddd``mmngpqqqqcccqgggdrdijbhhfjeiieaajjfob`bhffjjfoooffjjfohhhbbofjjjfffooofjaiieeaaajffoofje",
  117. X"liemrncnngqceeeckgn``nggggn`dddddd```````mngpqqqqcecpggq`rrpimhfjeiiajjjjffbmbofjjjfobbhfffffoohhbhffjjjfffoofjaeiiiieeajffofjai",
  118. X"llq`rpqggpccceecqgm`nngggnn`dd```mnngnm`mngpqqqqkcecpgpqmrrhlofjaiiajjjjjffhoffjjjfobmboffffooohhhofjjjjjffoffjeiiiiiieajfffjail",
  119. X"llgddcpgpqceeeecqgmmngggnnm`ddm`mmngpgnmmggpqqqkceecpppkgdrdijfaiiajfjjjjjfffjjajfobbmbhooooooobbhfjjajjfffofjaiillliieajffjaill",
  120. X"icmrncppqcceeeccqgmmnnnnnnm`ddmmmngpqpgnngpqqqqkceecqqqcq`rrpiaiiajfjaaaajjjjaajfobbhbbhooooooobbojjaajjffffjaeilllliieajjjaiili",
  121. X"egdrqqqqkceeecckpgn``mnnnnmdddmmngpkcqgnngqkkqqkcceckkcccmrrmliiajffaaaaajjjaajfhbhbbbbhooffohbbofjaaaajjffjaeillllliieaaaiiiiie",
  122. X"amrdcpkccccecckqpgn`d`nggnn`ddnngpqccqgnnpkccqqqkceccccccgdrriiijfjaaeeaajjjjjfobbohbbbhofhm``d````mgqajjjjaeilllllliiieeilieaaa",
  123. X"p`rnccccccccccqpggnm`d`nggn`d`ngpkcckpgnnpccckppqceeccecckmrrpiajjaaeieaajjjjfobmmbbbmbhm`drrrrrrrrrd`mgpjaeillllllllliiiiieajjj",
  124. X"gdrqkcccccccccqgnnnnn`dmgggmdmgpkcccqgnmnpccckpppceeccecccgdrmlajaeeieeaajjffoobbbhhhmddrrrdgkcqpndrrrrd`mgqcllllllllllliieajjjj",
  125. X"mrdckcckkcceecpgm`nggm`mgpgmdmpkccckpgmmgpkcckpgpkeccccceeq`rrieaeeiieaajjfffoobbhm`drrrdnqccqgpppqpndrrrrd`mgqcllllliiiieajjjja",
  126. X"`rgccckqkcceecpn`dmggnmngppmdnqceccqpn``ggpkkqpggqccckcceecmrrpiiiiieeaajffofohm`drrrrnpcckpgggggm`gpqpndrrrrd`mgqciieeeeaaaaaaq",
  127. X"drqqeckqqceeekgn`d`nggnmngpndgceeekpgmd`nggpqqpggpkkkkkceeegdrmliiiiieajfoohm`drrrrmpccqqqqpgggnmd`mngppqpndrrrrd`mgqaeeeeaaaaeg",
  128. X"rdckcckqkceecqgm`d`mnnnmmngm`gceecqgnd``nngpqqpgggqkcccccccq`rriiiiiieaphm`drrrr`gcckg`mgqqqpgn``mgggppppppqpndrrrrd`mgqciieeecm",
  129. X"rgccccckcceccqgm`dd`mnnm``mdmgceecpn`ddd`mggpppgggqccecckqkcmrrpiiicqgm`drrrrdgkckpggm`mgpqkpn`dmnggppqkqqpggpqpndrrrrd`mgqciiq`",
  130. X"rkqeecccccccqpgm`ddd`mnnmdddmgkeecpndddddmggppggggqceeeckqkcgdrmlggm`drrrrdgqccpm`mnnm`mgpqqpmd`gggppkcccqpgm`mgpqpndrrrrd`mggnd",
  131. X"rcqeeeeccckqqpgmddddd`nnnnm`mgqcccpmdddddmgggggggpqcceecckkcpdrrdddrrrrdnqccqpnmdd`mm`dmgpqpgmdmgggpqcceckpn`dddd`gpqpndrrrrdddr",
  132. X"rdgceeeeccqqpgn`dd`dd`nggpgnnngqckpn`ddddmgggggggppqqkcccckkgdrrrrrrrmpcckpppggnmdd`mddmggpgnmmnggpqcceeekgmddmm`d`ngppqpndrrrrr",
  133. X"rrdmgqceecqpgn`d``mdd`ngpqpgnngpqqpgmdddd`ngggggggggppkccqgmdrrrrr`pcckpgppqqpgnm`dddddmnggn``mngppkceeeekgmd`nnmmnggpgggpqpndrr",
  134. X"rrrrd`mgqcqgg`d`mm```ngpqqpggnngpppgn`ddddmngggggggggpqgm`drrrrrrdccpnngpqkkqpggnmmddddmnnm`ddnggpqcceeecqgmmmgggggggggnm`mgpqrr",
  135. X"rdrrrrrd`mggmd`mnm``mggqqqpggnnngppggmddddmnggggnmmmnm`drrrrrdrrrcppgnggqcccqpggnnnmddd```ddd`nggpkceeeecqgmmngpppgnnmmm`d``mdrr",
  136. X"ajpmdrrrrrd```ngn`d`ngpqqqpggnnngggggn`ddd`nggggm```drrrrrmpil`rrkqpgggqccccqpgggggnm`ddddddmnggpqkcceeckpgmmnpqqpgm`d``dd`mndrm",
  137. X"icaajpmdrrrrrd`mn`dmgpqqqppggggnnggggnmdddmnngnm`drrrrrmqiliicgdrgcqpgqcceckqpggggggn`dddddmngggpqkcccccqgnmmgpkqpnm`ddddd`nmrrp",
  138. X"elliajajpmdrrrrrd``ngpqqqpggggggnngggnm`d`mmm`drrrrdnqiliiilllcmrdckqqcceeckpggggggggmdd`mmnggggppqkcckqpgnmngqkqgm`m``dddmg`rri",
  139. X"lllijoojaajpmdrrrrrd`mgqqpggggggnmnnggnm```drrrrdhkiliiilllllllgdrqkcceeeecqpggggpppgmddmnnggppggpqkkkqpgm``npqqpn``mm`dd`ngdrml",
  140. X"lliafffjaieaajpmdrrrrrd`mgpgggggnmmnnnm`drrrrdgclliiiiillliiillq`rncceeeeecqpggggpppgn``nggppgggggpqqqpgn`dmgpppgm`mnnmmmngmrrqi",
  141. X"llijoojaiillieaajpmdrrrrrd`mgggnnm```drrrrdpclliiiiliilliieeeilcmrrcceeeeeckpnnngpppgn`mngpqpgnnggpqppgm`d`ngpgn``mmnnnnggp`rrii",
  142. X"liafhojeillllllieaajpmdrrrrrd`mnm`drrrr`pcliejaeilllllliaaaaaeilgdrpkceeeeckgnmngpppgn`mgpqqgnmmngpppgn`d`ngggnmdmngnnnggpgdrnll",
  143. X"iiafbfaillllliiiilieaajpmdrrrrrdrrrr`pilieajjjeilllllliajjjjaeilq`rmcceeeeckgmmmgpppgmdmgqqqgmddmggpgn`dmngggn`d`nggggggpkmrrqil",
  144. X"iejfojilllliiiieilllieajajpmdrrdmpjeiiaajjjjjaiilliiiieajfjjaiilcmrrcqceeecqgnmnggppg`dmgqpgn`ddmngggmdmggggn`d`ngppppppqgdrdiii",
  145. X"eafofaillliiieeiiliieajfofjajfpaiajfofjjjjjjaeillliiiiajjjjaiiiligdrgcceeckpgnnnggggn`dngpgn`ddddmnnm`dngggn`ddmgpqkqqqqkmrrhlii",
  146. X"ajffailliiieeaeilliaaajfhhofjjjfohbhffjjjjjjaeillliiieaajjaiiliiajmrdckcckppgggnnnnnm`mgggn`dd`dd`m```nggggmddmngqccckqqq`rrciaa",
  147. X"jfojillliiieeiilliaajjfobhofoooohbbhfffffffjjaillliiieaaaaiilliajfhdrqkccqggppggnm`d`mnnnn`dd```dd`d`mngggn`ddngpkceeckkgdrdliaa",
  148. X"fffailiiiiiiiiliiaajjjfobhoffoohbbhoooofffffjaiiiiiiieeaeiiliieajobdrgcckpggpppgndddmnnnm``mnnmmmmmmnngggnm``mgpqceeeeccmrrgljjj",
  149. X"oojillllliiillliajjffffobhffoobbbbbbbhooffffjeiiieeeeeeeeilliiajfobmrdckqgggpppgn`d`nnnm``mnggnnnmnnggggnm`dmnpqcceeeeeq`rrciffo",
  150. X"bfaiillllllllliajjfffffhbhffobbbhbbmbboofffjaiiiaaaeeiiiilllieajfhhhdrpkqggggppgnmmngnm``mggggggnngggggnn``mnpkcccceeeegdrdlaffb",
  151. X"hfaeiiiiillllieajfffjffhbhoohbbbbhbmmboofffaiieajjaiilllllliiajfhbbh`rncqgggggggnmnngmddmngppppggggppggnmd`npkceccceelcmrrplfoob",
  152. X"ofjaaaeeiilliiajfffjjjfobbhbbbbbbhobbbooffailijjjaeillllllieajfhbmbbmrrckpgggggnmmmnn`d`nggpqqppggpppggnm`mgqceecccceeq`rrcifooh",
  153. X"hffjjaaeiilliajffffjjjfhbmbmbbhhhoobbhoffjeiiajjaiiiiilliiaajfobhhhbbdrpcgggnnnm`d```ddmngpqqqqpppppppgmd`gqceeecccccegdr`ljfohb",
  154. X"bhffjjaeiiiieajfffjjjfobbmbbbhoooohbhoffjaiiiaaeiiieaeeeaajffhhofohbbdrmcgggnnm`dddd`mmnggpqqqqqqqqpppgmdmpceeeeccccccmrrplffoob",
  155. X"hbofjjaeiiieajfffjjjjfobbbbhooooohbbhoffjeiiiiiiieajjaaajjfohboffobmbmrrkqggnmdddd`mnngggppqqqqqqkqqpgg``gkeeeeeecckqq`rrciffooh",
  156. X"ohofjaaeeieajfffjjjjfohbbbooofoohbbbboffaeiillliajffjjjjffobboffobbmhhdrgcnnn`dd`mnggpgggpppppqqkckkpgnmgpcceeeeeckqpgdr`lafffff",
  157. X"foofjjaaeeajfffjjjjffohbbhooooohbbbbbofjaeiilliajfofffffobbbhofohmbhfp`rdcgm`ddddmgpqqqppppppppqkcckpnmngqccceeeecqpgmrrpljfffff",
  158. X"ooffjjaaaaajjjjjjjjffohbbhoohhbbhbbbhofjjaeiiiajfooffffohbbbooohbmhfjamrrqp`dddddngqkckqpppgpppqkccqgnmgqkkkcceeecpgn`rriefoffff",
  159. X"bofjjjjaaaaajaaaajjjffhbbhhhbbhhhbbboffjjaeieajfoooooohbbmmbhhbmbbfjaegdrgc``dddmgpkccckqppgggpqkccqgnngkkqqkceecqpgndrmljooffjf",
  160. X"bojjjjaaeeeeeeaaaajjjfohbhhbbbooobbhfffjjaeeaaffoooooohbbbbbbbbmbofjaap`rdcgmdd`gpqccccckqpgggppqkqgnngpkkqqqkcckpgnmrrpiohhfffo",
  161. X"hfjjjjaeiiiiiieaaaaajfooooohbhohbboofffjaaeeajfooofooohhhbbbhoobbofjjjjmrrpqn`dnpqcccccckqpggggppppnmmgqkkqppqqqpggn`rriambhfffo",
  162. X"fjjjjaaiilllliieeeaajfffffohhoohboffffjjaeeaajffffffoooooooofffohoffffohdrncn``gqcccckkkkkqpgggggggmdmgpkkqpggggggnmdrmlfmboffoo",
  163. X"fjjjaaiillllliiieeeajjfffohhhhhoofffjjjaaeeajfffffffoooooofffjjfhhoohbbh`rrcg`mgkccckqqqkckqgggnnm`ddmgpqkqpgnnnnnm`rrpimmhfffho",
  164. X"jjaaaeilliillliiieeajjfffhbbohoffjjjjjaaaeaajfffjfffoooooffjjjjfhbbbbmbo`rrpcmnpkccckppqkckqpgnmmddd`mngqqpgnm``mmm`rrijbhffjobo",
  165. X"jaaaeiliiiiilliiiieaajjfhbbbooffjjjjjaaaaaajjfjjffohhbbhofjaajfobbbmbbof`rrgcmgpkcccqpppqkkkpgnm`d``mmngpqpgmd`d```drrlpoffjfobf",
  166. X"aaaeiiiieaiilliiieeajjfhbmhhofjjjjjjaaaaajjjfffffobbbbbhfjjajjfhbbhhoffp`rrppmgpqcckqppppqkkpgn`mmnnmmnggpgn``m``dddrriaffjffofj",
  167. X"eiiiiieaaaeilliiieeajfobbbhofjjjjjjaaajjjffffffoooooobmofjaajfobbboofjjgdr`cpngpqkqqppgppqqqpgm`mnnnnmnngggmd`nm`ddddrpifffoooja",
  168. X"illlieajaaeilliieeaajobbooofjjjjjjjaajffffffffohhfffohofjaajjfhbhoffjjamrrpcgggpppppggpppppppnm`mnnnmmmnnnm``mnnm`dd`r`ljffhofai",
  169. X"lllieaajaeillieeeeajohobbofjjjjjjjaajffoofffohhhofffhofjaaajfobbhofjjjp`rrkkgggppgggggpppppggm`dmmmmmmmmnm``mnnnm````rriahoofail",
  170. X"lliieaaaeillieaaaajobhfobfjajjjjjajjfohhoffoohoffjfobfjaaajffhbbhoffjjgdr`cqpppppgnmnggpppggn`dd```````mm`d`mnnnm````drpibofaiil",
  171. X"liiieaeiiliieaaaaafobboofjaaajjaaajfobbboohbhofjjffoojaaajfoobbbhfffffmrrgcppqppgn`d`ngqqpgn`ddd````ddd``dd`nnnmmdddddrdlffjeill",
  172. X"liiiiiilliiaaaaaajfoobbojaaaaaaajjfohbbhohbhffjjjfoofjjjjfoohbbboffffo`rrkqgpqqpgmdrdngqqpnm`dd`mnnmmddd`dd`mnnm`dddd`rrcajaeill",
  173. X"lllllllllieaaaaajfhbohofaeaaaaajfohbbbbhooofjaaajfbofjffohbbhbbhoffoohdr`cggpqqpgmdddmgqqgnmmdd`ngggnm`ddddd`mm`dd````drpljaeiil",
  174. X"llllllllieaaaaaajobmbofjaaaaajjfobhhoooffjjaaeeajobhffohbbbhobbhofohbmrrgc`ngppgnmm``mgppgmmm`dmggppggn`dddd`mm`dmnnmm`rdljaaiil",
  175. X"lllllllieajjaaajfbb`bofjaaajjfoooffffjjaaaeiiiiajobbhhbmmmbhobmboohbb`rrqp``mgggnmm``mnggnm``ddmgpqqpgnmdddddd```nggnmmrrcejeiil",
  176. X"iiiiiieaajjjjjjfhbhbbhfjjjjffoofjajjaaeiiiiliieajfobbbbbbbhoobbbhhbbbdrdcgm``mgnmm````mnnnm`dd`mgpqkqpgnmdd`mmmmngggnnndrglaeiil",
  177. X"iiiieaajjfjjjffhbhohbhoffffooofaaeeeiiilllllliajffobmmbbbhooohbbbbbbmrrgcnnm``````d`````mnnm`d`ngqkccqggndd`nnggggggggg`rdleiiii",
  178. X"iiieajjfffffffhhoooohbhoffoofjaiiiiilliillliiaajffobbboooooooohbbbbb`rrqqgggnmdd`dd`m````nnnnmmngqcccqpgn`dmgpppgggggggmrrciiiii",
  179. X"iieajffooffffhbboffoobhoohbojailiiilllillliiaajffohhoffooooffoobbbbhdrdcpggggn`dddd`mmm``ngggnngpqccckppg`dmpkckpggggppgdrgliiii",
  180. X"iiajfoohoffffhbhfffohbhoohofaiilllllliillieajjfffhbfjjfohoffffobbbhmrrgcggggggnnm`mmnnmmnggggnggqkcckqppg`dmpccckpgggppp`rdliiii",
  181. X"iejfhmbbhfffohhoffohbbhbbbfjeillllllllllieajfffohhfjjjfohoffffobbbh`rrqcppggggggnnnnnm`mgggggggqkckqqpppgmdnqceecqgggpppmrrkiiii",
  182. X"eafhbmbbhfffooofffobbbhbbojaiiillllllllieajffffhbfjajfobboffffobbbbdrdckqpgggggggggggmdmgpggggpkcckqppppgmdnqceeecpggppggdrhliii",
  183. X"jfohhoohbofoboffffhbmmbbhfaeiiiillllllieaffoohhbofjajobmboffffohbbmrrgcqqppggggpqqqpgm`ngpggggqcccqpgggggmdnqceeecqgggpgn`rdliia"
  184. X};
  185. END_OF_FILE
  186.   if test 17313 -ne `wc -c <'bitmaps/background2.xpm'`; then
  187.     echo shar: \"'bitmaps/background2.xpm'\" unpacked with wrong size!
  188.   fi
  189.   # end of 'bitmaps/background2.xpm'
  190. fi
  191. if test -f 'bitmaps/background5.xpm' -a "${1}" != "-c" ; then 
  192.   echo shar: Will not clobber existing file \"'bitmaps/background5.xpm'\"
  193. else
  194.   echo shar: Extracting \"'bitmaps/background5.xpm'\" \(17328 characters\)
  195.   sed "s/^X//" >'bitmaps/background5.xpm' <<'END_OF_FILE'
  196. X/* XPM */
  197. Xstatic char *background5_xpm[] = {
  198. X/* width height ncolors chars_per_pixel */
  199. X"128 128 20 1",
  200. X/* colors */
  201. X"` c #63217C",
  202. X"a c #391042",
  203. X"b c #6D2A88",
  204. X"c c #42185A",
  205. X"d c #1C0724",
  206. X"e c #4A185A",
  207. X"f c #421852",
  208. X"g c #421052",
  209. X"h c #291039",
  210. X"i c #290839",
  211. X"j c #210831",
  212. X"k c #52186B",
  213. X"l c #4A1863",
  214. X"m c #391052",
  215. X"n c #311039",
  216. X"o c #290831",
  217. X"p c #521863",
  218. X"q c #39104A",
  219. X"r c #311042",
  220. X"s c #5A1E71",
  221. X/* pixels */
  222. X"nhhioddddddddoojddddddohhnrqglsbbb`kpecgggcelksbbseqrihnrqrrhhnrqfeeeecgqqqqqqe`bscmmqqqrrqqqqqrrrqfcgrojdjohnnnrqflks`bbbb`keqr",
  223. X"nhnhoddddddddoojddddddoooonafp`bbb`specgggcepsbb`kgrhoohrqrnhhnrgcelefgqggfqqqes`pggfcfmqaqqqqqrrnrqffqnoddjihnhnrgeks`b`bbb`kca",
  224. X"nhhhijdddddddoooddddddddjonqek`bbb`kpecgffelkbbbkeqrnoohnrrnhhrqfelecqqqceegqglsseggelefgqqqqqqrrnnrqggrhojjohnnnrqcks```bbbb`pq",
  225. X"rhiooodddddddooojddddddddorqeps`bbskpecffcek`bbsegqrhooihhhhhnqgeplegqqmepeqqgkskcgcpklefqqqqqqrnhhnrgfqriooohnnnnrglsbbbbbbbbkg",
  226. X"qhoooodddddddjihoooojddddorgelpsb`skleeceepsbbslfqarnhhhhihhnrmelklgqqqgeleqqcsspcfepklecgqqqqarnhhhrqfgqrhoohnrrnrqes`bbb```bse",
  227. X"qhojjjdddddddjhnhnnijddddorqgcls`sklleeeepk`b`pcmqrnnnnhhhhnrqflppeqrrqceefqqlb`lffclplecgqqqqrnnhhhnrqfgqriohrrrnnrfksb``sssb`p",
  228. X"gnojjjdddddddonrrrrhjddddorrqflsskleeellpk`bbsegqrrrrrrrrrrrqgellegrnrgccgqqgkb`lfgfelleefgqqqrrnhhhnrqgcgrhihrqqrrrmekssskks``k",
  229. X"frhojddddddddjhrrqrhjdddoohnrglsspeccelpk`bb`kfqqrrrrrraqqqqgcelemrnrqgfgqrrgsb`lfggeeeeecfggqqrnhnhnrrmffqnhhrqqqrrqglkkkkkk``k",
  230. X"eqrhoddddddddohrrrrhoooooooirglkklcfcelksbbbkefqqrrrqqqqmggfceecgarraqqqqnnrfsb`pcggceeeeeeecfgqrnrrrraqgfqrhnrqqmqaaqclpkkks``k",
  231. X"egqnodddjddddoinrrrnnnnhodjorgkklefgcepsbbbspegqqqqqqqgfceeeeecgqrrrqqqrnhnrcs``kefggfeelllplefqrrrqqqqqgfgrnnrqgfgqqqfelpkks``k",
  232. X"lfqnojddjjddjohhnrrrrqrhojoorfkkecffeek`bbspecfgmqgggfceeelleegqrrrqqqrhiirqes`sklegggcepkkkkpeqarqqgqqgfcgrnnqgcefqqqgelksss`sk",
  233. X"lfqrhjddjjjjoohhnraqqqrhojohaflefgffelk``slecffffceeeeecelllegqrrrqqqrhooorqes`skplfggcekss`skeqaqgcecfccegrnnqgceegqqgcpks```sk",
  234. X"egqnijdddddjohnnraqqqrrhiohrqfffgggfeks`speffgceelppeecfcelegqrrraqqrnooohrmes`skplefgclk````keqqqclppllllfrnnqgceegmmgeks````sk",
  235. X"eqrnojdddddjohnrrqqqarnhhhnqmggqqqgfes``kefgggelkkkleffgfcefqrnnrqqrnhooohrmek`skkpecfels`bb`kcqqglsssskkpcannqgcecgqqfeks````sk",
  236. X"fqrhojddddddohraqqqrrnrnrrqqqqqqqqgflsb`pefggfekssklcgggfcfqrnhnrqrrhhhhnnrqeksskkpeefepsbbbslgqqcksssssskeqrrqqfcfqqqcls``b``sp",
  237. X"ganhojddddddohrqggqrnnrrrqgqqqqqqqgeks`klcfgfclkskpecggfcfqarhihrrnhhnnnrraqekssskpeefepsbbbkfqqglsskkssskeqrrrqgfgqaqcls`bb`ske",
  238. X"qrnhojddddddohrqfgqrnnraqggqaaqqggclkskpeeccelksskpeeffeefqrnhhhnhhhnrrrrrqqclksskpeefcls``spmqqfksklepkkklfqrraqmqarqcps`bb`spc",
  239. X"qrhooojdddddoonqefqrnnrqfcgqrrqqgclkkkleeeeelkssssklecceegqrnhhhhhhnrraaarqqfepkskpeegfeksskeqrqckklccelkkpegrrrqqqrrqclk`bbsklg",
  240. X"rnhoooojjjjjoonqefqrrrqgecqarrqgepkskpeeeelpkks`sskpleeecgqrnnnnnnnrrrqaaaqqgclkskpleggclkklcqrqelleffelpkkpcqqraqqqqqclk`b`skeq",
  241. X"rhioooooooojoonqfgqrrrqepeqrrrqflksspeeeelpkkssssskkpleefmqrrnnnrrrrrrrrarqqmgepkkplegggceefqarqeecgggfelkkklfqqqqqqmgclk```klfq",
  242. X"rhioooooooooohrqmqarqqgekeqqqqgeksskllllpkkkkkskkkkkkleecgqqqrrrqqqrrrrrrrqqqgclkkplecgggffmqqqclegqqqgelkssklcgggggfcelk``spegq",
  243. X"nhioooooihhhhrrqqqrrqqflpeqqqmckssklllpkkkkkkkkkkkkkkleeecfgqqqqqqqrrnnnrrrqqqfepplllefggmmqqqgepeqraqmclks``skleccceelkssskegqr",
  244. X"nhhooooohhnnraqqqraaqgellcgmgcpksklelpkssskkplppkkkskpeceeeecggmqqqrrhhihnrqqgfeelllleecfggmggfpkeqrrrqfls`b``skplllllks`skefqqr",
  245. X"nhhooooohnraqqqqqrqqqgelpleceksskleelkss`skpleelpkssklefceeleecgqqqrnoooohraqgfcceellleeecfgffckkeqrnnqgls`b````skkpkks``sefqqrr",
  246. X"nhhooooonrqqqqaaqqqqmgelkpllks`splelpks``skpleelksssklcggfeeelefqqrnhoojohrqmfcfgfeellllllleeelkpcqrnnrqesb`sss```skss``skcmqrrr",
  247. X"nnhoojoonrqqrrrrqqqgggcelppkkssklellks```skleeelk``skefqmgfcellcqrnoojjjoonqgcfmqmfelpppkkkkkkkklgqrnnrqesb`kks`bbbbbbb`kegqrrrr",
  248. X"nnhoooohrrrnnhnrqqgggggfceelllllllpkks``sskplelks``slcgmgggcellcqrhojdjdoonqffgqqqgclkkkksssssskegqrrnrqck``kkksbbbbbb`slfqarrrr",
  249. X"nnhoooohrrnhoohnaqgffggqmggfffcellkkss``sskkkkks``skefgmmmgclplfqnodddddjonqcfqqqqmflpks``````spcqqrrrrqfksskkks`bbbb`slcqqrrrrr",
  250. X"nnhooohrqrhoooihrqgggmqqqaqqqmgcelkss``sssskss```sklecfgffelplegqnojddddoonqcgqaqqqfeks```ssskkecgqrrrqqflkskkkkkssskklegqqaarrr",
  251. X"nhioihnrqnojjjohnaqgqqrrnnrraqmgelkss`ssss``````skpeecccellplefqqnijddddoonqgqqraqqgeks`skkppllecgmqrraqgepkkplllleeecfggqqqqrrr",
  252. X"rhoohnrqqnojjdoohrqqqrrhhhnraqgfelkkssss```bb``skkleeeelpkkpefgqqrhojjjjohnrqqrrraqgekssklecffceecgqqrrqqflkkleccffgggggggqqqqar",
  253. X"rhoohraqrhodddjoohnnnnhhhhhnaqmgcelpkkss`bbb`sskklleeelkssklcgqqqrnhooooohnrrrrrrrqmeksklcgqqqgfeecgqrrrqgellegqqggffgfffggqqqqr",
  254. X"rhoohrqqrhojdddjoohhhhhhnhnrqqggfceelpk`bb``sskkkpplllks``kecggqqqrnnhhhhnrrrnnhnrqqcpkkegmqqqqgceefqarramelegqqqgelleeecfgmmqqq",
  255. X"rnhonqgqrhojddddjoihnnnnnhnrqggggggfelk``b`sskkkkkkpkks``skecgggqqqrrnnnnrrrrhhihnrqflklfmqrrrqmfeecgqrrrmelfqrrmclpkpleefggggmq",
  256. X"rnnhrqgqnoojjdjjoonrrarrnhnrqffggqqmflkssssskkkkkkskss```skleccfgmqarrrrraqqrhooihrqglklgqqrrrqqgccfgqrrageemrrqflpkkkpeefgggggq",
  257. X"rrrrrqqrhojjjjoohnrqqqqrnhnrgcfgmqqqgekkkkkkkkkkssss``b`ssklleeeecgqarrrrqqqrhojoonrqepeqqarrrqqmgggqqaaqfcgqrrqclpkkkplefgggggq",
  258. X"rraqqqqnojjdoohnrqqggqqrnhrqgccfmqqqmcllllpkkkkkss```bbb`skkpllllefqqrrramfgrhojjohrqelcqrrrraqqqmmqqqqqggmrrrrqcllpkkplefgmmgmq",
  259. X"qqqgcgrhodddohrqqffcfmqnhhrqmffgqqqqqgccccepkksss``bbbbbb`skkpppplegqrrragefrijjooonqcegarrraqqqqqqqqqqffgqnhhrqfelllpllefgmqqqq",
  260. X"qqgelfrojdddonagcllefqanhhrqqgggmqqqqqgggfelkkss````bbbbbbb`skklleegqrrrqfcmroooooinqeegrrrrqqqmqqqqqqgcgqrhhhnamcelllleefgqqqqq",
  261. X"qqglpfrojdjjhrqflkklcqrhhhrqqqmgmqqqqqqqqmfepkss````````bbb`skpleecgqqaqfcgrhooohohrmecqrnrrqqqmqqqqqgcfqrnhiohnqgcelleecgqqqrrr",
  262. X"qmcllmnojjoinrqclkklcqrhhhraqqqmgmqggqqrqqgelksssssssss``bbb`klecgggmqqcefqniihhhhnaflegqrrraqqqqqqqgfcgqrrnhoihrqgeeeecgqqqqrrr",
  263. X"qgelcqhooohnrrqclkklfqrhhhrrqqqqmqmgfqrrrqmfepksssskkkks`bbb`klfgqqqqgelcanihhnhhhrqepefqrrrrqqqqqmgccgqrrnnnioohrqfcefgqqqqqarr",
  264. X"qclemrhihnrrrqqfeplefqrnhhnrqqmggggffgqrrrqgcepkkkkkkkks`bbb`kegqqqqqelcqnhhnrrhhnrglkpegqqqqqqqqmgelcmqrrrrnhhohnrqgggqqqqqqqqa",
  265. X"mepcqnihnrraqqmfeeecgqrnhhhrqgfffggfcgqrrrqqgfelllllppkk`bbbskegqaqqgecahhnrrrrhhnqcpkkklcgqqqqqqgcllegqqrrrrnhooohnraqqqqqqqqqq",
  266. X"flegrhhhrraqqqgfcecfgqrnhihrqceecggffgqarrraqqgfeellpkks`bbbspegqqqgfgahihaqqrnnnagepkkskpefgqqqqgceeefgmqqrrnnhooihnrrqqqqqqqqg",
  267. X"llganihnrrqqqqmgfccfgqrnhoirqceefgggggqqrrrrrraqgceepkk`bbb`kleggqgccahohrqgqrnnrqelppkkkkpefmqqmgceeeeecgqarnhhhihhnraqqqqqqqge",
  268. X"keqnhihnrraqqqmgfcccgqanhoirgcfgqqmmmqqqqrrnnnrrqgelkssbbbbskeeffceegnoirqmqqnnrmellleeepkkpefggggccecellegqrnnnnrrrqqqqmqqqqgcp",
  269. X"emrhhohnrrrrqqqgfcccgqrhojorffqqaqqqqqqqqrnnnnrraqclk`bbbb`speecepklqninqggarnrqclllecccek`sleeccffggggelegqrnnrqqgffggmqqqmgelp",
  270. X"qrrnhihhrrrrqqqggfcfgqriojhqfqrnrrqqqqqqrrnrrrrrrqepsbbbbb`skllels`eqnrrqgqnhnqclplecgggek``klleefgqqqqgeegqarrqgclplecggqggellc",
  271. X"rrnhhhhhnrrrraqqgffgqqnojjhaqrhhhnrrqarrrrrrqqrrrqek`bbbb``sskkks`sfrnrqmqrhhrglppegmqmgesb`kkleefqqrramcfgqqqgfeellpplcggfeeefq",
  272. X"rnnhhhnnrrrrraqqqgggqrnooonrrnooihnrrrrnnrrqqqrrrqls`b``bb```ss``slqrrqqqrnhnqfllegqqqqgesbbsklecgqqrrqgecgqmfeecfgcekklececfqar",
  273. X"nnnnhhnnnraqarrrrqqqqrrhhnrrnoojoohnnnnhhnaqqqrrqgps`sssbbbbbbbb`keqrnrrrnnnrqceegqqqrqgl`bbsklefgqarrqgeecfcccfgqqgclkklefqannn",
  274. X"nnnnnhhhnrqqqrrrrqqqqqqrrqqrijddjoohhhhhhnrqqrrrqeksskss`bbbbbbbskeqrrrrrnnrqqgfgqarqaqgp`bbsplcfgqqqqgceeecfmqqqqqqfelpegqnhohh",
  275. X"hnnnhhhhhrrarrrraqgfffggggmroddddjooooooihnrrrrrgeksssss``bbbbb`slemqrrrrrrrqqqqqrrqqaqgkbb`klecfggqmgceeefmqrrnrrqqgcccgqroojoo",
  276. X"hhnnhhhohnrrrrrqgelpplleeemnjdddddjjooooihhnnnrqflkssssssssss`sskpecgqqqaaqqqqarrrqqqqqesb`speeeeccceeeecgqrnhhhrrqqggmqqrhojdjo",
  277. X"ohhhhhioohnrrqqekssskkkkpeqhddddddddjjooohhhnnrqflkkskkkkpkkksskkpllecggqqqqrnnnraqqaqgkbbspeceeellppplegqrhioihnrqqqqrrrhojjdjo",
  278. X"oooihhhiihnrqgek```skkkplfqhddddddddjooihhnnnrqqfelkkkplllppkkkkkkkkkplefgqrnhhnrqqrrqe`b`keeceekks`sklfqnhihhhhnrqqqrrrrnoojjoo",
  279. X"ojjooohhhhragps```skleeecgroddddddddjoihnnnnnrqqgfeelllellpkkkkkkkkssskpegqnhihrarrrqesb`keceeepk`bb`slqrioihnnhnraqarrrrniojjoo",
  280. X"ojjjoohnrrqges``sklecggmqqnoddddddddjonrrrrrrrrqqmgceelllpkkkkskkkssssskegqnhhrrrrrqcs`speeceekk`bbbbseqnihhrrnnnrraqqggqrhojooo",
  281. X"ojddoohrqgeelkskpeefgqqrrnojddddddddohrqqqqrrnrrqqqgfelkkkksssskkksss`skegannnrrrnafksklefccepk`bbbbbseqnihnrrrnnrrqqgcegrhojjoo",
  282. X"oojjoinrqellecccccfgmqrrniojddddddddonamggqrrnnnrrqgfekkkkkkssskkpkksskpeqarrrrnrrgpkpcgggcepk`bbbbb`seqrnnnrrrrrraqfellfqnojjoo",
  283. X"ooooonaqgfccggmqqqqqqqrrnhioodddddddonqgffqqrnhhnrqmclkklllkkskklllkkkklcqrrrnrrqflkegqqqgelksbbbbbbskeqrrrrrrrrraqmclpkeqnojjoo",
  284. X"oooinrqqqqqqqqqqqqqqmmqqqrrhojdddddjhrqgffgqrnnnnrqgepleffelkkkpeeellllegqqrrrrqcppeqqqqqgeks`bbbbb`spegqrrrrrraqqgcepkkeqrooooo",
  285. X"hhhhnrarrrrrrrrraqqgfccfgqrnhjddddjonrqmggggqarnramceefmqqfekkpefffceecggqqaqqflppeqarrrqglk`bbbbbbsklegqqarrrrqgfeelkkpeqrhiohh",
  286. X"rnhhnnnnnhnnrrrrqqgelkplegqrhjdddjonrqqqggffgqqqqqgccfqqqqflkkefgmggffgggqmgfekklfqrrrqqqflsbbbbbb`skpefgqqrrrqqfelkkkplcqrnnnrr",
  287. X"rhooihhhhhhhnrrqqgepkssskeqridddjonrqqqqqfeecfgqqqqgmqqraqgekpcgqqqqgggqmgclksklgqararaqqfpsbbbbbb`skplefqqrrrqgelkskklegrnnrqqq",
  288. X"rhoooohhhoihnrqfeeks`b``keqnodddonrqqqmmgfecgqqqarraqqqqqqgeplfmqqqqqggggclsskemqrqqqqrqgek`bbbbbbb`skplefmqqqqgepkssklfqrrrqgfg",
  289. X"anioooohhooonqflpk`bbbbbkeqnodddhrqmgffcccgqarrrnnnnrrqqqmfeefgqqqqqqqgelllplfqqqqqqqqaqfek`bbbbbbb`skklecfqqqmflkkskkegqrrqgccg",
  290. X"qrnhiohhioohrglk`bbbbbb`kcqhoddjhrqgcelleganhooooihnrrqqgccfgqqqqqqqqgclklfmqrrqqmmqqqqqclk`bbbbbbb``skpleegqqgfepkkklegqqqgfcgq",
  291. X"arrrnhhoojohqek`bbbbbb`slgrijddjhrqclkkpcqnojdddjoihrrqgceefqqqaqaqqqfelefqrrrrqgggqqqqqcls`bbbbbbbb`skkplefgggcellecffggfeeegqa",
  292. X"raqqrrniooirgp`bbbbbb`klcqrojdjohrqepkpemrnojddddjonraqfelecgqqrarqqmfcgqarnnrqggfgqqqqgcls`bbbbbbbb`sskkklecgfceeefggcekkkklgqr",
  293. X"raqqqqrhoonqesbbbbbb`klfqanojdjohaglppegarnhojddddohrqqfelecgqarrrqqqqqrrnnnrrqgffgqqqqgeps`bbbbbbbb````ssklegggggfffclksb`slgqr",
  294. X"rrqqqqrhohrgp`bbbbb`kefqqrnojddonqceecmqrrrrrhodddohrqgfceecgqqrrrqqrrnhhhhnrqqggfgqqqgfeps`bbbbbbbbbbbb``skefgmggcepks`bbb`pfqr",
  295. X"qqqqqqrhihqckbbbbb`kegqarrnojddonmeegqrrrqqqqrodddohrqqgggfggqqrnnrnhooooohnrqqqgggqqqgfeps````bbbbbb`sss``slcfgfeps`bbbbbb`kegq",
  296. X"mqqqqqrnhnqck`bbb`kefqarrnhojddorggmqrrrqgfgqrhjddohrqqqqqqmqqarnhioojjdjohnraqqmgmqqqgceps````bbbbb`kpepsb`kllepk`bbbbbbbb`kleg",
  297. X"fmqqqqrnhnqfks`b`klfqrrnhhhooddiqgqrnnrqfeeegqnojjohrrrraqqqqqrnhojddddddjohnraqqqqqqqgfepks````bbb`spefek``skksbbbbb```bb``skle",
  298. X"cggqqqrrnrqgekkskpegqrnhhhiojdjnqqrhhrqceplefqroooihnrrrrraqqrrhojdddddddjoohnrqqqqqqqgfelks``````skpefgfeks```bbbskkkks``bb`ske",
  299. X"cfggqqqrrrrqgelplefqqrnhioojjdorqroohrglpkklcqrhoohnnnnnnnrrrrnijddddddddjooihrrqqqqqqqgelks`sssskpecggqgflk```bbspeeepks`bb`ske",
  300. X"effffggqqaaqqgcecfgqqrrnhooddjhrqhoorqcpkkkpemrhiohnnnnhhnnrrnhojddddddddjooohnrqqqqqqqgepkssskklecgmqqqqgclkskklecfcelks`bbbskl",
  301. X"cfcceellegqqqqmgggqqqqrnhojddjnrrooiqgekkskkegqnhihnnnhhhhhnnniodddddddddjoooihrqqqqqqqqcpkssklecgqqrrrrqqgfceefgmgggfeks`bbbske",
  302. X"ecelkksskklcgqqqmqqqqqqrnodddjrrhohrqcekkkkpefqrnhhnnnnhhihhnhiojddddddddjoooohrqqqmqqaqcksskpefgqrrnnrraqqmggmqqqgmggeps`bb`skl",
  303. X"eels```sssskcgqqqqqqqqqanodddoqnjorqfelpkkkpefqrrhhnnnnhiooohhhhojdddddddjoooohnaqqmqarqck`spefqqrnhhhnrrqqqqqqqqmgqqgelk```sskl",
  304. X"ppsbbbskks``kegqqqqqqqqqrojddhaodoqfelllllllecgqrnnnrrnhhoooihnhojjdddddddjjoohnaqqqqraqes`sefgqrrnhhhnrrqqmggffcfgmqgclksssskkl",
  305. X"ksbbbskllksb`kcqqqqqqqrrnoooinnodoqelleeccceecgqrrnnrrnhiooohhoojdddddddddddjoinrqarrrqglsskcgqqrrrnhhnnrqqgfceeecfmqqgelkkkkpkp",
  306. X"sbbbkleceek`b`lfmqqqqarnnhhrrrioonqelecggggfffgqqrrrrrrhhoohhodddddddjdddddddoohrrrnnrqflkklcqqqqqrrnhnnrqgceeeeecfmqqgfelllllkk",
  307. X"bbbslcgggfl`bbkegqqqqrrnnnrmgrojirmeeegqqqqqgggqqrrrrrnhhoihidddddddjjddddddddooihnnnrqekkpegqqqqqqrnnnnrqgcelllecgmqqqqgfceeeks",
  308. X"bbspeggmggek`b`kefggqqqrqqgecroohrqffgqqaraqqqqqqrrrrrrnhhnhjdddddddjojdddddddjooinrqqglkklegqqqgmqrrnnnraqgceeeecggqqqqqggfeekb",
  309. X"b`kcggggggfek`b`pecffggmgellgnoohrqqmqqrrrrrqqqqarrrrrrnnrroddddddddoijdddddddjoinrqmgclkklcgqqqggqarhhhnrqqgceeefgmqqqqqqqgclsb",
  310. X"kpefggeeefgflsbbsklllelllkklqnoohnrqqqrrrnrrrrrrrraaqrrrrrnjddddddddohoddddddoinraqgfcelkklfgqqgfgqarhhohnrqqfceccfggmqqqqqgekss",
  311. X"effggclplefgcp`bb`sssssssskcqnhooihnnrrnnnnnrrrrrrraqqqqgqidddddddddihjdddddjhrqqqgceeepkkefqqqgffqrnooohhnrqmfcccfgggmqqaqmeksk",
  312. X"gqggelkkkkefgek`bbb``bb`skefqrniooohhnnrrrrrrnnnnnrrqqmecrjdddddddddhidddddjhrqqqqqgeeelkpegqqqgffqrhooohhhnrqgceeecfggqqaqgekkl",
  313. X"qaqflksssspcgflk`bbbbb`sklefgqrnhooohnrrrrrrrnnhhhnrqfepgnddddddddddiodddjinrqrrrrqqfcelplegqqqgggahooohnnhhnrmceleecgmqarqglkpf",
  314. X"arqeks````klcfelks```sklleeecgqrrhhhnrrqqqqqrrrnhhrrqekeqodddddddddohojdjirqqrhohnrqmgfelecgqaaqqqrhoohnrrnhhnqcellecgqqrraglklg",
  315. X"rrgls`bbb`skefgclkkkkkpeeelllecgqrrrrraqqqqqqrrnnhrqckpfrodddddddddinnhihnrrrhojohrqqggfccgqqrrrarrnnnrrrrnoohqfepplcgqrrnrglkeq",
  316. X"rrfpsbbbbb`kpcggeellllllelpkkkplefgqqqqqqqqqqqqrrrqfllcqnoddddddddjhrrrrnhioooooonrqmgqqmggqqqrrraqqqqqarrnooirgelllcgqrrnrglpcq",
  317. X"rqek`bbbbb`skefggfceeeeelpks```skpecgqqrqqqqqqqqgfeeegqrijddddddddjhrrniodddddjoonrqqqqaqqqqqqqqqqggggqqrrnojonqfllefmqnnnrgllgq",
  318. X"qfps`bbbbbbsklegggffccelpks`bbb``sklcgqqqqqqggcelkpcqrrhiodddddddddoihojddddddjohraqqqqrrrqmggffceeeeefqqrnojohrqcccgqrnhnackeqq",
  319. X"mek``bbbbbb`kpefggggfcelks`bbbbb``skegqqqaqqgeksklfqrnhhoojddddddddddjjjddddddoinraqqqrrrrqfellllpkkkpegqrhojdohrqggmqrhhnqekfrr",
  320. X"gek````bbbb`kpefggggfcelksbbbb`````klfgqqqqgek``pfqrrnnnhiojddddddddddjooojdddohrraaarrrrqgeppleelpkkklcmqrhoddonrqqqrrhhrqelqrr",
  321. X"glkssss``b`skleggggffcelk`bbb````b`slcgqqqgek`skcgqrnnrrrrnojddddddddjonnhoddjhnrrrrrrrrrqcleefggfelkkplcqrnojddohrrrnhhnrqecrnr",
  322. X"qelkkkkkssskpefmmgffccelk`bbb````b`skecggfes``pcggfqrrqmgqrhjdddddddjinrrhojoonrrrrrrnrrqflegqqqqqgfelllefqrnoojjohhhiohrqgcgrhn",
  323. X"qgellllpkkkpegqqmgccccelk`bb````bbbskleelk`b`pcfceeqrqfcgqrhjdddddddonrarhooinrrrrnnnnrrqfefqqrrrrqqgceeeefqrnoojoooojohrgecqhoh",
  324. X"rqqgfceellecgqqqgfccffceksbbb```bbb`skkksbb`pffekkegqfleqrnhodddddjohnrrnooonrrrrnnhnnrqqfcgqarrrrrqqqmggffgqrnhioojjjohrfleqhih",
  325. X"hhrrqggceefqqrrqmgffggfels`bb```bbbbbbb```slcfekkpcgflkeqrnhodddddohnnhooohrrqqrnhhhhnrqgffqqrrrnnnnrraqqqgggmqrnhojjdohrcpeqnio",
  326. X"iohhraqgfgmqrrraqggggggclk`bb```bbbbbbbbslegfekkkefclkkcqrrnoddddoohhiojoirqqqrrnhhhnnrqfcfmqrrnnhhhnnrrraqqqggmqrniojoorfleqrni",
  327. X"hiooinrqqqqrnnrrqqqmgmggek`bb````bbbbbspefffepkkeffekskcqqqnodddohhiojddonaqqqrnhhhhnraqfefgqrnhhhnnnhhnnrraqmgfgqrniooormeegqrn",
  328. X"rrnooonrqqrnhhnrrraqgggfek`bb``s````sklfgfelpplecfek``keggqnoddjohiojddonrqqqrnhhhnnrrqqfeegqrhhhnrrrnhhnnrrrqqfecqrnooonqgcfgqq",
  329. X"gqriojohrrnhhhnnnnrqqggfls`bb`ssssskeccfcepkkecgfclsb`slccgnjdjohoodddohrqqarnhoihnrrqqqgcegqnionrqqqrnhhhnnrrqqfefqrhiohrqggfgf",
  330. X"fgqnojjohnhhihhnnnrrqmfepsbbb`sskkpeffelkkkklcggelk`bb`klegnojooiojjoirqqqrrniooohrrqqqgfccgqhohrqqgmqqrnhnnrrrqmcegqnhoihnrqqgf",
  331. X"qgqrijjjoooooohhhhnrqgelk`bbb`skkleffclks`klcgfclks`bbb`spgrojjjojjohrqgmqrnoojjohrqqmgceegqrhihrqmgggqrrhhhrrrqqfecqrnoooohnrqq",
  332. X"rqqrhojdjjjjooohnnrqmclks`bbb`skkeffeks``skeffelkkss`bbbspgrnoojoohrqgfcgqrhojdjohrqgfceleqrrhhnrqqgffgqqnhhrrqqqgccgqriojjjoohn",
  333. X"hrqrhojddddddjohnrqqclks`bbbbb`klcfcksbb`spcfcpksssss```slgqrhhohhrqceccgqnojdddohrqgelplfqrhihnrqqgfccfqrnhnrqqggcecqrijdddddoo",
  334. X"ohrrniodddddddohrqgclks```bbbb`klcepsbbb`kecclkssskkksssklfqqrrrqqfeeeccgqnojdddohrqflkpcgqnhihnraqmfeeegqrnnrqgfcelegrhjddddddj",
  335. X"jonrnhodddddddonqflkks``````bbbkeclkbbbbslffeks``skkppkkpecffgfelllleeccgqnojdddohrgellegqrnhooinrrqgellcgqnnrqfeelplgrhjddddddd",
  336. X"dohnnhojddddddorqekkks``skkksbbkeck`bbbbsegfps```sklleellelellpkskpeeellcqroodjjonqflegqqqrrnooohhragellegqnnrmclkkklgqnoddddddd",
  337. X"ddohrrnioddddjnrqfeels`skllpkbbkfckbbbb`kcgck````sklefffelkkkkkkkkplllppemrhojjohrqcefqrrrrrrniooohrqcllegqnnrgcls`slfqnojdddddd",
  338. X"dddohnnniojddonraqqgekskeceekbbpgcsbbbbslccls````skecgggepsskkpllellpkkkpcqrhooonrgcgqarrraqqqrojjonqfelcmqrnrgeps`spcqrniojdddd",
  339. X"ddddjihnhiojjjihnnrqelleggfep`blge`bbb`pefeks```skpefqqgepkkpleeeelpkkksklfqnhhhnqccqarnrrqqggqnodjorqfcgqrnrrgeps`spegqrrnhojdd",
  340. X"ddddddjooojddddjihrgecgqqqgek``lfe`bbbsefclk````sklcgqmgeeccfffceelkkksssklgqnnnrgecqarrrqqfcegqhjdjhrqgqqrnrrgeksssklefgmqqrhjd",
  341. X"ddddddddddddddddonammqrrrqqek`seflsb`skcgcks````kpefgggfcgqqqqgfcelpkkkssskefqqrqfefqrrrqgclpklgrjddonrqqrrnnrmepsskkppkkpleqrod",
  342. X"ddddddddddddddddorqqrnhhrrgls`kecekssklffeks```skleffccfmarraqmgcelpkkkkkkkklcggfeegqqqqgelkkkkeqoddjohnrrrnnrqcpssskkss`skkeqhd",
  343. X"dddddddddddddddohrrnojoohrgkb`pcgclklecgfekssssklefffelfahhhnrqgfellpkkppkkkkpllleefggfelllllkkeqhjdddjohnnhhnqgls``ss```ssspqhd",
  344. X"dddddddddddddddinnoojddjhrfsb`lfgfeeefggelkksskpecfceplgrooonrqmfeellpppllllpkkkkpleeelppleccelefahddddjohnhnnames`````sskkskqhd",
  345. X"ddddddddddddddjihojdddddiqes`slfggfffggfelpkkkkleffepkeqhooohnrqgceellllleeellpkkkkpeeeeefggggclegroddddjohhnnrqeks```sskksskqhj",
  346. X"ojddddddddddddoooddddddjhqlkkpleecfffffceelpkkklecclkpgrhihhhnrqgfcelllleccfccepksskegmqqqqqmggelcqnoddddohnnnrqflkssskkss``kqno",
  347. X"iojddddddddddjoodddddddorgeeeellleeecfccceellppllllplfqrnhhhhhnrqgcelllecgmqgfeksskegqrrrqqqqqmfelcqnjddddohnnnrmclkkkkksbbbkmni",
  348. X"hoojdddddddddohodddddddirqmgfepkkkkpeecffceelpkkkkkegqrrrrnhhhnrqgcelllefqqqqgek`slfqarrrrqqqqqqgcefahodddohnnnrqgelkkss`bbbkgrn",
  349. X"nhhodddddddddoojddddddjhrrrqgeks``sklecfggcelpks``pgannnrrrnhhnrqgcellefmqqaqqesbsegqarrrraqqqqqqmfegahdddjohnnnrqclkks`bbb`kfqr"
  350. X};
  351. END_OF_FILE
  352.   if test 17328 -ne `wc -c <'bitmaps/background5.xpm'`; then
  353.     echo shar: \"'bitmaps/background5.xpm'\" unpacked with wrong size!
  354.   fi
  355.   # end of 'bitmaps/background5.xpm'
  356. fi
  357. if test -f 'level.c' -a "${1}" != "-c" ; then 
  358.   echo shar: Will not clobber existing file \"'level.c'\"
  359. else
  360.   echo shar: Extracting \"'level.c'\" \(15516 characters\)
  361.   sed "s/^X//" >'level.c' <<'END_OF_FILE'
  362. X#include "copyright.h"
  363. X
  364. X/*
  365. X *  Include file dependencies:
  366. X */
  367. X
  368. X#include <stdio.h>
  369. X#include <stdlib.h>
  370. X#include <stddef.h>
  371. X#include <assert.h>
  372. X#include <X11/Xlib.h>
  373. X#include <X11/Xutil.h>
  374. X#include <X11/Xos.h>
  375. X#include <xpm.h>
  376. X
  377. X#include "bitmaps/life.xpm"
  378. X
  379. X#include "error.h"
  380. X#include "audio.h"
  381. X#include "special.h"
  382. X#include "intro.h"
  383. X#include "gun.h"
  384. X#include "init.h"
  385. X#include "stage.h"
  386. X#include "sfx.h"
  387. X#include "score.h"
  388. X#include "blocks.h"
  389. X#include "bonus.h"
  390. X#include "highscore.h"
  391. X#include "ball.h"
  392. X#include "main.h"
  393. X#include "mess.h"
  394. X#include "misc.h"
  395. X
  396. X#include "level.h"
  397. X
  398. X/*
  399. X *  Internal macro definitions:
  400. X */
  401. X
  402. X#define MAX_LIVES            6
  403. X#define START_LIVES            3
  404. X#define NEW_LIVE_SCORE_INC    100000L
  405. X
  406. X#define SHOTS_TO_KILL_SPECIAL    3
  407. X
  408. X#define BUF_SIZE            1024
  409. X
  410. X/*
  411. X *  Internal type declarations:
  412. X */
  413. X
  414. X#if NeedFunctionPrototypes
  415. Xstatic void DrawLevelTimeBonus(Display *display, Window window, int timebonus);
  416. X#else
  417. Xstatic void DrawLevelTimeBonus();
  418. X#endif
  419. X
  420. X/*
  421. X *  Internal variable declarations:
  422. X */
  423. X
  424. XPixmap        lifePixmap, lifeMask;    
  425. Xint         livesLeft = 3;
  426. Xu_long        level;
  427. Xu_long        startlevel;
  428. Xtime_t        gameTime;
  429. Xint            bonus = 1;
  430. Xchar         levelTitle[BUF_SIZE];
  431. Xint         bonusBlock = False;
  432. Xstatic int     bulletPos;
  433. Xstatic int     timeBonus;
  434. X
  435. X#if NeedFunctionPrototypes
  436. Xvoid InitialiseLevelInfo(Display *display, Window window, Colormap colormap)
  437. X#else
  438. Xvoid InitialiseLevelInfo(display, window, colormap)
  439. X    Display *display;
  440. X    Window window;
  441. X    Colormap colormap;
  442. X#endif
  443. X{
  444. X    XpmAttributes   attributes;
  445. X    int             XpmErrorStatus;
  446. X
  447. X    attributes.valuemask = XpmColormap;
  448. X    attributes.colormap = colormap;
  449. X
  450. X    /* Create xpm pixmap for the life */
  451. X    XpmErrorStatus = XpmCreatePixmapFromData(display, window, life_xpm, 
  452. X        &lifePixmap, &lifeMask, &attributes);
  453. X    HandleXPMError(display, XpmErrorStatus, "InitialiseLevelInfo()");
  454. X
  455. X    /* Free the xpm pixmap attributes */
  456. X    XpmFreeAttributes(&attributes);
  457. X}
  458. X
  459. X#if NeedFunctionPrototypes
  460. Xvoid DecLevelTimeBonus(Display *display, Window window)
  461. X#else
  462. Xvoid DecLevelTimeBonus(display, window)
  463. X    Display *display;
  464. X    Window window;
  465. X#endif
  466. X{
  467. X    /* Decrement the time bonus */
  468. X    timeBonus--;    
  469. X
  470. X    /* Cannot step back in time */
  471. X    if (timeBonus < 0) 
  472. X        timeBonus = 0;
  473. X    else
  474. X    {
  475. X        /* Draw the time bonus */
  476. X        DrawLevelTimeBonus(display, window, timeBonus);
  477. X    }
  478. X}
  479. X
  480. X#if NeedFunctionPrototypes
  481. Xint GetLevelTimeBonus(void)
  482. X#else
  483. Xint GetLevelTimeBonus()
  484. X#endif
  485. X{
  486. X    /* return the time bonus */
  487. X    return timeBonus;    
  488. X}
  489. X
  490. X#if NeedFunctionPrototypes
  491. Xvoid SetLevelTimeBonus(Display *display, Window window, int seconds)
  492. X#else
  493. Xvoid SetLevelTimeBonus(display, window, seconds)
  494. X    Display *display;
  495. X    Window window;
  496. X    int seconds;
  497. X#endif
  498. X{
  499. X    assert(timeBonus >= 0);
  500. X
  501. X    /* Reset the time bonus to desired time */
  502. X    timeBonus = seconds;    
  503. X
  504. X    /* Draw the time bonus */
  505. X    DrawLevelTimeBonus(display, window, timeBonus);
  506. X}
  507. X
  508. X#if NeedFunctionPrototypes
  509. Xstatic void DrawLevelTimeBonus(Display *display, Window window, int timebonus)
  510. X#else
  511. Xstatic void DrawLevelTimeBonus(display, window, timebonus)
  512. X    Display *display;
  513. X    Window window;
  514. X    int timebonus;
  515. X#endif
  516. X{
  517. X    int len, minutes, seconds;
  518. X    char str[10];
  519. X
  520. X    /* Work out the minutes and seconds using time bonus */
  521. X    minutes = timebonus / 60;
  522. X    seconds = timebonus % 60;
  523. X
  524. X    /* Construct a string with the time bonus and draw it */
  525. X    sprintf(str, "%02d:%02d", minutes, seconds);
  526. X    len = strlen(str);
  527. X
  528. X    /* Draw the text now thanks  - using title font for big numbers */
  529. X    XClearWindow(display, window);
  530. X    DrawText(display, window, 2, 7, titleFont, black, str, len);
  531. X
  532. X    /* The less time you have the more drastic the colour comes */
  533. X    if (timebonus <= 10)
  534. X        DrawText(display, window, 0, 5, titleFont, red, str, len);
  535. X    else if (timebonus <= 60)
  536. X        DrawText(display, window, 0, 5, titleFont, yellow, str, len);
  537. X    else 
  538. X        DrawText(display, window, 0, 5, titleFont, green, str, len);
  539. X}
  540. X
  541. X#if NeedFunctionPrototypes
  542. Xvoid DrawLife(Display *display, Window window, int x, int y)
  543. X#else
  544. Xvoid DrawLife(display, window, x, y)
  545. X    Display *display;
  546. X    Window window;
  547. X    int x;
  548. X    int y;
  549. X#endif
  550. X{
  551. X    /* Draw the life pixmap */
  552. X    RenderShape(display, window, lifePixmap, lifeMask, 
  553. X        x-12, y-12, 25, 24, True);
  554. X}
  555. X
  556. X#if NeedFunctionPrototypes
  557. Xvoid DisplayLevelInfo(Display *display, Window window, u_long level)
  558. X#else
  559. Xvoid DisplayLevelInfo(display, window, level)
  560. X    Display *display;
  561. X    Window window;
  562. X    u_long level;
  563. X#endif
  564. X{
  565. X    int i;
  566. X
  567. X    /* Clear the window for level information */
  568. X    XClearWindow(display, levelWindow);
  569. X
  570. X    /* Put the level number up */
  571. X    DrawOutNumber(display, levelWindow, level, 260, 0);
  572. X
  573. X    /* Draw out the lives left pixmaps */
  574. X    for (i = 0; i < livesLeft; i++)
  575. X        DrawLife(display, window, 175 - (i * 30), 21);
  576. X
  577. X    /* Draw the score in the score window */
  578. X    DisplayScore(display, scoreWindow, score);
  579. X
  580. X    /* Draw all the bullets in the ammo pouch ;-) */
  581. X    ReDrawBulletsLeft(display);
  582. X
  583. X    XFlush(display);
  584. X}
  585. X
  586. X#if NeedFunctionPrototypes
  587. Xvoid SetLevelNumber(int levelNum)
  588. X#else
  589. Xvoid SetLevelNumber(levelNum)
  590. X    int levelNum;
  591. X#endif
  592. X{
  593. X    level = (u_long) levelNum;
  594. X}
  595. X
  596. X#if NeedFunctionPrototypes
  597. Xvoid SetStartingLevel(int levelNum)
  598. X#else
  599. Xvoid SetStartingLevel(levelNum)
  600. X    int levelNum;
  601. X#endif
  602. X{
  603. X    startlevel = (u_long) levelNum;
  604. X}
  605. X
  606. X#if NeedFunctionPrototypes
  607. Xint GetStartingLevel(void)
  608. X#else
  609. Xint GetStartingLevel()
  610. X#endif
  611. X{
  612. X    return ((int) startlevel);
  613. X}
  614. X
  615. X#if NeedFunctionPrototypes
  616. Xvoid RedrawLevelInfo(Display *display, Window window)
  617. X#else
  618. Xvoid RedrawLevelInfo(display, window)
  619. X    Display *display;
  620. X    Window    window;
  621. X#endif
  622. X{
  623. X    DisplayLevelInfo(display, window, level);
  624. X}
  625. X
  626. X#if NeedFunctionPrototypes
  627. Xvoid FreeLevelInfo(Display *display)
  628. X#else
  629. Xvoid FreeLevelInfo(display)
  630. X    Display *display;
  631. X#endif
  632. X{
  633. X    /* Free the life pixmap  */
  634. X    if (lifePixmap)        XFreePixmap(display, lifePixmap);
  635. X    if (lifeMask)        XFreePixmap(display, lifeMask);
  636. X}
  637. X
  638. X#if NeedFunctionPrototypes
  639. Xvoid DeleteABullet(Display *display)
  640. X#else
  641. Xvoid DeleteABullet(display)
  642. X    Display *display;
  643. X#endif
  644. X{
  645. X    bulletPos = 192 - (GetNumberBullets() * 9);
  646. X
  647. X    /* Take a bullet away from ammo belt */
  648. X    EraseTheBullet(display, levelWindow, bulletPos, 43);
  649. X
  650. X    DecNumberBullets();
  651. X}
  652. X
  653. X#if NeedFunctionPrototypes
  654. Xvoid AddABullet(Display *display)
  655. X#else
  656. Xvoid AddABullet(display)
  657. X    Display *display;
  658. X#endif
  659. X{
  660. X    IncNumberBullets();
  661. X
  662. X    bulletPos = 192 - (GetNumberBullets() * 9);
  663. X
  664. X    /* Add a bullet to the ammo belt */
  665. X    DrawTheBullet(display, levelWindow, bulletPos, 43);
  666. X}
  667. X
  668. X#if NeedFunctionPrototypes
  669. Xvoid ReDrawBulletsLeft(Display *display)
  670. X#else
  671. Xvoid ReDrawBulletsLeft(display)
  672. X    Display *display;
  673. X#endif
  674. X{
  675. X    int x, i;
  676. X
  677. X    /* Draw the bullets in the ammo belt */
  678. X    for (i = 0; i < GetNumberBullets(); i++)
  679. X    {
  680. X        x = 192 - ((i+1) * 9);
  681. X        DrawTheBullet(display, levelWindow, x, 43);
  682. X    } 
  683. X}
  684. X
  685. X#if NeedFunctionPrototypes
  686. Xvoid DecExtraLife(Display *display)
  687. X#else
  688. Xvoid DecExtraLife(display)
  689. X    Display *display;
  690. X#endif
  691. X{
  692. X    /* Take a life */
  693. X    livesLeft--;
  694. X
  695. X    if (livesLeft < 0) 
  696. X        livesLeft = 0;
  697. X
  698. X    /* redraw the level info */
  699. X    DisplayLevelInfo(display, levelWindow, level);
  700. X}
  701. X
  702. X#if NeedFunctionPrototypes
  703. Xvoid AddExtraLife(Display *display)
  704. X#else
  705. Xvoid AddExtraLife(display)
  706. X    Display *display;
  707. X#endif
  708. X{
  709. X    /* Add a new life */
  710. X    livesLeft++;
  711. X
  712. X    /* Dont issue too many extra balls! */
  713. X    if (livesLeft >= MAX_LIVES) 
  714. X        livesLeft = MAX_LIVES;
  715. X    else
  716. X        SetCurrentMessage(display, messWindow, "Extra ball", True);
  717. X
  718. X    /* redraw the level info */
  719. X    DisplayLevelInfo(display, levelWindow, level);
  720. X}
  721. X
  722. X#if NeedFunctionPrototypes
  723. Xvoid CheckAndAddExtraLife(Display *display, long score)
  724. X#else
  725. Xvoid CheckAndAddExtraLife(display, score)
  726. X    Display *display;
  727. X    long score;
  728. X#endif
  729. X{
  730. X    static int ballInc = 0;
  731. X
  732. X    /* Add a new life? */
  733. X    if ((score) && ((score / NEW_LIVE_SCORE_INC) != ballInc)) 
  734. X    {
  735. X        /* Add a new life */
  736. X        AddExtraLife(display);
  737. X    }
  738. X
  739. X    /* Next inc before adding a new life */
  740. X    ballInc = score / NEW_LIVE_SCORE_INC;
  741. X}
  742. X
  743. X#if NeedFunctionPrototypes
  744. Xvoid HandleGameTimer(Display *display, Window window)
  745. X#else
  746. Xvoid HandleGameTimer(display, window)
  747. X    Display *display;
  748. X    Window window;
  749. X#endif
  750. X{
  751. X    static time_t oldTime = 0;
  752. X
  753. X    /* Time to decrement the timer */
  754. X    if (time(NULL) > oldTime)
  755. X    {
  756. X        /* Decrement the timer bonus */
  757. X        DecLevelTimeBonus(display, timeWindow);
  758. X        oldTime = time(NULL);
  759. X    }
  760. X}
  761. X
  762. X#if NeedFunctionPrototypes
  763. Xvoid CheckGameRules(Display *display, Window window)
  764. X#else
  765. Xvoid CheckGameRules(display, window)
  766. X    Display *display;
  767. X    Window window;
  768. X#endif
  769. X{
  770. X    CheckAndAddExtraLife(display, score);
  771. X
  772. X    HandleGameTimer(display, window);
  773. X
  774. X    if (StillActiveBlocks() == False)
  775. X    {
  776. X        /* Turn off the x2 x4 bonuses */
  777. X        Togglex2Bonus(display, False);
  778. X        Togglex4Bonus(display, False);
  779. X        DrawSpecials(display);
  780. X
  781. X        /* Give the play a big head */
  782. X        if (noSound == False) playSoundFile("applause", 70);
  783. X
  784. X        /* Finished level now so set up bonus screen */
  785. X        mode = MODE_BONUS;
  786. X        SetupBonusScreen(display, mainWindow);
  787. X    }
  788. X}
  789. X
  790. X#if NeedFunctionPrototypes
  791. Xvoid UpdateHighScores(void)
  792. X#else
  793. Xvoid UpdateHighScores()
  794. X#endif
  795. X{
  796. X    time_t endTime;
  797. X    u_long theLevel;
  798. X
  799. X    /* Obtain the game duration in seconds - taking account for pauses */
  800. X    endTime = time(NULL) - gameTime - pausedTime;
  801. X
  802. X    /* Adjust the level so that the starting level is taken into account */
  803. X    theLevel = level - (u_long) GetStartingLevel() + 1L;
  804. X
  805. X    /* Update the high score table */
  806. X    (void) CheckAndAddScoreToHighScore(score, theLevel, endTime, PERSONAL);
  807. X    if (CheckAndAddScoreToHighScore(score, theLevel, endTime, GLOBAL) == False)
  808. X        ResetHighScore(PERSONAL);
  809. X    else
  810. X        ResetHighScore(GLOBAL);
  811. X}
  812. X
  813. X
  814. X#if NeedFunctionPrototypes
  815. Xvoid EndTheGame(Display *display, Window window)
  816. X#else
  817. Xvoid EndTheGame(display, window)
  818. X    Display *display;
  819. X    Window window;
  820. X#endif
  821. X{
  822. X    /* Game over man! */
  823. X    SetCurrentMessage(display, messWindow, "- Game Over - ", True);
  824. X
  825. X    if (noSound == False)
  826. X        playSoundFile("game_over", 100);
  827. X
  828. X    UpdateHighScores();
  829. X
  830. X    /* Reset game and setup for high score table */
  831. X    gameActive = False;
  832. X    SetLevelNumber(GetStartingLevel());
  833. X    ResetIntroduction();
  834. X    mode = MODE_HIGHSCORE;
  835. X
  836. X    TurnSpecialsOff(display);
  837. X}
  838. X
  839. X#if NeedFunctionPrototypes
  840. Xvoid DeadBall(Display *display, Window window)
  841. X#else
  842. Xvoid DeadBall(display, window)
  843. X    Display *display;
  844. X    Window window;
  845. X#endif
  846. X{
  847. X
  848. X    /* Decrement the number of lives left and display so */
  849. X    livesLeft--;
  850. X    DisplayLevelInfo(display, levelWindow, level);
  851. X
  852. X    /* Disable some of the specials */
  853. X    Togglex2Bonus(display, False);
  854. X    Togglex4Bonus(display, False);
  855. X    ToggleKiller(display, False);
  856. X    DrawSpecials(display);
  857. X
  858. X    SetCurrentMessage(display, messWindow, "Ball vapourised!", True);
  859. X
  860. X    if (livesLeft < 0 && GetAnActiveBall() == -1)
  861. X        EndTheGame(display, window);
  862. X    else 
  863. X    {
  864. X        if (noSound == False) playSoundFile("balllost", 100);
  865. X        ResetBallStart(display, window);
  866. X    }
  867. X}
  868. X
  869. X#if NeedFunctionPrototypes
  870. Xchar *GetLevelName(void)
  871. X#else
  872. Xchar *GetLevelName()
  873. X#endif
  874. X{
  875. X    /* Return the name of the current level */
  876. X    return (levelTitle);
  877. X}
  878. X
  879. X#if NeedFunctionPrototypes
  880. Xint ReadNextLevel(Display *display, Window window, char *levelName)
  881. X#else
  882. Xint ReadNextLevel(display, window, levelName)
  883. X    Display *display;
  884. X    Window window;
  885. X    char *levelName;
  886. X#endif
  887. X{
  888. X    FILE *levelFile;
  889. X    int row, col, type;
  890. X    char str[BUF_SIZE];
  891. X    int    timeLimit = 180;
  892. X
  893. X    /* Clear all existing mess in structures */
  894. X    ClearBlockArray();
  895. X
  896. X    /* Setup the new level data */
  897. X    blocksExploding = 0;
  898. X    colWidth     = PLAY_WIDTH / MAX_COL;
  899. X    rowHeight     = PLAY_HEIGHT / MAX_ROW;
  900. X    bonusBlock     = False;
  901. X    ResetNumberBonus();
  902. X
  903. X    /* Open the new level data file for reading */
  904. X    if ((levelFile = fopen(levelName, "r")) == NULL)
  905. X    {
  906. X        ErrorMessage("Error: Cannot load level data - check level directory.");
  907. X        return False;
  908. X    }
  909. X
  910. X    /* Obtain the title string */
  911. X    fgets(levelTitle, BUF_SIZE, levelFile);
  912. X
  913. X    /* Now get the time bonus from the level file */
  914. X    fgets(str, BUF_SIZE, levelFile);
  915. X    if (sscanf(str, "%d", &timeLimit) != 1)
  916. X    {
  917. X        ErrorMessage("Error: Cannot parse level data - time bonus error.");
  918. X        return False;
  919. X    }
  920. X
  921. X    /* Set and draw the time limit for the level */
  922. X    SetLevelTimeBonus(display, timeWindow, timeLimit);
  923. X
  924. X    for (row = 0; row < (MAX_ROW - 3); row++)
  925. X    {
  926. X        for (col = 0; col < MAX_COL; col++)
  927. X        {
  928. X            /* Get the next character from the level data file */
  929. X            type = fgetc(levelFile);
  930. X
  931. X            switch (type)
  932. X            {
  933. X                case 'H' :    /* hyperspace block - walls are now gone */
  934. X                    AddNewBlock(display, window, row, col, HYPERSPACE_BLK, 0);
  935. X                    break;
  936. X                    
  937. X                case 'B' :    /* bullet block - ammo */
  938. X                    AddNewBlock(display, window, row, col, BULLET_BLK, 0);
  939. X                    break;
  940. X                    
  941. X                case 'r' :    /* A red block */
  942. X                    AddNewBlock(display, window, row, col, RED_BLK, 0);
  943. X                    break;
  944. X                    
  945. X                case 'g' :    /* A green block */
  946. X                    AddNewBlock(display, window, row, col, GREEN_BLK, 0);
  947. X                    break;
  948. X                    
  949. X                case 'b' :    /* A blue block */
  950. X                    AddNewBlock(display, window, row, col, BLUE_BLK, 0);
  951. X                    break;
  952. X                    
  953. X                case 't' :    /* A tan block */
  954. X                    AddNewBlock(display, window, row, col, TAN_BLK, 0);
  955. X                    break;
  956. X                    
  957. X                case 'p' :    /* A purple block */
  958. X                    AddNewBlock(display, window, row, col, PURPLE_BLK, 0);
  959. X                    break;
  960. X                    
  961. X                case 'y' :    /* A yellow block */
  962. X                    AddNewBlock(display, window, row, col, YELLOW_BLK, 0);
  963. X                    break;
  964. X                    
  965. X                case 'w' :    /* A solid wall block */
  966. X                    AddNewBlock(display, window, row, col, BLACK_BLK, 0);
  967. X                    break;
  968. X                    
  969. X                case '0' :    /* A counter block - no number */
  970. X                    AddNewBlock(display, window, row, col, COUNTER_BLK, 0);
  971. X                    break;
  972. X                    
  973. X                case '1' :    /* A counter block level 1 */
  974. X                    AddNewBlock(display, window, row, col, COUNTER_BLK, 1);
  975. X                    break;
  976. X                    
  977. X                case '2' : /* A counter block level 2 */
  978. X                    AddNewBlock(display, window, row, col, COUNTER_BLK, 2);
  979. X                    break;
  980. X                    
  981. X                case '3' : /* A counter block level 3 */
  982. X                    AddNewBlock(display, window, row, col, COUNTER_BLK, 3);
  983. X                    break;
  984. X                    
  985. X                case '4' : /* A counter block level 4 */
  986. X                    AddNewBlock(display, window, row, col, COUNTER_BLK, 4);
  987. X                    break;
  988. X                    
  989. X                case '5' : /* A counter block level 5  - highest */
  990. X                    AddNewBlock(display, window, row, col, COUNTER_BLK, 5);
  991. X                    break;
  992. X                    
  993. X                case 'X' : /* A bomb block - arggh! */
  994. X                    AddNewBlock(display, window, row, col, BOMB_BLK, 0);
  995. X                    break;
  996. X
  997. X                case 'D' : /* A death block */
  998. X                    AddNewBlock(display, window, row, col, DEATH_BLK, 
  999. X                        SHOTS_TO_KILL_SPECIAL);
  1000. X                    break;
  1001. X
  1002. X                case 'L' : /* An extra ball block */
  1003. X                    AddNewBlock(display, window, row, col, EXTRABALL_BLK, 0);
  1004. X                    break;
  1005. X
  1006. X                case 'M' : /* A machine gun block */
  1007. X                    AddNewBlock(display, window, row, col, MGUN_BLK, 
  1008. X                        SHOTS_TO_KILL_SPECIAL);
  1009. X                    break;
  1010. X
  1011. X                case 'W' : /* A wall off block */
  1012. X                    AddNewBlock(display, window, row, col, WALLOFF_BLK, 
  1013. X                        SHOTS_TO_KILL_SPECIAL);
  1014. X                    break;
  1015. X
  1016. X                case '?' : /* A random changing block */
  1017. X                    AddNewBlock(display, window, row, col, RANDOM_BLK, 0);
  1018. X                    break;
  1019. X
  1020. X                case 'm' : /* A multiple ball block */
  1021. X                    AddNewBlock(display, window, row, col, MULTIBALL_BLK, 
  1022. X                        SHOTS_TO_KILL_SPECIAL);
  1023. X                    break;
  1024. X
  1025. X                case 's' : /* A sticky block */
  1026. X                    AddNewBlock(display, window, row, col, STICKY_BLK, 
  1027. X                        SHOTS_TO_KILL_SPECIAL);
  1028. X                    break;
  1029. X
  1030. X                case 'R' :    /* reverse block - switch paddle control */
  1031. X                    AddNewBlock(display, window, row, col, REVERSE_BLK, 
  1032. X                        SHOTS_TO_KILL_SPECIAL);
  1033. X                    break;
  1034. X                    
  1035. X                case '<' :    /* shrink paddle block - make paddle smaller */
  1036. X                    AddNewBlock(display, window, row, col, PAD_SHRINK_BLK, 
  1037. X                        SHOTS_TO_KILL_SPECIAL);
  1038. X                    break;
  1039. X                    
  1040. X                case '>' :    /* expand paddle block - make paddle bigger */
  1041. X                    AddNewBlock(display, window, row, col, PAD_EXPAND_BLK, 
  1042. X                        SHOTS_TO_KILL_SPECIAL);
  1043. X                    break;
  1044. X                    
  1045. X                default:
  1046. X                    break;
  1047. X            }
  1048. X        }
  1049. X
  1050. X        /* Get the newline */
  1051. X        type = fgetc(levelFile);
  1052. X    }
  1053. X
  1054. X    /* Close our level data file */
  1055. X    if (fclose(levelFile) < 0)
  1056. X        ErrorMessage("Warning: Cannot close level data file.");
  1057. X
  1058. X    return True;
  1059. X}
  1060. END_OF_FILE
  1061.   if test 15516 -ne `wc -c <'level.c'`; then
  1062.     echo shar: \"'level.c'\" unpacked with wrong size!
  1063.   fi
  1064.   # end of 'level.c'
  1065. fi
  1066. if test -f 'sfx.h' -a "${1}" != "-c" ; then 
  1067.   echo shar: Will not clobber existing file \"'sfx.h'\"
  1068. else
  1069.   echo shar: Extracting \"'sfx.h'\" \(866 characters\)
  1070.   sed "s/^X//" >'sfx.h' <<'END_OF_FILE'
  1071. X#ifndef _SFX_H_
  1072. X#define _SFX_H_
  1073. X
  1074. X#include "copyright.h"
  1075. X
  1076. X/*
  1077. X *  Dependencies on other include files:
  1078. X */
  1079. X
  1080. X#include <X11/Xlib.h>
  1081. X
  1082. X/*
  1083. X *  Constants and macros:
  1084. X */
  1085. X
  1086. X#define SFX_NONE        0
  1087. X#define SFX_SCROLL_ON   1
  1088. X#define SFX_SCROLL_OFF  2
  1089. X#define SFX_DOTS        3
  1090. X#define SFX_SHAKE          4
  1091. X#define SFX_BLOCKFILL      5
  1092. X#define SFX_SCATTER      6
  1093. X
  1094. X/*
  1095. X *  Type declarations:
  1096. X */
  1097. X
  1098. X/*
  1099. X *  Function prototypes:
  1100. X */
  1101. X
  1102. X#if NeedFunctionPrototypes
  1103. Xvoid SetSfxEndFrame(int endFrame);
  1104. Xvoid changeSfxMode(int newMode);
  1105. Xint oldSfxMode(void);
  1106. Xint currentSfxMode(void);
  1107. Xint WindowShakeEffect(Display *display, Window window);
  1108. Xint getSpecialEffects(Display *display);
  1109. Xvoid useSpecialEffects(int state);
  1110. X#else
  1111. Xvoid useSpecialEffects();
  1112. Xint getSpecialEffects();
  1113. Xvoid SetSfxEndFrame();
  1114. Xvoid changeSfxMode();
  1115. Xint oldSfxMode();
  1116. Xint currentSfxMode();
  1117. Xint WindowShakeEffect();
  1118. X#endif
  1119. X
  1120. X
  1121. X#endif
  1122. END_OF_FILE
  1123.   if test 866 -ne `wc -c <'sfx.h'`; then
  1124.     echo shar: \"'sfx.h'\" unpacked with wrong size!
  1125.   fi
  1126.   # end of 'sfx.h'
  1127. fi
  1128. echo shar: End of archive 12 \(of 26\).
  1129. cp /dev/null ark12isdone
  1130. MISSING=""
  1131. for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 ; do
  1132.     if test ! -f ark${I}isdone ; then
  1133.     MISSING="${MISSING} ${I}"
  1134.     fi
  1135. done
  1136. if test "${MISSING}" = "" ; then
  1137.     echo You have unpacked all 26 archives.
  1138.     rm -f ark[1-9]isdone ark[1-9][0-9]isdone
  1139.     echo "merging split files..."
  1140.     cat blocks.c[12] > blocks.c
  1141.     rm blocks.c[12]
  1142.     echo "blocks.c done"
  1143.     cat bitmaps/earth.xpm.Z.u.[ab] > bitmaps/earth.xpm.Z.uue
  1144.     rm bitmaps/earth.xpm.Z.u.[ab]
  1145.     echo "bitmaps/earth.xpm.Z.uue done"
  1146. else
  1147.     echo You still must unpack the following archives:
  1148.     echo "        " ${MISSING}
  1149. fi
  1150. exit 0
  1151. exit 0 # Just in case...
  1152. -- 
  1153.   // chris@Sterling.COM           | Send comp.sources.x submissions to:
  1154. \X/  Amiga - The only way to fly! |    sources-x@sterling.com
  1155.  "It's intuitively obvious to the |
  1156.   most casual observer..."        | GCS d+/-- p+ c++ l+ m+ s++/+ g+ w+ t+ r+ x+
  1157.