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

List:       atlantik-devel
Subject:    [atlantik-cvs] CVS: kdegames/atlantik/libatlantic configoption.cpp,
From:       kde () office ! kde ! org
Date:       2004-01-20 6:51:32
Message-ID: 20040120065132.DF75226C8 () office ! kde ! org
[Download RAW message or body]

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

Modified Files:
	Makefile.am atlantic_core.cpp atlantic_core.h estate.cpp 
	estate.h player.cpp player.h 
Added Files:
	configoption.cpp configoption.h game.cpp game.h 
Log Message:
Merge atlantik_3_3_branch into HEAD.






Index: Makefile.am
===================================================================
RCS file: /home/kde/kdegames/atlantik/libatlantic/Makefile.am,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -d -r1.11 -r1.12
--- Makefile.am	31 Dec 2002 11:50:10 -0000	1.11
+++ Makefile.am	20 Jan 2004 06:51:30 -0000	1.12
@@ -5,12 +5,11 @@
 libatlantic_la_LDFLAGS = $(all_libraries) $(KDE_RPATH) -no-undefined -version-info \
3:0:2  libatlantic_la_LIBADD = $(LIB_QT)
 
-libatlantic_la_SOURCES = atlantic_core.cpp auction.cpp estate.cpp \
-	estategroup.cpp player.cpp trade.cpp
+libatlantic_la_SOURCES = atlantic_core.cpp auction.cpp configoption.cpp estate.cpp \
+	estategroup.cpp game.cpp player.cpp trade.cpp
 
 libatlanticincludedir = $(includedir)/atlantic
-libatlanticinclude_HEADERS = atlantic_core.h auction.h estate.h \
-	estategroup.h player.h trade.h
+libatlanticinclude_HEADERS = atlantic_core.h auction.h configoption.h estate.h \
+	estategroup.h game.h player.h trade.h
 
-METASOURCES = AUTO 
- 
+METASOURCES = AUTO

Index: atlantic_core.cpp
===================================================================
RCS file: /home/kde/kdegames/atlantik/libatlantic/atlantic_core.cpp,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -d -r1.27 -r1.28
--- atlantic_core.cpp	5 Nov 2003 23:40:24 -0000	1.27
+++ atlantic_core.cpp	20 Jan 2004 06:51:30 -0000	1.28
@@ -16,20 +16,22 @@
 
 #include <iostream>
 
-#include "atlantic_core.moc"
+#include "atlantic_core.h"
 
-#include "player.h"
+#include "auction.h"
+#include "configoption.h"
 #include "estate.h"
 #include "estategroup.h"
+#include "game.h"
+#include "player.h"
 #include "trade.h"
-#include "auction.h"
 
 AtlanticCore::AtlanticCore(QObject *parent, const char *name) : QObject(parent, \
name)  {
 	m_playerSelf = 0;
 }
 
-void AtlanticCore::reset(bool deletePlayers)
+void AtlanticCore::reset(bool deletePermanents)
 {
 	m_auctions.setAutoDelete(true);
 	m_auctions.clear();
@@ -40,6 +42,9 @@
 	m_estateGroups.setAutoDelete(true);
 	m_estateGroups.clear();
 	m_estateGroups.setAutoDelete(false);
+	m_configOptions.setAutoDelete(true);
+	m_configOptions.clear();
+	m_configOptions.setAutoDelete(false);
 
 	Trade *trade = 0;
 	for (QPtrListIterator<Trade> it(m_trades); (trade = *it) ; ++it)
@@ -52,7 +57,7 @@
 	Player *player = 0;
 	for (QPtrListIterator<Player> it(m_players); (player = *it) ; ++it)
 	{
-		if (deletePlayers)
+		if (deletePermanents)
 		{
 			emit removeGUI(player);
 			player->deleteLater();
@@ -63,13 +68,26 @@
 			player->setDestination(0);
 		}
 	}
-	if (deletePlayers)
+	if (deletePermanents)
 	{
 		m_players.clear();
 		m_playerSelf = 0;
+
+		Game *game = 0;
+		for (QPtrListIterator<Game> it(m_games); (game = *it) ; ++it)
+		{
+			emit removeGUI(game);
+			game->deleteLater();
+		}
+		m_games.clear();
 	}
 }
 
+bool AtlanticCore::selfIsMaster() const
+{
+	return (m_playerSelf && m_playerSelf->game() && m_playerSelf->game()->master() == \
m_playerSelf); +}
+
 void AtlanticCore::setPlayerSelf(Player *player)
 {
 	m_playerSelf = player;
@@ -85,10 +103,19 @@
 	return m_players;
 }
 
