[prev in list] [next in list] [prev in thread] [next in thread] 

List:       atlantik-devel
Subject:    [atlantik-cvs]
From:       kde () office ! kde ! org
Date:       2003-11-17 2:50:44
[Download RAW message or body]

Update of /home/kde/kdegames/atlantik/libatlantic
In directory office:/tmp/cvs-serv10286/libatlantic

Modified Files:
      Tag: atlantik_3_3_branch
	atlantic_core.cpp atlantic_core.h game.cpp game.h player.cpp 
	player.h 
Log Message:
more gameupdate changes, game master is now a server-wide property

Index: atlantic_core.cpp
===================================================================
RCS file: /home/kde/kdegames/atlantik/libatlantic/atlantic_core.cpp,v
retrieving revision 1.27.2.1
retrieving revision 1.27.2.2
diff -u -d -r1.27.2.1 -r1.27.2.2
--- atlantic_core.cpp	15 Nov 2003 22:09:06 -0000	1.27.2.1
+++ atlantic_core.cpp	17 Nov 2003 02:50:42 -0000	1.27.2.2
@@ -79,6 +79,11 @@
 	}
 }
 
+bool AtlanticCore::selfIsMaster() const
+{
+	return (m_playerSelf && m_playerSelf->game() && m_playerSelf->game()->master() == \
m_playerSelf); +}
+
 void AtlanticCore::setPlayerSelf(Player *player)
 {
 	m_playerSelf = player;
@@ -145,16 +150,34 @@
 	return game;
 }
 
-Game *AtlanticCore::findGame(int gameId, const QString &type)
+Game *AtlanticCore::findGame(const QString &type)
 {
 	Game *game = 0;
 	for (QPtrListIterator<Game> it(m_games); (game = *it) ; ++it)
-		if (game->id() == gameId && (type.isNull() || type == game->type()) )
+		if (game->id() == -1 && game->type() == type)
 			return game;
 
 	return 0;
 }
 
+Game *AtlanticCore::findGame(int gameId)
+{
+	if (gameId == -1)
+		return 0;
+
+	Game *game = 0;
+	for (QPtrListIterator<Game> it(m_games); (game = *it) ; ++it)
+		if (game->id() == gameId)
+			return game;
+
+	return 0;
+}
+
+Game *AtlanticCore::gameSelf()
+{
+	return( m_playerSelf ? m_playerSelf->game() : 0 );
+}
+
 void AtlanticCore::removeGame(Game *game)
 {
 	m_games.remove(game);
@@ -283,13 +306,13 @@
 	Player *player = 0;
 	for (QPtrListIterator<Player> it(m_players); (player = *it) ; ++it)
 		if (player == m_playerSelf)
-			std::cout << "PS: " << player->name().latin1() << ", game " << \
QString::number(player->gameId()).latin1() << std::endl; +			std::cout << "PS: " << \
player->name().latin1() << ", game " << QString::number(player->game() ? \
player->game()->id() : -1).latin1() << std::endl;  else
-			std::cout << " P: " << player->name().latin1() << ", game " << \
QString::number(player->gameId()).latin1() << std::endl; +			std::cout << " P: " << \
player->name().latin1() << ", game " << QString::number(player->game() ? \
player->game()->id() : -1).latin1() << std::endl;  
 	Game *game = 0;
 	for (QPtrListIterator<Game> it(m_games); (game = *it) ; ++it)
-		std::cout << " G: " << QString::number(game->id()).latin1() << std::endl;
+		std::cout << " G: " << QString::number(game->id()).latin1() << ", master: " << \
QString::number(game->master() ? game->master()->id() : -1 ).latin1() << std::endl;  
 	Estate *estate = 0;
 	for (QPtrListIterator<Estate> it(m_estates); (estate = *it) ; ++it)

Index: atlantic_core.h
===================================================================
RCS file: /home/kde/kdegames/atlantik/libatlantic/atlantic_core.h,v
retrieving revision 1.22.2.1
retrieving revision 1.22.2.2
diff -u -d -r1.22.2.1 -r1.22.2.2
--- atlantic_core.h	15 Nov 2003 22:09:06 -0000	1.22.2.1
+++ atlantic_core.h	17 Nov 2003 02:50:42 -0000	1.22.2.2
@@ -36,6 +36,8 @@
 
 	void reset(bool deletePlayers = false);
 
+	bool selfIsMaster() const;
+
 	void setPlayerSelf(Player *player);
 	Player *playerSelf();
 
@@ -46,7 +48,9 @@
 
 	QPtrList<Game> games();
 	Game *newGame(int gameId, const QString &type = QString::null);
-	Game *findGame(int gameId, const QString &type = QString::null);
+	Game *findGame(const QString &type); // finds game types
+	Game *findGame(int gameId); // finds actual games
+	Game *gameSelf();
 	void removeGame(Game *game);
 	void emitGames();
 

Index: game.cpp
===================================================================
RCS file: /home/kde/kdegames/atlantik/libatlantic/Attic/game.cpp,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -d -r1.1.2.1 -r1.1.2.2
--- game.cpp	15 Nov 2003 22:09:06 -0000	1.1.2.1
+++ game.cpp	17 Nov 2003 02:50:42 -0000	1.1.2.2
@@ -24,6 +24,7 @@
 	m_description = QString::null;
 	m_type = QString::null;
 	m_players = 0;
+	m_master = 0;
 
 	m_changed = false;
 }
