X-Git-Url: https://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;f=web%2Fbriskin5%2FObj%2Frules_old_rules.phh;h=957b8be73421fe785a5cb00b0debe2e42b03b0c9;hb=827cf9b1db2abe2e726ac97063f90445244cf99f;hp=a44cf3f07d35d7c61ae2cb7e3aa274fb31fed3cd;hpb=a222ac87c9aa8297cc7dd4ede7c9b92089d52238;p=brisk.git diff --git a/web/briskin5/Obj/rules_old_rules.phh b/web/briskin5/Obj/rules_old_rules.phh index a44cf3f..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 = "
"; @@ -270,11 +328,11 @@ class Rules_old_rules extends Rules { return (""); } else if ($act == BIN5_RULES_ALLPASS) { - return (sprintf($mlang_bin5_bin5['info_alpa'][$G_lang], + return (sprintf($mlang_bin5_rules['info_alpa'][$G_lang], $tg_br, $tg_hr, $tg_bo, $tg_bc)); } else if ($act == BIN5_RULES_ABANDON) { - return (sprintf($mlang_bin5_bin5['info_aban'][$G_lang], + return (sprintf($mlang_bin5_rules['info_aban'][$G_lang], $tg_br, $tg_hr, $tg_bo, $tg_bc, $win_name)); } @@ -286,59 +344,59 @@ class Rules_old_rules extends Rules { if ($win != $fri) { // not alone case /* MLANG: "
Nell'ultima mano ha chiamato %s, il socio era %s,
", "hanno fatto cappotto EBBRAVI!.
", "dovevano fare %s punti e ne hanno fatti %d: hanno %s.
", "
Nell'ultima mano %s si è chiamato in mano,
", "ha fatto cappotto EBBRAVO!.
", "doveva fare %s punti e ne ha fatti %d: ha %s.
", ($table->old_asta_pnt > 61 ? "almeno ".$table->old_asta_pnt : 'più di 60'), $table->old_pnt, ($wol == 1 ? "vinto" : ($wol == 0 ? "pareggiato" : "perso" */ - $noty .= sprintf($mlang_bin5_bin5['info_part'][$G_lang], + $noty .= sprintf($mlang_bin5_rules['info_part'][$G_lang], $tg_br, $tg_hr, $tg_bo, $tg_bc, $win_name, $fri_name, $old_tourn_pts); if ($old_pnt == 120) { - $noty .= sprintf($mlang_bin5_bin5['info_capp'][$G_lang], + $noty .= sprintf($mlang_bin5_rules['info_capp'][$G_lang], $tg_br, $tg_hr, $tg_bo, $tg_bc ); } else { if ($old_asta_pnt > 61) { - $noty .= sprintf($mlang_bin5_bin5['info_alea'][$G_lang], + $noty .= sprintf($mlang_bin5_rules['info_alea'][$G_lang], $tg_br, $tg_hr, $tg_bo, $tg_bc, $old_asta_pnt, $old_pnt, - ($wol == 1 ? $mlang_bin5_bin5['info_win'][$G_lang] : - ($wol == 0 ? $mlang_bin5_bin5['info_peer'][$G_lang] : - $mlang_bin5_bin5['info_lost'][$G_lang]))); + ($wol == 1 ? $mlang_bin5_rules['info_win'][$G_lang] : + ($wol == 0 ? $mlang_bin5_rules['info_peer'][$G_lang] : + $mlang_bin5_rules['info_lost'][$G_lang]))); } else { - $noty .= sprintf($mlang_bin5_bin5['info_more'][$G_lang], + $noty .= sprintf($mlang_bin5_rules['info_more'][$G_lang], $tg_br, $tg_hr, $tg_bo, $tg_bc, $old_pnt, - ($wol == 1 ? $mlang_bin5_bin5['info_win'][$G_lang] : - ($wol == 0 ? $mlang_bin5_bin5['info_peer'][$G_lang] : - $mlang_bin5_bin5['info_lost'][$G_lang]))); + ($wol == 1 ? $mlang_bin5_rules['info_win'][$G_lang] : + ($wol == 0 ? $mlang_bin5_rules['info_peer'][$G_lang] : + $mlang_bin5_rules['info_lost'][$G_lang]))); } // else of if ($old_asta_pnt > 61) { } // else of if ($old_pnt == 120) { } // if ($win != $fri) { // not alone case else { - $noty .= sprintf($mlang_bin5_bin5['info_alon'][$G_lang], + $noty .= sprintf($mlang_bin5_rules['info_alon'][$G_lang], $tg_br, $tg_hr, $tg_bo, $tg_bc, $win_name, $old_tourn_pts); if ($old_pnt == 120) { - $noty .= sprintf($mlang_bin5_bin5['info_acap'][$G_lang], + $noty .= sprintf($mlang_bin5_rules['info_acap'][$G_lang], $tg_br, $tg_hr, $tg_bo, $tg_bc); } else { if ($old_asta_pnt > 61) { - $noty .= sprintf($mlang_bin5_bin5['info_aleaa'][$G_lang], + $noty .= sprintf($mlang_bin5_rules['info_aleaa'][$G_lang], $tg_br, $tg_hr, $tg_bo, $tg_bc, $old_asta_pnt, $old_pnt, - ($wol == 1 ? $mlang_bin5_bin5['info_win'][$G_lang] : - ($wol == 0 ? $mlang_bin5_bin5['info_peer'][$G_lang] : - $mlang_bin5_bin5['info_lost'][$G_lang]))); + ($wol == 1 ? $mlang_bin5_rules['info_win'][$G_lang] : + ($wol == 0 ? $mlang_bin5_rules['info_peer'][$G_lang] : + $mlang_bin5_rules['info_lost'][$G_lang]))); } else { - $noty .= sprintf($mlang_bin5_bin5['info_morea'][$G_lang], + $noty .= sprintf($mlang_bin5_rules['info_morea'][$G_lang], $tg_br, $tg_hr, $tg_bo, $tg_bc, $old_pnt, - ($wol == 1 ? $mlang_bin5_bin5['info_win'][$G_lang] : - ($wol == 0 ? $mlang_bin5_bin5['info_peer'][$G_lang] : - $mlang_bin5_bin5['info_lost'][$G_lang]))); + ($wol == 1 ? $mlang_bin5_rules['info_win'][$G_lang] : + ($wol == 0 ? $mlang_bin5_rules['info_peer'][$G_lang] : + $mlang_bin5_rules['info_lost'][$G_lang]))); } } } @@ -346,7 +404,7 @@ class Rules_old_rules extends Rules { $old_multer = static::s_multer($old_mult, $old_asta_pnt); if ($old_multer > 1) { - $noty .= sprintf($mlang_bin5_bin5['info_omul'][$G_lang], + $noty .= sprintf($mlang_bin5_rules['info_omul'][$G_lang], $tg_br, $tg_hr, $tg_bo, $tg_bc, multoval($old_multer)); }