-Player *AtlanticCore::newPlayer(int playerId)
+Player *AtlanticCore::newPlayer(int playerId, const bool &playerSelf)
 {
 	Player *player = new Player(playerId);
 	m_players.append(player);
+
+	if (playerSelf)
+	{
+		player->setIsSelf(playerSelf);
+		m_playerSelf = player;
+	}
+
+	emit createGUI(player);
+
 	return player;
 }
 
@@ -109,6 +136,65 @@
 	player->deleteLater();
 }
 
+QPtrList<Game> AtlanticCore::games()
+{
+	return m_games;
+}
+
+Game *AtlanticCore::newGame(int gameId, const QString &type)
+{
+	Game *game = new Game(gameId);
+	m_games.append(game);
+
+	if ( !type.isNull() )
+		game->setType(type);
+
+	emit createGUI(game);
+
+	return game;
+}
+
+Game *AtlanticCore::findGame(const QString &type)
+{
+	Game *game = 0;
+	for (QPtrListIterator<Game> it(m_games); (game = *it) ; ++it)
+		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);
+	emit removeGUI(game);
+	game->deleteLater();
+}
+
+void AtlanticCore::emitGames()
+{
+	for (QPtrListIterator<Game> it(m_games); (*it) ; ++it)
+		emit createGUI( (*it) );
+}
+
 QPtrList<Estate> AtlanticCore::estates()
 {
 	return m_estates;
@@ -178,6 +264,9 @@
 {
 	Trade *trade = new Trade(tradeId);
 	m_trades.append(trade);
+
+	emit createGUI(trade);
+
 	return trade;
 }
 
@@ -216,14 +305,45 @@
 	delete auction;
 }
 
+ConfigOption *AtlanticCore::newConfigOption(int configId)
+{
+	ConfigOption *configOption = new ConfigOption(configId);
+	m_configOptions.append(configOption);
+
+	emit createGUI(configOption);
+
+	return configOption;
+}
+
+void AtlanticCore::removeConfigOption(ConfigOption *configOption)
+{
+	m_configOptions.remove(configOption);
+	emit removeGUI(configOption);
+	configOption->deleteLater();
+}
+
+ConfigOption *AtlanticCore::findConfigOption(int configId)
+{
+	ConfigOption *configOption = 0;
+	for (QPtrListIterator<ConfigOption> it(m_configOptions); (configOption = *it) ; \
++it) +		if (configOption->id() == configId)
+			return configOption;
+
+	return 0;
+}
+
 void AtlanticCore::printDebug()
 {
 	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() << ", master: " << \
QString::number(game->master() ? game->master()->id() : -1 ).latin1() << std::endl;  
 	Estate *estate = 0;
 	for (QPtrListIterator<Estate> it(m_estates); (estate = *it) ; ++it)
@@ -235,10 +355,15 @@
 
 	Auction *auction = 0;
 	for (QPtrListIterator<Auction> it(m_auctions); (auction = *it) ; ++it)
-		std::cout << "A: " << QString::number(auction->auctionId()).latin1() << std::endl;
+		std::cout << " A: " << QString::number(auction->auctionId()).latin1() << \
std::endl;  
 	Trade *trade = 0;
 	for (QPtrListIterator<Trade> it(m_trades); (trade = *it) ; ++it)
-		std::cout << "T: " << QString::number(trade->tradeId()).latin1() << std::endl;
+		std::cout << " T: " << QString::number(trade->tradeId()).latin1() << std::endl;
 
+	ConfigOption *configOption = 0;
+	for (QPtrListIterator<ConfigOption> it(m_configOptions); (configOption = *it) ; \
++it) +		std::cout << "CO:" << QString::number(configOption->id()).latin1() << " " << \
configOption->name().latin1() << " " << configOption->value().latin1() << std::endl;  \
} +
+#include "atlantic_core.moc"

Index: atlantic_core.h
===================================================================
RCS file: /home/kde/kdegames/atlantik/libatlantic/atlantic_core.h,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -d -r1.23 -r1.24
--- atlantic_core.h	5 Dec 2003 21:02:38 -0000	1.23
+++ atlantic_core.h	20 Jan 2004 06:51:30 -0000	1.24
@@ -21,8 +21,10 @@
 #include <qptrlist.h>
 
 class Player;
+class ConfigOption;
 class Estate;
 class EstateGroup;
+class Game;
 class Trade;
 class Auction;
 
@@ -35,14 +37,24 @@
 
 	void reset(bool deletePermanents = false);
 
+	bool selfIsMaster() const;
+
 	void setPlayerSelf(Player *player);
 	Player *playerSelf();
 
 	QPtrList<Player> players();
