summaryrefslogtreecommitdiff
path: root/common/action.h
diff options
context:
space:
mode:
Diffstat (limited to 'common/action.h')
-rw-r--r--common/action.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/common/action.h b/common/action.h
new file mode 100644
index 0000000..21fc7d0
--- /dev/null
+++ b/common/action.h
@@ -0,0 +1,36 @@
+#ifndef ACTION_H
+#define ACTION_H
+
+#include <vector>
+
+class Action {
+ public:
+ //! Action types.
+ enum Type {
+ Pass, // discard
+ Discard, // draw
+ Riichi, // draw
+ Chi, // discard
+ Pon, // discard
+ Kan, // draw, discard
+ Ron, // discard
+ Tsumo, // draw
+ Draw // draw
+ };
+
+ //! Type of action.
+ Type type;
+
+ //! Target of action (if applicable).
+ int target;
+
+ template<class Archive>
+ void serialize(Archive & ar, const unsigned int version) {
+ ar & type;
+ ar & target;
+ }
+};
+
+typedef std::vector<Action> Actions;
+
+#endif