home *** CD-ROM | disk | FTP | other *** search
/ Wacky Windows Stuff... / WACKY.iso / toolbook / tank.tbk (.txt) < prev    next >
Asymetrix ToolBook File  |  1990-06-13  |  107KB  |  2,442 lines

  1. ControlPanel
  2. BUTTONUP
  3. 4svSettingUp
  4. boolAllObjectsSetup()
  5. SAVEBOARD
  6. PLAYGAME
  7. }have 
  8. xbeen 
  9. %assigned behavior
  10. 4svUnitList
  11. "dead"
  12. pBehavior 
  13. BUTTONUP
  14. boolAllObjectsSetup
  15. BUTTONUP
  16. boolAllObjectsSetup
  17. SAVEBOARD
  18. `PLAYGAME
  19. All objects have not been set up
  20. svSettingUp
  21. boolAllObjectsSetup
  22. pBehavior
  23. svUnitList
  24. Combat
  25. BUTTONUP
  26. "tank Help"
  27. BUTTONUP
  28. BUTTONUP
  29. tank Help
  30. ;**Z6
  31. BUTTONUP
  32. 4svSettingUp
  33. INITGAME
  34. default
  35. BUTTONUP
  36. BUTTONUP
  37. j^INITGAME
  38. default
  39. svSettingUp
  40. Reset
  41. BUTTONUP
  42. 4svSettingUp
  43. "This will reset the 
  44. way they were 
  45. beginning 
  46. Jcombat.
  47. It doesn't work yet."
  48. BUTTONUP
  49. BUTTONUP
  50. This will reset the objects to the way they were at the beginning of the last combat.  It doesn't work yet.
  51. svSettingUp
  52. This 
  53. used only 
  54. the setup phase 
  55. robots around
  56. BUTTONDOWN loc
  57. BEGINMOVEUNIT 
  58. BUTTONSTILLDOWN 
  59. CONTINUEMOVEUNIT 
  60. BUTTONUP 
  61. ENDMOVEUNIT 
  62. UTTONDOWN
  63. BUTTONSTILLDOWN
  64. BUTTONDOWN
  65. BUTTONUP
  66. BUTTONDOWN
  67. HRBEGINMOVEUNIT
  68. BUTTONSTILLDOWN
  69. CONTINUEMOVEUNIT
  70. BUTTONUP
  71. ENDMOVEUNIT
  72. pBehavior
  73. pObjectEnergy
  74. This 
  75. used only 
  76. the setup phase 
  77. robots around
  78. BUTTONDOWN loc
  79. BEGINMOVEUNIT 
  80. BUTTONSTILLDOWN 
  81. CONTINUEMOVEUNIT 
  82. BUTTONUP 
  83. ENDMOVEUNIT 
  84. UTTONDOWN
  85. BUTTONSTILLDOWN
  86. BUTTONDOWN
  87. BUTTONUP
  88. BUTTONDOWN
  89. HRBEGINMOVEUNIT
  90. BUTTONSTILLDOWN
  91. CONTINUEMOVEUNIT
  92. BUTTONUP
  93. ENDMOVEUNIT
  94. pBehavior
  95. pObjectEnergy
  96. This 
  97. used only 
  98. the setup phase 
  99. robots around
  100. BUTTONDOWN loc
  101. BEGINMOVEUNIT 
  102. BUTTONSTILLDOWN 
  103. CONTINUEMOVEUNIT 
  104. BUTTONUP 
  105. ENDMOVEUNIT 
  106. UTTONDOWN
  107. BUTTONSTILLDOWN
  108. BUTTONDOWN
  109. BUTTONUP
  110. BUTTONDOWN
  111. HRBEGINMOVEUNIT
  112. BUTTONSTILLDOWN
  113. CONTINUEMOVEUNIT
  114. BUTTONUP
  115. ENDMOVEUNIT
  116. pBehavior
  117. pObjectEnergy
  118. This 
  119. used only 
  120. the setup phase 
  121. robots around
  122. BUTTONDOWN loc
  123. BEGINMOVEUNIT 
  124. BUTTONSTILLDOWN 
  125. CONTINUEMOVEUNIT 
  126. BUTTONUP 
  127. ENDMOVEUNIT 
  128. UTTONDOWN
  129. BUTTONSTILLDOWN
  130. BUTTONDOWN
  131. BUTTONUP
  132. BUTTONDOWN
  133. HRBEGINMOVEUNIT
  134. BUTTONSTILLDOWN
  135. CONTINUEMOVEUNIT
  136. BUTTONUP
  137. ENDMOVEUNIT
  138. pBehavior
  139. pObjectEnergy
  140. This 
  141. used only 
  142. the setup phase 
  143. robots around
  144. BUTTONDOWN loc
  145. BEGINMOVEUNIT 
  146. BUTTONSTILLDOWN 
  147. CONTINUEMOVEUNIT 
  148. BUTTONUP 
  149. ENDMOVEUNIT 
  150. UTTONDOWN
  151. BUTTONSTILLDOWN
  152. BUTTONDOWN
  153. BUTTONUP
  154. BUTTONDOWN
  155. HRBEGINMOVEUNIT
  156. BUTTONSTILLDOWN
  157. CONTINUEMOVEUNIT
  158. BUTTONUP
  159. ENDMOVEUNIT
  160. pBehavior
  161. pObjectEnergy
  162. This 
  163. used only 
  164. the setup phase 
  165. robots around
  166. BUTTONDOWN loc
  167. BEGINMOVEUNIT 
  168. BUTTONSTILLDOWN 
  169. CONTINUEMOVEUNIT 
  170. BUTTONUP 
  171. ENDMOVEUNIT 
  172. UTTONDOWN
  173. BUTTONSTILLDOWN
  174. BUTTONDOWN
  175. BUTTONUP
  176. BUTTONDOWN
  177. HRBEGINMOVEUNIT
  178. BUTTONSTILLDOWN
  179. CONTINUEMOVEUNIT
  180. BUTTONUP
  181. ENDMOVEUNIT
  182. R"F"pBehavior
  183. h"pObjectEnergy
  184. `#pObjectEnergy
  185. This 
  186. used only 
  187. the setup phase 
  188. robots around
  189. BUTTONDOWN loc
  190. BEGINMOVEUNIT 
  191. BUTTONSTILLDOWN 
  192. CONTINUEMOVEUNIT 
  193. BUTTONUP 
  194. ENDMOVEUNIT 
  195. UTTONDOWN
  196. BUTTONSTILLDOWN
  197. BUTTONDOWN
  198. BUTTONUP
  199. BUTTONDOWN
  200. HRBEGINMOVEUNIT
  201. BUTTONSTILLDOWN
  202. CONTINUEMOVEUNIT
  203. BUTTONUP
  204. ENDMOVEUNIT
  205. &pBehavior
  206. &pObjectEnergy
  207. This 
  208. used only 
  209. the setup phase 
  210. robots around
  211. BUTTONDOWN loc
  212. BEGINMOVEUNIT 
  213. BUTTONSTILLDOWN 
  214. CONTINUEMOVEUNIT 
  215. BUTTONUP 
  216. ENDMOVEUNIT 
  217. UTTONDOWN
  218. BUTTONSTILLDOWN
  219. BUTTONDOWN
  220. BUTTONUP
  221. BUTTONDOWN
  222. HRBEGINMOVEUNIT
  223. BUTTONSTILLDOWN
  224. CONTINUEMOVEUNIT
  225. BUTTONUP
  226. ENDMOVEUNIT
  227. *pBehavior
  228.  +pObjectEnergy
  229. J-L/X
  230. This 
  231. used only 
  232. the setup phase 
  233. robots around
  234. BUTTONDOWN loc
  235. BEGINMOVEUNIT 
  236. BUTTONSTILLDOWN 
  237. CONTINUEMOVEUNIT 
  238. BUTTONUP 
  239. ENDMOVEUNIT 
  240. UTTONDOWN
  241. BUTTONSTILLDOWN
  242. BUTTONDOWN
  243. BUTTONUP
  244. BUTTONDOWN
  245. HRBEGINMOVEUNIT
  246. BUTTONSTILLDOWN
  247. CONTINUEMOVEUNIT
  248. BUTTONUP
  249. ENDMOVEUNIT
  250. j/^/pBehavior
  251. /pObjectEnergy
  252. This 
  253. used only 
  254. the setup phase 
  255. robots around
  256. BUTTONDOWN loc
  257. BEGINMOVEUNIT 
  258. BUTTONSTILLDOWN 
  259. CONTINUEMOVEUNIT 
  260. BUTTONUP 
  261. ENDMOVEUNIT 
  262. UTTONDOWN
  263. BUTTONSTILLDOWN
  264. BUTTONDOWN
  265. BUTTONUP
  266. BUTTONDOWN
  267. HRBEGINMOVEUNIT
  268. BUTTONSTILLDOWN
  269. CONTINUEMOVEUNIT
  270. BUTTONUP
  271. ENDMOVEUNIT
  272. 3pBehavior
  273. 3pObjectEnergy
  274. tank help
  275. BUTTONUP
  276. "tank help"
  277. BUTTONUP
  278. BUTTONUP
  279. tank help
  280. The Game of TankWarr
  281.     This is a game of cellular automata.  The cells or units in this game are tanks on a battlefield, firing at each other.  There are two sides. Red and Blue.  There are two phases to the game, Setup and Combat.  During the Setup phase each player positions his units and  defines their behavior.  When the battle starts the tanks advance, firing on the enemy.  The battle continues until one side has no tanks left.  The purpose of this game is to let you try out various survival strategies and combat formations for your tank force. 
  282. The Units.
  283.     Each unit is a tank.  At the beginning each tank has 125 units of energy.  This energy is diminished each time the tank is hit.  A unit also has a behavior characteristic (property, for those who have already OD'ed on ToolBook) that governs how it moves.  A  move consists of the following:  the tank moves forward, fires at the closest enemy tank, and then moves back.  The net motion on each turn is always forward, but the ratio between the two types of motion is governed by the behavior, and can be Aggressive (moves forward a lot more than back), Moderate (forward some, then back some) or Conservative  (moves forward some, then back almost as much.  If a unit gets to the end of the field it reverses its motion.
  284. Shots.  
  285.     Each shot starts out with 75 units of energy,  but the further a shot travels the less energy it has.  When its energy  reaches zero it explodes harmlessly.  A hit diminishes the target's energy by the amount of energy it has left.
  286. left.
  287. Large explosion
  288. Small explosion
  289. bullet
  290. :A"@lAr
  291. @6,-4
  292. @"@44
  293. YA(A8@80
  294. @6,-4
  295. ?-8,2
  296. A-7,3
  297. tX<"t$<\8
  298. jA0A-7,3
  299. @,B-8,2
  300. OriginalUnit
  301. fTargetCoords
  302. bullet
  303. pObjectEnergy
  304. lObjectCenter
  305. Large explosion
  306. INSERTKILL
  307. lObjectCenter
  308. Small explosion
  309. pObjectEnergy
  310. svBulletEnergy
  311. svCurrentListPosition
  312. fHitEnergy
  313. fTarget
  314. BEGINMOVEUNIT
  315. svSettingUp
  316. svOldLoc
  317. fTarget
  318. CONTINUEMOVEUNIT
  319. svSettingUp
  320. svOldLoc
  321. fTarget
  322. ENDMOVEUNIT
  323. CONTINUEMOVEUNIT
  324. SETUNITPROPERTY
  325. svSettingUp
  326. fTarget
  327. SETUNITPROPERTY
  328. Make this unit Aggressive, Moderate, Conservative
  329. Agress
  330. Agress
  331. pRedUnits
  332. pBehavior
  333. vMoveDirection
  334. vStartPoint
  335. vMoves
  336. svMoveDirection
  337. svUnitMoves
  338. svSettingUp
  339. fTarget
  340. lObjectCenter
  341. large explosion
  342. bullet
  343. fExplosionObject
  344. fPoint
  345. INSERTKILL
  346. svUnitList
  347. svUnitsPerSide
  348. svLiveRed
  349. svLiveBlue
  350. fObject
  351. lObjectCenter
  352. vObjectBounds
  353. nearestTarget
  354. numDistanceToTarget
  355. vDistanceToTarget
  356. vThisTarget
  357. vOurTargetList
  358. vOurTarget
  359. svUnitsPerSide
  360. fTargetList
  361. fMyBounds
  362. numDistanceToTarget
  363. lObjectCenter
  364. lObjectCenter
  365. vCenter1
  366. vCenter2
  367. xDiff
  368. yDiff
  369. fBounds2
  370. fBounds1
  371. Battlefield Survival Strategies
  372. ControlPanel
  373. BUTTONUP
  374. 4svSettingUp
  375. boolAllObjectsSetup()
  376. PLAYGAME
  377. }have 
  378. xbeen 
  379. %assigned behavior
  380. 4svUnitList
  381. "dead"
  382. pBehavior 
  383. BUTTONUP
  384. boolAllObjectsSetup
  385. BUTTONUP
  386. boolAllObjectsSetup
  387. `PLAYGAME
  388. All objects have not been set up
  389. svSettingUp
  390. boolAllObjectsSetup
  391. pBehavior
  392. svUnitList
  393. Combat
  394. BUTTONUP
  395. "tank Help"
  396. BUTTONUP
  397. BUTTONUP
  398. tank Help
  399. ;**Z6
  400. BUTTONUP
  401. 4svSettingUp
  402. INITGAME
  403. default
  404. BUTTONUP
  405. BUTTONUP
  406. j^INITGAME
  407. default
  408. svSettingUp
  409. Reset
  410. BUTTONUP
  411. 4svSettingUp
  412. "This will reset the 
  413. way they were 
  414. beginning 
  415. Jcombat.
  416. It doesn't work yet."
  417. BUTTONUP
  418. BUTTONUP
  419. This will reset the objects to the way they were at the beginning of the last combat.  It doesn't work yet.
  420. svSettingUp
  421. This 
  422. used only 
  423. the setup phase 
  424. robots around
  425. BUTTONDOWN loc
  426. BEGINMOVEUNIT 
  427. BUTTONSTILLDOWN 
  428. CONTINUEMOVEUNIT 
  429. BUTTONUP 
  430. ENDMOVEUNIT 
  431. UTTONDOWN
  432. BUTTONSTILLDOWN
  433. BUTTONDOWN
  434. BUTTONUP
  435. BUTTONDOWN
  436. HRBEGINMOVEUNIT
  437. BUTTONSTILLDOWN
  438. CONTINUEMOVEUNIT
  439. BUTTONUP
  440. ENDMOVEUNIT
  441. pObjectEnergy
  442. This 
  443. used only 
  444. the setup phase 
  445. robots around
  446. BUTTONDOWN loc
  447. BEGINMOVEUNIT 
  448. BUTTONSTILLDOWN 
  449. CONTINUEMOVEUNIT 
  450. BUTTONUP 
  451. ENDMOVEUNIT 
  452. UTTONDOWN
  453. BUTTONSTILLDOWN
  454. BUTTONDOWN
  455. BUTTONUP
  456. BUTTONDOWN
  457. HRBEGINMOVEUNIT
  458. BUTTONSTILLDOWN
  459. CONTINUEMOVEUNIT
  460. BUTTONUP
  461. ENDMOVEUNIT
  462. pObjectEnergy
  463. This 
  464. used only 
  465. the setup phase 
  466. robots around
  467. BUTTONDOWN loc
  468. BEGINMOVEUNIT 
  469. BUTTONSTILLDOWN 
  470. CONTINUEMOVEUNIT 
  471. BUTTONUP 
  472. ENDMOVEUNIT 
  473. UTTONDOWN
  474. BUTTONSTILLDOWN
  475. BUTTONDOWN
  476. BUTTONUP
  477. BUTTONDOWN
  478. HRBEGINMOVEUNIT
  479. BUTTONSTILLDOWN
  480. CONTINUEMOVEUNIT
  481. BUTTONUP
  482. ENDMOVEUNIT
  483. pObjectEnergy
  484. This 
  485. used only 
  486. the setup phase 
  487. robots around
  488. BUTTONDOWN loc
  489. BEGINMOVEUNIT 
  490. BUTTONSTILLDOWN 
  491. CONTINUEMOVEUNIT 
  492. BUTTONUP 
  493. ENDMOVEUNIT 
  494. UTTONDOWN
  495. BUTTONSTILLDOWN
  496. BUTTONDOWN
  497. BUTTONUP
  498. BUTTONDOWN
  499. HRBEGINMOVEUNIT
  500. BUTTONSTILLDOWN
  501. CONTINUEMOVEUNIT
  502. BUTTONUP
  503. ENDMOVEUNIT
  504. pObjectEnergy
  505. This 
  506. used only 
  507. the setup phase 
  508. robots around
  509. BUTTONDOWN loc
  510. BEGINMOVEUNIT 
  511. BUTTONSTILLDOWN 
  512. CONTINUEMOVEUNIT 
  513. BUTTONUP 
  514. ENDMOVEUNIT 
  515. UTTONDOWN
  516. BUTTONSTILLDOWN
  517. BUTTONDOWN
  518. BUTTONUP
  519. BUTTONDOWN
  520. HRBEGINMOVEUNIT
  521. BUTTONSTILLDOWN
  522. CONTINUEMOVEUNIT
  523. BUTTONUP
  524. ENDMOVEUNIT
  525. pObjectEnergy
  526. This 
  527. used only 
  528. the setup phase 
  529. robots around
  530. BUTTONDOWN loc
  531. BEGINMOVEUNIT 
  532. BUTTONSTILLDOWN 
  533. CONTINUEMOVEUNIT 
  534. BUTTONUP 
  535. ENDMOVEUNIT 
  536. UTTONDOWN
  537. BUTTONSTILLDOWN
  538. BUTTONDOWN
  539. BUTTONUP
  540. BUTTONDOWN
  541. HRBEGINMOVEUNIT
  542. BUTTONSTILLDOWN
  543. CONTINUEMOVEUNIT
  544. BUTTONUP
  545. ENDMOVEUNIT
  546. !pObjectEnergy
  547. "pObjectEnergy
  548. This 
  549. used only 
  550. the setup phase 
  551. robots around
  552. BUTTONDOWN loc
  553. BEGINMOVEUNIT 
  554. BUTTONSTILLDOWN 
  555. CONTINUEMOVEUNIT 
  556. BUTTONUP 
  557. ENDMOVEUNIT 
  558. UTTONDOWN
  559. BUTTONSTILLDOWN
  560. BUTTONDOWN
  561. BUTTONUP
  562. BUTTONDOWN
  563. HRBEGINMOVEUNIT
  564. BUTTONSTILLDOWN
  565. CONTINUEMOVEUNIT
  566. BUTTONUP
  567. ENDMOVEUNIT
  568. %pObjectEnergy
  569. This 
  570. used only 
  571. the setup phase 
  572. robots around
  573. BUTTONDOWN loc
  574. BEGINMOVEUNIT 
  575. BUTTONSTILLDOWN 
  576. CONTINUEMOVEUNIT 
  577. BUTTONUP 
  578. ENDMOVEUNIT 
  579. UTTONDOWN
  580. BUTTONSTILLDOWN
  581. BUTTONDOWN
  582. BUTTONUP
  583. BUTTONDOWN
  584. HRBEGINMOVEUNIT
  585. BUTTONSTILLDOWN
  586. CONTINUEMOVEUNIT
  587. BUTTONUP
  588. ENDMOVEUNIT
  589. *pObjectEnergy
  590. B,D.X
  591. This 
  592. used only 
  593. the setup phase 
  594. robots around
  595. BUTTONDOWN loc
  596. BEGINMOVEUNIT 
  597. BUTTONSTILLDOWN 
  598. CONTINUEMOVEUNIT 
  599. BUTTONUP 
  600. ENDMOVEUNIT 
  601. UTTONDOWN
  602. BUTTONSTILLDOWN
  603. BUTTONDOWN
  604. BUTTONUP
  605. BUTTONDOWN
  606. HRBEGINMOVEUNIT
  607. BUTTONSTILLDOWN
  608. CONTINUEMOVEUNIT
  609. BUTTONUP
  610. ENDMOVEUNIT
  611. Z.pObjectEnergy
  612. This 
  613. used only 
  614. the setup phase 
  615. robots around
  616. BUTTONDOWN loc
  617. BEGINMOVEUNIT 
  618. BUTTONSTILLDOWN 
  619. CONTINUEMOVEUNIT 
  620. BUTTONUP 
  621. ENDMOVEUNIT 
  622. UTTONDOWN
  623. BUTTONSTILLDOWN
  624. BUTTONDOWN
  625. BUTTONUP
  626. BUTTONDOWN
  627. HRBEGINMOVEUNIT
  628. BUTTONSTILLDOWN
  629. CONTINUEMOVEUNIT
  630. BUTTONUP
  631. ENDMOVEUNIT
  632. 2pObjectEnergy
  633. tank help
  634. BUTTONUP
  635. "tank help"
  636. BUTTONUP
  637. BUTTONUP
  638. tank help
  639. The Game of TankWarr
  640.     This is a game of cellular automata.  The cells or units in this game are tanks on a battlefield, firing at each other.  There are two sides. Red and Blue.  There are two phases to the game, Setup and Combat.  During the Setup phase each player positions his units and  defines their behavior.  When the battle starts the tanks advance, firing on the enemy.  The battle continues until one side has no tanks left.  The purpose of this game is to let you try out various survival strategies and combat formations for your tank force. 
  641. The Units.
  642.     Each unit is a tank.  At the beginning each tank has 125 units of energy.  This energy is diminished each time the tank is hit.  A unit also has a behavior characteristic (property, for those who have already OD'ed on ToolBook) that governs how it moves.  A  move consists of the following:  the tank moves forward, fires at the closest enemy tank, and then moves back.  The net motion on each turn is always forward, but the ratio between the two types of motion is governed by the behavior, and can be Aggressive (moves forward a lot more than back), Moderate (forward some, then back some) or Conservative  (moves forward some, then back almost as much.  If a unit gets to the end of the field it reverses its motion.
  643. Shots.  
  644.     Each shot starts out with 75 units of energy,  but the further a shot travels the less energy it has.  When its energy  reaches zero it explodes harmlessly.  A hit diminishes the target's energy by the amount of energy it has left.
  645. left.
  646. Large explosion
  647. Small explosion
  648. bullet
  649. pObjectEnergy
  650. 4710.5,5187.5
  651. pObjectEnergy
  652. 4870,5382.5
  653. pObjectEnergy
  654. 4160,5375
  655. pObjectEnergy
  656. 4295,5367.5
  657. Explosion
  658. Improvements/modifications, etc.
  659. 1.  Visual redesign - give the tanks eyes & a beak.  Think about each tank having a little bar that shows how much energy it has left.  Also it would have some way of letting you tell what its behavior is (a color patch somewhere would do nicely
  660. 2.    Think about having the tanks move towards their targets, fire, & fall back.  They would no linger be restricted to straight horizontal movement.
  661. 3.    How can we make this look a little more interesting? Possibly we could have terrain, the tanks cannot shoot or see anything with a "Wall" in between.
  662. B    D%@
  663. `B|B|
  664. s Rmn
  665. t<(lv
  666. System
  667. `B|B|
  668. `B|B|
  669. ts Rmn
  670. Set up the 
  671. targets
  672. pBlueUnits 
  673. pRedUnits 
  674. [pBehavior 
  675. pObjectEnergy 
  676. "bullet"
  677. PLAYGAME
  678. This 
  679. main loop 
  680. . It iterates through a 
  681. units
  682. each side, 
  683. ;fire & 
  684. actually one 
  685. fhalf 
  686. UserHalt, 
  687. x"dead"
  688. MOVEANDFIRE 
  689. Check 
  690. svUserHalt
  691. If we're here 
  692.  has won, figure out which 
  693. Hfinding 
  694. 1st non-
  695. & checking 
  696. vWinner
  697. winner was " & 
  698. fWhichSide, fThisUnit
  699. BulletCoords
  700. built-
  701. E * 30,0
  702. nearest 
  703. >'s coordinates
  704. vUnitBounds
  705. nearestTarget(
  706. lObjectCenter(fUnitBounds) 
  707. svBulletCoords
  708. nfTarget 
  709. fTargetCoords
  710.  moves & 
  711. Fchecks 
  712. made a hit.
  713. always "underneath"
  714. other 
  715. }. If 
  716. Fthere 
  717. M so 
  718. ^ message.
  719. energy goes down 
  720. ZvBulletEnergy, vSlope, xDiff, yDiff, xMove, yMove
  721. Figure 
  722. how much 
  723. H(x/y). 
  724.  dies 
  725. no more 
  726.  + 1)/100 
  727. nt - 
  728. objectFromPoint(
  729.  <= 0 
  730. SMALLEXPLOSION 
  731. ,fHitEnergy
  732.  sent 
  733. a hit (
  734.  over 
  735. {) happens
  736. 4svBulletEnergy, svCurrentListPosition
  737. pObjecttEnergy 
  738. , blow 
  739. BANG "Big explosion",
  740. INSERTKILL 
  741. used only 
  742. setup phase 
  743. robots around
  744. BEGINMOVEUNIT loc, 
  745. <    OldLoc
  746. svOldLoc
  747. CONTINUEMOVEUNIT 
  748. ENDMOVEUNIT 
  749. SETUNITPROPERTY 
  750. 4svMoveDirection, 
  751. ZvStartPoint, vMoves
  752. u    board we 
  753. coming 
  754. "Make 
  755.  Aggressive, Moderate, Conservative" \
  756. f"Agress" 
  757.  + 1 
  758. magnitude, adjust 
  759. fPoint, fExplosionObject
  760. fObject
  761.  vObjectBounds
  762. input:
  763.  containing 
  764. output:
  765.  contining coords 
  766. Zx1,y1,x2,y2
  767. ((x2 - x1)/2) +
  768. x1,((y2 - y1)/2)
  769.  fMyBounds,fTargetList
  770. ZvDistanceToTarget, vThisTarget, vOurTargetList
  771. distance, 
  772. minimum
  773. numDistanceToTarget(
  774. Kt fBounds1, fBounds2
  775. ZvCenter1,vCenter2, 
  776.  between 
  777. =' centers.
  778. ENTERBOOK
  779. BEGINMOVEUNIT
  780. PLAYGAME
  781. CONTINUEMOVEUNIT
  782. ENDMOVEUNIT
  783. MOVEANDFIRE
  784. SETUNITPROPERTY
  785. INITGAME
  786. INSERTKILL
  787. lObjectCenter
  788. nearestTarget
  789. numDistanceToTarget
  790. ENTERBOOK
  791. j^INITGAME
  792. INITGAME
  793. 8,-2,7,-3,6,-4
  794. pBlueUnits
  795. pRedUnits
  796. pBehavior
  797. pObjectEnergy
  798. bullet
  799. vCurrentObject
  800. vStartEnergy
  801. svBulletDecrement
  802. svBulletMoveIncrement
  803. svUnitMoves
  804. svSettingUp
  805. svUnitsPerSide
  806. svMoveUnits
  807. svUnitList
  808. svHitEnergy
  809. PLAYGAME
  810. bullet
  811. MOVEANDFIRE
  812. MOVEANDFIRE
  813. Side 2
  814. Side 1
  815. The winner was 
  816. vWinner
  817. i:to1
  818. vUnits
  819. svSettingUp
  820. svUnitList
  821. svUserHalt
  822. svUnitsPerSide
  823. MOVEANDFIRE
  824. pBehavior
  825. nearestTarget
  826. nearestTarget
  827. lObjectCenter
  828. bullet
  829. lObjectCenter
  830. pBehavior
  831. fTarget
  832. fUnitBounds
  833. vUnitBounds
  834. svUnitsPerSide
  835. svUnitList
  836. svBulletCoords
  837. fThisUnit
  838. fWhichSide
  839. bullet
  840. SMALLEXPLOSION
  841. vBulletEnergy
  842. vSlope
  843. xDiff
  844. yDiff
  845. xMove
  846. yMove
  847. svBulletMoveIncrement
  848. svUnitList
  849. svBulletDecrement
  850. svBulletCoords
  851. svHitEnergy
  852. fTargetCoords
  853. pObjecttEnergy
  854. lObjectCenter
  855. clear
  856. Big explosion
  857. INSERTKILL
  858. pObjectEnergy
  859. svBulletEnergy
  860. svCurrentListPosition
  861. fHitEnergy
  862. fTarget
  863. BEGINMOVEUNIT
  864. svSettingUp
  865. svOldLoc
  866. fTarget
  867. CONTINUEMOVEUNIT
  868. svSettingUp
  869. svOldLoc
  870. fTarget
  871. ENDMOVEUNIT
  872. CONTINUEMOVEUNIT
  873. SETUNITPROPERTY
  874. svSettingUp
  875. fTarget
  876. SETUNITPROPERTY
  877. Make this unit Aggressive, Moderate, Conservative
  878. Agress
  879. Agress
  880. pRedUnits
  881. pBehavior
  882. vMoveDirection
  883. vStartPoint
  884. vMoves
  885. svMoveDirection
  886. svUnitMoves
  887. svSettingUp
  888. fTarget
  889. fExplosionObject
  890. fPoint
  891. INSERTKILL
  892. svUnitList
  893. fObject
  894. lObjectCenter
  895. vObjectBounds
  896. nearestTarget
  897. numDistanceToTarget
  898. vOurTarget
  899. vDistanceToTarget
  900. vThisTarget
  901. vOurTargetList
  902. svUnitsPerSide
  903. fTargetList
  904. fMyBounds
  905. numDistanceToTarget
  906. lObjectCenter
  907. lObjectCenter
  908. vCenter1
  909. vCenter2
  910. xDiff
  911. yDiff
  912. fBounds2
  913. fBounds1
  914. group id 826 of page id 0,group id 1085 of page id 0,group id 1094 of page id 0,group id 1103 of page id 0,group id 1112 of page id 0
  915. j'pRedUnits
  916. %group id 882 of page id 0
  917. #id 835 of page id 0,group id 844 of page id 0,group id 853 of page id 0,group id 862 of page id 0
  918. f$Z#pBlueUnits
  919. #group id 826 of page id 0,group id 933 of page id 0,group id 942 of page id 0,group id 951 of page id 0,group id 960 of page id 0
  920. %pBlueObjects
  921. %group id 826 of page id 0,group id 1009 of page id 0,group id 1018 of page id 0,group id 1027 of page id 0,group id 1036 of page id 0
  922. %R&pRedObjects
  923. &V#:&group id 882 of page id 0,group id 1046 of page id 0,group id 1056 of page id 0,group id 1066 of page id 0,group id 1076 of page id 0
  924. tgroup id 882 of page id 0,group id 1046 of page id 0,group id 1056 of page id 0,group id 1066 of page id 0,group id 1076 of page id 0
  925. group id 882 of page id 0,group id 1122 of page id 0,group id 1132 of page id 0,group id 1142 of page id 0,group id 1152 of page id 0
  926. "(<( Llv
  927. '@(@(
  928. 's Rmn
  929. pObjectEnergy 
  930. 800, (i - 
  931. )*800
  932. 7000,i*800
  933. "bullet"
  934. "large explosion"
  935. "small 
  936. PLAYGAME
  937. This 
  938. main loop 
  939. . It iterates through a 
  940. units
  941. each side, 
  942. ;fire & 
  943. actually one 
  944. fhalf 
  945. LiveRed, svLiveBlue
  946. svLiveRed 
  947. x"dead"
  948. MOVEANDFIRE 
  949. If we're here 
  950.  has won, figure out which 
  951. Hfinding 
  952. 1st non-
  953. & checking 
  954. vWinner
  955. "Red" 
  956. winner was " & 
  957. fWhichSide, fThisUnit
  958. BulletCoords, 
  959. built-
  960. nearest 
  961. >'s coordinates
  962. vUnitBounds
  963. nearestTarget(
  964. lObjectCenter(
  965. svBulletCoords
  966. tor,0
  967. fThisunit < 0 
  968.  > 8000
  969. fTargetCoords, fOriginalUnit
  970.  moves & 
  971. Fchecks 
  972. made a hit.
  973. always "underneath"
  974. other 
  975. }. If 
  976. Fthere 
  977. M so 
  978. ^ message.
  979. energy goes down 
  980. ZvBulletEnergy, vRatio, xDiff, yDiff, xMove, yMove
  981. Figure 
  982. how much 
  983. H(x/y). 
  984.  dies 
  985. no more 
  986. nt - 
  987. objectFromPoint(
  988.  <= 0
  989. BANG 
  990. ,"Small 
  991. ,fHitEnergy
  992.  sent 
  993. a hit (
  994.  over 
  995. {) happens
  996. 4svBulletEnergy, svCurrentListPosition
  997. ZvObj
  998. , blow 
  999. ,"Large 
  1000. INSERTKILL 
  1001. used only 
  1002.     setup phase 
  1003.     robots around
  1004. BEGINMOVEUNIT loc, 
  1005. OldLoc
  1006. svOldLoc
  1007. CONTINUEMOVEUNIT 
  1008. ENDMOVEUNIT 
  1009. SETUNITPROPERTY 
  1010. 4svMoveDirection, 
  1011. ZvStartPoint, vMoves
  1012. board we 
  1013. coming 
  1014. "Make 
  1015. Aggressive, Moderate, Conservative" \
  1016. f"Agress" 
  1017.  + 1 
  1018. magnitude, adjust 
  1019. fPoint, fExplosionObject
  1020. fObject
  1021. Insert 
  1022. flag 
  1023.  having >0 live 
  1024. same 
  1025.      vObjectBounds
  1026. input:
  1027.  containing 
  1028. output:
  1029.  contining coords 
  1030. Zx1,y1,x2,y2
  1031. ((x2 - x1)/2) +
  1032. x1,((y2 - y1)/2 + y1)
  1033.  fMyBounds,fTargetList
  1034. ZvDistanceToTarget, vThisTarget, vOurTargetList, 
  1035. distance, 
  1036. minimum
  1037. numDistanceToTarget(
  1038. Nt fBounds1, fBounds2
  1039. ZvCenter1,vCenter2, 
  1040.  between 
  1041. =' centers.
  1042. ENTERBOOK
  1043. BEGINMOVEUNIT
  1044. PLAYGAME
  1045. CONTINUEMOVEUNIT
  1046. ENDMOVEUNIT
  1047. MOVEANDFIRE
  1048. SETUNITPROPERTY
  1049. INITGAME
  1050. INSERTKILL
  1051. lObjectCenter
  1052. nearestTarget
  1053. numDistanceToTarget
  1054. ENTERBOOK
  1055. tank help
  1056. j^INITGAME
  1057. INITGAME
  1058. 8,-2,7,-3,6,-4
  1059. pBlueUnits
  1060. pRedUnits
  1061. pBehavior
  1062. pObjectEnergy
  1063. bullet
  1064. large explosion
  1065. small explosion
  1066. svUserHalt
  1067. vCurrentObject
  1068. vStartEnergy
  1069. svWin
  1070. svBulletDecrement
  1071. svBulletMoveIncrement
  1072. svUnitMoves
  1073. svMoveConversionFactor
  1074. svSettingUp
  1075. svUnitsPerSide
  1076. svMoveUnits
  1077. svUnitList
  1078. svHitEnergy
  1079. PLAYGAME
  1080. bullet
  1081. MOVEANDFIRE
  1082. MOVEANDFIRE
  1083. The winner was 
  1084. vWinner
  1085. i:to1
  1086. vUnits
  1087. svUnitsPerSide
  1088. svLiveRed
  1089. svLiveBlue
  1090. svSettingUp
  1091. svUnitList
  1092. svUserHalt
  1093. MOVEANDFIRE
  1094. pBehavior
  1095. nearestTarget
  1096. nearestTarget
  1097. lObjectCenter
  1098. bullet
  1099. lObjectCenter
  1100. pBehavior
  1101. pBehavior
  1102. fThisunit
  1103. pBehavior
  1104. pBehavior
  1105. pBehavior
  1106. pBehavior
  1107. vUnitBounds
  1108. svUnitsPerSide
  1109. svUnitList
  1110. svBulletCoords
  1111. svMoveConversionFactor
  1112. fThisUnit
  1113. fWhichSide
  1114. bullet
  1115. bullet
  1116. button
  1117. Small explosion
  1118. vBulletEnergy
  1119. vRatio
  1120. xDiff
  1121. yDiff
  1122. xMove
  1123. yMove
  1124. svBulletMoveIncrement
  1125. svUnitList
  1126. svBulletDecrement
  1127. svBulletCoords
  1128. svHitEnergy
  1129. fOriginalUnit
  1130. fTargetCoords
  1131. bullet
  1132. pObjectEnergy
  1133. lObjectCenter
  1134. Large explosion
  1135. INSERTKILL
  1136. lObjectCenter
  1137. Small explosion
  1138. pObjectEnergy
  1139. svBulletEnergy
  1140. svCurrentListPosition
  1141. fHitEnergy
  1142. fTarget
  1143. BEGINMOVEUNIT
  1144. svSettingUp
  1145. svOldLoc
  1146. fTarget
  1147. CONTINUEMOVEUNIT
  1148. svSettingUp
  1149. svOldLoc
  1150. fTarget
  1151. ENDMOVEUNIT
  1152. CONTINUEMOVEUNIT
  1153. SETUNITPROPERTY
  1154. svSettingUp
  1155. fTarget
  1156. SETUNITPROPERTY
  1157. Make this unit Aggressive, Moderate, Conservative
  1158. Agress
  1159. Agress
  1160. pRedUnits
  1161. pBehavior
  1162. vMoveDirection
  1163. vStartPoint
  1164. vMoves
  1165. svMoveDirection
  1166. svUnitMoves
  1167. svSettingUp
  1168. fTarget
  1169. lObjectCenter
  1170. large explosion
  1171. bullet
  1172. fExplosionObject
  1173. fPoint
  1174. INSERTKILL
  1175. svUnitList
  1176. svUnitsPerSide
  1177. svLiveRed
  1178. svLiveBlue
  1179. fObject
  1180. lObjectCenter
  1181. vObjectBounds
  1182. nearestTarget
  1183. numDistanceToTarget
  1184. vDistanceToTarget
  1185. vThisTarget
  1186. vOurTargetList
  1187. vOurTarget
  1188. svUnitsPerSide
  1189. fTargetList
  1190. fMyBounds
  1191. numDistanceToTarget
  1192. lObjectCenter
  1193. lObjectCenter
  1194. vCenter1
  1195. vCenter2
  1196. xDiff
  1197. yDiff
  1198. fBounds2
  1199. fBounds1
  1200. Battlefield Survival Strategies
  1201. :,[U4
  1202. Tankwar, a game 
  1203. cellular automata.
  1204. Each player (
  1205. programs his pieces & 
  1206. Fthey fight 
  1207. ENTERBOOK
  1208. INITGAME
  1209. The sv-Moves 
  1210. _are lists that have 
  1211. _ conservative, moderate,
  1212. radical 
  1213. namounts
  1214. 4svSettingUp, svUnitsPerSide, svMoveUnits, svUnitList, svHitEnergy
  1215. 4svBulletDecrement, svBulletMoveIncrement, svUnitMoves, svMoveConversionFactor
  1216. ZvCurrentObject, vStartEnergy, svWin
  1217. MainWindow 
  1218. -5,-5,645,485
  1219. "8,-2,7,-3,6,-4" 
  1220. svUserHalt 
  1221. Set up the 
  1222. targets
  1223. pBlueUnits 
  1224. pRedUnits 
  1225. vThisGroup
  1226. [pBehavior 
  1227. "hex"
  1228. 0,75.3125,0
  1229. pObjectEnergy 
  1230. 800, (i - 
  1231. )*800
  1232. 7000,i*800
  1233. HIDESTUFF
  1234. PLAYGAME
  1235. main loop 
  1236. . It iterates through a 
  1237. units
  1238. each side, 
  1239. ;fire & 
  1240. actually one 
  1241. fhalf 
  1242. LiveRed, svLiveBlue
  1243. svLiveRed 
  1244. x"dead"
  1245. MOVEANDFIRE 
  1246. If we're here 
  1247.  has won, figure out which 
  1248. Hfinding 
  1249. 1st non-
  1250. & checking 
  1251. vWinner
  1252. "Red" 
  1253. winner was " & 
  1254. "controlPanel"
  1255. fWhichSide, fThisUnit
  1256. BulletCoords, 
  1257. built-
  1258. nearest 
  1259. >'s coordinates
  1260. vUnitBounds
  1261. nearestTarget(
  1262. lObjectCenter(
  1263. svBulletCoords
  1264. "bullet" 
  1265. tor,0
  1266. fThisunit < 0 
  1267.  > 8000
  1268. fTargetCoords, fOriginalUnit
  1269.  moves & 
  1270. Fchecks 
  1271. made a hit.
  1272. always "underneath"
  1273. other 
  1274. }. If 
  1275. Fthere 
  1276. M so 
  1277. ^ message.
  1278. energy goes down 
  1279. ZvBulletEnergy, vRatio, xDiff, yDiff, xMove, yMove
  1280. Figure 
  1281. how much 
  1282. H(x/y). 
  1283.  dies 
  1284. no more 
  1285. nt - 
  1286. objectFromPoint(
  1287.  <= 0
  1288. BANG 
  1289. ,"Small explosion" 
  1290. ,fHitEnergy
  1291.  sent 
  1292. a hit (
  1293.  over 
  1294. {) happens
  1295. 4svBulletEnergy, svCurrentListPosition
  1296. ZvObj
  1297. , blow 
  1298. ,"Large 
  1299. INSERTKILL 
  1300. used only 
  1301.     setup phase 
  1302.     robots around
  1303. BEGINMOVEUNIT loc, 
  1304. OldLoc
  1305. svOldLoc
  1306. CONTINUEMOVEUNIT 
  1307. ENDMOVEUNIT 
  1308. SETUNITPROPERTY 
  1309. 4svMoveDirection, 
  1310. ZvStartPoint, vMoves, vColor
  1311. board we 
  1312. coming 
  1313. "Make 
  1314. Aggressive, Moderate, Conservative" \
  1315. f"Agress" 
  1316.  + 1 
  1317. magnitude, adjust 
  1318. fPoint, fExplosionObject
  1319. "large 
  1320. fObject
  1321. Insert 
  1322. flag 
  1323.  having >0 live 
  1324. same 
  1325. "small 
  1326. "tank help"
  1327.  vObjectBounds
  1328. input:
  1329.  containing 
  1330. output:
  1331.  contining coords 
  1332. Zx1,y1,x2,y2
  1333. ((x2 - x1)/2) +
  1334. x1,((y2 - y1)/2 + y1)
  1335.  fMyBounds,fTargetList
  1336. ZvDistanceToTarget, vThisTarget, vOurTargetList, 
  1337. distance, 
  1338. minimum
  1339. numDistanceToTarget(
  1340. Nt fBounds1, fBounds2
  1341. ZvCenter1,vCenter2, 
  1342.  between 
  1343. =' centers.
  1344. ENTERBOOK
  1345. BEGINMOVEUNIT
  1346. PLAYGAME
  1347. CONTINUEMOVEUNIT
  1348. ENDMOVEUNIT
  1349. MOVEANDFIRE
  1350. SETUNITPROPERTY
  1351. INITGAME
  1352. INSERTKILL
  1353. HIDESTUFF
  1354. lObjectCenter
  1355. nearestTarget
  1356. numDistanceToTarget
  1357. ENTERBOOK
  1358. j^INITGAME
  1359. INITGAME
  1360. 8,-2,7,-3,6,-4
  1361. pBlueUnits
  1362. pRedUnits
  1363. pBehavior
  1364. pObjectEnergy
  1365. HIDESTUFF
  1366. j:to1
  1367. vThisGroup
  1368. svUserHalt
  1369. vCurrentObject
  1370. vStartEnergy
  1371. svWin
  1372. svBulletDecrement
  1373. svBulletMoveIncrement
  1374. svUnitMoves
  1375. svMoveConversionFactor
  1376. svSettingUp
  1377. svUnitsPerSide
  1378. svMoveUnits
  1379. svUnitList
  1380. svHitEnergy
  1381. PLAYGAME
  1382. HIDESTUFF
  1383. MOVEANDFIRE
  1384. MOVEANDFIRE
  1385. The winner was 
  1386. controlPanel
  1387. vWinner
  1388. i:to1
  1389. vUnits
  1390. svUnitsPerSide
  1391. svLiveRed
  1392. svLiveBlue
  1393. svSettingUp
  1394. svUnitList
  1395. svUserHalt
  1396. MOVEANDFIRE
  1397. pBehavior
  1398. nearestTarget
  1399. nearestTarget
  1400. lObjectCenter
  1401. bullet
  1402. lObjectCenter
  1403. pBehavior
  1404. pBehavior
  1405. fThisunit
  1406. pBehavior
  1407. pBehavior
  1408. pBehavior
  1409. pBehavior
  1410. vUnitBounds
  1411. svUnitsPerSide
  1412. svUnitList
  1413. svBulletCoords
  1414. svMoveConversionFactor
  1415. fThisUnit
  1416. fWhichSide
  1417. bullet
  1418. bullet
  1419. button
  1420. Small explosion
  1421. vBulletEnergy
  1422. vRatio
  1423. xDiff
  1424. yDiff
  1425. xMove
  1426. yMove
  1427. svBulletMoveIncrement
  1428. svUnitList
  1429. svBulletDecrement
  1430. svBulletCoords
  1431. svHitEnergy
  1432. fOriginalUnit
  1433. fTargetCoords
  1434. bullet
  1435. pObjectEnergy
  1436. lObjectCenter
  1437. Large explosion
  1438. INSERTKILL
  1439. lObjectCenter
  1440. Small explosion
  1441. pObjectEnergy
  1442. svBulletEnergy
  1443. svCurrentListPosition
  1444. fHitEnergy
  1445. fTarget
  1446. BEGINMOVEUNIT
  1447. svSettingUp
  1448. svOldLoc
  1449. fTarget
  1450. CONTINUEMOVEUNIT
  1451. svSettingUp
  1452. svOldLoc
  1453. fTarget
  1454. ENDMOVEUNIT
  1455. CONTINUEMOVEUNIT
  1456. SETUNITPROPERTY
  1457. svSettingUp
  1458. fTarget
  1459. SETUNITPROPERTY
  1460. Make this unit Aggressive, Moderate, Conservative
  1461. Agress
  1462. Agress
  1463. 0,50,100
  1464. 60,50,100
  1465. 120,50,100
  1466. pRedUnits
  1467. pBehavior
  1468. vMoveDirection
  1469. vStartPoint
  1470. vMoves
  1471. vColor
  1472. svMoveDirection
  1473. svUnitMoves
  1474. svSettingUp
  1475. fTarget
  1476. lObjectCenter
  1477. large explosion
  1478. bullet
  1479. fExplosionObject
  1480. fPoint
  1481. INSERTKILL
  1482. svUnitList
  1483. svUnitsPerSide
  1484. svLiveRed
  1485. svLiveBlue
  1486. fObject
  1487. HIDESTUFF
  1488. bullet
  1489. large explosion
  1490. small explosion
  1491. tank help
  1492. lObjectCenter
  1493. vObjectBounds
  1494. nearestTarget
  1495. numDistanceToTarget
  1496. vDistanceToTarget
  1497. vThisTarget
  1498. vOurTargetList
  1499. vOurTarget
  1500. svUnitsPerSide
  1501. fTargetList
  1502. fMyBounds
  1503. numDistanceToTarget
  1504. lObjectCenter
  1505. lObjectCenter
  1506. vCenter1
  1507. vCenter2
  1508. xDiff
  1509. yDiff
  1510. fBounds2
  1511. fBounds1
  1512. `D|D|
  1513. Tankwar, a game 
  1514. cellular automata.
  1515. Each player (
  1516. programs his pieces & 
  1517. Fthey fight 
  1518. ENTERBOOK
  1519. INITGAME
  1520. The sv-Moves 
  1521. _are lists that have 
  1522. _ conservative, moderate,
  1523. radical 
  1524. namounts
  1525. 4svSettingUp, svUnitsPerSide, svMoveUnits, svUnitList, svHitEnergy
  1526. 4svBulletDecrement, svBulletMoveIncrement, svUnitMoves, svMoveConversionFactor
  1527. ZvCurrentObject, vStartEnergy, svWin
  1528. MainWindow 
  1529. -5,-5,645,485
  1530. "8,-2,7,-3,6,-4" 
  1531. svUserHalt 
  1532. Set up the 
  1533. targets
  1534. pBlueUnits 
  1535. pRedUnits 
  1536. vThisGroup
  1537. [pBehavior 
  1538. "hex"
  1539. 0,75.3125,0
  1540. pObjectEnergy 
  1541. 800, (i - 
  1542. )*800
  1543. 7000,i*800
  1544. HIDESTUFF
  1545. PLAYGAME
  1546. main loop 
  1547. . It iterates through a 
  1548. units
  1549. each side, 
  1550. ;fire & 
  1551. actually one 
  1552. fhalf 
  1553. LiveRed, svLiveBlue
  1554. svLiveRed 
  1555. x"dead"
  1556. MOVEANDFIRE 
  1557. If we're here 
  1558.  has won, figure out which 
  1559. Hfinding 
  1560. 1st non-
  1561. & checking 
  1562. vWinner
  1563. "Red" 
  1564. winner was " & 
  1565. "controlPanel"
  1566. fWhichSide, fThisUnit
  1567. BulletCoords, 
  1568. built-
  1569. nearest 
  1570. >'s coordinates
  1571. vUnitBounds
  1572. nearestTarget(
  1573. lObjectCenter(
  1574. svBulletCoords
  1575. "bullet" 
  1576. tor,0
  1577. fThisunit < 0 
  1578.  > 8000
  1579. fTargetCoords, fOriginalUnit
  1580.  moves & 
  1581. Fchecks 
  1582. made a hit.
  1583. always "underneath"
  1584. other 
  1585. }. If 
  1586. Fthere 
  1587. M so 
  1588. ^ message.
  1589. energy goes down 
  1590. ZvBulletEnergy, vRatio, xDiff, yDiff, xMove, yMove
  1591. Figure 
  1592. how much 
  1593. H(x/y). 
  1594.  dies 
  1595. no more 
  1596. nt - 
  1597. objectFromPoint(
  1598.  <= 0
  1599. BANG 
  1600. ,"Small explosion" 
  1601. ,fHitEnergy
  1602.  sent 
  1603. a hit (
  1604.  over 
  1605. {) happens
  1606. 4svBulletEnergy, svCurrentListPosition
  1607. ZvObj
  1608. , blow 
  1609. ,"Large 
  1610. INSERTKILL 
  1611. used only 
  1612.     setup phase 
  1613.     robots around
  1614. BEGINMOVEUNIT loc, 
  1615. OldLoc
  1616. svOldLoc
  1617. CONTINUEMOVEUNIT 
  1618. ENDMOVEUNIT 
  1619. SETUNITPROPERTY 
  1620. 4svMoveDirection, 
  1621. ZvStartPoint, vMoves, vColor
  1622. board we 
  1623. coming 
  1624. "Make 
  1625. Aggressive, Moderate, Conservative" \
  1626. f"Agress" 
  1627.  + 1 
  1628. magnitude, adjust 
  1629. fPoint, fExplosionObject
  1630. "large 
  1631. fObject
  1632. Insert 
  1633. flag 
  1634.  having >0 live 
  1635. same 
  1636. SAVEBOARD
  1637. "small 
  1638. "tank help"
  1639.  vObjectBounds
  1640. input:
  1641.  containing 
  1642. output:
  1643.  contining coords 
  1644. Zx1,y1,x2,y2
  1645. ((x2 - x1)/2) +
  1646. x1,((y2 - y1)/2 + y1)
  1647.  fMyBounds,fTargetList
  1648. ZvDistanceToTarget, vThisTarget, vOurTargetList, 
  1649. distance, 
  1650. minimum
  1651. numDistanceToTarget(
  1652. Nt fBounds1, fBounds2
  1653. ZvCenter1,vCenter2, 
  1654.  between 
  1655. =' centers.
  1656. RBOOK
  1657. BEGINMOVEUNIT
  1658. PLAYGAME
  1659. CONTINUEMOVEUNIT
  1660. ENDMOVEUNIT
  1661. MOVEANDFIRE
  1662. SETUNITPROPERTY
  1663. INITGAME
  1664. INSERTKILL
  1665. SAVEBOARD
  1666. ENTERBOOK
  1667. HIDESTUFF
  1668. lObjectCenter
  1669. nearestTarget
  1670. numDistanceToTarget
  1671. ENTERBOOK
  1672. j^INITGAME
  1673. INITGAME
  1674. 8,-2,7,-3,6,-4
  1675. pBlueUnits
  1676. pRedUnits
  1677. pBehavior
  1678. pObjectEnergy
  1679. HIDESTUFF
  1680. j:to1
  1681. vThisGroup
  1682. svUserHalt
  1683. vCurrentObject
  1684. vStartEnergy
  1685. svWin
  1686. svBulletDecrement
  1687. svBulletMoveIncrement
  1688. svUnitMoves
  1689. svMoveConversionFactor
  1690. svSettingUp
  1691. svUnitsPerSide
  1692. svMoveUnits
  1693. svUnitList
  1694. svHitEnergy
  1695. PLAYGAME
  1696. HIDESTUFF
  1697. MOVEANDFIRE
  1698. MOVEANDFIRE
  1699. The winner was 
  1700. controlPanel
  1701. vWinner
  1702. i:to1
  1703. vUnits
  1704. svUnitsPerSide
  1705. svLiveRed
  1706. svLiveBlue
  1707. svSettingUp
  1708. svUnitList
  1709. svUserHalt
  1710. MOVEANDFIRE
  1711. pBehavior
  1712. nearestTarget
  1713. nearestTarget
  1714. lObjectCenter
  1715. bullet
  1716. lObjectCenter
  1717. pBehavior
  1718. pBehavior
  1719. fThisunit
  1720. pBehavior
  1721. pBehavior
  1722. pBehavior
  1723. pBehavior
  1724. vUnitBounds
  1725. svUnitsPerSide
  1726. svUnitList
  1727. svBulletCoords
  1728. svMoveConversionFactor
  1729. fThisUnit
  1730. fWhichSide
  1731. bullet
  1732. bullet
  1733. button
  1734. Small explosion
  1735. vBulletEnergy
  1736. vRatio
  1737. xDiff
  1738. yDiff
  1739. xMove
  1740. yMove
  1741. svBulletMoveIncrement
  1742. svUnitList
  1743. svBulletDecrement
  1744. svBulletCoords
  1745. svHitEnergy
  1746. fOriginalUnit
  1747. fTargetCoords
  1748. bullet
  1749. pObjectEnergy
  1750. lObjectCenter
  1751. Large explosion
  1752. INSERTKILL
  1753. lObjectCenter
  1754. Small explosion
  1755. pObjectEnergy
  1756. svBulletEnergy
  1757. svCurrentListPosition
  1758. fHitEnergy
  1759. fTarget
  1760. BEGINMOVEUNIT
  1761. svSettingUp
  1762. svOldLoc
  1763. fTarget
  1764. CONTINUEMOVEUNIT
  1765. svSettingUp
  1766. svOldLoc
  1767. fTarget
  1768. ENDMOVEUNIT
  1769. CONTINUEMOVEUNIT
  1770. SETUNITPROPERTY
  1771. svSettingUp
  1772. fTarget
  1773. SETUNITPROPERTY
  1774. Make this unit Aggressive, Moderate, Conservative
  1775. Agress
  1776. Agress
  1777. 0,50,100
  1778. 60,50,100
  1779. 120,50,100
  1780. pRedUnits
  1781. pBehavior
  1782. vMoveDirection
  1783. vStartPoint
  1784. vMoves
  1785. vColor
  1786. svMoveDirection
  1787. svUnitMoves
  1788. svSettingUp
  1789. fTarget
  1790. lObjectCenter
  1791. large explosion
  1792. bullet
  1793. fExplosionObject
  1794. fPoint
  1795. INSERTKILL
  1796. svUnitList
  1797. svUnitsPerSide
  1798. svLiveRed
  1799. svLiveBlue
  1800. fObject
  1801. SAVEBOARD
  1802. HIDESTUFF
  1803. bullet
  1804. large explosion
  1805. small explosion
  1806. tank help
  1807. lObjectCenter
  1808. vObjectBounds
  1809. nearestTarget
  1810. numDistanceToTarget
  1811. vDistanceToTarget
  1812. vThisTarget
  1813. vOurTargetList
  1814. vOurTarget
  1815. svUnitsPerSide
  1816. fTargetList
  1817. fMyBounds
  1818. numDistanceToTarget
  1819. lObjectCenter
  1820. lObjectCenter
  1821. vCenter1
  1822. vCenter2
  1823. xDiff
  1824. yDiff
  1825. fBounds2
  1826. fBounds1
  1827. (pObjectEnergy
  1828. This 
  1829. used only 
  1830. the setup phase 
  1831. robots around
  1832. BUTTONDOWN loc
  1833. BEGINMOVEUNIT 
  1834. BUTTONSTILLDOWN 
  1835. CONTINUEMOVEUNIT 
  1836. BUTTONUP 
  1837. ENDMOVEUNIT 
  1838. UTTONDOWN
  1839. BUTTONSTILLDOWN
  1840. BUTTONDOWN
  1841. BUTTONUP
  1842. BUTTONDOWN
  1843. HRBEGINMOVEUNIT
  1844. BUTTONSTILLDOWN
  1845. CONTINUEMOVEUNIT
  1846. BUTTONUP
  1847. ENDMOVEUNIT
  1848. 6-pObjectEnergy
  1849. `/b1X
  1850. This 
  1851. used only 
  1852. the setup phase 
  1853. robots around
  1854. BUTTONDOWN loc
  1855. BEGINMOVEUNIT 
  1856. BUTTONSTILLDOWN 
  1857. CONTINUEMOVEUNIT 
  1858. BUTTONUP 
  1859. ENDMOVEUNIT 
  1860. UTTONDOWN
  1861. BUTTONSTILLDOWN
  1862. BUTTONDOWN
  1863. BUTTONUP
  1864. BUTTONDOWN
  1865. HRBEGINMOVEUNIT
  1866. BUTTONSTILLDOWN
  1867. CONTINUEMOVEUNIT
  1868. BUTTONUP
  1869. ENDMOVEUNIT
  1870. x1pObjectEnergy
  1871. tank help
  1872. BUTTONUP
  1873. "tank help"
  1874. BUTTONUP
  1875. BUTTONUP
  1876. tank help
  1877. The Game of TankWarr
  1878.     This is a game of cellular automata.  The cells or units in this game are tanks on a battlefield, firing at each other.  There are two sides. Red and Blue.  There are two phases to the game, Setup and Combat.  During the Setup phase each player positions his units and  defines their behavior.  When the battle starts the tanks advance, firing on the enemy.  The battle continues until one side has no tanks left.  The purpose of this game is to let you try out various survival strategies and combat formations for your tank force. 
  1879. The Units.
  1880.     Each unit is a tank.  At the beginning each tank has 125 units of energy.  This energy is diminished each time the tank is hit.  A unit also has a behavior characteristic (property, for those who have already OD'ed on ToolBook) that governs how it moves.  A  move consists of the following:  the tank moves forward, fires at the closest enemy tank, and then moves back.  The net motion on each turn is always forward, but the ratio between the two types of motion is governed by the behavior, and can be Aggressive (moves forward a lot more than back), Moderate (forward some, then back some) or Conservative  (moves forward some, then back almost as much.  If a unit gets to the end of the field it reverses its motion.
  1881. Shots.  
  1882.     Each shot starts out with 75 units of energy,  but the further a shot travels the less energy it has.  When its energy  reaches zero it explodes harmlessly.  A hit diminishes the target's energy by the amount of energy it has left.
  1883. left.
  1884. Large explosion
  1885. Small explosion
  1886. Browser
  1887. SHOWOBJECT
  1888. 4svBrowseAction
  1889. "Show 
  1890. "Click on 
  1891. {'s ID 
  1892. "Browser message"
  1893. PRINTFIELD
  1894. "Print Field"
  1895. 's ID 
  1896. GETOBJECTSCRIPT
  1897. "Get Script"
  1898. {'s ID 
  1899. work 
  1900. ADJUSTPARAMS
  1901. "Adjust Parameters"
  1902. {'s ID 
  1903. CLEARBROWSERFIELDS
  1904. "Object ID"
  1905. )Bounds"
  1906. "browser 
  1907. title"
  1908. INTFIELD
  1909. SHOWOBJECT
  1910. GETOBJECTSCRIPT
  1911. ADJUSTPARAMS
  1912. PRINTFIELD
  1913. CLEARBROWSERFIELDS
  1914. SHOWOBJECT
  1915. Show object
  1916. Click on an object's ID to show it
  1917. Browser message
  1918. svBrowseAction
  1919. PRINTFIELD
  1920. Print Field
  1921. Click on a field's ID to print its text
  1922. Browser message
  1923. svBrowseAction
  1924. GETOBJECTSCRIPT
  1925. Get Script
  1926. Click on an object's ID to work with its script
  1927. Browser message
  1928. svBrowseAction
  1929. ADJUSTPARAMS
  1930. Adjust Parameters
  1931. Click on an object's ID to work with its bounds
  1932. Browser message
  1933. svBrowseAction
  1934. CLEARBROWSERFIELDS
  1935. Object ID
  1936. Object name
  1937. Object properties
  1938. Object Bounds
  1939. browser message
  1940. Browser title
  1941. DJxDpBrowseHelp
  1942.     This is the object browser.  The four fields show the following information about the current page:
  1943. Object ID            The unique id of an object is shown.
  1944. Object name        If the object has a name it will appear here
  1945. Object Properties    The status of the following four properties is shown here; script, visible, userProperties, and layer.  The first three are Yes/No flags, the layer is by number
  1946. Object bounds        The bounds of the object are shown.  If an item in the list is negative, it will be surrounded by angle brackets.
  1947.     The following functions are available through the buttons on the browser.  They all work the same way: first click on the function button to set the mode, then click on the object's line in the Object ID field.
  1948. Get script            An object's script can be printed, edited with a DOS text editor (you must set this up through the tools configuration menu first), or put into a field on the screen.  
  1949. Print field            The text of a field can be printed.
  1950. Show object        An invisible object can be shown.
  1951. Adjust Bounds/Vertices        You can adjust the size and shape of an object without ungrouping.
  1952. Other features.        The black diamond in the upper right of the control panel is a move handle - click on it and you can drag the browser around.  The small box in the upper left of the control panel is the go-away button, and a click there will remove the browser.  The two black triangles over the bounds field are scroll buttons for all four fields.
  1953. ^Jpbrowsefieldnames
  1954. object id,object name,object properties,object bounds
  1955. Browser message
  1956. Show Obj
  1957. BUTTONUP
  1958. SHOWOBJECT 
  1959. "browser"
  1960. BUTTONUP
  1961. BUTTONUP
  1962. SHOWOBJECT
  1963. browser
  1964. Show Obj
  1965. Get Script
  1966. BUTTONUP
  1967. GETOBJECTSCRIPT 
  1968. "browser"
  1969. BUTTONUP
  1970. BUTTONUP
  1971. GETOBJECTSCRIPT
  1972. browser
  1973. Get Script
  1974. ToolsHelp
  1975. BUTTONUP
  1976. PUTHELP pBrowseHelp 
  1977. "Browser"
  1978. BUTTONUP
  1979. BUTTONUP
  1980. KPUTHELP
  1981. Browser
  1982. pBrowseHelp
  1983. Adjust Bounds
  1984. BUTTONUP
  1985. "This feature 
  1986. ximplemented yet."
  1987. ADJUSTPARAMS 
  1988. "Browser"
  1989. BUTTONUP
  1990. BUTTONUP
  1991. This feature is not implemented yet.
  1992. $ADJUSTPARAMS
  1993. Browser
  1994. Adj Bnds/vert
  1995. Print Field 
  1996. BUTTONUP
  1997. PRINTFIELD 
  1998. "browser"
  1999. BUTTONUP
  2000. BUTTONUP
  2001. PRINTFIELD
  2002. browser
  2003. Print Field
  2004. Object Browser Control Panel
  2005. BUTTONDOUBLECLICK
  2006. BUTTONUP 
  2007. B"Dismiss Browser Control"
  2008. BUTTONDOUBLECLICK
  2009. BUTTONDOUBLECLICK
  2010. BUTTONUP
  2011. Dismiss Browser Control
  2012. BUTTONUP
  2013. 4svToolsName
  2014. ZvThisBook, vStrlen
  2015. Check 
  2016. be sure we are 
  2017. xdeleting 
  2018. 4tools 
  2019. vStrLen
  2020. the separator 
  2021. colon starting 
  2022. Vi + 1 
  2023. "You 
  2024. your 
  2025. ,mode 
  2026. delete 
  2027. "Browser"
  2028. BUTTONUP
  2029. BUTTONUP
  2030. vStrLen
  2031. vStrLen
  2032. You are in your system tools book - go to author mode to delete this object.
  2033. Browser
  2034. clear
  2035. vThisBook
  2036. vStrlen
  2037. svToolsName
  2038. Button
  2039. BUTTONUP
  2040. BUTTONUP
  2041. BUTTONUP
  2042. BUTTONUP
  2043. BUTTONDOWN loc
  2044. 4svOldLoc
  2045. BUTTONSTILLDOWN 
  2046. "browser" 
  2047. BUTTONUP 
  2048. default
  2049. UTTONDOWN
  2050. BUTTONSTILLDOWN
  2051. BUTTONDOWN
  2052. BUTTONUP
  2053. BUTTONDOWN
  2054. BUTTONSTILLDOWN
  2055. svOldLoc
  2056. BUTTONSTILLDOWN
  2057. browser
  2058. svOldLoc
  2059. BUTTONUP
  2060. BUTTONSTILLDOWN
  2061. default
  2062. Object  Id                                                       Name                                 Sc  Vi  P  Ly          Bounds                                    
  2063. Browser Title
  2064. 15 Objects on page 1 of Book "C:\EGYPT\TANK.TBK"
  2065. Object ID
  2066. BUTTONUP loc
  2067. 4svBrowseAction
  2068. ZvThisObject
  2069. Clear the hierarchy indicators
  2070. "Get Script"
  2071. GETSCRIPTS2 
  2072. "Print 
  2073. "Can only 
  2074. PRINTTEXT 
  2075. "Show 
  2076. "Adjust Parameters"
  2077. ADJUSTOBJECT 
  2078. BUTTONUP
  2079. BUTTONUP
  2080. textFromPoint
  2081. Get Script
  2082. GETSCRIPTS2
  2083. Print field
  2084. field
  2085. recordField
  2086. Can only print text of field or recordField.
  2087. PRINTTEXT
  2088. Show object
  2089. Adjust Parameters
  2090. Parameter group
  2091. ADJUSTOBJECT
  2092. Parameter group
  2093. vThisObject
  2094. svBrowseAction
  2095. group id 736
  2096. >roundedrectangle id 735
  2097. >button id 172
  2098. >button id 198
  2099. >button id 199
  2100. group id 826
  2101. >roundedrectangle id 819
  2102. >roundedrectangle id 820
  2103. >irregularpolygon id 821
  2104. >polygon id 822
  2105. >roundedrectangle id 823
  2106. >roundedrectangle id 824
  2107. >line id 825
  2108. group id 882
  2109. >roundedrectangle id 874
  2110. >roundedrectangle id 875
  2111. >irregularpolygon id 876
  2112. >polygon id 877
  2113. >line id 878
  2114. >rectangle id 879
  2115. >roundedrectangle id 880
  2116. >roundedrectangle id 881
  2117. ellipse id 4
  2118. group id 1085
  2119. >roundedrectangle id 1078
  2120. >roundedrectangle id 1079
  2121. >irregularpolygon id 1080
  2122. >polygon id 1081
  2123. >roundedrectangle id 1082
  2124. >roundedrectangle id 1083
  2125. >line id 1084
  2126. group id 1094
  2127. >roundedrectangle id 1087
  2128. >roundedrectangle id 1088
  2129. >irregularpolygon id 1089
  2130. >polygon id 1090
  2131. >roundedrectangle id 1091
  2132. >roundedrectangle id 1092
  2133. >line id 1093
  2134. group id 1103
  2135. >roundedrectangle id 1096
  2136. >roundedrectangle id 1097
  2137. >irregularpolygon id 1098
  2138. >polygon id 1099
  2139. >roundedrectangle id 1100
  2140. >roundedrectangle id 1101
  2141. >line id 1102
  2142. group id 1112
  2143. >roundedrectangle id 1105
  2144. >roundedrectangle id 1106
  2145. >irregularpolygon id 1107
  2146. >polygon id 1108
  2147. >roundedrectangle id 1109
  2148. >roundedrectangle id 1110
  2149. >line id 1111
  2150. group id 1122
  2151. >roundedrectangle id 1114
  2152. >roundedrectangle id 1115
  2153. >irregularpolygon id 1116
  2154. >polygon id 1117
  2155. >line id 1118
  2156. >rectangle id 1119
  2157. >roundedrectangle id 1120
  2158. >roundedrectangle id 1121
  2159. group id 1132
  2160. >roundedrectangle id 1124
  2161. >roundedrectangle id 1125
  2162. >irregularpolygon id 1126
  2163. >polygon id 1127
  2164. >line id 1128
  2165. >rectangle id 1129
  2166. >roundedrectangle id 1130
  2167. >roundedrectangle id 1131
  2168. group id 1142
  2169. >roundedrectangle id 1134
  2170. >roundedrectangle id 1135
  2171. >irregularpolygon id 1136
  2172. >polygon id 1137
  2173. >line id 1138
  2174. >rectangle id 1139
  2175. >roundedrectangle id 1140
  2176. >roundedrectangle id 1141
  2177. group id 1152
  2178. >roundedrectangle id 1144
  2179. >roundedrectangle id 1145
  2180. >irregularpolygon id 1146
  2181. >polygon id 1147
  2182. >line id 1148
  2183. >rectangle id 1149
  2184. >roundedrectangle id 1150
  2185. >roundedrectangle id 1151
  2186. group id 778
  2187. >roundedrectangle id 687
  2188. >roundedrectangle id 776
  2189. >button id 688
  2190. >field id 689
  2191. >group id 777
  2192. >>rectangle id 692
  2193. >>field id 691
  2194. group id 208
  2195. >irregularpolygon id 206
  2196. >irregularpolygon id 207
  2197. group id 204
  2198. >irregularpolygon id 202
  2199. >irregularpolygon id 203
  2200. Object name
  2201. Control Panel
  2202. bullet
  2203. tank help
  2204. Large explosion
  2205. Small explosion
  2206. Object Properties
  2207.   N  Y  N   1
  2208.   N  Y  N   1
  2209.   Y  Y  N   1
  2210.   Y  Y  N   1
  2211.   Y  Y  N   1
  2212.   Y  Y  Y   2
  2213.   N  Y  N   1
  2214.   N  Y  N   1
  2215.   N  Y  N   1
  2216.   N  Y  N   1
  2217.   N  Y  N   1
  2218.   N  Y  N   1
  2219.   N  Y  N   1
  2220.   Y  Y  Y   3
  2221.   N  Y  Y   1
  2222.   N  Y  N   1
  2223.   N  Y  N   1
  2224.   N  Y  N   1
  2225.   N  Y  N   1
  2226.   N  Y  N   1
  2227.   N  Y  N   1
  2228.   N  Y  N   1
  2229.   N  N  N   4
  2230.   Y  Y  Y   5
  2231.   N  Y  N   1
  2232.   N  Y  N   1
  2233.   N  Y  N   1
  2234.   N  Y  N   1
  2235.   N  Y  N   1
  2236.   N  Y  N   1
  2237.   N  Y  N   1
  2238.   Y  Y  Y   6
  2239.   N  Y  N   1
  2240.   N  Y  N   1
  2241.   N  Y  N   1
  2242.   N  Y  N   1
  2243.   N  Y  N   1
  2244.   N  Y  N   1
  2245.   N  Y  N   1
  2246.   Y  Y  Y   7
  2247.   N  Y  N   1
  2248.   N  Y  N   1
  2249.   N  Y  N   1
  2250.   N  Y  N   1
  2251.   N  Y  N   1
  2252.   N  Y  N   1
  2253.   N  Y  N   1
  2254.   Y  Y  Y   8
  2255.   N  Y  N   1
  2256.   N  Y  N   1
  2257.   N  Y  N   1
  2258.   N  Y  Y   1
  2259.   N  Y  N   1
  2260.   N  Y  N   1
  2261.   N  Y  N   1
  2262.   Y  Y  Y   9
  2263.   N  Y  Y   1
  2264.   N  Y  N   1
  2265.   N  Y  N   1
  2266.   N  Y  N   1
  2267.   N  Y  N   1
  2268.   N  Y  N   1
  2269.   N  Y  N   1
  2270.   N  Y  N   1
  2271.   Y  Y  Y   10
  2272.   N  Y  Y   1
  2273.   N  Y  N   1
  2274.   N  Y  N   1
  2275.   N  Y  N   1
  2276.   N  Y  N   1
  2277.   N  Y  N   1
  2278.   N  Y  N   1
  2279.   N  Y  N   1
  2280.   Y  Y  Y   11
  2281.   N  Y  Y   1
  2282.   N  Y  N   1
  2283.   N  Y  N   1
  2284.   N  Y  N   1
  2285.   N  Y  N   1
  2286.   N  Y  N   1
  2287.   N  Y  N   1
  2288.   N  Y  N   1
  2289.   Y  Y  Y   12
  2290.   N  Y  Y   1
  2291.   N  Y  N   1
  2292.   N  Y  N   1
  2293.   N  Y  N   1
  2294.   N  Y  N   1
  2295.   N  Y  N   1
  2296.   N  Y  N   1
  2297.   N  Y  N   1
  2298.   N  N  N   13
  2299.   N  N  N   1
  2300.   N  N  N   1
  2301.   Y  N  N   1
  2302.   N  N  N   1
  2303.   N  N  N   1
  2304.   N  N  N   1
  2305.   N  N  N   1
  2306.   N  N  N   14
  2307.   N  N  N   1
  2308.   N  N  N   1
  2309.   N  N  N   15
  2310.   N  N  N   1
  2311.   N  N  N   1
  2312. Object Bounds
  2313. 1860,5595,7110,6210
  2314. 1860,5595,7110,6210
  2315. 3675,5685,5265,6150
  2316. 1980,5685,3570,6150
  2317. 5400,5685,6990,6150
  2318. 800,800,1695,1565
  2319. 800,950,1400,1025
  2320. 800,1325,1400,1400
  2321. 965,800,1625,1565
  2322. 990,1030,1320,1314
  2323. 1350,1090,1425,1150
  2324. 1350,1195,1425,1255
  2325. 975,985,1695,985
  2326. 7000,800,7996,1565
  2327. 7505,950,7996,1025
  2328. 7505,1325,7996,1400
  2329. 7040,800,7580,1565
  2330. 7700,1025,7970,1309
  2331. 7000,1180,7705,1180
  2332. 7465,955,7495,1405
  2333. 7270,1075,7360,1135
  2334. 7270,1225,7375,1285
  2335. 818,4963,953,5113
  2336. 800,1600,1695,2365
  2337. 800,1750,1400,1825
  2338. 800,2125,1400,2200
  2339. 965,1600,1625,2365
  2340. 990,1830,1320,2114
  2341. 1350,1890,1425,1950
  2342. 1350,1995,1425,2055
  2343. 975,1785,1695,1785
  2344. 800,2400,1695,3165
  2345. 800,2550,1400,2625
  2346. 800,2925,1400,3000
  2347. 965,2400,1625,3165
  2348. 990,2630,1320,2914
  2349. 1350,2690,1425,2750
  2350. 1350,2795,1425,2855
  2351. 975,2585,1695,2585
  2352. 800,3200,1695,3965
  2353. 800,3350,1400,3425
  2354. 800,3725,1400,3800
  2355. 965,3200,1625,3965
  2356. 990,3430,1320,3714
  2357. 1350,3490,1425,3550
  2358. 1350,3595,1425,3655
  2359. 975,3385,1695,3385
  2360. 800,4000,1695,4765
  2361. 800,4150,1400,4225
  2362. 800,4525,1400,4600
  2363. 965,4000,1625,4765
  2364. 990,4230,1320,4514
  2365. 1350,4290,1425,4350
  2366. 1350,4395,1425,4455
  2367. 975,4185,1695,4185
  2368. 7000,1600,7996,2365
  2369. 7505,1750,7996,1825
  2370. 7505,2125,7996,2200
  2371. 7040,1600,7580,2365
  2372. 7700,1825,7970,2109
  2373. 7000,1980,7705,1980
  2374. 7465,1755,7495,2205
  2375. 7270,1875,7360,1935
  2376. 7270,2025,7375,2085
  2377. 7000,2400,7996,3165
  2378. 7505,2550,7996,2625
  2379. 7505,2925,7996,3000
  2380. 7040,2400,7580,3165
  2381. 7700,2625,7970,2909
  2382. 7000,2780,7705,2780
  2383. 7465,2555,7495,3005
  2384. 7270,2675,7360,2735
  2385. 7270,2825,7375,2885
  2386. 7000,3200,7996,3965
  2387. 7505,3350,7996,3425
  2388. 7505,3725,7996,3800
  2389. 7040,3200,7580,3965
  2390. 7700,3425,7970,3709
  2391. 7000,3580,7705,3580
  2392. 7465,3355,7495,3805
  2393. 7270,3475,7360,3535
  2394. 7270,3625,7375,3685
  2395. 7000,4000,7996,4765
  2396. 7505,4150,7996,4225
  2397. 7505,4525,7996,4600
  2398. 7040,4000,7580,4765
  2399. 7700,4225,7970,4509
  2400. 7000,4380,7705,4380
  2401. 7465,4155,7495,4605
  2402. 7270,4275,7360,4335
  2403. 7270,4425,7375,4485
  2404. 1095,525,8370,5310
  2405. 1095,525,8370,5310
  2406. 1170,585,8325,5250
  2407. 5730,4545,7440,5055
  2408. 1995,885,7410,1620
  2409. 1465,1305,8045,4215
  2410. 1465,1305,7800,4215
  2411. 1465,1305,8045,4215
  2412. 1528,1881,3008,3806
  2413. 1528,1881,3008,3806
  2414. 2034,2457,2726,3497
  2415. 1136,51,1721,546
  2416. 1136,51,1721,546
  2417. 1336,199,1609,467
  2418. BUTTONDOWN
  2419. ZvThisField, vTheseFields
  2420. pBrowseFieldNames 
  2421. Browser 
  2422. BUTTONDOWN
  2423. BUTTONDOWN
  2424. pBrowseFieldNames
  2425. field 
  2426. Browser
  2427. vThisField
  2428. vTheseFields
  2429. BUTTONDOWN
  2430. ZvThisField, vTheseFields,vScroll
  2431. pBrowseFieldNames 
  2432. Browser 
  2433. y > 15
  2434. BUTTONDOWN
  2435. BUTTONDOWN
  2436. pBrowseFieldNames
  2437. field 
  2438. Browser
  2439. vThisField
  2440. vTheseFields
  2441. vScroll
  2442.