more consistent matches descriptions
[brisk.git] / web / briskin5 / Obj / rules_old_rules.phh
index 417cdf3..ffa1a1b 100644 (file)
@@ -88,6 +88,8 @@ class Rules_old_rules extends Rules {
 
     function rules_asta(&$bri, $curtime, $action, $user, &$ret_s, $a_card, $a_pnt)
     {
+        $index_cur = $this->table->gstart % BIN5_PLAYERS_N;
+
         // Abbandono dell'asta
         if ($a_card <= -1) {
             log_wr("Abbandona l'asta.");
@@ -123,6 +125,30 @@ class Rules_old_rules extends Rules {
         return FALSE;
     }
 
+    function rules_checkchoose(&$bri, $curtime, $action, $user, &$ret_s, $a_brisco)
+    {
+        if ( !($a_brisco >= 0 && $a_brisco < 40)) // (BIN5_CARD_HAND * BIN5_PLAYERS_N)) )
+            return FALSE;
+
+        if ( !($this->table->asta_win > -1 &&
+               $user->table_pos == $this->table->asta_win) )
+            return FALSE;
+
+        return TRUE;
+    }
+
+    function rules_nextauct(&$bri, $curtime, $action, $user, $maxcard)
+    {
+        if (($this->table->asta_pla_n > ($maxcard > -1 ? 1 : 0)) &&
+            !($this->table->asta_card == 9 && $this->table->asta_pnt == 120)) {
+            return TRUE;
+        }
+        else {
+            return FALSE;
+        }
+
+    }
+
     function engine(&$bri, $curtime, $action, $user, &$opt1 = NULL, &$opt2 = NULL, &$opt3 = NULL)
     {
         GLOBAL $G_all_points, $G_dbasetype;
@@ -131,9 +157,12 @@ class Rules_old_rules extends Rules {
         $pnts_sav = array();
 
         if ($action == BIN5_RULES_ASTA) {
-            return ($this->rules_asta($bri, $curtime, $action, $user, &$opt1, $opt2, $opt3));
+            return ($this->rules_asta($bri, $curtime, $action, $user, $opt1, $opt2, $opt3));
+        }
+        else if ($action == BIN5_RULES_NEXTAUCT) {
+            return ($this->rules_nextauct($bri, $curtime, $action, $user, $opt1));
         }
-        if ($action == BIN5_RULES_ALLPASS) { // return TRUE if all correct
+        else if ($action == BIN5_RULES_ALLPASS) { // return TRUE if all correct
             $table->old_act = $action;
             $table->old_asta_win = -1;
             $table->old_pnt = 0;
@@ -165,6 +194,9 @@ class Rules_old_rules extends Rules {
             // $table->game_next(0);
             $table->game_init(&$bri->user);
         }
+        else if ($action == BIN5_RULES_CHECKCHOOSE) {
+            return ($this->rules_checkchoose($bri, $curtime, $action, $user, $opt1, $opt2));
+        }
         else if ($action == BIN5_RULES_FINISH) { // return TRUE if all correct
             $table->old_act = $action;
             do {
@@ -330,8 +362,7 @@ class Rules_old_rules extends Rules {
                 $noty .= sprintf($mlang_bin5_rules['info_part'][$G_lang],
                                  $tg_br, $tg_hr, $tg_bo, $tg_bc,
                                  $win_name,
-                                 $fri_name,
-                                 $old_tourn_pts);
+                                 $fri_name);
                 if ($old_pnt == 120) {
                     $noty .= sprintf($mlang_bin5_rules['info_capp'][$G_lang],
                                      $tg_br, $tg_hr, $tg_bo, $tg_bc );
@@ -358,8 +389,7 @@ class Rules_old_rules extends Rules {
             else {
                 $noty .= sprintf($mlang_bin5_rules['info_alon'][$G_lang],
                                  $tg_br, $tg_hr, $tg_bo, $tg_bc,
-                                 $win_name,
-                                 $old_tourn_pts);
+                                 $win_name);
                 if ($old_pnt == 120) {
                     $noty .= sprintf($mlang_bin5_rules['info_acap'][$G_lang],
                                      $tg_br, $tg_hr, $tg_bo, $tg_bc);