X-Git-Url: https://git.nubati.net/cgi-bin/gitweb.cgi?p=e-DoKo.git;a=blobdiff_plain;f=include%2Foutput.php;h=94aaa19942d2b204a050f3e75799c2054b0f06eb;hp=33fb87b6e6d4213070fbf5c772da426bdc830050;hb=6206ef89ad9a9a1a541ecb67971815d11f12199b;hpb=e19f27d6e8d5dfa770037fec391ffc22ee7ca259 diff --git a/include/output.php b/include/output.php index 33fb87b..94aaa19 100644 --- a/include/output.php +++ b/include/output.php @@ -12,7 +12,7 @@ function output_ask_for_new_game($playerA,$playerB,$playerC,$playerD,$oldgameid) global $RULES; echo "
\n
\n"; - echo "Do you want to continue playing?(This will start a new game, with the next person as dealer.)\n"; + echo "Do you want to continue playing?(This will start a new game, with the $playerD as dealer.)\n"; echo " \n"; echo " \n"; echo " \n"; @@ -28,6 +28,10 @@ function output_ask_for_new_game($playerA,$playerB,$playerC,$playerD,$oldgameid) function output_form_for_new_game($names) { + $copy_names = $names; /* local copy, so that we can delete names from it + * after we selected them to make sure that each name + * only shows up once + */ ?>

Select players (Remember: you need to be one of the players)

@@ -35,73 +39,134 @@ function output_form_for_new_game($names)
table \n"; + /* pick 3 names at random and put the players name on position D*/ + if($i<3) + { + $randkey = array_rand($copy_names); + $rand = $copy_names[$randkey]; + /* delete this name from the list of possible names */ + unset($copy_names[$randkey]); + } + else + { + $rand = $_SESSION["name"]; + } + + echo "
\n"; $i++; - echo " \n"; foreach($names as $name) { if($name==$rand) { - echo " \n"; + echo " \n"; } else - echo " \n"; + echo " \n"; } - echo " \n
\n"; + echo " \n
\n"; } ?>

Rules

Some areas are grayed out which means that the rule is not implemented yet and therefore cannot be selected

-

Ten of hearts: -

-

-

Schweinchen (both foxes), only in normal games or silent solos: -

+

Call Re/Contra, etc.:

+ \n"; + + $i=0; + + if($caption!="") + $HTML .= " $caption \n"; + + foreach($data as $record) + { + if(!$i) + $HTML .= " \n \n"; + else + { + if($i==1) $HTML .= " \n"; + $HTML .= " "; + } + foreach($record as $point) + { + if($i) + $HTML .= " $point "; + else + $HTML .= " $point "; + } + + if(!$i) + $HTML .= " \n \n"; + else + { + $HTML .= " \n"; + } + $i++; + } + $HTML .= " \n\n"; + + return $HTML; +} + function display_card($card,$dir="english") { /* cards are only availabl for the odd values, e.g. 1.png, 3.png, ... * convert even cards to the matching odd value */ - if( $card/2 - (int)($card/2) == 0.5) + if( $card/2 - (int)($card/2) == 0.5 || $card == 0) echo "\"".DB_get_card_name($card)."\"\n"; else echo "\"".DB_get_card_name($card-1)."\"\n"; @@ -179,11 +244,18 @@ function output_check_for_sickness($me,$mycards) return; } -function output_form_calls($me) +function output_form_calls($me,$myparty) { if( can_call(120,$me) ) - echo " re/contra (120):". - "
"; + { + if($myparty=='re') + echo "re (120):"; + else if ($myparty=='contra') + echo "contra (120):"; + else + echo " re/contra (120):"; + echo "
"; + } if( can_call(90,$me) ) echo " 90:". "
"; @@ -228,35 +300,20 @@ function output_header() e-Doko - + + + +
-

Welcome to E-Doko (beta)

+

Welcome to E-Doko

\n\n"; echo "
\n"; - echo "

copyright 2006-2008 Arun Persaud, Lance Thornton
\n". + echo "

copyright 2006-2009 Arun Persaud, Lance Thornton(graphics), Jeff Zerger(database support)
\n". " Verwendung der [deutschen] Kartenbilder mit Genehmigung
der Spielkartenfabrik Altenburg GmbH,(c) ASS Altenburger
\n". " - ASS Altenburger Spielkarten - Spielkartenfabrik Altenburg GmbH
\n". " a Carta Mundi Company Email: info@spielkarten.com Internet: www.spielkarten.com

\n"; - echo "

See the latest changes \n". + echo "

See the latest changes \n". " via git
or download the source via
\n'git clone http://nubati.net/git/e-DoKo.git'
\n". " \n". " \"Green"; - echo $name; - echo " logout"; + echo "\n

\n"; + echo $name,"\n"; + echo " | mypage \n"; + echo " | settings\n"; + echo " | new game\n"; + echo " | statistics\n"; + echo " | wiki\n"; + echo " |    logout\n"; echo "
\n"; /* last logon time */ @@ -311,8 +373,14 @@ function output_status() $unixtime = strtotime($time); date_default_timezone_set($zone); - echo "
last login: ".date("r",$unixtime)."
\n"; - }; + echo "
last login: ".date("r",$unixtime)."
\n"; + } + else + { + echo "\n
\n"; + echo "login\n"; + echo "
\n"; + } return; } @@ -337,8 +405,6 @@ function output_select_timezone($name,$timezone="") return; } - - function output_password_recovery($email,$password) { ?> @@ -370,4 +436,160 @@ function output_password_recovery($email,$password) Personal notes:
\n"; + $notes = DB_get_notes_by_userid_and_gameid($userid,$gameid); + foreach($notes as $note) + echo "$note
\n"; + if($userstatus!='gameover') + echo "\n"; + echo "
\n"; + + return; +} + +function output_robotproof($i) +{ + switch($i) + { + case 0: + return "6*7="; + case 1: + return "5*7="; + case 2: + return "4*7="; + case 3: + return "3*7="; + case 4: + return "2*7="; + } +} + +function output_exchanged_cards() +{ + /* in a poverty game this function will output the exchanged cards + * players in the team will see the cards, the other team will see + * the backside of cards + */ + + /* need some information about the game */ + global $gameid,$mygametype, $PREF,$me,$mystatus; + + /* some variables to track where the people with poverty are sitting */ + $partnerpos1 = 0; + $povertypos1 = 0; + $partnerpos2 = 0; + $povertypos2 = 0; + + /* only need to do it in a poverty game, this might not be needed, but + * just to make sure everything is ok + */ + if($mygametype == 'poverty' || $mygametype=='dpoverty') + { + /* find out who has poverty */ + for($mypos=1;$mypos<5;$mypos++) + { + $usersick = DB_get_sickness_by_pos_and_gameid($mypos,$gameid); + if($usersick == 'poverty') + if($povertypos1) + $povertypos2 = $mypos; + else + $povertypos1 = $mypos; + } + /* get hash and exchanged cards for all involved */ + $povertyhash1 = DB_get_hash_from_game_and_pos($gameid,$povertypos1); + $partnerhash1 = DB_get_partner_hash_by_hash($povertyhash1); + + $povertycards1 = DB_get_exchanged_cards($povertyhash1); + $partnercards1 = DB_get_exchanged_cards($partnerhash1); + + $partnerpos1 = DB_get_pos_by_hash($partnerhash1); + if($povertypos2) + { + $povertyhash2 = DB_get_hash_from_game_and_pos($gameid,$povertypos2); + $partnerhash2 = DB_get_partner_hash_by_hash($povertyhash2); + + $povertycards2 = DB_get_exchanged_cards($povertyhash2); + $partnercards2 = DB_get_exchanged_cards($partnerhash2); + + $partnerpos2 = DB_get_pos_by_hash($partnerhash2); + } + } + + /* output the cards + * go through all positions, check that position has cards that need to be shown and + * show those cards + */ + $show = 1; + for($mypos=1;$mypos<5;$mypos++) + { + $usersick = DB_get_sickness_by_pos_and_gameid($mypos,$gameid); + if($usersick!=NULL || + $mypos==$povertypos1 || $mypos==$partnerpos1 || + $mypos==$povertypos2 || $mypos==$partnerpos2 ) + { + echo "
Vorbehalt
\n"; + if($show) + echo " $usersick
\n"; + if($mypos==$partnerpos1) + { + $trump_back=0; + foreach($partnercards1 as $card) + { + if(is_trump($card)) $trump_back=1; + echo ' '; + if($povertyhash1 == $me || $partnerhash1 == $me || $mystatus=='gameover') + display_card($card,$PREF['cardset']); + else + display_card(0,$PREF['cardset']); + } + if($trump_back) echo "Trump back"; + } + else if($mypos==$povertypos1) + { + foreach($povertycards1 as $card) + { + echo ' '; + if($povertyhash1 == $me || $partnerhash1 == $me || $mystatus=='gameover') + display_card($card,$PREF['cardset']); + else + display_card(0,$PREF['cardset']); + } + } + else if($mypos==$povertypos2) + { + foreach($povertycards2 as $card) + { + echo ' '; + if($povertyhash2 == $me || $partnerhash2 == $me || $mystatus=='gameover') + display_card($card,$PREF['cardset']); + else + display_card(0,$PREF['cardset']); + } + } + else if($mypos==$partnerpos2) + { + $trump_back=0; + foreach($partnercards2 as $card) + { + if(is_trump($card)) $trump_back=1; + echo ' '; + if($povertyhash2 == $me || $partnerhash2 == $me || $mystatus=='gameover') + display_card($card,$PREF['cardset']); + else + display_card(0,$PREF['cardset']); + } + if($trump_back) echo "Trump back"; + } + echo "
\n"; + + if($mygametype == $usersick) + $show = 0; + } + } +} + + ?> \ No newline at end of file