//update points $oR3DCQuery->ELOUpdateRating($b_player_id, $bnewpoints); $oR3DCQuery->ELOUpdateRating($w_player_id, $wnewpoints); } /////////////////////////////////////////////////////////////////////// $oR3DCQuery->UpdateGameStatus($config, $_GET['gameid'], "C", "D"); $oR3DCQuery->CachePlayerPointsByPlayerID($b_player_id); $oR3DCQuery->CachePlayerPointsByPlayerID($w_player_id); } unset($oR3DCQuery); ///////////////////////////////////////////////////////////////////////////////// //3 repetition rule ///////////////////////////////////////////////////////////////////////////////// //Instantiate theCR3DCQuery Class $oR3DCQuery = new CR3DCQuery($config); $arep = $oR3DCQuery->CheckRepetitionRule($config, $_GET['gameid']); if ($arep[0] == 3 && $_GET['gameid'] != "" || $arep[1] == 3 && $_GET['gameid'] != "") { $initiator = ""; $w_player_id = ""; $b_player_id = ""; $status = ""; $completion_status = ""; $start_time = ""; $next_move = ""; $oR3DCQuery->GetGameInfoByRef($config, $_GET['gameid'], $initiator, $w_player_id, $b_player_id, $status, $completion_status, $start_time, $next_move); /////////////////////////////////////////////////////////////////////// //ELO Point Calculation if ($oR3DCQuery->ELOIsActive() && $oR3DCQuery->IsGameRated($gid)) { $bcurpoints = $oR3DCQuery->ELOGetRating($b_player_id); $wcurpoints = $oR3DCQuery->ELOGetRating($w_player_id); //Calculate black player
//Calculate white player $wnewpoints = $oR3DCQuery->ELOCalculation($wcurpoints, $bcurpoints, 0.5, 1, $oR3DCQuery->GetPlayerGameCount($w_player_id)); //update points $oR3DCQuery->ELOUpdateRating($b_player_id, $bnewpoints); $oR3DCQuery->ELOUpdateRating($w_player_id, $wnewpoints); } /////////////////////////////////////////////////////////////////////// $oR3DCQuery->UpdateGameStatus($config, $gid, "C", "D"); $oR3DCQuery->CachePlayerPointsByPlayerID($b_player_id); $oR3DCQuery->CachePlayerPointsByPlayerID($w_player_id); } ///////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////// //3 repetition rule ///////////////////////////////////////////////////////////////////////////////// $arep = $oR3DCQuery->CheckRepetitionRule($config, $gid); if ($arep[0] == 3 && $gid != "" || $arep[1] == 3 && $gid != "") { $initiator = ""; $w_player_id = ""; $b_player_id = ""; $status = ""; $completion_status = ""; $start_time = ""; $next_move = ""; $oR3DCQuery->GetGameInfoByRef($config, $gid, $initiator, $w_player_id, $b_player_id, $status, $completion_status, $start_time, $next_move); /////////////////////////////////////////////////////////////////////// //ELO Point Calculation if ($oR3DCQuery->ELOIsActive() && $oR3DCQuery->IsGameRated($gid)) { $bcurpoints = $oR3DCQuery->ELOGetRating($b_player_id); $wcurpoints = $oR3DCQuery->ELOGetRating($w_player_id); //Calculate black player