Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Donald Haase
Cockatrice
Commits
135fed79
Commit
135fed79
authored
Sep 07, 2010
by
Max-Wilhelm Bruker
Browse files
Merge branch 'master' of
ssh://cockatrice.de/home/cockgit/cockatrice
Conflicts: common/server_game.cpp
parents
c4c17232
ad40194f
Changes
3
Hide whitespace changes
Inline
Side-by-side
common/server_game.cpp
View file @
135fed79
...
...
@@ -138,7 +138,8 @@ void Server_Game::startGameIfReady()
query.exec();
}
*/
setActivePlayer
(
players
.
keys
().
first
());
activePlayer
=
-
1
;
nextTurn
();
}
void
Server_Game
::
stopGameIfFinished
()
...
...
@@ -254,6 +255,21 @@ void Server_Game::setActivePhase(int _activePhase)
sendGameEvent
(
new
Event_SetActivePhase
(
-
1
,
activePhase
));
}
void
Server_Game
::
nextTurn
()
{
const
QList
<
int
>
keys
=
players
.
keys
();
int
listPos
=
-
1
;
if
(
activePlayer
!=
-
1
)
listPos
=
keys
.
indexOf
(
activePlayer
);
do
{
++
listPos
;
if
(
listPos
==
keys
.
size
())
listPos
=
0
;
}
while
(
players
.
value
(
keys
[
listPos
])
->
getSpectator
());
setActivePlayer
(
keys
[
listPos
]);
}
QList
<
ServerInfo_Player
*>
Server_Game
::
getGameState
(
Server_Player
*
playerWhosAsking
)
const
{
QList
<
ServerInfo_Player
*>
result
;
...
...
common/server_game.h
View file @
135fed79
...
...
@@ -76,6 +76,7 @@ public:
int
getActivePhase
()
const
{
return
activePhase
;
}
void
setActivePlayer
(
int
_activePlayer
);
void
setActivePhase
(
int
_activePhase
);
void
nextTurn
();
QList
<
ServerInfo_Player
*>
getGameState
(
Server_Player
*
playerWhosAsking
)
const
;
void
sendGameEvent
(
GameEvent
*
event
,
GameEventContext
*
context
=
0
,
Server_Player
*
exclude
=
0
);
...
...
common/server_protocolhandler.cpp
View file @
135fed79
...
...
@@ -958,18 +958,7 @@ ResponseCode Server_ProtocolHandler::cmdNextTurn(Command_NextTurn * /*cmd*/, Com
if
(
!
game
->
getGameStarted
())
return
RespGameNotStarted
;
const
QMap
<
int
,
Server_Player
*>
&
players
=
game
->
getPlayers
();
const
QList
<
int
>
keys
=
players
.
keys
();
int
activePlayer
=
game
->
getActivePlayer
();
int
listPos
=
keys
.
indexOf
(
activePlayer
);
do
{
++
listPos
;
if
(
listPos
==
keys
.
size
())
listPos
=
0
;
}
while
(
players
.
value
(
keys
[
listPos
])
->
getSpectator
());
game
->
setActivePlayer
(
keys
[
listPos
]);
game
->
nextTurn
();
return
RespOk
;
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment