Advertisement
logicmoo

Untitled

May 6th, 2017
740
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Prolog 27.34 KB | None | 0 0
  1. ; ----------------------------------------------
  2. ; *** Towers of Toronto  v1.1 (May 2008)     ***
  3. ; * *                                        * *
  4. ; * * implemented by K. Franklin, Nov, 2002  * *
  5. ; * * e-mail address: kenf@ica.net           * *
  6. ; ----------------------------------------------
  7.  
  8. ; *** based on Towers_of_Hanoi v1.2
  9. ; *** Copyright 1998-2000 Zillions Development
  10.  
  11. ; You need to purchase Zillions of Games to load this rules file
  12. ; Visit the Zillions web site at http://www.zillions-of-games.com
  13.  
  14.  
  15. (define disk1 ((verify (empty? n)) $1 (while not-empty? n)
  16.    (if (on-board? s) s
  17.      (verify (and (not-piece? blue1) (not-piece? dblblue1)) ) n)
  18.    add))
  19. (define disk2 ((verify (empty? n)) $1 (while not-empty? n)
  20.    (if (on-board? s) s
  21.    (verify (and (not-piece? blue1) (not-piece? dblblue1)) )
  22.    (verify (and (not-piece? blue2) (not-piece? dblblue2)) ) n)
  23.    add))
  24. (define disk3 ((verify (empty? n)) $1 (while not-empty? n)
  25.    (if (on-board? s) s
  26.     (verify (and (not-piece? blue1) (not-piece? dblblue1)) )
  27.     (verify (and (not-piece? blue2) (not-piece? dblblue2)) )
  28.     (verify (and (not-piece? blue3) (not-piece? dblblue3)) ) n)
  29.    add))
  30. (define disk4 ((verify (empty? n)) $1 (while not-empty? n)
  31.   (if (on-board? s) s
  32.    (verify (and (not-piece? blue1) (not-piece? dblblue1)) )
  33.    (verify (and (not-piece? blue2) (not-piece? dblblue2)) )
  34.    (verify (and (not-piece? blue3) (not-piece? dblblue3)) )
  35.    (verify (and (not-piece? blue4) (not-piece? dblblue4)) ) n)
  36.    add))
  37. (define disk5 ((verify (empty? n)) $1 (while not-empty? n)
  38.   (if (on-board? s) s
  39.    (verify (and (not-piece? blue1) (not-piece? dblblue1)) )
  40.    (verify (and (not-piece? blue2) (not-piece? dblblue2)) )
  41.    (verify (and (not-piece? blue3) (not-piece? dblblue3)) )
  42.    (verify (and (not-piece? blue4) (not-piece? dblblue4)) )
  43.    (verify (and (not-piece? blue5) (not-piece? dblblue5)) ) n)
  44.   add))
  45. (define disk6 ((verify (empty? n)) $1 (while not-empty? n)
  46.   (if (on-board? s) s
  47.    (verify (and (not-piece? blue1) (not-piece? dblblue1)) )
  48.    (verify (and (not-piece? blue2) (not-piece? dblblue2)) )
  49.    (verify (and (not-piece? blue3) (not-piece? dblblue3)) )
  50.    (verify (and (not-piece? blue4) (not-piece? dblblue4)) )
  51.    (verify (and (not-piece? blue5) (not-piece? dblblue5)) )
  52.    (verify (and (not-piece? blue6) (not-piece? dblblue6)) ) n)
  53.   add))
  54. (define disk7 ((verify (empty? n)) $1 (while not-empty? n)
  55.   (if (on-board? s) s
  56.    (verify (and (not-piece? blue1) (not-piece? dblblue1)) )
  57.    (verify (and (not-piece? blue2) (not-piece? dblblue2)) )
  58.    (verify (and (not-piece? blue3) (not-piece? dblblue3)) )
  59.    (verify (and (not-piece? blue4) (not-piece? dblblue4)) )
  60.    (verify (and (not-piece? blue5) (not-piece? dblblue5)) )
  61.    (verify (and (not-piece? blue6) (not-piece? dblblue6)) )
  62.    (verify (and (not-piece? blue7) (not-piece? dblblue7)) ) n)
  63.   add))
  64.  
  65.  
  66. (game
  67.   (title "Towers of Toronto :(3) Arg O-O-O s")
  68.   (description "Realign the alternating disks into solid colour towers - Dark Blue on the far Left,
  69.         Light Blue on the far Right.\You cannot move a larger disk on top of a smaller one.")
  70.   (history "Based on the Towers of Hanoi puzzle invented by the French mathematician Edouard Lucas in 1883.\\
  71.         The disks' hues are based on this city's traditional sporting colours (blue on white -
  72.         sometimes in double blue),\
  73.         as found with the 3-down football Argos, baseball Blue Jays, former soccer Blizzard,
  74.         former basketball Huskies,\etc., and of course: your Toronto Maple Leafs!\\\
  75.         Pardon the background info. - Created and implemented by K. Franklin  Nov 2002.\
  76.         Updated with Optimal Solutions provided by Bob Henderson, May 2008.\\
  77.         FYI, historical postcard images of Toronto found here:\
  78.         http://chuckmanothercollection.blogspot.com\
  79.         http://chuckmanothercollectionvolume2.blogspot.com\
  80.         http://chuckmanothercollectionvolume3.blogspot.com")
  81.   (strategy "There's a trick to the solution, however, if you can solve the original Towers of Hanoi puzzle,
  82.         then \you can also solve the Towers of T.O. too, but I repeat, there's a trick to the solution.\\
  83.         Reconstruct the towers upwards on the outside red posts: Dark Blue on the Left, Light Blue on the Right.\
  84.         Your starting objective should be to transfer the largest disks to the opposing outside posts.\
  85.         All of the puzzles can be solved recursively.")
  86.   (solution "Solutions/TowersofToronto/UofTBlues3.zsg")
  87.  
  88.   (release-sound "Audio\\Woodclick.wav")
  89.   (move-sound "Audio\\Woodclick.wav")
  90.   (win-sound "Audio/TowersofToronto/OkBJ-letsplayball.wav")
  91. ;    from the Blue Jays' song - just the ending hit (filesize bloat if longer)-KF
  92.  (allow-flipping false)
  93.  (players BJ_Birdy)
  94.  (turn-order BJ_Birdy)
  95.  (board
  96.    (image "images\TowersofToronto\towerto.bmp")
  97.    (grid
  98.      (start-rectangle 3 1 120 23) ; 1 1 118 23 slight change from Hanoi v1.2
  99.      (dimensions
  100.         ("a/b/c/d" (120 0)) ; files ;118 0 slight change from Hanoi v1.2
  101.         ("0/1/2/3/4/5/6/7" (0 23)) ; ranks 0 22
  102.     )
  103.     (directions (n 0 -1) (s 0 1) (e 1 0) (w -1 0))
  104.    )
  105.   )
  106.  
  107.   (piece
  108.      (name blue1)
  109.      (image BJ_Birdy "images\TowersofToronto\blue1.bmp")
  110.      (description "blue 1\A blue can be moved to any pile.")
  111.      (help "SMALLEST blue '1': moves to any pile, but never on top of a smaller disk")
  112.      (moves
  113.         (move-type cdnopen)
  114.         (disk1 a7) (disk1 b7) (disk1 c7) (disk1 d7)
  115.      )
  116.     (drops
  117.         (move-type drop1)
  118.         (pile1)
  119.      )
  120.   )
  121.   (piece
  122.      (name blue2)
  123.      (image BJ_Birdy "images/TowersofToronto/blue2.bmp")
  124.      (description "blue 2\A blue can be moved to any pile, but never onto a smaller disk.")
  125.      (help "blue '2': moves to any pile, but never on top of a smaller disk")
  126.      (moves
  127.         (move-type cdnopen)
  128.         (disk2 a7) (disk2 b7) (disk2 c7) (disk2 d7)
  129.      )
  130.     (drops
  131.         (move-type drop2)
  132.         (pile2)
  133.      )
  134.   )
  135.   (piece
  136.      (name blue3)
  137.      (image BJ_Birdy "images/TowersofToronto/blue3.bmp")
  138.      (description "blue 3\A blue can be moved to any pile, but never onto a smaller disk.")
  139.      (help "blue '3': moves to any pile, but never on top of a smaller disk")
  140.      (moves
  141.         (move-type cdnopen)
  142.         (disk3 a7) (disk3 b7) (disk3 c7) (disk3 d7)
  143.      )
  144.     (drops
  145.         (move-type drop3)
  146.         (pile3)
  147.      )
  148.   )
  149.   (piece
  150.      (name blue4)
  151.      (image BJ_Birdy "images/TowersofToronto/blue4.bmp")
  152.      (description "blue 4\A blue can be moved to any pile, but never onto a smaller disk.")
  153.      (help "blue '4': moves to any pile, but never on top of a smaller disk")
  154.      (moves
  155.         (move-type cdnopen)
  156.         (disk4 a7) (disk4 b7) (disk4 c7) (disk4 d7)
  157.      )
  158.     (drops
  159.         (move-type drop4)
  160.         (pile4)
  161.      )
  162.   )
  163.   (piece
  164.      (name blue5)
  165.      (image BJ_Birdy "images/TowersofToronto/blue5.bmp")
  166.      (description "blue 5\A blue can be moved to any pile, but never onto a smaller disk.")
  167.      (help "blue '5': moves to any pile, but never on top of a smaller disk")
  168.      (moves
  169.         (move-type cdnopen)
  170.         (disk5 a7) (disk5 b7) (disk5 c7) (disk5 d7)
  171.      )
  172.     (drops
  173.         (move-type drop5)
  174.         (pile5)
  175.      )
  176.   )
  177.   (piece
  178.      (name blue6)
  179.      (image BJ_Birdy "images/TowersofToronto/blue6.bmp")
  180.      (description "blue 6\A blue can be moved to any pile, but never onto a smaller disk.")
  181.      (help "blue '6': moves to any pile, but never on top of a smaller disk")
  182.      (moves
  183.         (move-type cdnopen)
  184.         (disk6 a7) (disk6 b7) (disk6 c7) (disk6 d7)
  185.      )
  186.     (drops
  187.         (move-type drop6)
  188.         (pile6)
  189.      )
  190.   )
  191.   (piece
  192.      (name blue7)
  193.      (image BJ_Birdy "images/TowersofToronto/blue7.bmp")
  194.      (description "blue 7\A blue can be moved to any pile, but never onto a smaller disk.")
  195.      (help "LARGEST blue '7': moves to any pile, but never on top of a smaller disk")
  196.      (moves
  197.         (move-type cdnopen)
  198.         (disk7 a7) (disk7 b7) (disk7 c7) (disk7 d7)
  199.      )
  200.     (drops
  201.         (move-type drop7)
  202.         (pile7)
  203.      )
  204.   )
  205.   (piece
  206.      (name dblblue1)
  207.      (image BJ_Birdy "images\TowersofToronto\dblblue1.bmp")
  208.      (description "dblblue 1\A dblblue can be moved to any pile.")
  209.      (help "SMALLEST dblblue '1': moves to any pile, but never on top of a smaller disk")
  210.      (moves
  211.         (move-type cdnopen)
  212.         (disk1 a7) (disk1 b7) (disk1 c7) (disk1 d7)
  213.      )
  214.     (drops
  215.         (move-type drop1)
  216.         (pile1)
  217.      )
  218.   )
  219.   (piece
  220.      (name dblblue2)
  221.      (image BJ_Birdy "images/TowersofToronto/dblblue2.bmp")
  222.      (description "dblblue 2\A dblblue can be moved to any pile, but never onto a smaller disk.")
  223.      (help "dblblue '2': moves to any pile, but never on top of a smaller disk")
  224.      (moves
  225.         (move-type cdnopen)
  226.         (disk2 a7) (disk2 b7) (disk2 c7) (disk2 d7)
  227.      )
  228.     (drops
  229.         (move-type drop2)
  230.         (pile2)
  231.      )
  232.   )
  233.   (piece
  234.      (name dblblue3)
  235.      (image BJ_Birdy "images/TowersofToronto/dblblue3.bmp")
  236.      (description "dblblue 3\A dblblue can be moved to any pile, but never onto a smaller disk.")
  237.      (help "dblblue '3': moves to any pile, but never on top of a smaller disk")
  238.      (moves
  239.         (move-type cdnopen)
  240.         (disk3 a7) (disk3 b7) (disk3 c7) (disk3 d7)
  241.      )
  242.     (drops
  243.         (move-type drop3)
  244.         (pile3)
  245.      )
  246.   )
  247.   (piece
  248.      (name dblblue4)
  249.      (image BJ_Birdy "images/TowersofToronto/dblblue4.bmp")
  250.      (description "dblblue 4\A dblblue can be moved to any pile, but never onto a smaller disk.")
  251.      (help "dblblue '4': moves to any pile, but never on top of a smaller disk")
  252.      (moves
  253.         (move-type cdnopen)
  254.         (disk4 a7) (disk4 b7) (disk4 c7) (disk4 d7)
  255.      )
  256.     (drops
  257.         (move-type drop4)
  258.         (pile4)
  259.      )
  260.   )
  261.   (piece
  262.      (name dblblue5)
  263.      (image BJ_Birdy "images/TowersofToronto/dblblue5.bmp")
  264.      (description "dblblue 5\A dblblue can be moved to any pile, but never onto a smaller disk.")
  265.      (help "dblblue '5': moves to any pile, but never on top of a smaller disk")
  266.      (moves
  267.         (move-type cdnopen)
  268.         (disk5 a7) (disk5 b7) (disk5 c7) (disk5 d7)
  269.      )
  270.     (drops
  271.         (move-type drop5)
  272.         (pile5)
  273.      )
  274.   )
  275.   (piece
  276.      (name dblblue6)
  277.      (image BJ_Birdy "images/TowersofToronto/dblblue6.bmp")
  278.      (description "dblblue 6\A dblblue can be moved to any pile, but never onto a smaller disk.")
  279.      (help "dblblue '6': moves to any pile, but never on top of a smaller disk")
  280.      (moves
  281.         (move-type cdnopen)
  282.         (disk6 a7) (disk6 b7) (disk6 c7) (disk6 d7)
  283.      )
  284.     (drops
  285.         (move-type drop6)
  286.         (pile6)
  287.      )
  288.   )
  289.   (piece
  290.      (name dblblue7)
  291.      (image BJ_Birdy "images/TowersofToronto/dblblue7.bmp")
  292.      (description "dblblue 7\A dblblue can be moved to any pile, but never onto a smaller disk.")
  293.      (help "LARGEST dblblue '7': moves to any pile, but never on top of a smaller disk")
  294.      (moves
  295.         (move-type cdnopen)
  296.         (disk7 a7) (disk7 b7) (disk7 c7) (disk7 d7)
  297.      )
  298.     (drops
  299.         (move-type drop7)
  300.         (pile7)
  301.      )
  302.   )
  303.   (board-setup
  304.      (BJ_Birdy
  305.         (blue1 a5) (dblblue1 d5)
  306.         (blue2 d6) (dblblue2 a6)
  307.         (blue3 a7) (dblblue3 d7)
  308.      )
  309.   )
  310.   (win-condition (BJ_Birdy)  (and (absolute-config blue3 (d7))
  311.                               (absolute-config blue2 (d6))
  312.                               (absolute-config blue1 (d5))
  313.                               (absolute-config dblblue3 (a7))
  314.                               (absolute-config dblblue2 (a6))
  315.                               (absolute-config dblblue1 (a5))
  316.                          )
  317.   )
  318. )
  319.  
  320. (variant
  321.  (title "Towers of Toronto :(4) Arg O-O-O-O s")
  322.  (default)
  323.  (solution "Solutions/TowersofToronto/UofTBlues4.zsg")
  324.   (board-setup
  325.      (BJ_Birdy
  326.         (blue1 d4) (dblblue1 a4)
  327.         (blue2 a5) (dblblue2 d5)
  328.         (blue3 d6) (dblblue3 a6)
  329.         (blue4 a7) (dblblue4 d7)
  330.      )
  331.   )
  332.   (win-condition (BJ_Birdy)  (and (absolute-config blue4 (d7))
  333.                               (absolute-config blue3 (d6))
  334.                               (absolute-config blue2 (d5))
  335.                               (absolute-config blue1 (d4))
  336.                               (absolute-config dblblue4 (a7))
  337.                               (absolute-config dblblue3 (a6))
  338.                               (absolute-config dblblue2 (a5))
  339.                               (absolute-config dblblue1 (a4))
  340.                          )
  341.   )
  342. )
  343.  
  344. (variant
  345.  (title "Towers of Toronto :(5) Arg O-O-O-O-O s")
  346.  (solution "Solutions/TowersofToronto/UofTBlues5.zsg")
  347.  (board-setup
  348.      (BJ_Birdy
  349.         (blue1 a3) (dblblue1 d3)
  350.         (blue2 d4) (dblblue2 a4)
  351.         (blue3 a5) (dblblue3 d5)
  352.         (blue4 d6) (dblblue4 a6)
  353.         (blue5 a7) (dblblue5 d7)
  354.      )
  355.   )
  356.   (win-condition (BJ_Birdy)  (and (absolute-config blue5 (d7))
  357.                               (absolute-config blue4 (d6))
  358.                               (absolute-config blue3 (d5))
  359.                               (absolute-config blue2 (d4))
  360.                               (absolute-config blue1 (d3))
  361.                               (absolute-config dblblue5 (a7))
  362.                               (absolute-config dblblue4 (a6))
  363.                               (absolute-config dblblue3 (a5))
  364.                               (absolute-config dblblue2 (a4))
  365.                               (absolute-config dblblue1 (a3))
  366.                          )
  367.   )
  368. )
  369.  
  370. (variant
  371.  (title "Towers of Toronto :(6) Arg O-O-O-O-O-O s")
  372.  (solution "Solutions/TowersofToronto/UofTBlues6.zsg")
  373.  
  374.  (board-setup
  375.      (BJ_Birdy
  376.         (blue1 d2) (dblblue1 a2)
  377.         (blue2 a3) (dblblue2 d3)
  378.         (blue3 d4) (dblblue3 a4)
  379.         (blue4 a5) (dblblue4 d5)
  380.         (blue5 d6) (dblblue5 a6)
  381.         (blue6 a7) (dblblue6 d7)
  382.      )
  383.   )
  384.   (win-condition (BJ_Birdy)  (and (absolute-config blue6 (d7))
  385.                               (absolute-config blue5 (d6))
  386.                               (absolute-config blue4 (d5))
  387.                               (absolute-config blue3 (d4))
  388.                               (absolute-config blue2 (d3))
  389.                               (absolute-config blue1 (d2))
  390.                               (absolute-config dblblue6 (a7))
  391.                               (absolute-config dblblue5 (a6))
  392.                               (absolute-config dblblue4 (a5))
  393.                               (absolute-config dblblue3 (a4))
  394.                               (absolute-config dblblue2 (a3))
  395.                               (absolute-config dblblue1 (a2))
  396.                          )
  397.   )
  398. )
  399.  
  400. (variant
  401.  (title "Towers of Toronto :(7) Arg O-O-O-O-O-O-O s")
  402.  (solution "Solutions/TowersofToronto/UofTBlues7.zsg")
  403.  (board-setup
  404.      (BJ_Birdy
  405.         (blue1 a1) (dblblue1 d1)
  406.         (blue2 d2) (dblblue2 a2)
  407.         (blue3 a3) (dblblue3 d3)
  408.         (blue4 d4) (dblblue4 a4)
  409.         (blue5 a5) (dblblue5 d5)
  410.         (blue6 d6) (dblblue6 a6)
  411.         (blue7 a7) (dblblue7 d7)
  412.      )
  413.   )
  414.   (win-condition (BJ_Birdy)  (and (absolute-config blue7 (d7))
  415.                               (absolute-config blue6 (d6))
  416.                               (absolute-config blue5 (d5))
  417.                               (absolute-config blue4 (d4))
  418.                               (absolute-config blue3 (d3))
  419.                               (absolute-config blue2 (d2))
  420.                               (absolute-config blue1 (d1))
  421.                               (absolute-config dblblue7 (a7))
  422.                               (absolute-config dblblue6 (a6))
  423.                               (absolute-config dblblue5 (a5))
  424.                               (absolute-config dblblue4 (a4))
  425.                               (absolute-config dblblue3 (a3))
  426.                               (absolute-config dblblue2 (a2))
  427.                               (absolute-config dblblue1 (a1))
  428.                          )
  429.   )
  430. )
  431.  
  432. ; **************************************************************************
  433. ; VARIANTS with Random Disk Placements
  434. ; **************************************************************************
  435. (variant
  436.   (title "-") ; --------------------------------------------------------
  437. )
  438.  
  439.  
  440. (define pile1 ( (verify (and (not-empty? s)
  441.                 (not-piece? blue1 s) (not-piece? dblblue1 s) empty?) ) flip add) )
  442.  
  443. (define pile2 ( (verify (and (not-empty? s)
  444.                 (not-piece? blue1 s) (not-piece? dblblue1 s)
  445.                 (not-piece? blue2 s) (not-piece? dblblue2 s) empty?) ) flip add) )
  446.  
  447. (define pile3 ( (verify (and (not-empty? s)
  448.                 (not-piece? blue1 s) (not-piece? dblblue1 s)
  449.                 (not-piece? blue2 s) (not-piece? dblblue2 s)
  450.                 (not-piece? blue3 s) (not-piece? dblblue3 s) empty?) ) flip add) )
  451. (define pile4 ( (verify (and (not-empty? s)
  452.                 (not-piece? blue1 s) (not-piece? dblblue1 s)
  453.                 (not-piece? blue2 s) (not-piece? dblblue2 s)
  454.                 (not-piece? blue3 s) (not-piece? dblblue3 s)
  455.                 (not-piece? blue4 s) (not-piece? dblblue4 s) empty?) ) flip add) )
  456.  
  457. (define pile5 ( (verify (and (not-empty? s)
  458.                 (not-piece? blue1 s) (not-piece? dblblue1 s)
  459.                 (not-piece? blue2 s) (not-piece? dblblue2 s)
  460.                 (not-piece? blue3 s) (not-piece? dblblue3 s)
  461.                 (not-piece? blue4 s) (not-piece? dblblue4 s)
  462.                 (not-piece? blue5 s) (not-piece? dblblue5 s) empty?) ) flip add) )
  463.  
  464. (define pile6 ( (verify (and (not-empty? s)
  465.                 (not-piece? blue1 s) (not-piece? dblblue1 s)
  466.                 (not-piece? blue2 s) (not-piece? dblblue2 s)
  467.                 (not-piece? blue3 s) (not-piece? dblblue3 s)
  468.                 (not-piece? blue4 s) (not-piece? dblblue4 s)
  469.                 (not-piece? blue5 s) (not-piece? dblblue5 s)
  470.                 (not-piece? blue6 s) (not-piece? dblblue6 s) empty?) ) flip add) )
  471.  
  472. (define pile7 ( (verify (and (not-empty? s)
  473.                 (not-piece? blue1 s) (not-piece? dblblue1 s)
  474.                 (not-piece? blue2 s) (not-piece? dblblue2 s)
  475.                 (not-piece? blue3 s) (not-piece? dblblue3 s)
  476.                 (not-piece? blue4 s) (not-piece? dblblue4 s)
  477.                 (not-piece? blue5 s) (not-piece? dblblue5 s)
  478.                 (not-piece? blue6 s) (not-piece? dblblue6 s)
  479.                 (not-piece? blue7 s) (not-piece? dblblue7 s) empty?) ) flip add) )
  480.  
  481.  
  482.  
  483. (variant
  484.  (title "Random Towers of T.O.:(3) Arg O-O-O s")
  485.  (solution "")
  486.    (players BJ_Birdy ?Start)
  487.    (turn-order
  488.     (?Start drop3) (?Start drop3)
  489.     (?Start drop2) (?Start drop2)
  490.     (?Start drop1) (?Start drop1)
  491.     repeat BJ_Birdy)
  492.     (animate-drops false)
  493.  
  494.   (board-setup
  495.     (?Start (blue3 off 1)) (?Start (dblblue3 off 1))
  496.     (?Start (blue2 off 1)) (?Start (dblblue2 off 1))
  497.     (?Start (blue1 off 1)) (?Start (dblblue1 off 1))
  498.     )
  499.  
  500.   (win-condition (BJ_Birdy)  (and (absolute-config blue3 (d7))
  501.                               (absolute-config blue2 (d6))
  502.                               (absolute-config blue1 (d5))
  503.                               (absolute-config dblblue3 (a7))
  504.                               (absolute-config dblblue2 (a6))
  505.                               (absolute-config dblblue1 (a5))
  506.                          )
  507.   )
  508. )
  509.  
  510. (variant
  511.  (title "Random Towers of T.O.:(4) Arg O-O-O-O s")
  512.  (solution "")
  513.    (players BJ_Birdy ?Start)
  514.    (turn-order
  515.     (?Start drop4) (?Start drop4)
  516.     (?Start drop3) (?Start drop3)
  517.     (?Start drop2) (?Start drop2)
  518.     (?Start drop1) (?Start drop1)
  519.     repeat BJ_Birdy)
  520.     (animate-drops false)
  521.  
  522.   (board-setup
  523.     (?Start (blue4 off 1)) (?Start (dblblue4 off 1))
  524.     (?Start (blue3 off 1)) (?Start (dblblue3 off 1))
  525.     (?Start (blue2 off 1)) (?Start (dblblue2 off 1))
  526.     (?Start (blue1 off 1)) (?Start (dblblue1 off 1))
  527.     )
  528.  
  529.   (win-condition (BJ_Birdy)  (and (absolute-config blue4 (d7))
  530.                               (absolute-config blue3 (d6))
  531.                               (absolute-config blue2 (d5))
  532.                               (absolute-config blue1 (d4))
  533.                               (absolute-config dblblue4 (a7))
  534.                               (absolute-config dblblue3 (a6))
  535.                               (absolute-config dblblue2 (a5))
  536.                               (absolute-config dblblue1 (a4))
  537.                          )
  538.   )
  539. )
  540.  
  541. (variant
  542.  (title "Random Towers of T.O.:(5) Arg O-O-O-O-O s")
  543.  (solution "")
  544.    (players BJ_Birdy ?Start)
  545.    (turn-order
  546.     (?Start drop5) (?Start drop5)
  547.     (?Start drop4) (?Start drop4)
  548.     (?Start drop3) (?Start drop3)
  549.     (?Start drop2) (?Start drop2)
  550.     (?Start drop1) (?Start drop1)
  551.     repeat BJ_Birdy)
  552.     (animate-drops false)
  553.  
  554.   (board-setup
  555.     (?Start (blue5 off 1)) (?Start (dblblue5 off 1))
  556.     (?Start (blue4 off 1)) (?Start (dblblue4 off 1))
  557.     (?Start (blue3 off 1)) (?Start (dblblue3 off 1))
  558.     (?Start (blue2 off 1)) (?Start (dblblue2 off 1))
  559.     (?Start (blue1 off 1)) (?Start (dblblue1 off 1))
  560.     )
  561.  
  562.   (win-condition (BJ_Birdy)  (and (absolute-config blue5 (d7))
  563.                               (absolute-config blue4 (d6))
  564.                               (absolute-config blue3 (d5))
  565.                               (absolute-config blue2 (d4))
  566.                               (absolute-config blue1 (d3))
  567.                               (absolute-config dblblue5 (a7))
  568.                               (absolute-config dblblue4 (a6))
  569.                               (absolute-config dblblue3 (a5))
  570.                               (absolute-config dblblue2 (a4))
  571.                               (absolute-config dblblue1 (a3))
  572.                          )
  573.   )
  574. )
  575.  
  576. (variant
  577.  (title "Random Towers of T.O.:(6) Arg O-O-O-O-O-O s")
  578.  (solution "")
  579.    (players BJ_Birdy ?Start)
  580.    (turn-order
  581.     (?Start drop6) (?Start drop6)
  582.     (?Start drop5) (?Start drop5)
  583.     (?Start drop4) (?Start drop4)
  584.     (?Start drop3) (?Start drop3)
  585.     (?Start drop2) (?Start drop2)
  586.     (?Start drop1) (?Start drop1)
  587.     repeat BJ_Birdy)
  588.     (animate-drops false)
  589.  
  590.   (board-setup
  591.     (?Start (blue6 off 1)) (?Start (dblblue6 off 1))
  592.     (?Start (blue5 off 1)) (?Start (dblblue5 off 1))
  593.     (?Start (blue4 off 1)) (?Start (dblblue4 off 1))
  594.     (?Start (blue3 off 1)) (?Start (dblblue3 off 1))
  595.     (?Start (blue2 off 1)) (?Start (dblblue2 off 1))
  596.     (?Start (blue1 off 1)) (?Start (dblblue1 off 1))
  597.     )
  598.  
  599.   (win-condition (BJ_Birdy)  (and (absolute-config blue6 (d7))
  600.                               (absolute-config blue5 (d6))
  601.                               (absolute-config blue4 (d5))
  602.                               (absolute-config blue3 (d4))
  603.                               (absolute-config blue2 (d3))
  604.                               (absolute-config blue1 (d2))
  605.                               (absolute-config dblblue6 (a7))
  606.                               (absolute-config dblblue5 (a6))
  607.                               (absolute-config dblblue4 (a5))
  608.                               (absolute-config dblblue3 (a4))
  609.                               (absolute-config dblblue2 (a3))
  610.                               (absolute-config dblblue1 (a2))
  611.                          )
  612.   )
  613. )
  614.  
  615. (variant
  616.  (title "Random Towers of T.O.:(7) Arg O-O-O-O-O-O-O s")
  617.  (solution "")
  618.    (players BJ_Birdy ?Start)
  619.    (turn-order
  620.     (?Start drop7) (?Start drop7)
  621.     (?Start drop6) (?Start drop6)
  622.     (?Start drop5) (?Start drop5)
  623.     (?Start drop4) (?Start drop4)
  624.     (?Start drop3) (?Start drop3)
  625.     (?Start drop2) (?Start drop2)
  626.     (?Start drop1) (?Start drop1)
  627.     repeat BJ_Birdy)
  628.     (animate-drops false)
  629.  
  630.   (board-setup
  631.     (?Start (blue7 off 1)) (?Start (dblblue7 off 1))
  632.     (?Start (blue6 off 1)) (?Start (dblblue6 off 1))
  633.     (?Start (blue5 off 1)) (?Start (dblblue5 off 1))
  634.     (?Start (blue4 off 1)) (?Start (dblblue4 off 1))
  635.     (?Start (blue3 off 1)) (?Start (dblblue3 off 1))
  636.     (?Start (blue2 off 1)) (?Start (dblblue2 off 1))
  637.     (?Start (blue1 off 1)) (?Start (dblblue1 off 1))
  638.     )
  639.  
  640.   (win-condition (BJ_Birdy)  (and (absolute-config blue7 (d7))
  641.                               (absolute-config blue6 (d6))
  642.                               (absolute-config blue5 (d5))
  643.                               (absolute-config blue4 (d4))
  644.                               (absolute-config blue3 (d3))
  645.                               (absolute-config blue2 (d2))
  646.                               (absolute-config blue1 (d1))
  647.                               (absolute-config dblblue7 (a7))
  648.                               (absolute-config dblblue6 (a6))
  649.                               (absolute-config dblblue5 (a5))
  650.                               (absolute-config dblblue4 (a4))
  651.                               (absolute-config dblblue3 (a3))
  652.                               (absolute-config dblblue2 (a2))
  653.                               (absolute-config dblblue1 (a1))
  654.                          )
  655.   )
  656.  
  657. ; GO LEAFS GO!
  658. )
  659.  
  660.  
  661. ; **************************************************************************
  662. ; VARIANT with bottom disks only switched
  663. ; **************************************************************************
  664. (variant
  665.   (title "-") ; --------------------------------------------------------
  666. )
  667. (variant
  668.  (title "Towers of Toronto : bottom disks switched only (4)")
  669.  (description "Realign the alternating disks into solid colour towers - Dark Blue on the far Left,
  670.         Light Blue on the far Right.\You cannot move a larger disk on top of a smaller one.\\
  671.         New to this update, it was revealed by Bob Henderson that 'the [longest] such puzzle is to\
  672.         swap just the bottom discs of the 2 stacks'.  Two mid-scaled variants are thus comparably added.")
  673.  (solution "Solutions/TowersofToronto/bottomdisk4.zsg")
  674.   (board-setup
  675.      (BJ_Birdy
  676.         (blue1 d4) (dblblue1 a4)
  677.         (blue2 d5) (dblblue2 a5)
  678.         (blue3 d6) (dblblue3 a6)
  679.         (blue4 a7) (dblblue4 d7)
  680.      )
  681.   )
  682.   (win-condition (BJ_Birdy)  (and (absolute-config blue4 (d7))
  683.                               (absolute-config blue3 (d6))
  684.                               (absolute-config blue2 (d5))
  685.                               (absolute-config blue1 (d4))
  686.                               (absolute-config dblblue4 (a7))
  687.                               (absolute-config dblblue3 (a6))
  688.                               (absolute-config dblblue2 (a5))
  689.                               (absolute-config dblblue1 (a4))
  690.                          )
  691.   )
  692. )
  693.  
  694. (variant
  695.  (title "Towers of Toronto : bottom disks switched only (5)")
  696.  (description "Realign the alternating disks into solid colour towers - Dark Blue on the far Left,
  697.         Light Blue on the far Right.\You cannot move a larger disk on top of a smaller one.\\
  698.         New to this update, it was revealed by Bob Henderson that 'the [longest] such puzzle is to\
  699.         swap just the bottom discs of the 2 stacks'.  Two mid-scaled variants are thus comparably added.")
  700.  (solution "Solutions/TowersofToronto/bottomdisk5.zsg")
  701.  (board-setup
  702.      (BJ_Birdy
  703.         (blue1 d3) (dblblue1 a3)
  704.         (blue2 d4) (dblblue2 a4)
  705.         (blue3 d5) (dblblue3 a5)
  706.         (blue4 d6) (dblblue4 a6)
  707.         (blue5 a7) (dblblue5 d7)
  708.      )
  709.   )
  710.   (win-condition (BJ_Birdy)  (and (absolute-config blue5 (d7))
  711.                               (absolute-config blue4 (d6))
  712.                               (absolute-config blue3 (d5))
  713.                               (absolute-config blue2 (d4))
  714.                               (absolute-config blue1 (d3))
  715.                               (absolute-config dblblue5 (a7))
  716.                               (absolute-config dblblue4 (a6))
  717.                               (absolute-config dblblue3 (a5))
  718.                               (absolute-config dblblue2 (a4))
  719.                               (absolute-config dblblue1 (a3))
  720.                          )
  721.   )
  722. )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement