summaryrefslogtreecommitdiff
path: root/appl/spree/lib/tricks.m
diff options
context:
space:
mode:
Diffstat (limited to 'appl/spree/lib/tricks.m')
-rw-r--r--appl/spree/lib/tricks.m21
1 files changed, 21 insertions, 0 deletions
diff --git a/appl/spree/lib/tricks.m b/appl/spree/lib/tricks.m
new file mode 100644
index 00000000..0cdab785
--- /dev/null
+++ b/appl/spree/lib/tricks.m
@@ -0,0 +1,21 @@
+Tricks: module {
+ PATH: con "/dis/spree/lib/tricks.dis";
+ init: fn(mod: Spree, g: ref Clique, cardlibmod: Cardlib);
+
+ Trick: adt {
+ trumps: int;
+ startcard: Cardlib->Card;
+ highcard: Cardlib->Card;
+ winner: int;
+ pile: ref Object;
+ hands: array of ref Object;
+ rank: array of int;
+
+ new: fn(pile: ref Object, trumps: int,
+ hands: array of ref Object, rank: array of int): ref Trick;
+ play: fn(t: self ref Trick, ord, idx: int): string;
+ archive: fn(t: self ref Trick, archiveobj: ref Object, name: string);
+ unarchive: fn(archiveobj: ref Object, name: string): ref Trick;
+ };
+
+};