From 2e1249944123a9df07d60e8066f74238f2a1ba9a Mon Sep 17 00:00:00 2001 From: arun Date: Thu, 30 Nov 2006 08:44:14 +0000 Subject: new design once again, lots of bugfixes and cleaning up --- index.php | 218 +++++++++++++++++++++++++++++++++++++++----------------------- 1 file changed, 138 insertions(+), 80 deletions(-) (limited to 'index.php') diff --git a/index.php b/index.php index 413b810..22c23a8 100644 --- a/index.php +++ b/index.php @@ -34,7 +34,6 @@

Welcome to E-Doko

-

(please hit shift-reload:))

\n"; + +/* end header */ + /* helper function */ function mymail($To,$Subject,$message) @@ -66,6 +71,71 @@ function mymail($To,$Subject,$message) return; } +function is_trump($c) { return (($c<27) ? 1:0);} +function is_club($c) { return (in_array($c,array('27','28','29','30','31','32','33','34')));} +function is_space($c) { return (in_array($c,array('35','36','37','38','39','40','41','42')));} +function is_heart($c) { return (in_array($c,array('43','44','45','46','47','48')));} + +function compare_cards($a,$b) +{ + /* if a is higher than b return 1, else 0, a being the card first played */ + + /* first map all cards to the odd number */ + if( $a/2 - (int)($a/2) != 0.5) + $a--; + if( $b/2 - (int)($b/2) != 0.5) + $b--; + + if(is_trump($a) && $a<=$b) + return 1; + else if(is_trump($a) && $a>$b) + return 0; + else + { /*$a is not a trump */ + if(is_trump($b)) + return 0; + else + { + /* both clubs? */ + if( is_club($a) && is_club($b)) + if($a<=$b) + return 1; + else + return 0; + /* both spade? */ + if( is_spade($a) && is_spade($b)) + if($a<=$b) + return 1; + else + return 0; + /* both heart? */ + if( is_heart($a) && is_heart($b)) + if($a<=$b) + return 1; + else + return 0; + return 1; + } + } + +} + +function get_winner($p) +{ + $c1 = $p[0]; + $c2 = $p[1]; + $c3 = $p[2]; + $c4 = $p[3]; + + if( compare_cards($c1,$c2) && compare_cards($c1,$c3) && compare_cards($c1,$c4) ) + return 0; + if( compare_cards($c2,$c3) && compare_cards($c2,$c4) ) + return 1; + if( compare_cards($c3,$c4) ) + return 2; + return 3; +} + function parse_status() { global $game,$history,$player,$hash,$lines; @@ -352,10 +422,15 @@ function display_card($card) function display_link_card($card,$me) { - if( $card/2 - (int)($card/2) == 0.5) + /* if( $card/2 - (int)($card/2) == 0.5) echo "\"".card_to_name($card)."\"\n"; else echo "\"".card_to_name($card-1)."\"\n"; + */ + if( $card/2 - (int)($card/2) == 0.5) + echo "\"\"\n"; + else + echo "\"\"\n"; return; } @@ -424,11 +499,6 @@ function save_status() /***************** M A I N **************************/ -echo "

If you find bugs, please list them in the wiki.

\n"; -echo "
\n"; - -/* end header */ - $history=array(); @@ -855,12 +925,6 @@ else { /* $me is set */ $me = $_REQUEST["me"]; - /* output if we are playing a solo or a wedding */ - if($game["solo-who"]>=0) - echo $player[$hash[$game["solo-who"]]]["name"]." is playing a ".$game["solo-what"]." solo!
\n"; - else if($game["wedding"]>=0) - echo $player[$hash[$game["wedding"]]]["name"]." is playing a wedding!
\n"; - /* show history */ /* old tricks as list */ echo "