X-Git-Url: https://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;f=web%2Fbriskin5%2FObj%2Frules_old_rules.phh;h=957b8be73421fe785a5cb00b0debe2e42b03b0c9;hb=827cf9b1db2abe2e726ac97063f90445244cf99f;hp=21fc2530c54c0b1c6feb0ca8a21410935f2b9c42;hpb=14ad625280a22b32bb9d6035c24b868a77f630aa;p=brisk.git diff --git a/web/briskin5/Obj/rules_old_rules.phh b/web/briskin5/Obj/rules_old_rules.phh index 21fc253..957b8be 100644 --- a/web/briskin5/Obj/rules_old_rules.phh +++ b/web/briskin5/Obj/rules_old_rules.phh @@ -29,6 +29,7 @@ class Rules_old_rules extends Rules { function __construct($table) { parent::__construct($table); + $this->id = 1; } static function asta2mult($asta_pnt) @@ -85,14 +86,71 @@ class Rules_old_rules extends Rules { } } - function engine(&$bri, $curtime, $action, $user) + 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."); + $this->table->asta_pla[$index_cur] = FALSE; + $user->asta_card = -1; + $this->table->asta_pla_n--; + + return TRUE; + } + else if ($a_card <= 9) { + $ret_s = ""; + + do { + if ($a_card >= 0 && $a_card < 9 && $a_card > $this->table->asta_card) + ; + else if ($a_card == 9 && $a_pnt > ($this->table->asta_pnt >= 61 ? $this->table->asta_pnt : 60) + && $a_pnt <= 120) + ; + else + break; + + $user->asta_card = $a_card; + $this->table->asta_card = $a_card; + if ($a_card == 9) { + $user->asta_pnt = $a_pnt; + $this->table->asta_pnt = $a_pnt; + } + + return TRUE; + } while (0); + } + + return FALSE; + } + + 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; $table = $this->table; $pnts_sav = array(); - if ($action == BIN5_RULES_ALLPASS) { // return TRUE if all correct + if ($action == BIN5_RULES_ASTA) { + 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)); + } + else if ($action == BIN5_RULES_ALLPASS) { // return TRUE if all correct $table->old_act = $action; $table->old_asta_win = -1; $table->old_pnt = 0; @@ -249,7 +307,7 @@ class Rules_old_rules extends Rules { static function game_description($act, $form, $old_mult, $win = -1, $win_name = "?1?", $fri = -1, $fri_name = "?2?", $old_pnt = -1, $old_asta_pnt = -1, $old_tourn_pts = -1) { - GLOBAL $G_lang, $mlang_bin5_bin5; + GLOBAL $G_lang, $mlang_bin5_rules; if ($form == 'html') { $tg_br = "
";