1 /***************************************************************************
2                           kiplayer.h  -  description
3                              -------------------
4     begin                : Wed Jul 25 2001
5     copyright            : (C) 2001 by Immi
6     email                : cuyo@karimmi.de
7 
8 Modified 2001-2003,2006,2011 by the cuyo developers
9 
10  ***************************************************************************/
11 
12 /***************************************************************************
13  *                                                                         *
14  *   This program is free software; you can redistribute it and/or modify  *
15  *   it under the terms of the GNU General Public License as published by  *
16  *   the Free Software Foundation; either version 2 of the License, or     *
17  *   (at your option) any later version.                                   *
18  *                                                                         *
19  ***************************************************************************/
20 
21 #ifndef KIPLAYER_H
22 #define KIPLAYER_H
23 
24 /**Wenn man gegen den Computer spielt...
25   *@author Immi
26   */
27 
28 class Spielfeld;
29 class BlopGitter;
30 class Blop;
31 
32 class KIPlayer {
33 public:
34   KIPlayer(Spielfeld * sp);
35   ~KIPlayer();
36   /** Teilt der KI mit, dass ein neuer Level anf�ngt. (Initialisiert
37       alles.) */
38   void startLevel();
39 public:
40   /** Einmal pro Spielschritt aufrufen, wenn der Computer
41       auch spielen soll */
42   void spielSchritt();
43 
44 protected:
45   Spielfeld * mSp;
46   const BlopGitter * mDaten;
47 
48   bool mZuTun;
49   double mNochWart;
50   int mNochDr;
51   int mNochDx;
52 protected: // Protected methods
53   /** Liefert zur�ck, wie gut ein Blop der Farbe f in Spalte y w�re,
54       um dy nach oben verschoben. */
55   int bewerteBlop(int x, int dy, int f);
56   /** Liefert zur�ck, wie gut das Fallende bei x in Richtung r
57       w�re. (r = Anzahl der Dreh-Tastendr�cke) */
58   int bewerteZweiBlops(int x, int r);
59 };
60 
61 #endif
62