本文整理汇总了PHP中CR3DCQuery::GetGameInfoByRef方法的典型用法代码示例。如果您正苦于以下问题:PHP CR3DCQuery::GetGameInfoByRef方法的具体用法?PHP CR3DCQuery::GetGameInfoByRef怎么用?PHP CR3DCQuery::GetGameInfoByRef使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CR3DCQuery
的用法示例。
在下文中一共展示了CR3DCQuery::GetGameInfoByRef方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: mobile_movehmm
function mobile_movehmm($config)
{
if ($_GET['gameid'] != "" && $_GET['from'] != "" && $_GET['to'] != "") {
//Instantiate theCR3DCQuery Class
$oR3DCQuery = new CR3DCQuery($config);
$xsid = $_GET['sid'];
$session = base64_decode($xsid);
list($uniq, $player_id) = preg_split("/\\|/", $session);
$movefrom = $_GET['from'];
$moveto = $_GET['to'];
$bmove_error = false;
//Create Move String
$movestr = $movefrom . "," . $moveto;
$movestr2 = $movefrom . "-" . $moveto;
// get the fen for the game
$fen = $oR3DCQuery->GetHackedFEN($xsid, $_GET['gameid']);
//$fen3 = $oR3DCQuery->GetHackedFEN($xsid, $_GET['gameid']);
$bturn = $oR3DCQuery->IsPlayersTurn($config, $player_id, $_GET['gameid']);
echo "FEN: {$fen}<br/>";
ChessHelper::load_chess_game($_GET['gameid']);
$turn = $fen = ChessHelper::$CB->GetFENForCurrentPosition();
echo "FEN: {$fen}<br/>";
if ($bturn) {
//check to see if the move is valid
if (is_Move_legal($fen, $movestr2)) {
$oR3DCQuery->CurrentGameMovePiece($config, $_GET['gameid'], $xsid, $player_id, $movestr);
$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);
//checkmate
if (get_GameState() == 1) {
//if($w_player_id == $player_id){
if ($next_move == 'w') {
///////////////////////////////////////////////////////////////////////
//ELO Point Calculation
if ($oR3DCQuery->ELOIsActive() && $oR3DCQuery->IsGameRated($_GET['gameid'])) {
$bcurpoints = $oR3DCQuery->ELOGetRating($b_player_id);
$wcurpoints = $oR3DCQuery->ELOGetRating($w_player_id);
//Calculate black player
$bnewpoints = $oR3DCQuery->ELOCalculation($bcurpoints, $wcurpoints, 1, 1, $oR3DCQuery->GetPlayerGameCount($b_player_id));
//Calculate white player
$wnewpoints = $oR3DCQuery->ELOCalculation($wcurpoints, $bcurpoints, 0, 1, $oR3DCQuery->GetPlayerGameCount($w_player_id));
//update points
$oR3DCQuery->ELOUpdateRating($b_player_id, $bnewpoints);
$oR3DCQuery->ELOUpdateRating($w_player_id, $wnewpoints);
}
///////////////////////////////////////////////////////////////////////
$oR3DCQuery->UpdateGameStatus($config, $_GET['gameid'], "C", "B");
} else {
///////////////////////////////////////////////////////////////////////
//ELO Point Calculation
if ($oR3DCQuery->ELOIsActive() && $oR3DCQuery->IsGameRated($_GET['gameid'])) {
$bcurpoints = $oR3DCQuery->ELOGetRating($b_player_id);
$wcurpoints = $oR3DCQuery->ELOGetRating($w_player_id);
//Calculate black player
$bnewpoints = $oR3DCQuery->ELOCalculation($bcurpoints, $wcurpoints, 0, 1, $oR3DCQuery->GetPlayerGameCount($b_player_id));
//Calculate white player
$wnewpoints = $oR3DCQuery->ELOCalculation($wcurpoints, $bcurpoints, 1, 1, $oR3DCQuery->GetPlayerGameCount($w_player_id));
//update points
$oR3DCQuery->ELOUpdateRating($b_player_id, $bnewpoints);
$oR3DCQuery->ELOUpdateRating($w_player_id, $wnewpoints);
}
///////////////////////////////////////////////////////////////////////
$oR3DCQuery->UpdateGameStatus($config, $_GET['gameid'], "C", "W");
}
$oR3DCQuery->CachePlayerPointsByPlayerID($b_player_id);
$oR3DCQuery->CachePlayerPointsByPlayerID($w_player_id);
} else {
if (get_GameState() == 2) {
///////////////////////////////////////////////////////////////////////
//ELO Point Calculation
if ($oR3DCQuery->ELOIsActive() && $oR3DCQuery->IsGameRated($_GET['gameid'])) {
$bcurpoints = $oR3DCQuery->ELOGetRating($b_player_id);
$wcurpoints = $oR3DCQuery->ELOGetRating($w_player_id);
//Calculate black player
$bnewpoints = $oR3DCQuery->ELOCalculation($bcurpoints, $wcurpoints, 0.5, 1, $oR3DCQuery->GetPlayerGameCount($b_player_id));
//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, $_GET['gameid'], "C", "D");
$bmove_error = false;
$oR3DCQuery->CachePlayerPointsByPlayerID($b_player_id);
$oR3DCQuery->CachePlayerPointsByPlayerID($w_player_id);
}
}
} else {
$bmove_error = true;
}
} else {
$bmove_error = true;
}
//.........这里部分代码省略.........
示例2: __l
//set the turn
if ($fen[1] == 'w') {
$turn = 'white';
} else {
$turn = 'black';
}
//explode the board info into rows
$board = explode("/", $fen[0]);
$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);
if ($completion_status == 'B' || $completion_status == 'W' || $completion_status == 'D') {
$turn = "''";
}
LanguageFile::load_language_file($Root_Path . 'includes/languages/' . preg_replace('/\\.txt/', '.php', $_SESSION['language']));
?>
<html>
<head>
<title><?php
echo __l('Game') . ': ' . substr($gid, 0, 4);
?>
</title>
<META NAME="keywords" CONTENT="">
<META NAME="DESCRIPTION" CONTENT="">