Commit 94ef8d71 authored by Rosanna Yuen's avatar Rosanna Yuen

NEW GAME!!! It's COOL!!!! It's spiffy!!!!!

NEW GAME!!!
It's COOL!!!!
It's spiffy!!!!!

{\shameless plug
Everyone should waste all their time playing AisleRiot games...
There are now 22, all with beautiful help files!!!
}
-j+z
parent 5a0be315
1999-02-23 Rosanna Yuen <rwsy@mit.edu>
* bristol.scm: added new game
1999-02-22 Rosanna Yuen <rwsy@mit.edu>
* spider.scm: added scoring; fixed minor bugs
......
......@@ -49,6 +49,7 @@ types_DATA = \
beleaguered_castle.scm \
camelot.scm \
canfield.scm \
bristol.scm \
clock.scm \
eagle_wing.scm \
elevator.scm \
......
; AisleRiot - bristol.scm
; Copyright (C) 1999 Rosanna Yuen <rwsy@mit.edu>
;
; This game is free software; you can redistribute it and/or modify
; it under the terms of the GNU General Public License as published by
; the Free Software Foundation; either version 2, or (at your option)
; any later version.
;
; This program is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
; GNU General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, write to the Free Software
; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
; USA
(define (new-game)
(initialize-playing-area)
(set-ace-low)
(make-standard-deck)
(shuffle-deck)
(add-normal-slot DECK)
(set! HORIZPOS (inexact->exact (truncate (+ HORIZPOS
(* 3 (/ (get-card-width) 4))))))
(add-normal-slot '())
(add-normal-slot '())
(add-normal-slot '())
(set! HORIZPOS (inexact->exact (truncate (+ HORIZPOS
(* 3 (/ (get-card-width) 4))))))
(add-normal-slot '())
(add-normal-slot '())
(add-normal-slot '())
(add-normal-slot '())
(add-carriage-return-slot)
(add-extended-slot '() right)
(add-blank-slot)
(set! HORIZPOS (inexact->exact (truncate (+ HORIZPOS
(* 3 (/ (get-card-width) 4))))))
(add-extended-slot '() right)
(add-blank-slot)
(set! HORIZPOS (inexact->exact (truncate (+ HORIZPOS
(* 3 (/ (get-card-width) 4))))))
(add-extended-slot '() right)
(add-blank-slot)
(set! HORIZPOS (inexact->exact (truncate (+ HORIZPOS
(* 3 (/ (get-card-width) 4))))))
(add-extended-slot '() right)
(add-carriage-return-slot)
(add-extended-slot '() right)
(add-blank-slot)
(set! HORIZPOS (inexact->exact (truncate (+ HORIZPOS
(* 3 (/ (get-card-width) 4))))))
(add-extended-slot '() right)
(add-blank-slot)
(set! HORIZPOS (inexact->exact (truncate (+ HORIZPOS
(* 3 (/ (get-card-width) 4))))))
(add-extended-slot '() right)
(add-blank-slot)
(set! HORIZPOS (inexact->exact (truncate (+ HORIZPOS
(* 3 (/ (get-card-width) 4))))))
(add-extended-slot '() right)
(deal-cards-face-up 0 '(8 9 10 11 12 13 14 15
8 9 10 11 12 13 14 15
8 9 10 11 12 13 14 15))
(check-for-kings 8)
(list 10 3))
(define (check-for-kings slot-id)
(if (> slot-id 15)
#f
(begin
(if (= (get-value (get-top-card slot-id)) king)
(begin
(let ((new-deck (get-cards slot-id)))
(set-cards! slot-id (list (cadr new-deck)
(caddr new-deck)
(car new-deck))))
(if (= (get-value (get-top-card slot-id)) king)
(begin
(let ((new-deck (get-cards slot-id)))
(set-cards! slot-id (list (cadr new-deck)
(caddr new-deck)
(car new-deck)))))))
(if (= (get-value (cadr (get-cards slot-id))) king)
(let ((new-deck (get-cards slot-id)))
(set-cards! slot-id (list (car new-deck)
(caddr new-deck)
(cadr new-deck))))))
(check-for-kings (+ 1 slot-id)))))
(define (button-pressed slot-id card-list)
(and (not (empty-slot? slot-id))
(not (= slot-id 0))
(not (and (> slot-id 3)
(< slot-id 8)))
(= (length card-list) 1)))
(define (button-released start-slot card-list end-slot)
(cond ((and (> end-slot 3)
(< end-slot 8))
(cond ((not (empty-slot? end-slot))
(if (= (+ 1 (get-value (get-top-card end-slot)))
(get-value (car card-list)))
(begin
(add-to-score! 1)
(move-n-cards! start-slot end-slot card-list))
#f))
((= (get-value (car card-list)) ace)
(begin
(add-to-score! 1)
(move-n-cards! start-slot end-slot card-list)))
(#t #f)))
((and (> end-slot 7)
(not (empty-slot? end-slot))
(= (get-value (get-top-card end-slot))
(+ 1 (get-value (car card-list)))))
(move-n-cards! start-slot end-slot card-list))
(#t #f)))
(define (button-clicked slot-id)
(if (and (= slot-id 0)
(not (empty-slot? 0)))
(if (> (length (get-cards slot-id)) 3)
(deal-cards-face-up 0 '(1 2 3))
(deal-cards-face-up 0 '(1)))
#f))
(define (button-double-clicked slot-id)
#f)
(define (game-continuable)
(and (not (game-won))
(get-hint)))
(define (game-won)
(and (= 13 (length (get-cards 4)))
(= 13 (length (get-cards 5)))
(= 13 (length (get-cards 6)))
(= 13 (length (get-cards 7)))))
(define (check-a-foundation slot-id foundation-id)
(if (or (> foundation-id 7)
(empty-slot? slot-id))
#f
(cond ((and (empty-slot? foundation-id)
(= (get-value (get-top-card slot-id)) ace))
(list 2
(get-name (get-top-card slot-id))
"an empty Foundation pile"))
((and (not (empty-slot? foundation-id))
(= (+ 1 (get-value (get-top-card foundation-id)))
(get-value (get-top-card slot-id))))
(list 1
(get-name (get-top-card slot-id))
(get-name (get-top-card foundation-id))))
(#t (check-a-foundation slot-id (+ 1 foundation-id))))))
(define (check-to-foundations slot-id)
(cond ((> slot-id 15)
#f)
((= slot-id 4)
(check-to-foundations 8))
((check-a-foundation slot-id 4)
(check-a-foundation slot-id 4))
(#t
(check-to-foundations (+ 1 slot-id)))))
(define (check-reserve slot-id)
(if (> slot-id 3)
#f
(or (and (not (empty-slot? slot-id))
(check-a-tslot slot-id
(get-cards slot-id)
1
8))
(check-reserve (+ 1 slot-id)))))
(define (deepness card-list temp-deepness)
(if (and (> (length card-list) 1)
(= (+ 1 (get-value (car card-list)))
(get-value (cadr card-list))))
(deepness (cdr card-list) (+ 1 temp-deepness))
temp-deepness))
(define (check-a-tslot slot1 card-list depth slot2)
(if (or (> slot2 15)
(and (= (length card-list) depth)
(> slot1 7)))
#f
(if (and (not (empty-slot? slot2))
(not (= slot1 slot2))
(= (+ 1 (get-value (car card-list)))
(get-value (get-top-card slot2))))
(if (= depth 1)
(list 1
(get-name (get-top-card slot1))
(get-name (get-top-card slot2)))
(and (check-a-tslot slot1
(cdr card-list)
(- depth 1)
8)
(list 1
(get-name (get-top-card slot1))
(get-name (get-top-card slot2)))))
(check-a-tslot slot1 card-list depth (+ 1 slot2)))))
(define (check-tableau slot-id)
(if (> slot-id 15)
#f
(if (and (not (empty-slot? slot-id))
(check-a-tslot slot-id
(get-cards slot-id)
(deepness (get-cards slot-id) 1)
8))
(check-a-tslot slot-id
(get-cards slot-id)
(deepness (get-cards slot-id) 1)
8)
(check-tableau (+ 1 slot-id)))))
(define (dealable?)
(and (not (empty-slot? 0))
(list 0 "Deal another round")))
(define (get-hint)
(or (check-to-foundations 1)
(check-reserve 1)
(check-tableau 8)
(dealable?)))
(define (get-options)
#f)
(define (apply-options options)
#f)
(define (timeout)
#f)
(set-lambda new-game button-pressed button-released button-clicked
button-double-clicked game-continuable game-won get-hint get-options
apply-options timeout)
......@@ -50,6 +50,8 @@
(flip-top-card 2)
(set! BASE-VAL (get-value (get-top-card 2)))
;(set-statusbar-message (string-append "Base Card: " (string BASE-VAL)))
(add-to-score! 1)
......
......@@ -109,7 +109,7 @@
(make-visible-top-card 6)
(if (not (= end-slot 6))
(add-to-score! 1)
#t)
#t))
(define (button-released start-slot card-list end-slot)
(if (transaction-good? end-slot card-list)
......
......@@ -3,6 +3,7 @@ Makefile.in
aisleriot
auld-lang-syne.html
beleaguered-castle.html
bristol.html
camelot.html
canfield.html
clock.html
......
1999-02-23 Rosanna Yuen <rwsy@mit.edu>
* bristol.sgml: added new sgml file
1999-02-22 Rosanna Yuen <rwsy@mit.edu>
* spider.sgml: fixed maximum possible score number. oops...
......
......@@ -11,7 +11,8 @@ help_DATA = index.html intro.html glossary.html gpl.html \
eagle-wing.html elevator.html fortunes.html klondike.html \
fourteen.html pileon.html auld-lang-syne.html hopscotch.html \
neighbor.html odessa.html osmosis.html spider.html yukon.html \
beleaguered-castle.html thirteen.html thieves.html freecell.html\
beleaguered-castle.html thirteen.html thieves.html \
freecell.html bristol.html\
camelot-goal.gif clock-rules.gif docbook.css topic.dat
# These are the sources:
......@@ -19,7 +20,8 @@ help_DATA = index.html intro.html glossary.html gpl.html \
help_SGML = aisleriot.sgml definitions.sgml gpl.sgml
camelot.sgml canfield.sgml clock.sgml doublets.sgml \
eagle-wing.sgml elevator.sgml fortunes.sgml pileon.sgml \
fourteen.sgml klondike.sgml auld-lang-syne.sgml hopscotch.sgml \
fourteen.sgml klondike.sgml auld-lang-syne.sgml \
bristol.sgml hopscotch.sgml \
neighbor.sgml odessa.sgml osmosis.sgml spider.sgml yukon.sgml \
beleaguered-castle.sgml thirteen.sgml thieves.sgml freecell.sgml
......
<!DOCTYPE book PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
<!entity auld-lang-syne SYSTEM "auld_lang_syne.sgml">
<!entity beleaguered-castle SYSTEM "beleaguered_castle.sgml">
<!entity bristol SYSTEM "bristol.sgml">
<!entity camelot SYSTEM "camelot.sgml">
<!entity canfield SYSTEM "canfield.sgml">
<!entity clock SYSTEM "clock.sgml">
......@@ -69,6 +70,7 @@ been coded for your pleasure in the GNOME scripting language (Scheme).</para>
</glossary>
&auld-lang-syne;
&beleaguered-castle;
&bristol;
&camelot;
&canfield;
&clock;
......
<chapter id=bristol>
<docinfo><copyright><year>1999</year><holder>Rosanna Yuen</holder></copyright>
<author><firstname>Rosanna</firstname><surname>Yuen</surname></author>
<address><email>rwsy@mit.edu</email></address></docinfo>
<title>Thirteen</title>
<para>written by Rosanna Yuen</para>
<bridgehead>Setup</bridgehead>
<informaltable><tgroup cols="2"><tbody>
<row><entry>Type of Deck</entry><entry>
Standard Deck</entry></row>
<row><entry>Stock</entry><entry>
Top left pile. The rest of the deck is placed here after
dealing the Tableau.
</entry></row>
<row><entry>Reserve</entry><entry>
Three piles to the right of Stock.
the Stock.
</entry></row>
<row><entry>Foundation</entry><entry>
Four piles on the top right.
</entry></row>
<row><entry>Tableau</entry><entry>
Deal face up eight piles of three cards each.
</entry></row>
</tbody></tgroup></informaltable>
<bridgehead>Goal</bridgehead>
<para>
Move all cards to the Foundation piles.
</para>
<bridgehead>Rules</bridgehead>
<para>
Cards in the Tableau are built down regardless of suit. Cards can
only be moved singly. An empty pile in the Tableau can not be filled.
</para>
<para>
Cards are flipped from the Stock on to the three Reserve piles, one
card each per deal. Top card of each Reserve pile is available for
play. Empty Reserve piles cannot be filled except with the next deal
from Stock.
</para>
<para>
Foundation piles are built up regardless of suit from Ace to King.
Cards in Foundation are no longer in play.
</para>
<bridgehead>Options</bridgehead>
<para>None</para>
<bridgehead>Scoring</bridgehead>
<para>
Each card in the Foundation piles scores one point.
</para>
<para>
Maximum possible score: 52
</para>
<bridgehead>Strategy</bridgehead>
<para>
Never look backwards. Cards that are locked in backwards order are to
be dealt with as soon as possible. Move as many cards from the
Reserve on to the Tableau as you can, for Kings are hard to move.
</para>
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
sgml-default-dtd-file: "/usr/lib/sgml/cdtd/docbook.ced"
End:
-->
......@@ -20,11 +20,12 @@ Four piles top right. To be built up in suit from Ace to
King. Topmost card in each Foundation can be played back on to the
Tableau.</entry></row>
<row><entry>Tableau</entry><entry>
Seven piles. Deal card face up in first pile. Place one
card face down on all other piles. Place one card face up on next pile
followed by one card face down on all covered piles. Repeat until there
are seven cards in last pile. Tableau can be built down in alternating
colors. Groups of cards can be moved.</entry></row>
Seven piles. Deal card face up in first pile. Place one card face
down on all other piles. Place one card face up on next pile followed
by one card face down on all covered piles. Repeat until there are
seven cards in last pile. Tableau can be built down in alternating
colors. Groups of cards can be moved. Empty piles can only be filled
by Kings or group of cards starting with a King.</entry></row>
</tbody></tgroup></informaltable>
<bridgehead>Goal</bridgehead>
......
1999-02-23 Rosanna Yuen <rwsy@mit.edu>
* bristol.sgml: added new sgml file
1999-02-22 Rosanna Yuen <rwsy@mit.edu>
* spider.sgml: fixed maximum possible score number. oops...
......
......@@ -11,7 +11,8 @@ help_DATA = index.html intro.html glossary.html gpl.html \
eagle-wing.html elevator.html fortunes.html klondike.html \
fourteen.html pileon.html auld-lang-syne.html hopscotch.html \
neighbor.html odessa.html osmosis.html spider.html yukon.html \
beleaguered-castle.html thirteen.html thieves.html freecell.html\
beleaguered-castle.html thirteen.html thieves.html \
freecell.html bristol.html\
camelot-goal.gif clock-rules.gif docbook.css topic.dat
# These are the sources:
......@@ -19,7 +20,8 @@ help_DATA = index.html intro.html glossary.html gpl.html \
help_SGML = aisleriot.sgml definitions.sgml gpl.sgml
camelot.sgml canfield.sgml clock.sgml doublets.sgml \
eagle-wing.sgml elevator.sgml fortunes.sgml pileon.sgml \
fourteen.sgml klondike.sgml auld-lang-syne.sgml hopscotch.sgml \
fourteen.sgml klondike.sgml auld-lang-syne.sgml \
bristol.sgml hopscotch.sgml \
neighbor.sgml odessa.sgml osmosis.sgml spider.sgml yukon.sgml \
beleaguered-castle.sgml thirteen.sgml thieves.sgml freecell.sgml
......
<!DOCTYPE book PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
<!entity auld-lang-syne SYSTEM "auld_lang_syne.sgml">
<!entity beleaguered-castle SYSTEM "beleaguered_castle.sgml">
<!entity bristol SYSTEM "bristol.sgml">
<!entity camelot SYSTEM "camelot.sgml">
<!entity canfield SYSTEM "canfield.sgml">
<!entity clock SYSTEM "clock.sgml">
......@@ -69,6 +70,7 @@ been coded for your pleasure in the GNOME scripting language (Scheme).</para>
</glossary>
&auld-lang-syne;
&beleaguered-castle;
&bristol;
&camelot;
&canfield;
&clock;
......
<chapter id=bristol>
<docinfo><copyright><year>1999</year><holder>Rosanna Yuen</holder></copyright>
<author><firstname>Rosanna</firstname><surname>Yuen</surname></author>
<address><email>rwsy@mit.edu</email></address></docinfo>
<title>Thirteen</title>
<para>written by Rosanna Yuen</para>
<bridgehead>Setup</bridgehead>
<informaltable><tgroup cols="2"><tbody>
<row><entry>Type of Deck</entry><entry>
Standard Deck</entry></row>
<row><entry>Stock</entry><entry>
Top left pile. The rest of the deck is placed here after
dealing the Tableau.
</entry></row>
<row><entry>Reserve</entry><entry>
Three piles to the right of Stock.
the Stock.
</entry></row>
<row><entry>Foundation</entry><entry>
Four piles on the top right.
</entry></row>
<row><entry>Tableau</entry><entry>
Deal face up eight piles of three cards each.
</entry></row>
</tbody></tgroup></informaltable>
<bridgehead>Goal</bridgehead>
<para>
Move all cards to the Foundation piles.
</para>
<bridgehead>Rules</bridgehead>
<para>
Cards in the Tableau are built down regardless of suit. Cards can
only be moved singly. An empty pile in the Tableau can not be filled.
</para>
<para>
Cards are flipped from the Stock on to the three Reserve piles, one
card each per deal. Top card of each Reserve pile is available for
play. Empty Reserve piles cannot be filled except with the next deal
from Stock.
</para>
<para>
Foundation piles are built up regardless of suit from Ace to King.
Cards in Foundation are no longer in play.
</para>
<bridgehead>Options</bridgehead>
<para>None</para>
<bridgehead>Scoring</bridgehead>
<para>
Each card in the Foundation piles scores one point.
</para>
<para>
Maximum possible score: 52
</para>
<bridgehead>Strategy</bridgehead>
<para>
Never look backwards. Cards that are locked in backwards order are to
be dealt with as soon as possible. Move as many cards from the
Reserve on to the Tableau as you can, for Kings are hard to move.
</para>
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
sgml-default-dtd-file: "/usr/lib/sgml/cdtd/docbook.ced"
End:
-->
......@@ -20,11 +20,12 @@ Four piles top right. To be built up in suit from Ace to
King. Topmost card in each Foundation can be played back on to the
Tableau.</entry></row>
<row><entry>Tableau</entry><entry>
Seven piles. Deal card face up in first pile. Place one
card face down on all other piles. Place one card face up on next pile
followed by one card face down on all covered piles. Repeat until there
are seven cards in last pile. Tableau can be built down in alternating
colors. Groups of cards can be moved.</entry></row>
Seven piles. Deal card face up in first pile. Place one card face
down on all other piles. Place one card face up on next pile followed
by one card face down on all covered piles. Repeat until there are
seven cards in last pile. Tableau can be built down in alternating
colors. Groups of cards can be moved. Empty piles can only be filled
by Kings or group of cards starting with a King.</entry></row>
</tbody></tgroup></informaltable>
<bridgehead>Goal</bridgehead>
......
<!DOCTYPE book PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
<!entity auld-lang-syne SYSTEM "auld_lang_syne.sgml">
<!entity beleaguered-castle SYSTEM "beleaguered_castle.sgml">
<!entity bristol SYSTEM "bristol.sgml">
<!entity camelot SYSTEM "camelot.sgml">
<!entity canfield SYSTEM "canfield.sgml">
<!entity clock SYSTEM "clock.sgml">
......@@ -69,6 +70,7 @@ been coded for your pleasure in the GNOME scripting language (Scheme).</para>
</glossary>
&auld-lang-syne;
&beleaguered-castle;
&bristol;
&camelot;
&canfield;
&clock;
......
<chapter id=bristol>
<docinfo><copyright><year>1999</year><holder>Rosanna Yuen</holder></copyright>
<author><firstname>Rosanna</firstname><surname>Yuen</surname></author>
<address><email>rwsy@mit.edu</email></address></docinfo>
<title>Thirteen</title>
<para>written by Rosanna Yuen</para>
<bridgehead>Setup</bridgehead>
<informaltable><tgroup cols="2"><tbody>
<row><entry>Type of Deck</entry><entry>
Standard Deck</entry></row>
<row><entry>Stock</entry><entry>
Top left pile. The rest of the deck is placed here after
dealing the Tableau.
</entry></row>
<row><entry>Reserve</entry><entry>
Three piles to the right of Stock.
the Stock.
</entry></row>
<row><entry>Foundation</entry><entry>
Four piles on the top right.
</entry></row>
<row><entry>Tableau</entry><entry>
Deal face up eight piles of three cards each.
</entry></row>
</tbody></tgroup></informaltable>
<bridgehead>Goal</bridgehead>
<para>
Move all cards to the Foundation piles.
</para>
<bridgehead>Rules</bridgehead>
<para>
Cards in the Tableau are built down regardless of suit. Cards can
only be moved singly. An empty pile in the Tableau can not be filled.
</para>
<para>
Cards are flipped from the Stock on to the three Reserve piles, one
card each per deal. Top card of each Reserve pile is available for
play. Empty Reserve piles cannot be filled except with the next deal
from Stock.
</para>
<para>
Foundation piles are built up regardless of suit from Ace to King.
Cards in Foundation are no longer in play.
</para>
<bridgehead>Options</bridgehead>
<para>None</para>
<bridgehead>Scoring</bridgehead>
<para>
Each card in the Foundation piles scores one point.
</para>
<para>
Maximum possible score: 52
</para>
<bridgehead>Strategy</bridgehead>
<para>
Never look backwards. Cards that are locked in backwards order are to
be dealt with as soon as possible. Move as many cards from the
Reserve on to the Tableau as you can, for Kings are hard to move.
</para>
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
sgml-default-dtd-file: "/usr/lib/sgml/cdtd/docbook.ced"
End:
-->
......@@ -20,11 +20,12 @@ Four piles top right. To be built up in suit from Ace to
King. Topmost card in each Foundation can be played back on to the
Tableau.</entry></row>
<row><entry>Tableau</entry><entry>
Seven piles. Deal card face up in first pile. Place one
card face down on all other piles. Place one card face up on next pile
followed by one card face down on all covered piles. Repeat until there
are seven cards in last pile. Tableau can be built down in alternating
colors. Groups of cards can be moved.</entry></row>
Seven piles. Deal card face up in first pile. Place one card face
down on all other piles. Place one card face up on next pile followed
by one card face down on all covered piles. Repeat until there are
seven cards in last pile. Tableau can be built down in alternating
colors. Groups of cards can be moved. Empty piles can only be filled
by Kings or group of cards starting with a King.</entry></row>
</tbody></tgroup></informaltable>
<bridgehead>Goal</bridgehead>
......
1999-02-23 Rosanna Yuen <rwsy@mit.edu>
* bristol.sgml: added new sgml file
1999-02-22 Rosanna Yuen <rwsy@mit.edu>
* spider.sgml: fixed maximum possible score number. oops...
......
; AisleRiot - bristol.scm
; Copyright (C) 1999 Rosanna Yuen <rwsy@mit.edu>
;
; This game is free software; you can redistribute it and/or modify
; it under the terms of the GNU General Public License as published by
; the Free Software Foundation; either version 2, or (at your option)
; any later version.
;
; This program is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
; GNU General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, write to the Free Software
; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
; USA
(define (new-game)
(initialize-playing-area)
(set-ace-low)
(make-standard-deck)
(shuffle-deck)
(add-normal-slot DECK)
(set! HORIZPOS (inexact->exact (truncate (+ HORIZPOS
(* 3 (/ (get-card-width) 4))))))
(add-normal-slot '())
(add-normal-slot '())
(add-normal-slot '())
(set! HORIZPOS (inexact->exact (truncate (+ HORIZPOS
(* 3 (/ (get-card-width) 4))))))
(add-normal-slot '())
(add-normal-slot '())
(add-normal-slot '())
(add-normal-slot '())
(add-carriage-return-slot)
(add-extended-slot '() right)
(add-blank-slot)
(set! HORIZPOS (inexact->exact (truncate (+ HORIZPOS
(* 3 (/ (get-card-width) 4))))))
(add-extended-slot '() right)
(add-blank-slot)
(set! HORIZPOS (inexact->exact (truncate (+ HORIZPOS
(* 3 (/ (get-card-width) 4))))))
(add-extended-slot '() right)
(add-blank-slot)
(set! HORIZPOS (inexact->exact (truncate (+ HORIZPOS
(* 3 (/ (get-card-width) 4))))))
(add-extended-slot '() right)
(add-carriage-return-slot)
(add-extended-slot '() right)
(add-blank-slot)
(set! HORIZPOS (inexact->exact (truncate (+ HORIZPOS
(* 3 (/ (get-card-width) 4))))))