-	Player *newPlayer(int playerId);
+	Player *newPlayer(int playerId, const bool &playerSelf = false);
 	Player *findPlayer(int playerId);
 	void removePlayer(Player *player);
 
+	QPtrList<Game> games();
+	Game *newGame(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();
+
 	QPtrList<Estate> estates();
 	Estate *newEstate(int estateId);
 	Estate *findEstate(int estateId);
@@ -61,21 +73,31 @@
 	Auction *newAuction(int auctionId, Estate *estate);
 	void delAuction(Auction *auction);
 
+	ConfigOption *newConfigOption(int configId);
+	void removeConfigOption(ConfigOption *configOption);
+	ConfigOption *findConfigOption(int configId);
+
 	void printDebug();
 
 signals:
+	void createGUI(Player *player);
 	void removeGUI(Player *player);
-	void deletePlayer(Player *player);
+	void createGUI(Game *game);
+	void removeGUI(Game *game);
+	void createGUI(Trade *trade);
 	void removeGUI(Trade *trade);
-	void deleteTrade(Trade *trade);
+	void createGUI(ConfigOption *configOption);
+	void removeGUI(ConfigOption *configOption);
 
 private:
 	Player *m_playerSelf;
 	QPtrList<Player> m_players;
+	QPtrList<Game> m_games;
 	QPtrList<Estate> m_estates;
 	QPtrList<EstateGroup> m_estateGroups;
 	QPtrList<Trade> m_trades;
 	QPtrList<Auction> m_auctions;
+	QPtrList<ConfigOption> m_configOptions;
 };
 
 #endif

Index: estate.cpp
===================================================================
RCS file: /home/kde/kdegames/atlantik/libatlantic/estate.cpp,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -d -r1.10 -r1.11
--- estate.cpp	13 Jul 2003 21:27:43 -0000	1.10
+++ estate.cpp	20 Jan 2004 06:51:30 -0000	1.11
@@ -27,6 +27,7 @@
 	m_owner = 0;
 	m_houses = 0;
 	m_price = 0;
+	m_money = 0;
 	m_estateGroup = 0;
 	m_changed = m_canBeOwned = m_canBuyHouses = m_canSellHouses = m_isMortgaged = \
m_canToggleMortgage = false;  m_bgColor = QColor();
@@ -138,6 +139,20 @@
 	}
 }
 
+void Estate::setMoney(int money)
+{
+	if (m_money != money)
+	{
+		m_money = money;
+		m_changed = true;
+	}
+}
+
+int Estate::money()
+{
+	return m_money;
+}
+
 void Estate::update(bool force)
 {
 	if (m_changed || force)

Index: estate.h
===================================================================
RCS file: /home/kde/kdegames/atlantik/libatlantic/estate.h,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -d -r1.13 -r1.14
--- estate.h	23 Jun 2003 03:05:27 -0000	1.13
+++ estate.h	20 Jan 2004 06:51:30 -0000	1.14
@@ -56,6 +56,8 @@
 	QColor bgColor() const { return m_bgColor; }
 	void setPrice(const unsigned int price) { m_price = price; }
 	unsigned int price() const { return m_price; }
+	void setMoney(int money);
+	int money();
 	void update(bool force = false);
 
 signals:
@@ -75,6 +77,7 @@
 	Player *m_owner;
 	EstateGroup *m_estateGroup;
 	unsigned int m_houses, m_price;
+	int m_money;
 	bool m_canBeOwned, m_canBuyHouses, m_canSellHouses, m_isMortgaged, \
m_canToggleMortgage;  QColor m_bgColor, m_color;
 };

Index: player.cpp
===================================================================
RCS file: /home/kde/kdegames/atlantik/libatlantic/player.cpp,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -d -r1.21 -r1.22
--- player.cpp	16 Jul 2003 21:53:16 -0000	1.21
+++ player.cpp	20 Jan 2004 06:51:30 -0000	1.22
@@ -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)
@@ -58,15 +63,6 @@
 	}
 }
 
-void Player::setMaster(bool master)
-{
-	if (m_master != master)
-	{
-		m_master = master;
-		m_changed = true;
-	}
-}
-
 void Player::setBankrupt(bool bankrupt)
 {
 	if (m_bankrupt != bankrupt)

Index: player.h
===================================================================
RCS file: /home/kde/kdegames/atlantik/libatlantic/player.h,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -d -r1.19 -r1.20
--- player.h	3 Dec 2003 19:10:39 -0000	1.19
+++ player.h	20 Jan 2004 06:51:30 -0000	1.20
@@ -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 *location);
 	Estate *location() { return m_location; }
 	void setDestination(Estate *destination);
 	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