camino-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Camino-devel] camino/src/server Player.h Player.cpp


From: Pascal Audoux
Subject: [Camino-devel] camino/src/server Player.h Player.cpp
Date: Sun, 09 Mar 2003 10:12:18 -0500

CVSROOT:        /cvsroot/camino
Module name:    camino
Changes by:     Pascal Audoux <address@hidden>  03/03/09 10:12:18

Modified files:
        src/server     : Player.h Player.cpp 

Log message:
        manage 'PlayerCompletes' message

Patches:
Index: camino/src/server/Player.cpp
diff -u camino/src/server/Player.cpp:1.16 camino/src/server/Player.cpp:1.17
--- camino/src/server/Player.cpp:1.16   Sat Mar  8 15:22:00 2003
+++ camino/src/server/Player.cpp        Sun Mar  9 10:12:17 2003
@@ -2,7 +2,7 @@
 **
 ** Camino
 **
-** Version : $Id: Player.cpp,v 1.16 2003/03/08 20:22:00 Audoux Exp $
+** Version : $Id: Player.cpp,v 1.17 2003/03/09 15:12:17 Audoux Exp $
 **
 ** Author(s) : Philippe Fremy, Pascal Audoux
 ** Creation : 14/01/2003
@@ -109,7 +109,7 @@
        // check that the move is valid
        // remove tile from player set
        
-       _server->updateBoard( tile );   
+       _server->updateBoard( tile );
 
        if ( _server->_tileStack->hasTileLeft() ) {
                distributeAndSendOneTile();
@@ -120,6 +120,27 @@
 
        // activate new player
        _server->activateNextPlayer();
+}
+
+void Player::recvPlayerCompletes( Tile * tile )
+{
+       QString msg;
+       if (this != _server->_activePlayer) {
+               msg = _playerName + " tried to play but he is not the active 
player!";
+               _server->serverBroadcastMsg( DebugMsg, msg );
+               qDebug("Player::recvPlayerPlaysAMove - %s", msg.latin1() );
+               return;
+       }
+
+       /// XXX: check that completion is valid
+       _server->updateBoard( tile );
+
+       if ( _server->_tileStack->hasTileLeft() ) {
+               distributeAndSendOneTile();
+       } else {
+               // continue until no player has tile
+               // then finish the game
+       }
 }
 
 void Player::removeTile( Tile * tile )
Index: camino/src/server/Player.h
diff -u camino/src/server/Player.h:1.11 camino/src/server/Player.h:1.12
--- camino/src/server/Player.h:1.11     Sat Mar  8 15:22:00 2003
+++ camino/src/server/Player.h  Sun Mar  9 10:12:17 2003
@@ -5,7 +5,7 @@
 ** Player.h
 ** this is a template for all .h files
 **
-** Version : $Id: Player.h,v 1.11 2003/03/08 20:22:00 Audoux Exp $
+** Version : $Id: Player.h,v 1.12 2003/03/09 15:12:17 Audoux Exp $
 ** Author(s) : Philippe Fremy, Pascal Audoux
 ** Creation : 14/01/2003
 ** Copyright: Pascal Audoux, Philippe Fremy 2003
@@ -76,6 +76,7 @@
        //virtual void recvTilesForYou( Tile::TileType /* tile */ );
        //virtual void recvActivePlayer( QString playerName );
        virtual void recvPlayerPlaysAMove( Tile * tile );
+       virtual void recvPlayerCompletes( Tile * tile );
        //virtual void recvMoveRejected( Tile * tile );
        //virtual void recvUpdateBoard( Tile * tile, bool removeTile );
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]