else
{
/* in a game Schweinchen is not valid in all types of games */
- if( $gametype == 'normal' || $gametype == 'silent' || $gametype=='trump' || $gametype=='wedding')
+ if( in_array($gametype,array('normal','wedding','trump','silent') ))
if( in_array($RULES['schweinchen'],array('both','second','secondaftercall')) )
$ok=1;
}
echo " </div>\n </div>\n";
/* show score */
+
+ echo " <div class=\"sessionscore\">";
+
$score = generate_score_table($session);
+
+ /* get the last entry to show on the main page */
$tmpscore= $score;
$finalscore = array_pop($tmpscore);
$finalscore = $finalscore['players'];
- echo " <div class=\"sessionscore\">";
if($finalscore)
{
echo "Score: \n";
- /* output the final score on the front page */
foreach($finalscore as $user=>$value)
{
$name = DB_get_name('userid',$user);
echo " ";
}
+ /* output all games for the score table */
echo format_score_table_html($score,$myid);
echo " </div>\n";
- /* figure out which game in a session we are in and link to the previous and next game if possible */
+ /* figure out which game in a session we are in and link to the
+ * previous and next game if possible
+ */
$hashes = DB_get_hashes_by_session($session,$myid);
$next = NULL;
$i = 1;
else if($nines)
{
/* cancel game */
- $message = "Hello, \n\n".
- " the game has been canceled because ".DB_get_name('userid',$nines).
+ $message = "The game has been canceled because ".DB_get_name('userid',$nines).
" has five or more nines and nobody is playing solo.\n\n".
- " To redeal either start a new game or, in case the game was part of a tournament, \n".
- " go to the last game and use the link at the bottom of the page to redeal.\n\n";
+ "To redeal either start a new game or, in case the game was part of a tournament,\n".
+ "go to the last game and use the link at the bottom of the page to redeal.\n\n";
$userids = DB_get_all_userid_by_gameid($gameid);
foreach($userids as $user)
/* update game status */
cancel_game('nines',$gameid);
- echo "The game has been canceled because ".DB_get_name('userid',$nines).
- " has five or more nines and nobody is playing solo.\n";
- return;
+ echo "<p>The game has been canceled because ".DB_get_name('userid',$nines).
+ " has five or more nines and nobody is playing solo.</p>\n";
+ echo "</div>\n";
+ break;
}
else if($poverty==1) /* one person has poverty */
{
/* update game status */
cancel_game('trump',$gameid);
- echo "<p style=\"background-color:red\";>Game ".DB_format_gameid($gameid)." has been canceled.<br /><br /></p>";
- return;
+ echo "<p class=\"message\";>Game ".DB_format_gameid($gameid)." has been canceled.<br /><br /></p>";
+ break;
}
else
{
$play = DB_get_cards_by_trick($trickid);
$winner = get_winner($play,$gametype); /* returns the position */
- /* check if someone caught a fox */
+ /*
+ * check if someone caught a fox
+ *******************************/
+
/* first check if we should account for solos at all,
* since it doesn't make sense in some games
*/
}
}
- /* check for karlchen (jack of clubs in the last trick)*/
+ /*
+ * check for karlchen (jack of clubs in the last trick)
+ ******************************************************/
+
/* same as for foxes, karlchen doesn't always make sense
* check what kind of game it is and set karlchen accordingly */
$ok = 1; /* default: karlchen should be accounted for */
DB_query("INSERT INTO Score".
" VALUES( NULL,NULL,$gameid,'$party1',$uid1,NULL,'karlchen')");
}
- /* check for doppelopf (>40 points)*/
+ /*
+ * check for doppelopf (>40 points)
+ ***********************************/
+
$points = 0;
foreach($play as $played)
{
" VALUES( NULL,NULL,$gameid,'$party1',$uid1,NULL,'doko')");
}
+ /*
+ * set winner (for this trick)
+ */
+
if($winner>0)
DB_query("UPDATE Trick SET winner='$winner' WHERE id='$trickid'");
else
* also check if we have both schweinchen, in that case only display on of them as playable
*/
if( ($followsuit && !same_type($card,$firstcard)) ||
- ( (int)($card)==19 && !$GAME['schweinchen-first'] &&
- ($RULES['schweinchen']=='second'||
- ( $RULES['schweinchen']=='secondaftercall' &&
- (DB_get_call_by_hash($GAME['schweinchen-who']) || DB_get_partner_call_by_hash($GAME['schweinchen-who']) )))
- && $GAME['schweinchen-who']==$me )
+ ( (int)($card)==19 &&
+ !$GAME['schweinchen-first'] &&
+ ( $RULES['schweinchen']=='second' ||
+ ( $RULES['schweinchen']=='secondaftercall' &&
+ (DB_get_call_by_hash($GAME['schweinchen-who']) ||
+ DB_get_partner_call_by_hash($GAME['schweinchen-who']) )
+ )
+ ) &&
+ $GAME['schweinchen-who']==$me &&
+ in_array($gametype,array('normal','wedding','trump','silent'))
+ )
)
display_card($card,$PREF['cardset']);
else