Did something, apparently
[progcomp2013.git] / agents / silverfish / silverfish.h
index dc5b26a..fe0111d 100644 (file)
@@ -6,14 +6,32 @@
 class Silver : public Agent
 {
        public:
-               Silver(const std::string & colour);
-               Silver(const std::string & colour, const std::map<Piece::Type, double> & new_values);
+               Silver(const std::string & colour, int max_depth=2;);
+               Silver(const std::string & colour, const std::map<Piece::Type, double> & new_values, int max_depth=2;);
                virtual ~Silver() {}
                
                virtual Square & Select();
                virtual Square & Move();
-
+               
                std::map<Piece::Type, double> values;
+               int max_depth;
+               int depth;
+               
+};
+
+class Move
+{
+       public:
+               Move(Piece * new_p, Square & new_s, double new_score) : p(new_p), s(new_s), score(new_score) {}
+               virtual ~Move() {}
+               Move(const Move & cpy) : p(cpy.p), s(cpy.s), score(cpy.score) {}
+               
+               Piece * p;
+               Square & s;
+               double score;
+               
+               bool operator>(const Move & m) const {return score > m.score;}
+               bool operator<(const Move & m) const {return score < m.score;}
 };
 
 

UCC git Repository :: git.ucc.asn.au