X-Git-Url: https://git.nubati.net/cgi-bin/gitweb.cgi?p=e-DoKo.git;a=blobdiff_plain;f=include%2Fgame.php;h=30abe7d53687d8600f0c0ef51a6cc57c988e5f66;hp=f9daf6523dc916dd7517854925c98d5fcdbf9fec;hb=7a11a1918c28f15403ad3f77254988fe9f25d82e;hpb=268859f56cb8f19b65eca8550dd6a71b6d475971 diff --git a/include/game.php b/include/game.php index f9daf65..30abe7d 100644 --- a/include/game.php +++ b/include/game.php @@ -67,7 +67,7 @@ if( $gamestatus == 'pre' ) 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; } @@ -210,16 +210,19 @@ if($session) echo " \n \n"; /* show score */ + + echo "
"; + $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 "
"; if($finalscore) { echo "Score: \n"; - /* output the final score on the front page */ foreach($finalscore as $user=>$value) { $name = DB_get_name('userid',$user); @@ -232,10 +235,13 @@ if($session) echo " "; } + /* output all games for the score table */ echo format_score_table_html($score,$myid); echo "
\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; @@ -589,11 +595,10 @@ switch($mystatus) 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) @@ -605,9 +610,10 @@ switch($mystatus) /* 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 "

The game has been canceled because ".DB_get_name('userid',$nines). + " has five or more nines and nobody is playing solo.

\n"; + echo "
\n"; + break; } else if($poverty==1) /* one person has poverty */ { @@ -952,8 +958,8 @@ switch($mystatus) /* update game status */ cancel_game('trump',$gameid); - echo "

Game ".DB_format_gameid($gameid)." has been canceled.

"; - return; + echo "

Game ".DB_format_gameid($gameid)." has been canceled.

"; + break; } else { @@ -1295,6 +1301,7 @@ switch($mystatus) /* end of trick? */ if($seq==4) { + $winner = get_winner($play,$gametype); /* returns the position */ echo " \n \n"; /* end div trick, end li trick */ } } @@ -1909,11 +1916,17 @@ switch($mystatus) * 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