@@ -108,6 +109,20 @@
 	if (m_players != players)
 	{
 		m_players = players;
+		m_changed = true;
+	}
+}
+
+Player *Game::master()
+{
+	return m_master;
+}
+
+void Game::setMaster(Player *master)
+{
+	if (m_master != master)
+	{
+		m_master = master;
 		m_changed = true;
 	}
 }

Index: game.h
===================================================================
RCS file: /home/kde/kdegames/atlantik/libatlantic/Attic/game.h,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -d -r1.1.2.1 -r1.1.2.2
--- game.h	15 Nov 2003 22:09:06 -0000	1.1.2.1
+++ game.h	17 Nov 2003 02:50:42 -0000	1.1.2.2
@@ -21,6 +21,8 @@
 
 class QString;
 
+class Player;
+
 class Game : public QObject
 {
 Q_OBJECT
@@ -39,6 +41,8 @@
 	QString type() const;
 	int players();
 	void setPlayers(int players);
+	Player *master();
+	void setMaster(Player *master);
 
 	void update(bool force = false);
 
@@ -50,6 +54,7 @@
 	bool m_canBeJoined;
 	QString m_description, m_name, m_type;
 	int m_id, m_players;
+	Player *m_master;
 };
 
 #endif

Index: player.cpp
===================================================================
RCS file: /home/kde/kdegames/atlantik/libatlantic/player.cpp,v
retrieving revision 1.21
retrieving revision 1.21.2.1
diff -u -d -r1.21 -r1.21.2.1
--- player.cpp	16 Jul 2003 21:53:16 -0000	1.21
+++ player.cpp	17 Nov 2003 02:50:42 -0000	1.21.2.1
@@ -21,25 +21,30 @@
 Player::Player(int playerId) : QObject()
 {
 	m_id = playerId;
-	m_gameId = -1;
+	m_game = 0;
 	m_name = "";
 	m_host = "";
 	m_image = "";
 	m_location = m_destination = 0;
 	m_money = 0;
 	m_changed = m_isSelf = false;
-	m_master = m_bankrupt = m_hasDebt = m_hasTurn = m_canRoll = m_canBuy = m_canAuction \
= m_canUseCard = m_inJail = false; +	m_bankrupt = m_hasDebt = m_hasTurn = m_canRoll = \
m_canBuy = m_canAuction = m_canUseCard = m_inJail = false;  }
 
-void Player::setGame(int gameId)
+void Player::setGame(Game *game)
 {
-	if (m_gameId != gameId)
+	if (m_game != game)
 	{
-		m_gameId = gameId;
+		m_game = game;
 		m_changed = true;
 	}
 }
 
+Game *Player::game()
+{
+	return m_game;
+}
+
 void Player::setLocation(Estate *location)
 {
 	if (m_location != location)
@@ -54,15 +59,6 @@
 	if (m_destination != destination)
 	{
 		m_destination = destination;
-		m_changed = true;
-	}
-}
-
-void Player::setMaster(bool master)
-{
-	if (m_master != master)
-	{
-		m_master = master;
 		m_changed = true;
 	}
 }

Index: player.h
===================================================================
RCS file: /home/kde/kdegames/atlantik/libatlantic/player.h,v
retrieving revision 1.18
retrieving revision 1.18.2.1
diff -u -d -r1.18 -r1.18.2.1
--- player.h	16 Jul 2003 21:53:16 -0000	1.18
+++ player.h	17 Nov 2003 02:50:42 -0000	1.18.2.1
@@ -21,6 +21,7 @@
 #include <qstring.h>
 
 class Estate;
+class Game;
 
 class Player : public QObject
 {
@@ -30,16 +31,14 @@
 	Player(int playerId);
 
 	int id() { return m_id; }
-	void setGame(int gameId);
-	int gameId() { return m_gameId; }
+	void setGame(Game *game);
+	Game *game();
 	void setLocation(Estate *estate);
 	Estate *location() { return m_location; }
 	void setDestination(Estate *estate);
 	Estate *destination() { return m_destination; }
 	void setIsSelf(const bool isSelf) { m_isSelf = isSelf; }
 	bool isSelf() const { return m_isSelf; }
-	void setMaster(bool master);
-	bool master() { return m_master; }
 	void setBankrupt(bool bankrupt);
 	bool isBankrupt() { return m_bankrupt; }
 	void setHasDebt(bool hasDebt);
@@ -71,11 +70,12 @@
 	void gainedTurn();
 
 private:
-	int m_id, m_gameId;
+	int m_id;
 	bool m_changed, m_isSelf;
-	bool m_master, m_bankrupt, m_hasDebt, m_hasTurn, m_canRoll, m_canBuy, m_canAuction, \
m_canUseCard, m_inJail; +	bool m_bankrupt, m_hasDebt, m_hasTurn, m_canRoll, m_canBuy, \
m_canAuction, m_canUseCard, m_inJail;  unsigned int m_money;
 	QString m_name, m_host, m_image;
+	Game *m_game;
 	Estate *m_location, *m_destination;
 };
 

_______________________________________________
atlantik-cvs mailing list
atlantik-cvs@kde.org
https://mail.kde.org/mailman/listinfo/atlantik-cvs


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic