home *** CD-ROM | disk | FTP | other *** search
/ Windows Shareware GOLD / NuclearComputingVol3No1.cdr / games / f1277 / landmine.tbk (.txt)
Asymetrix ToolBook File  |  1990-08-08  |  96KB  |  1,715 lines

  1. '&#(%
  2. System
  3. EnterBook
  4. SizeToPage
  5. EnterBook
  6. EnterBook
  7. SizeToPage
  8. LANDMINE v1.0
  9. `D|D|
  10. `D|D|
  11. `D|D|
  12. `D|D|
  13. EnterBook
  14. 4CurrentSquare, Cheated, DisrupterUsed, Jump, GameScore, StartTime
  15. 4TimeLeft
  16. "StatusBox" 
  17. "Setting up - Please wait"
  18. -- uncomment 
  19. user version
  20. SysTimeFormat 
  21. k32767
  22. Systime
  23. SysLockScreen 
  24. Button Help 
  25. GameIsTimed 
  26. ScoreDisplay
  27. SizeToPage
  28. container 
  29. Rectangle 1 
  30. FontSize 
  31. FontStyle 
  32. FillColor 
  33. Yellow
  34. (98) < NoOfMines 
  35. i <> 2 
  36. i <> 11 
  37. i <> 12
  38. GameTime 
  39. 3000 + 50 * 
  40. "Right - Get out 
  41. that!"
  42. CountMines 
  43. EnterBook
  44. EnterBook
  45. StatusBox
  46. Setting up - Please wait
  47. seconds
  48. h:min
  49. GameIsTimed
  50. SizeToPage
  51. container
  52. container
  53. StatusBox
  54. StatusBox
  55. 60,50,100
  56. NoOfMines
  57. container
  58. container
  59. GameIsTimed
  60. GameTime
  61. TimeLeft
  62. NoOfMines
  63. Score
  64. StatusBox
  65. Right - Get out of that!
  66. CountMines
  67. ScoreDisplay
  68. TimeLeft
  69. CurrentSquare
  70. Cheated
  71. DisrupterUsed
  72. GameScore
  73. StartTime
  74. `D|D|
  75. `D|D|
  76.  to 0
  77. HelpText
  78. CurrentSquare
  79. NoOfMines
  80. MoveMan
  81. ManOffEdge
  82. ManOffEdge
  83. ManOffEdge
  84. set ItsaMine to the container of Rectangle 
  85. You just got blown to Kingdom Come
  86. Aaaargh!
  87. CountMines
  88. move group Man to position of Rectangle 
  89. set the FillColor of Rectangle 
  90.  to Green
  91. Direction
  92. CurrentSquare
  93. PrevCSq
  94. ItsaMine
  95. ManOffEdge
  96. You decide not to jump into the barbed wire after all!
  97. CurrentSquare
  98. PrevCSq
  99. CountMines
  100. NewSquare
  101. set NearbyMines to NearbyMines + the container of Rectangle 
  102. StatusBox
  103. StatusBox
  104. There are 
  105.  mines near you
  106. CheckSquare
  107. NearbyMines
  108. CurrentSquare
  109. NewSquare
  110. NewSquare
  111. CurrentSquare
  112. PrevCSq
  113. Direction
  114. System
  115. `D|D|
  116. `D|D|
  117. `D|D|
  118. `D|D|
  119. `D|D|
  120. EnterBook
  121. 4CurrentSquare, Cheated, DisrupterUsed, Jump, GameScore
  122. "StatusBox" 
  123. "Setting up - Please wait"
  124. -- uncomment 
  125. user version
  126. SysTimeFormat 
  127. k32767
  128. SysChangesDB 
  129. SysLockScreen 
  130. Button Help 
  131. SizeToPage
  132. container 
  133. Rectangle 1 
  134. FontSize 
  135. FontStyle 
  136. FillColor 
  137. Yellow
  138. (98) < NoOfMines 
  139. i <> 2 
  140. i <> 11 
  141. i <> 12
  142. GameIsTimed 
  143. GameTime 
  144.  * 100
  145. "Right - Get out 
  146. that!"
  147. CountMines 
  148. Author
  149. EnterBook
  150. Author
  151. EnterBook
  152. StatusBox
  153. Setting up - Please wait
  154. seconds
  155. h:min
  156. SizeToPage
  157. container
  158. container
  159. StatusBox
  160. StatusBox
  161. 60,50,100
  162. NoOfMines
  163. container
  164. container
  165. GameIsTimed
  166. GameTime
  167. Score
  168. StatusBox
  169. Right - Get out of that!
  170. CountMines
  171. CurrentSquare
  172. Cheated
  173. DisrupterUsed
  174. GameScore
  175. Author
  176. GameIsTimed
  177. EnterBook
  178. 4CurrentSquare, Cheated, DisrupterUsed, Jump, GameScore, StartTime
  179. 4TimeLeft
  180. ZMinesGenerated
  181. "StatusBox" 
  182. "Setting up - Please wait"
  183. -- uncomment 
  184. user version
  185. SysTimeFormat 
  186. k32767
  187. Systime
  188. SysLockScreen 
  189. Button Help 
  190. GameIsTimed 
  191. ScoreDisplay
  192. SizeToPage
  193. container 
  194. Rectangle 1 
  195. FontSize 
  196. FontStyle 
  197. FillColor 
  198. Yellow
  199. (98) < NoOfMines 
  200. i <> 2 
  201. i <> 11 
  202. i <> 12
  203. Minesgenerated + 1
  204. NewMine 
  205. (100)
  206. <> 100 
  207. Newmine <> 11 
  208. 2<> 12
  209. GameTime 
  210. 3000 + 50 * 
  211. "Right - Get out 
  212. that!"
  213. CountMines 
  214. EnterBook
  215. EnterBook
  216. StatusBox
  217. Setting up - Please wait
  218. seconds
  219. h:min
  220. GameIsTimed
  221. SizeToPage
  222. container
  223. container
  224. StatusBox
  225. StatusBox
  226. 60,50,100
  227. NoOfMines
  228. container
  229. Minesgenerated
  230. container
  231. NoOfMines
  232. Newmine
  233. container
  234. container
  235. GameIsTimed
  236. GameTime
  237. TimeLeft
  238. NoOfMines
  239. Score
  240. StatusBox
  241. Right - Get out of that!
  242. CountMines
  243. NewMine
  244. ScoreDisplay
  245. MinesGenerated
  246. TimeLeft
  247. CurrentSquare
  248. Cheated
  249. DisrupterUsed
  250. GameScore
  251. StartTime
  252. `D|D|
  253. NoOfMines
  254. $(%30
  255. GameTime
  256. NewSquare
  257. NewSquare
  258. JumpValue
  259. CurrentSquare
  260. PrevCSq
  261. Direction
  262. AnotherGo
  263. Would you like to try your luck (sorry - skill!) again?
  264. EnterBook
  265. EnterPage
  266. the NoOfMines 
  267. Book 
  268. &OldMines 
  269. 7GameTime 
  270. GOldTime 
  271. WGameIsTimed 
  272. jOldTimed 
  273. UpdateHiScoreTable
  274. 4TimeLeft, GameScore, TScore
  275. SysLockScreen 
  276. CongratsMessage
  277. "HardLuck"
  278. PerfAnal
  279. "ResultScore" 
  280. "ResultTimeLeft"
  281.  * 10 
  282. "ResultBonus"
  283.  * 10
  284. "ResultTotal"
  285. "HiScoreValues"
  286. ResultOK
  287. OKpressed
  288. Perfanal
  289. >OKPressed
  290. RVals 
  291. HSVals 
  292. RNames 
  293. HSNames 
  294. AddHiScore
  295. PVals 
  296. PNames 
  297. CVals 
  298. CNames 
  299. MVals 
  300. MNames 
  301. < Tscore
  302. B(i+1) 
  303. B(i+1) 
  304. "HiScoreName" \
  305. "HiScoreNames"
  306. ClearHiScores
  307. teHiScoreTable
  308. EnterPage
  309. OKpressed
  310. AddHiScore
  311. UpdateHiScoreTable
  312. ClearHiScores
  313. EnterPage
  314. NoOfMines
  315. Mines
  316. NoOfMines
  317. OldMines
  318. GameTime
  319. OldTime
  320. GameIsTimed
  321. OldTimed
  322. UpdateHiScoreTable
  323. HardLuck
  324. ResultScore
  325. ResultTimeLeft
  326. ResultBonus
  327. ResultTotal
  328. HiScoreValues
  329. HardLuck
  330. HardLuck
  331. ResultOK
  332. PerfAnal
  333. CongratsMessage
  334. TimeLeft
  335. GameScore
  336. TScore
  337. OKpressed
  338. HiScoreValues
  339. GameTime
  340. RVals
  341. HSVals
  342. RNames
  343. HSNames
  344. AddHiScore
  345. HSVals
  346. RVals
  347. HSNames
  348. RNames
  349. GameTime
  350. PVals
  351. HSVals
  352. PNames
  353. HSNames
  354. AddHiScore
  355. HSVals
  356. PVals
  357. HSNames
  358. PNames
  359. GameTime
  360. CVals
  361. HSVals
  362. CNames
  363. HSNames
  364. AddHiScore
  365. HSVals
  366. CVals
  367. HSNames
  368. CNames
  369. GameTime
  370. SVals
  371. HSVals
  372. SNames
  373. HSNames
  374. AddHiScore
  375. HSVals
  376. SVals
  377. HSNames
  378. SNames
  379. GameTime
  380. MVals
  381. HSVals
  382. MNames
  383. HSNames
  384. AddHiScore
  385. HSVals
  386. MVals
  387. HSNames
  388. MNames
  389. ResultOK
  390. Perfanal
  391. TScore
  392. AddHiScore
  393. HSVals
  394. Tscore
  395. HSVals
  396. HSVals
  397. HSNames
  398. HSNames
  399. HSVals
  400. HiScoreName
  401. HSNames
  402. HSVals
  403. HiScoreValues
  404. HSNames
  405. HiScoreNames
  406. TScore
  407. ClearHiScores
  408. HSVals
  409. MVals
  410. SVals
  411. CVals
  412. PVals
  413. RVals
  414. ....................
  415. HSNames
  416. ....................
  417. MNames
  418. ....................
  419. SNames
  420. ....................
  421. CNames
  422. ....................
  423. PNames
  424. ....................
  425. RNames
  426. HSVals
  427. HiScoreValues
  428. HSNames
  429. HiScoreNames
  430. *6+\+
  431. -l.h/T0
  432. OldTimed
  433. RNames
  434. ....................
  435. ....................
  436. ....................
  437. ....................
  438. ....................
  439. ....................
  440. ....................
  441. ....................
  442. ....................
  443. ....................
  444. ....................
  445. PNames
  446. ....................
  447. ....................
  448. ....................
  449. ....................
  450. ....................
  451. ....................
  452. ....................
  453. ....................
  454. ....................
  455. ....................
  456. ....................
  457. CNames
  458. ....................
  459. ....................
  460. ....................
  461. ....................
  462. ....................
  463. ....................
  464. ....................
  465. ....................
  466. ....................
  467. ....................
  468. ....................
  469. SNames
  470. ....................
  471. ....................
  472. ....................
  473. ....................
  474. ....................
  475. ....................
  476. ....................
  477. ....................
  478. ....................
  479. ....................
  480. ....................
  481. MNames
  482. A.N. Onymous 
  483. ....................
  484. ....................
  485. ....................
  486. ....................
  487. ....................
  488. ....................
  489. ....................
  490. ....................
  491. ....................
  492. ....................
  493. HSNames
  494. A.N. Onymous 
  495. ....................
  496. ....................
  497. ....................
  498. ....................
  499. ....................
  500. ....................
  501. ....................
  502. ....................
  503. ....................
  504. ....................
  505. RVals
  506. PVals
  507. CVals
  508. SVals
  509. HSVals
  510. OldTime
  511. OldMines
  512. mvals
  513. Setuppppppppppppppppp
  514. ButtonUp
  515. GameIsTimed 
  516. B(GameTime 
  517. ButtonUp
  518. ButtonUp
  519. GameIsTimed
  520. GameTime
  521. GameIsTimed
  522. Timed game with High Scores
  523. Timed mission how good are you???????
  524. Mines
  525. How many mines would you like?
  526. J!"!G!
  527. - 2 minutes
  528. - 6 minutes
  529. - 5 minutes
  530. - 4 minutes
  531. - 3 minutes
  532. ButtonDown
  533. B"120" 
  534. B"180" 
  535. B"240" 
  536. B"300" 
  537. B"360" 
  538. ButtonUp
  539. GameTime 
  540. Book 
  541. x & "s" 
  542. "HiScoreType"
  543. RVals 
  544. Page 
  545. "HiScoreValues"
  546. RNames 
  547. "HiScoreNames"
  548. PVals 
  549. PNames 
  550. CVals 
  551. CNames 
  552. SVals 
  553. SNames 
  554. MVals 
  555. MNames 
  556. ButtonDown
  557. ButtonUp
  558. ButtonDown
  559. ButtonUp
  560. GameTime
  561. HiScoreType
  562. RVals
  563. HiScoreValues
  564. RNames
  565. HiScoreNames
  566. PVals
  567. HiScoreValues
  568. PNames
  569. HiScoreNames
  570. CVals
  571. HiScoreValues
  572. CNames
  573. HiScoreNames
  574. SVals
  575. HiScoreValues
  576. SNames
  577. HiScoreNames
  578. MVals
  579. HiScoreValues
  580. MNames
  581. HiScoreNames
  582. Recruit
  583. 0)chacked
  584. false
  585. Private
  586. Corporal
  587. Sergeant
  588. Sergeant Major
  589. High Score Tableeeeeeeeeeeeeeeee3+
  590. HiScoreType
  591. l,D,i,
  592. Sergeant Majors
  593. HiScoreNames
  594. A.N. Onymous 
  595. ....................
  596. ....................
  597. ....................
  598. ....................
  599. ....................
  600. ....................
  601. ....................
  602. ....................
  603. ....................
  604. ....................
  605. .....
  606. HiScoreValues
  607. LANDMINE v1.0
  608. ButtonUp
  609. the NoOfMines 
  610. Book 
  611. OldMines 
  612. &GameIsTimed 
  613. 9OldTimed 
  614. JGameTime 
  615. EnterBook
  616. ButtonUp
  617. ButtonUp
  618. NoOfMines
  619. OldMines
  620. GameIsTimed
  621. OldTimed
  622. GameTime
  623. OldTime
  624. EnterBook
  625. NoSave
  626. ButtonUp
  627. "Mines" < 20
  628. $> 40
  629. HNoOfMines 
  630. Book 
  631. EnterBook
  632. ButtonUp
  633. ButtonUp
  634. Mines
  635. Mines
  636. Mines
  637. Mines
  638. NoOfMines
  639. Mines
  640. EnterBook
  641. ResultOK
  642. ButtonUp
  643. SysLockScreen 
  644. PerfAnal
  645. ResultOK
  646. OKPressed
  647. ButtonUp
  648. ButtonUp
  649. OKPressed
  650. ResultOK
  651. PerfAnal
  652. PerfAnal
  653. Your Performance Analysis
  654. p:H:m:
  655. Your base score was:
  656. ResultScore
  657. 16705
  658. \;4;Y;
  659. Giving a bonus of :  
  660. ResultBonus
  661. 24005
  662. H< <E<
  663. Your time left was:
  664. ResultTimeLeft
  665. 24745
  666. Giving a total score of :
  667. ResultTotal
  668. 19105
  669. CongratsMessage
  670. HiScoreName
  671. A.N. Onymous 
  672. Congratulations!
  673. You have made the Hi-Score Table. Please enter your Name then press the OK button
  674. HardLuck
  675. Hard Luck!
  676. I'm afraid that you haven't made the Hi-Score table.
  677. Please press OK to continue.nnnnn
  678. ButtonUp
  679. "Are you sure 
  680. want 
  681. [down th Hi-Score table?" 
  682. f"Yes" 
  683. ClearHiScores
  684. ButtonUp
  685. ButtonUp
  686. Are you sure you want to clear down th Hi-Score table?
  687. @ClearHiScores
  688. Clear Hi-Score table
  689. DlgTitle
  690. Instructionsssssssssssssssss
  691. DlgBox
  692. This is a version of a fairly well known and simple PC DOS game also called Landmine adapted for ToolBook by me - DNA.
  693. It has been  used as an exercise in building a ToolBook application, and as it's my first I make no apologies for the coding and methods used.
  694. The game starts with your man at the top left square of the playing grid. The objective is to get him to the square at the bottom right of the grid without blowing him to kingdom come.
  695. At each turn your man may be moved in any of the 8 compass directions by clicking on the relevant arrow to the right. Once your man is on a new square, a message will appear informing you of the number of surrounding squares which contain mines.
  696. It should be possible, with the application of logic and a fair degree of luck to get your man across the minefield safely. To aid in this, if you identify that a square is probably a mine, then you may mark it as such by clicking on it. This will cause the square to turn red, but make no judgement on whether it is, or is not, a mine. In order to turn the square back to yellow again, simply click on it once more.
  697. Within SETUP there are also multiple options to set the number of mines you wish to contend with on your traverse, plus the option to go for a time limited game. If you choose to go for a time limited game, there are 5 levels varying from Recruit to Sergeant Major (more militaristic overtones!), reflecting a supposed level of experience.
  698. If you have chosen a timed game then two additional windows will appear at the bottom of the main play screen showing Time Left and Score. The initial Score is a base value plus an allowance for the number of mines you choose, and will be reduced by 1000 for the use of the Cheat and Disrupter functions, by 10 for each move, and by 200 for each use of Jump. If the Time Left reaches zero you will have been caught in the minefield as the sun rises and machine gunned where you stand!
  699. The final result of your timed game score and time left will, on successful completion of your mission, be used to provide a final score which, if high enough, will be placed in the Hi-Score table.
  700. DISRUPTER button
  701. Clicking on this button will cause all mines immediately surrounding you to be disarmed and replaced with unmined green squares. You may only use this countermeasure once during a game, and within a timed game it will deduct 1000 points from your score.
  702. CHEAT button
  703. The cheat button allows you 1 cheat per game. Depressing this button will cause all the surrounding mines to be identified, but only once in a game, so use it carefully! This also will deduct 1000 points from your score.
  704. JUMP button
  705. Being a rather athletic chap, you can actually jump tall buildings with one mighty bound, or, put another way, you can click on the JUMP button and your next move will be two squares, rather than one. During a timed game, this will reduce your score by 200 points.
  706. MINES button
  707. The mines button is used to allow a number of mines that are randomly placed in the grid, to be specified. This can be any number from 20 to 40 depending on how lucky you feel..
  708. LANDMINE v1.0
  709. ButtonUp
  710. ButtonUp
  711. ButtonUp
  712. Return
  713. ButtonUp
  714. ButtonUp
  715. ButtonUp
  716. ButtonUp
  717. ButtonUp
  718. ButtonUp
  719. ButtonUp
  720. 4Jump, GameScore
  721. "StatusBox" 
  722. "Ready 
  723. jump..."
  724. GameIsTimed 
  725. Book 
  726. P - 200
  727. ButtonUp
  728. ButtonUp
  729. StatusBox
  730. Ready to jump...
  731. GameIsTimed
  732. GameScore
  733. ButtonUp
  734. 4CurrentSquare, DisrupterUsed, GameScore
  735. "StatusBox" 
  736. "You've already discharged your disrupter!"
  737. NewSquare(i)
  738. ncontainer 
  739. Rectangle 
  740. FillColor 
  741. Green
  742. GameIsTimed 
  743. Book 
  744.  - 1000
  745. ButtonUp
  746. ButtonUp
  747. StatusBox
  748. You've already discharged your disrupter!
  749. NewSquare
  750. container
  751. 120,50,100
  752. container
  753. 120,50,100
  754. GameIsTimed
  755. CurrentSquare
  756. DisrupterUsed
  757. GameScore
  758. Disrupter
  759. LANDMINE v1.0
  760. ScoreDisplay
  761. Score
  762. 400000
  763. Rf*fOf
  764. Score -
  765. TimeLeft
  766. 240000
  767. Time Left
  768. ButtonUp
  769. 4Direction
  770. direction 
  771. MoveMan
  772. ButtonUp
  773. ButtonUp
  774. direction
  775. 5?MoveMan
  776. Direction
  777. ButtonUp
  778. 4Direction
  779. direction 
  780. MoveMan
  781. ButtonUp
  782. ButtonUp
  783. direction
  784. 5?MoveMan
  785. Direction
  786. ButtonUp
  787. 4Direction
  788. direction 
  789. MoveMan
  790. ButtonUp
  791. ButtonUp
  792. direction
  793. 5?MoveMan
  794. Direction
  795. AnotherGo
  796. Would you like another go?
  797. ButtonUp
  798. AnotherGo
  799. ButtonUp
  800. ButtonUp
  801. AnotherGo
  802. No Thankyou.
  803. ButtonUp
  804. AnotherGo
  805. EnterBook
  806. ButtonUp
  807. ButtonUp
  808. EnterBook
  809. AnotherGo
  810. Yes Please!
  811. EnterPage
  812. the NoOfMines 
  813. Book 
  814. &OldMines 
  815. 7GameTime 
  816. GOldTime 
  817. WGameIsTimed 
  818. jOldTimed 
  819. UpdateHiScoreTable
  820. 4TimeLeft, GameScore, TScore
  821. SysLockScreen 
  822. CongratsMessage
  823. "HardLuck"
  824. PerfAnal
  825. "ResultScore" 
  826. "ResultTimeLeft"
  827.  * 10 
  828. "ResultBonus"
  829.  * 10
  830. "ResultTotal"
  831. "HiScoreValues"
  832. ResultOK
  833. OKpressed
  834. Perfanal
  835. >OKPressed
  836. RVals 
  837. HSVals 
  838. RNames 
  839. HSNames 
  840. AddHiScore
  841. PVals 
  842. PNames 
  843. CVals 
  844. CNames 
  845. MVals 
  846. MNames 
  847. < Tscore
  848. B(i+1) 
  849. B(i+1) 
  850. "HiScoreName" \
  851. "HiScoreNames"
  852. ClearHiScores
  853. teHiScoreTable
  854. EnterPage
  855. OKpressed
  856. AddHiScore
  857. UpdateHiScoreTable
  858. ClearHiScores
  859. EnterPage
  860. NoOfMines
  861. Mines
  862. NoOfMines
  863. OldMines
  864. GameTime
  865. OldTime
  866. GameIsTimed
  867. OldTimed
  868. UpdateHiScoreTable
  869. HardLuck
  870. ResultScore
  871. ResultTimeLeft
  872. ResultBonus
  873. ResultTotal
  874. HiScoreValues
  875. HardLuck
  876. HardLuck
  877. ResultOK
  878. PerfAnal
  879. CongratsMessage
  880. TimeLeft
  881. GameScore
  882. TScore
  883. OKpressed
  884. HiScoreValues
  885. GameTime
  886. RVals
  887. HSVals
  888. RNames
  889. HSNames
  890. AddHiScore
  891. HSVals
  892. RVals
  893. HSNames
  894. RNames
  895. GameTime
  896. PVals
  897. HSVals
  898. PNames
  899. HSNames
  900. AddHiScore
  901. HSVals
  902. PVals
  903. HSNames
  904. PNames
  905. GameTime
  906. CVals
  907. HSVals
  908. CNames
  909. HSNames
  910. AddHiScore
  911. HSVals
  912. CVals
  913. HSNames
  914. CNames
  915. GameTime
  916. SVals
  917. HSVals
  918. SNames
  919. HSNames
  920. AddHiScore
  921. HSVals
  922. SVals
  923. HSNames
  924. SNames
  925. GameTime
  926. MVals
  927. HSVals
  928. MNames
  929. HSNames
  930. AddHiScore
  931. HSVals
  932. MVals
  933. HSNames
  934. MNames
  935. ResultOK
  936. Perfanal
  937. TScore
  938. AddHiScore
  939. HSVals
  940. Tscore
  941. HSVals
  942. HSVals
  943. HSNames
  944. HSNames
  945. HSVals
  946. HiScoreName
  947. HSNames
  948. HSVals
  949. HiScoreValues
  950. HSNames
  951. HiScoreNames
  952. TScore
  953. ClearHiScores
  954. HSVals
  955. MVals
  956. SVals
  957. CVals
  958. PVals
  959. RVals
  960. ....................
  961. HSNames
  962. ....................
  963. MNames
  964. ....................
  965. SNames
  966. ....................
  967. CNames
  968. ....................
  969. PNames
  970. ....................
  971. RNames
  972. HSVals
  973. HiScoreValues
  974. HSNames
  975. HiScoreNames
  976. *$+J+r+
  977. -4.0/
  978. AVC|Ck
  979. OldTimed
  980. RNames
  981. ....................
  982. ....................
  983. ....................
  984. ....................
  985. ....................
  986. ....................
  987. ....................
  988. ....................
  989. ....................
  990. ....................
  991. ....................
  992. PNames
  993. ....................
  994. ....................
  995. ....................
  996. ....................
  997. ....................
  998. ....................
  999. ....................
  1000. ....................
  1001. ....................
  1002. ....................
  1003. ....................
  1004. CNames
  1005. Freddy
  1006. Freddy
  1007. ....................
  1008. ....................
  1009. ....................
  1010. ....................
  1011. ....................
  1012. ....................
  1013. ....................
  1014. ....................
  1015. ....................
  1016. SNames
  1017. Freddie
  1018. Freddie
  1019. ....................
  1020. ....................
  1021. ....................
  1022. ....................
  1023. ....................
  1024. ....................
  1025. ....................
  1026. ....................
  1027. ....................
  1028. MNames
  1029. ....................
  1030. ....................
  1031. ....................
  1032. ....................
  1033. ....................
  1034. ....................
  1035. ....................
  1036. ....................
  1037. ....................
  1038. ....................
  1039. ....................
  1040. HSNames
  1041. Freddy
  1042. Freddy
  1043. ....................
  1044. ....................
  1045. ....................
  1046. ....................
  1047. ....................
  1048. ....................
  1049. ....................
  1050. ....................
  1051. ....................
  1052. RVals
  1053. PVals
  1054. CVals
  1055. SVals
  1056. HSVals
  1057. OldTime
  1058. OldMines
  1059. mvals
  1060. Setuppppppppppppppppp
  1061. ButtonUp
  1062. GameIsTimed 
  1063. B(GameTime 
  1064. ButtonUp
  1065. ButtonUp
  1066. GameIsTimed
  1067. GameTime
  1068. GameIsTimed
  1069. Timed game with High Scores
  1070. Timed mission how good are you???????
  1071. Mines
  1072. How many mines would you like?
  1073. - 2 minutes
  1074. - 6 minutes
  1075. - 5 minutes
  1076. - 4 minutes
  1077. - 3 minutes
  1078. ButtonDown
  1079. B"120" 
  1080. B"180" 
  1081. B"240" 
  1082. B"300" 
  1083. B"360" 
  1084. ButtonUp
  1085. GameTime 
  1086. Book 
  1087. x & "s" 
  1088. "HiScoreType"
  1089. RVals 
  1090. Page 
  1091. "HiScoreValues"
  1092. RNames 
  1093. "HiScoreNames"
  1094. PVals 
  1095. PNames 
  1096. CVals 
  1097. CNames 
  1098. SVals 
  1099. SNames 
  1100. MVals 
  1101. MNames 
  1102. ButtonDown
  1103. ButtonUp
  1104. ButtonDown
  1105. ButtonUp
  1106. GameTime
  1107. HiScoreType
  1108. RVals
  1109. HiScoreValues
  1110. RNames
  1111. HiScoreNames
  1112. PVals
  1113. HiScoreValues
  1114. PNames
  1115. HiScoreNames
  1116. CVals
  1117. HiScoreValues
  1118. CNames
  1119. HiScoreNames
  1120. SVals
  1121. HiScoreValues
  1122. SNames
  1123. HiScoreNames
  1124. MVals
  1125. HiScoreValues
  1126. MNames
  1127. HiScoreNames
  1128. Recruit
  1129. (chacked
  1130. false
  1131. Private
  1132. Corporal
  1133. Sergeant
  1134. Sergeant Major
  1135. High Score Tableeeeeeeeeeeeeeeee
  1136. HiScoreType
  1137. CorporalsMajors
  1138. HiScoreNames
  1139. Freddy
  1140. Freddy
  1141. ....................
  1142. ....................
  1143. ....................
  1144. ....................
  1145. ....................
  1146. ....................
  1147. ....................
  1148. ....................
  1149. ....................
  1150. ............
  1151. ............
  1152. HiScoreValues
  1153. LANDMINE v1.0
  1154. ButtonUp
  1155. the NoOfMines 
  1156. Book 
  1157. OldMines 
  1158. &GameIsTimed 
  1159. 9OldTimed 
  1160. JGameTime 
  1161. EnterBook
  1162. ButtonUp
  1163. ButtonUp
  1164. NoOfMines
  1165. OldMines
  1166. GameIsTimed
  1167. OldTimed
  1168. GameTime
  1169. OldTime
  1170. EnterBook
  1171. NoSave
  1172. ButtonUp
  1173. "Mines" < 20
  1174. $> 40
  1175. HNoOfMines 
  1176. Book 
  1177. EnterBook
  1178. ButtonUp
  1179. ButtonUp
  1180. Mines
  1181. Mines
  1182. Mines
  1183. Mines
  1184. NoOfMines
  1185. Mines
  1186. EnterBook
  1187. ResultOK
  1188. ButtonUp
  1189. SysLockScreen 
  1190. PerfAnal
  1191. ResultOK
  1192. OKPressed
  1193. ButtonUp
  1194. ButtonUp
  1195. OKPressed
  1196. ResultOK
  1197. PerfAnal
  1198. PerfAnal
  1199. Your Performance Analysis
  1200. Your base score was:
  1201. ResultScore
  1202. 72005
  1203. Giving a bonus of :  
  1204. ResultBonus
  1205. 27005
  1206. Your time left was:
  1207. ResultTimeLeft
  1208. 27945
  1209. Giving a total score of :
  1210. ResultTotal
  1211. 99005
  1212. CongratsMessage
  1213. HiScoreName
  1214. Freddye
  1215. Congratulations!
  1216. You have made the Hi-Score Table. Please enter your Name then press the OK button
  1217. HardLuck
  1218. Hard Luck!
  1219. I'm afraid that you haven't made the Hi-Score table.
  1220. Please press OK to continue.nnnnn
  1221. ButtonUp
  1222. "Are you sure 
  1223. want 
  1224. [down th Hi-Score table?" 
  1225. f"Yes" 
  1226. ClearHiScores
  1227. ButtonUp
  1228. ButtonUp
  1229. Are you sure you want to clear down th Hi-Score table?
  1230. @ClearHiScores
  1231. Clear Hi-Score table
  1232. DlgTitle
  1233. Instructionsssssssssssssssss
  1234. DlgBox
  1235. This is a version of a fairly well known and simple PC DOS game also called Landmine.
  1236. It has been  used as an exercise in building a ToolBook application, and as it's my first I make no apologies for the coding and methods used.
  1237. The game starts with your man at the top left square of the playing grid. The objective is to get him to the square at the bottom right of the grid without blowing him to kingdom come.
  1238. At each turn your man may be moved in any of the 8 compass directions by clicking on the relevant arrow to the right. Once your man is on a new square, a message will appear informing you of the number of surrounding squares which contain mines.
  1239. It should be possible, with the application of logic and a fair degree of luck to get your man across the minefield safely. To aid in this, if you identify that a square is probably a mine, then you may mark it as such by clicking on it. This will cause the square to turn red, but make no judgement on whether it is, or is not, a mine. In order to turn the square back to yellow again, simply click on it once more.
  1240. Within SETUP there are also multiple options to set the number of mines you wish to contend with on your traverse, plus the option to go for a time limited game. If you choose to go for a time limited game, there are 5 levels varying from Recruit to Sergeant Major (more militaristic overtones!), reflecting a supposed level of experience.
  1241. If you have chosen a timed game then two additional windows will appear at the bottom of the main play screen showing Time Left and Score. The initial Score is a base value plus an allowance for the number of mines you choose, and will be reduced by 500 for the use of the Cheat and Disrupter functions, and by 200 for each use of Jump. If the Time Left reaches zero you will have been caught in the minefield as the sun rises and machine gunned where you stand!
  1242. The final result of your timed game score and time left will, on successful completion of your mission, be used to provide a final score which, if high enough, will be placed in the Hi-Score table.
  1243. DISRUPTER button
  1244. Clicking on this button will cause all mines immediately surrounding you to be disarmed and replaced with unmined green squares. You may only use this countermeasure once during a game, and within a timed game it will deduct 500 points from your score.
  1245. CHEAT button
  1246. The cheat button allows you 1 cheat per game. Depressing this button will cause all the surrounding mines to be identified, but only once in a game, so use it carefully! This also will deduct 500 points from your score.
  1247. JUMP button
  1248. Being a rather athletic chap, you can actually jump tall buildings with one mighty bound, or, put another way, you can click on the JUMP button and your next move will be two squares, rather than one. During a timed game, this will reduce your score by 200 points.
  1249. MINES button
  1250. The mines button is used to allow a number of mines that are randomly placed in the grid, to be specified. This can be any number from 20 to 40 depending on how lucky you feel.
  1251. LANDMINE v1.0
  1252. ButtonUp
  1253. ButtonUp
  1254. ButtonUp
  1255. Return
  1256. 4OldTime, GameScore, StartTime, LastTime, TimeLeft
  1257. SysTime 
  1258. "Clock"
  1259. GameIsTimed 
  1260. Book 
  1261. SysTimeFormat 
  1262. o - 1
  1263. { <= 0
  1264. BlownUp(1)
  1265.  < 30
  1266. StrokeColor 
  1267.  < 60 
  1268. Yellow
  1269. Black
  1270. MoveMan
  1271. 4Direction, CurrentSquare, PrevCSq, ItsaMine, 
  1272. "StatusBox" 
  1273.  - 10
  1274. NewSquare(
  1275.  - 50
  1276. ManOffEdge
  1277. CountMines
  1278. = 100
  1279. Rectangle 
  1280. "Congratulations - You've made 
  1281. successfully across 
  1282. saved 
  1283. world!"
  1284. container 
  1285. {i = 1
  1286. FillColor 
  1287. UpdateHiScoreTable 
  1288. AnotherGo
  1289. Green
  1290.  DeathType
  1291. just been blown 
  1292. little pieces!"
  1293. "Dawn has risen 
  1294. you've 
  1295. Dshot 
  1296. Ha sniper!"
  1297. i = 1
  1298. "You decide 
  1299. jump 
  1300. barbed wire 
  1301. Z CheckSquare, NearbyMines
  1302. K = 0
  1303. "There 
  1304. m no mines near you"
  1305. 1's a 
  1306.  " & 
  1307.  & " 
  1308. ZJumpValue
  1309.  - 11 * 
  1310.  - 10 * 
  1311.  - 9 * 
  1312.  - 1 * 
  1313. -- Invalid
  1314.  + 1 * 
  1315.  + 9 * 
  1316.  + 10 * 
  1317.  + 11 * 
  1318.  < 1 \
  1319.  > 100
  1320. k10 = 1 \
  1321. k10 = 0
  1322. k10 = 0 \
  1323. k10 = 1
  1324. ButtonUp
  1325. >> 1 
  1326. >< 100
  1327. >> 1 
  1328. < 100
  1329. ManOffEdge
  1330. MoveMan
  1331. CountMines
  1332. AnotherGo
  1333. BlownUp
  1334. ButtonUp
  1335. NewSquare
  1336. Clock
  1337. GameIsTimed
  1338. seconds
  1339. CPBlownUp
  1340. TimeLeft
  1341. 0,50,100
  1342. TimeLeft
  1343. 60,50,100
  1344. TimeLeft
  1345. 0,0,0
  1346. Score
  1347. TimeLeft
  1348. h:min
  1349. OldTime
  1350. GameScore
  1351. StartTime
  1352. LastTime
  1353. TimeLeft
  1354. MoveMan
  1355. StatusBox
  1356. NewSquare
  1357. ManOffEdge
  1358. CountMines
  1359. StatusBox
  1360. Congratulations - You've made it successfully across and saved the world!
  1361. container
  1362. 0,50,100
  1363. GameIsTimed
  1364. UpdateHiScoreTable
  1365. AnotherGo
  1366. container
  1367. 0,50,100
  1368. CPBlownUp
  1369. CountMines
  1370. 120,50,100
  1371. Direction
  1372. CurrentSquare
  1373. PrevCSq
  1374. ItsaMine
  1375. GameScore
  1376. BlownUp
  1377. StatusBox
  1378. You've just been blown to little pieces!
  1379. StatusBox
  1380. Dawn has risen and you've been shot by a sniper!
  1381. container
  1382. 0,50,100
  1383. AnotherGo
  1384. DeathType
  1385. ManOffEdge
  1386. StatusBox
  1387. You decide not to jump into the barbed wire after all!
  1388. CurrentSquare
  1389. PrevCSq
  1390. CountMines
  1391. NewSquare
  1392. container
  1393. StatusBox
  1394. There are no mines near you
  1395. StatusBox
  1396. There's a mine near you
  1397. StatusBox
  1398. There are 
  1399.  mines near you
  1400. CheckSquare
  1401. NearbyMines
  1402. CurrentSquare
  1403. NewSquare
  1404. NewSquare
  1405. JumpValue
  1406. CurrentSquare
  1407. PrevCSq
  1408. Direction
  1409. AnotherGo
  1410. AnotherGo
  1411. ButtonUp
  1412. Rectangle
  1413. 60,50,100
  1414. 0,50,100
  1415. 0,50,100
  1416. 60,50,100
  1417. ?b@xA
  1418. BtC`DLE8F$G
  1419. W\YHZ
  1420. b6czc
  1421.     45~    a
  1422. n:~    1
  1423. z>~    i
  1424. 8pcontainer
  1425. 'container
  1426. N)container
  1427. 4container
  1428. &(container
  1429. f:container
  1430. 0container
  1431. $container
  1432. 5container
  1433. Z!container
  1434. 7container
  1435. `-container
  1436. ocontainer
  1437. ocontainer
  1438. l&container
  1439. :container
  1440. v5container
  1441. pcontainer
  1442. 4container
  1443. #container
  1444. p(container
  1445. #container
  1446. pcontainer
  1447. $container
  1448. f#container
  1449. ,*container
  1450. $&container
  1451. 3container
  1452. &container
  1453. "container
  1454. #container
  1455. Z,container
  1456. J'container
  1457. =container
  1458. 6+J4<p1
  1459. (>container
  1460. :container
  1461. ^pcontainer
  1462. >container
  1463. D;container
  1464. ;container
  1465. :container
  1466. r>container
  1467. ,container
  1468. D$container
  1469. |+container
  1470. )container
  1471. -container
  1472. -container
  1473. (container
  1474. v*container
  1475. ,container
  1476. !container
  1477. ;container
  1478. 'container
  1479.  container
  1480. D0container
  1481. .container
  1482. /container
  1483. h%container
  1484. "container
  1485. 0pcontainer
  1486. 1container
  1487. 2container
  1488. ocontainer
  1489. 1container
  1490. T6container
  1491. (3container
  1492. d5~    a
  1493. <container
  1494. r3container
  1495. -container
  1496. "2container
  1497. F1container
  1498. 'container
  1499. /container
  1500. >9container
  1501. )container
  1502. 4container
  1503. 0container
  1504. >.container
  1505. *container
  1506. =container
  1507. 7container
  1508. 8container
  1509. l2container
  1510. 7container
  1511. "<container
  1512. %container
  1513. 9container
  1514. "container
  1515. 6container
  1516. 88container
  1517. f/container
  1518. ?container
  1519. 9container
  1520. Z7container
  1521. 8container
  1522. J=container
  1523. .container
  1524. ,5container
  1525. /container
  1526. Clock
  1527. 12:4725
  1528. ButtonUp
  1529. 4Direction
  1530. direction 
  1531. MoveMan
  1532. ButtonUp
  1533. ButtonUp
  1534. direction
  1535. 5?MoveMan
  1536. Direction
  1537. ButtonUp
  1538. 4Direction
  1539. direction 
  1540. MoveMan
  1541. ButtonUp
  1542. ButtonUp
  1543. direction
  1544. 5?MoveMan
  1545. Direction
  1546. ButtonUp
  1547. 4Direction
  1548. direction 
  1549. MoveMan
  1550. ButtonUp
  1551. ButtonUp
  1552. direction
  1553. 5?MoveMan
  1554. Direction
  1555. ButtonUp
  1556. 4Direction
  1557. direction 
  1558. MoveMan
  1559. ButtonUp
  1560. ButtonUp
  1561. direction
  1562. 5?MoveMan
  1563. Direction
  1564. StatusBox
  1565. You decide not to jump into the barbed wire after all!
  1566. ButtonUp
  1567. 4CurrentSquare, Cheated, GameScore
  1568. cheated = 0
  1569. "StatusBox" 
  1570. "You've already 
  1571. :once, don't you think thats enough!"
  1572. NewSquare(i)
  1573. ycontainer 
  1574. Rectangle 
  1575. FillColor 
  1576. Green
  1577. GameIsTimed 
  1578. Book 
  1579.  - 1000
  1580. ButtonUp
  1581. ButtonUp
  1582. cheated
  1583. cheated
  1584. StatusBox
  1585. You've already cheated once, don't you think thats enough!
  1586. NewSquare
  1587. container
  1588. 0,50,100
  1589. 120,50,100
  1590. GameIsTimed
  1591. CurrentSquare
  1592. Cheated
  1593. GameScore
  1594. Cheat
  1595. ButtonUp
  1596. 4Direction
  1597. direction 
  1598. MoveMan
  1599. ButtonUp
  1600. ButtonUp
  1601. direction
  1602. 5?MoveMan
  1603. Direction
  1604. ButtonUp
  1605. ButtonUp
  1606. ButtonUp
  1607. Setup
  1608. ButtonUp
  1609. ButtonUp
  1610. ButtonUp
  1611. ButtonUp
  1612. ButtonUp
  1613. ButtonUp
  1614. ButtonUp
  1615. 4Jump, GameScore
  1616. "StatusBox" 
  1617. "Ready 
  1618. jump..."
  1619. GameIsTimed 
  1620. Book 
  1621. P - 200
  1622. ButtonUp
  1623. ButtonUp
  1624. StatusBox
  1625. Ready to jump...
  1626. GameIsTimed
  1627. GameScore
  1628. ButtonUp
  1629. 4CurrentSquare, DisrupterUsed, GameScore
  1630. "StatusBox" 
  1631. "You've already discharged your disrupter!"
  1632. NewSquare(i)
  1633. ncontainer 
  1634. Rectangle 
  1635. FillColor 
  1636. Green
  1637. GameIsTimed 
  1638. Book 
  1639.  - 1000
  1640. ButtonUp
  1641. ButtonUp
  1642. StatusBox
  1643. You've already discharged your disrupter!
  1644. NewSquare
  1645. container
  1646. 120,50,100
  1647. container
  1648. 120,50,100
  1649. GameIsTimed
  1650. CurrentSquare
  1651. DisrupterUsed
  1652. GameScore
  1653. Disrupter
  1654. LANDMINE v1.0
  1655. ScoreDisplay
  1656. Score
  1657. Pe(eMe
  1658. 168000
  1659. ^f6f[f
  1660. Score -
  1661. TimeLeft
  1662. 240000
  1663. Time Left
  1664. ButtonUp
  1665. 4Direction
  1666. direction 
  1667. MoveMan
  1668. ButtonUp
  1669. ButtonUp
  1670. direction
  1671. 5?MoveMan
  1672. Direction
  1673. ButtonUp
  1674. 4Direction
  1675. direction 
  1676. MoveMan
  1677. ButtonUp
  1678. ButtonUp
  1679. direction
  1680. 5?MoveMan
  1681. Direction
  1682. ButtonUp
  1683. 4Direction
  1684. direction 
  1685. MoveMan
  1686. ButtonUp
  1687. ButtonUp
  1688. direction
  1689. 5?MoveMan
  1690. Direction
  1691. AnotherGo
  1692. Would you like another go?
  1693. ButtonUp
  1694. AnotherGo
  1695. ButtonUp
  1696. ButtonUp
  1697. AnotherGo
  1698. No Thankyou.
  1699. ButtonUp
  1700. AnotherGo
  1701. EnterBook
  1702. ButtonUp
  1703. ButtonUp
  1704. EnterBook
  1705. AnotherGo
  1706. Yes Please!
  1707. Right - Get out of that!o little pieces!
  1708. p- Get out of that!o little pieces!
  1709. oe's a mine near you
  1710. oto jump... near you
  1711. Right - Get out of that!
  1712. There are no mines near youand saved the world!
  1713. t - Get out of that!
  1714. There are no mines near youand saved the world!
  1715.