X-Git-Url: https://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;f=web%2Fbriskin5%2Findex_wr.php;h=37fd4d453f081b607d8c91f5368315f6e7d2a770;hb=f9c487a0bdd7dfb71d73b248b2e7080c2f4451a2;hp=ef9dfdaa57b3334225e802df2f8d111dce5c839b;hpb=059f6fcca909267802697e22ac7c8b701b9ed14e;p=brisk.git diff --git a/web/briskin5/index_wr.php b/web/briskin5/index_wr.php index ef9dfda..37fd4d4 100644 --- a/web/briskin5/index_wr.php +++ b/web/briskin5/index_wr.php @@ -26,29 +26,17 @@ $G_base = "../"; require_once("../Obj/brisk.phh"); -// require_once("../Obj/proxyscan.phh"); require_once("Obj/briskin5.phh"); -// Use of proxies isn't allowed. -// if (is_proxy()) { -// sleep(5); -// exit; -//} - /* * MAIN */ function bin5_index_wr_main(&$bin5, $remote_addr_full, $get, $post, $cookie) { - GLOBAL $G_base, $G_dbasetype, $G_black_list; + GLOBAL $G_base, $G_dbasetype, $G_ban_list, $G_black_list; $remote_addr = addrtoipv4($remote_addr_full); - if (array_search($remote_addr, $G_black_list) !== FALSE) { - // TODO: waiting async 5 sec before close - return (FALSE); - } - $curtime = time(); if ($bin5 == NULL) { return FALSE; @@ -62,22 +50,19 @@ function bin5_index_wr_main(&$bin5, $remote_addr_full, $get, $post, $cookie) log_wr('COMM: '.$mesg); - if (($CO_bin5_pref_ring_endauct = gpcs_var('CO_bin5_pref_ring_endauct', $get, $post, $cookie)) === FALSE) $CO_bin5_pref_ring_endauct = ""; - - log_wr(0, 'bin::index_wr.php: COMM: '.xcapemesg($mesg)); - if (($user = &$bin5->get_user($sess, &$idx)) == FALSE) { echo "Get User Error"; log_wr("Get User Error"); return FALSE; } $bin5->brisk->sess_cur_set($user->sess); - if (array_search($user->ip, $G_black_list) !== FALSE) { + if ( ( ! $user->is_auth() ) && + $bin5->brisk->ban_check($user->ip)) { // TODO: waiting async 5 sec before close return (FALSE); } @@ -121,7 +106,7 @@ function bin5_index_wr_main(&$bin5, $remote_addr_full, $get, $post, $cookie) $user->step_inc(); } else if ($argz[0] == 'chatt') { - $bin5->chatt_send(&$user,$mesg); + $bin5->chatt_send(&$user, $mesg); } else if ($argz[0] == 'preferences_update') { log_wr("PER DI PREFERENCES_UPDATE"); @@ -154,13 +139,13 @@ function bin5_index_wr_main(&$bin5, $remote_addr_full, $get, $post, $cookie) } else { require_once("../Obj/hardban.phh"); - Hardbans::add(($user->flags & USER_FLAG_AUTH ? $user->name : FALSE), + Hardbans::add(($user->is_auth() ? $user->name : FALSE), $user->ip, $user->sess, $user->laccwr + BAN_TIME); } // $user->bantime = $user->laccwr + BAN_TIME; if ($logout_cont == TRUE) { - $bin5->table_wakeup(&$user); + $bin5->table_wakeup($user); } } else if ($argz[0] == 'exitlock') { @@ -183,33 +168,7 @@ function bin5_index_wr_main(&$bin5, $remote_addr_full, $get, $post, $cookie) } else if ($user->subst == 'asta') { if ($argz[0] == 'lascio') { - // && $user->handpt <= 2) { - /* $index_cur = $table->gstart % BIN5_PLAYERS_N; */ - - /* log_wr(sprintf("GIOCO FINITO !!!")); */ - - /* $table->mult += 1; */ - /* $table->old_reason = sprintf("Ha lasciato %s perché aveva al massimo 2 punti.", xcape($user->name)); */ - - /* // Non si cambia mazzo se si abbandona la partita */ - /* $table->game_next(0); */ - - /* if ($user->table_orig < TABLES_AUTH_N) { */ - /* require_once("../Obj/dbase_".$G_dbasetype.".phh"); */ - - /* if (($bdb = BriskDB::create()) != FALSE) { */ - /* $bdb->bin5_points_save($curtime, $table, $user->table_orig, $ucodes, $pt_cur); */ - /* unset($bdb); */ - /* } */ - /* else { */ - /* log_points($remote_addr, $curtime, $user, "STAT:BRISKIN5:FINISH_GAME", "DATABASE CONNECTION FAILED"); */ - /* } */ - /* log_points($curtime, $user, "STAT:BRISKIN5:FINISH_GAME", $plist); */ - /* } */ - - /* $table->game_init(&$bin5->user); */ - - if ($table->rules_engine(&$bin5, $curtime, BIN5_RULES_ABANDON, $user)) { + if ($table->rules->engine(&$bin5, $curtime, BIN5_RULES_ABANDON, $user)) { for ($i = 0 ; $i < BIN5_PLAYERS_N ; $i++) { $user_cur = &$bin5->user[$table->player[$i]]; @@ -313,7 +272,7 @@ function bin5_index_wr_main(&$bin5, $remote_addr_full, $get, $post, $cookie) else if ($table->asta_pla_n == 0) { log_wr("PASSANO TUTTI!"); - if ($table->rules_engine(&$bin5, $curtime, BIN5_RULES_ALLPASS, $user)) { + if ($table->rules->engine(&$bin5, $curtime, BIN5_RULES_ALLPASS, $user)) { for ($i = 0 ; $i < BIN5_PLAYERS_N ; $i++) { $user_cur = &$bin5->user[$table->player[$i]]; @@ -375,8 +334,18 @@ function bin5_index_wr_main(&$bin5, $remote_addr_full, $get, $post, $cookie) if ($table->asta_win > -1 && $user->table_pos == $table->asta_win) { $a_brisco = $argz[1]; - if ($a_brisco >= 0 && $a_brisco < 40) { + if ($a_brisco >= 0 && $a_brisco < (BIN5_CARD_HAND * BIN5_PLAYERS_N)) { $table->briscola = $a_brisco; + + $tourn_values = array(11, 10, 4,3,2, 1,1,1,1,1); + $table->tourn_pts = 0; + $seed = $a_brisco - ($a_brisco % 10); + for ($i = $seed ; $i < ($seed + min(10, BIN5_CARD_HAND * BIN5_PLAYERS_N)) ; $i++) { + if ($table->card[$i]->owner == $table->asta_win) { + $table->tourn_pts += $tourn_values[$i - $seed]; + } + } + $table->friend = $table->card[$a_brisco]->owner; log_wr("GSTART 2"); $table->gstart = ($table->mazzo+1) % BIN5_PLAYERS_N; @@ -501,7 +470,7 @@ function bin5_index_wr_main(&$bin5, $remote_addr_full, $get, $post, $cookie) if ($table->turn == (BIN5_PLAYERS_N * BIN5_CARD_HAND)) { /* game finished */ log_wr(sprintf("GIOCO FINITO !!!")); - if ($table->rules_engine(&$bin5, $curtime, BIN5_RULES_FINISH, $user)) { + if ($table->rules->engine(&$bin5, $curtime, BIN5_RULES_FINISH, $user)) { for ($i = 0 ; $i < BIN5_PLAYERS_N ; $i++) { $user_cur = &$bin5->user[$table->player[$i]]; $retar[$i] .= show_table(&$bin5,&$user_cur,$user_cur->step+1,TRUE, TRUE); @@ -527,8 +496,6 @@ function bin5_index_wr_main(&$bin5, $remote_addr_full, $get, $post, $cookie) log_wr("NOSENSE"); } } - log_wr("before save data"); - log_wr($user->step, 'bin::index_wr.php: after save_data()'); return TRUE; } ?>