Page MenuHomePhabricator (Chris)

No OneTemporary

Authored By
Unknown
Size
5 KB
Referenced Files
None
Subscribers
None
diff --git a/command.cpp b/command.cpp
index 69231ac..335b965 100644
--- a/command.cpp
+++ b/command.cpp
@@ -1,155 +1,155 @@
#include <algorithm>
#include <iterator>
#include "game.h"
#include "command.h"
#include "data.h"
Command::Command(efc::Game &currentGame) :
game(currentGame)
{
}
void Command::removeCard(int playerNumber)
{
/*! This should works as following:
* - iterate over BoardDiamondSeq
* - find diamonds belonging to the playerNumber
* - create an array from the aboves
* - get a random element
* - remove from the board - set not active
*/
std::vector<int> diamonds;
for (auto&& i: game.boardDiamonds.diamonds)
{
int fieldNumber = i.playerNumber;
if ((fieldNumber==playerNumber) && (i.boardPosition>-1)
&& (i.idNumber<4))
{
diamonds.push_back(i.boardPosition);
}
}
int numberDiamonds = diamonds.size();
if (numberDiamonds>=0)
{
int elemToRemove = rand() % numberDiamonds;
game.boardDiamonds.collectField(diamonds[elemToRemove]);
}
}
void Command::removeAllCardElement(int elementNumber)
{
/*! This should works as following:
* - iterate over BoardDiamondSeq
* - find diamonds belonging to the playerNumber
* - create an array from the aboves
* - get a random element
* - remove from the board - set not active
*/
for (auto&& i: game.boardDiamonds.diamonds)
{
int cardElementNumber = i.idNumber;
if ((i.boardPosition>-1) && (cardElementNumber==elementNumber))
{
i.boardPosition=-1;
};
}
}
void Command::removeDiamond(int playerNumber)
{
/*! This should works as following:
* - iterate over BoardDiamondSeq
* - find diamonds belonging to the playerNumber
* - create an array from the aboves
* - get a random element
* - remove from the board - set not active
*/
std::vector<int> diamonds;
for (auto&& i: game.boardDiamonds.diamonds)
{
int fieldNumber = i.playerNumber;
if ((fieldNumber==playerNumber) && (i.boardPosition>-1)
&& (i.idNumber==4))
{
diamonds.push_back(i.boardPosition);
}
}
int numberDiamonds = diamonds.size();
- if (numberDiamonds>=0)
+ if (numberDiamonds>0)
{
int elemToRemove = rand() % numberDiamonds;
game.boardDiamonds.collectField(diamonds[elemToRemove]);
}
}
void Command::freezePlayer(int playerNumber)
{
game.players[playerNumber].frozenLeft += 1;
}
void Command::processField(int pos)
{
// if ()
bool startField = std::find(std::begin(efc::startPlayers),
std::end(efc::startPlayers), pos)
!= std::end(efc::startPlayers);
if ((startField) && (efc::startPlayers[game.turn]==pos))
game.boardDiamonds.reorder(game.turn);
if (game.boardDiamonds.ifFieldIsEmpty(pos)==false)
{
game.sfx.playCollect();
if (game.boardDiamonds.getNumberForField(pos)==4)
{
game.players[game.turn].cash += 1;
} else if (game.boardDiamonds.getNumberForField(pos)<4)
{
processCard(pos);
}
game.boardDiamonds.collectField(pos);
}
}
void Command::processCard(int pos)
{
int tokenNumber = game.boardDiamonds.getNumberForField(pos);
std::string cardType = game.cardsDeck.getTitle(tokenNumber);
if (tokenNumber!=game.turn)
{
if (cardType == "diamond")
{
removeDiamond(game.boardDiamonds.getNumberForField(pos));
game.players[game.turn].cash += 1;
} else if (cardType == "stop")
{
freezePlayer(tokenNumber);
} else if (cardType == "card")
{
removeCard(game.boardDiamonds.getNumberForField(pos));
} else if (cardType == "diamond x 2")
{
removeDiamond(game.boardDiamonds.getNumberForField(pos));
game.players[game.turn].cash += 1;
removeDiamond(game.boardDiamonds.getNumberForField(pos));
game.players[game.turn].cash += 1;
}
}
game.cardsDeck.nextCard(tokenNumber);
game.sfx.playCard();
}
//int Command::processGui(sf::Vector2f posGui)
//{
// return posGui.x + posGui.y; /*! TODO: add processing some actions */
//}
diff --git a/debian/changelog b/debian/changelog
index c26e640..d3b8129 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,29 +1,36 @@
+deerportal (0.0.5-alphaubuntu1) UNRELEASED; urgency=medium
+
+ * asdads
+ *
+
+ -- Rafal Zawadzki <bluszcz@taller> Sat, 28 May 2016 12:43:17 +0200
+
deerportal (0.0.4-alpha) unstable; urgency=medium
* Deer Mode
* Clean up
* Animated Characters
-- Rafal Zawadzki <bluszcz@devcarpet.net> Sat, 28 May 2016 04:42:42 +0200
deerportal (0.0.3-alpha) unstable; urgency=medium
* Bubbles
* Clean up
-- Rafal Zawadzki <bluszcz@devcarpet.net> Sat, 09 Apr 2016 04:10:42 +0200
deerportal (0.0.2alpha) unstable; urgency=medium
* New upstream release
* Clean up
-- Rafal Zawadzki <bluszcz@devcarpet.net> Sat, 09 Apr 2016 04:10:42 +0200
deerportal (0.0.1alpha-1) unstable; urgency=low
* Initial release (Closes: #nnnn) <nnnn is the bug number of your ITP>
-- Rafal Zawadzki <bluszcz@devcarpet.net> Fri, 08 Apr 2016 23:40:21 +0200

File Metadata

Mime Type
text/x-diff
Expires
Tue, Jun 16, 12:27 AM (2 w, 1 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
70503
Default Alt Text
(5 KB)

Event Timeline