File: cuyo.h

package info (click to toggle)
cuyo 2.0.0brl1-3
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd, stretch
  • size: 15,624 kB
  • sloc: cpp: 11,728; ml: 5,515; sh: 1,179; makefile: 757; yacc: 558; awk: 355; lex: 244; perl: 193
file content (114 lines) | stat: -rw-r--r-- 3,151 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
/***************************************************************************
                          cuyo.h  -  description
                             -------------------
    begin                : Mit Jul 12 22:54:51 MEST 2000
    copyright            : (C) 2000 by Immi
    email                : cuyo@pcpool.mathematik.uni-freiburg.de

Modified 2001-2003,2006,2008,2010,2011 by the cuyo developers

 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   This program 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 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 ***************************************************************************/

#ifndef CUYO_H
#define CUYO_H

#include "stringzeug.h"
#include "version.h"


#ifdef HAVE_CONFIG_H
#include <config.h>
#endif



#include "leveldaten.h" // wegen grx, gry, max_spielerzahl; sollte woanders hin

class Fehler;





class KIPlayer;
class Spielfeld;

/** Cuyo -- Das Fenster.

    Ein paar allgemeine Definitionen:
    
    Blop: eins von diesen Kgelchen. Auch Graue oder Gras, etc.
    
    Version (eines Blops): Untersorte (ursprnglich vom Gras)
    
    Zustand eines Blops: 1. Wo in der Animation befindet es sich?
    2. Welche Version ist es?
    
    Standardblop: Kgelchen, aber kein Graues, etc.
    
    Farbe: eine Sorte von Standardblops.
    
    Bilddatei: Ein Pixmap so wie es geladen wurde.
    
    Bildchen: ein 32x32-Pixmap(-Ausschnitt).
    
    Schema: System, nach dem die Blob-Bildchen mit Anschlssen aus den xpms
    erzeugt werden
 */

namespace Cuyo {

  /* ***
     Weitere public-Methoden befinden sich in ui2cuyo.h
     *** */

  
  /** liefert true, wenn das Spiel normal luft, false
      wenn das Spiel am zuende gehen ist. (Liefert whrend Pause
      auch true) */
  bool getSpielLaeuft();
  /** liefert true, wenn das Spiel gepaust ist. */
  bool getSpielPause();
  /** Liefert die Anzahl der Mitspieler zurck. */
  int getSpielerZahl();
  
  /** Liefert das Pause-Bildchen zurck */
  Bilddatei * getPauseBild();
  
  /** Liefert true, wenn debug-Rberreihen-Test aktiv ist */
  bool getRueberReihenTest();

  /** Liefert ein Spielfeld zurck. */
  Spielfeld * getSpielfeld(bool reSp);

		
  /**  */
  void neuePunkte(bool reSp, int pt);
  /** wird aufgerufen, wenn ein Spieler tot ist */
  void spielerTot();
  
  /* reSp sendet g Graue an den anderen Spieler */
  void sendeGraue(bool reSp, int g);
  
  /** reSp bittet den anderen Spieler um eine Reihe. Er selbst
      hat Hhe h. Antwort ist eine der Konstanten bewege_reihe_xxx */
  int bitteUmReihe(bool reSp, int h);

  /** reSp will einen Stein vom anderen Spieler (rberreihe) */
  void willStein(bool reSp, Blop & s);
}




#endif