} if (!isset($Game_Scrn_Type)) { $Game_Scrn_Type = 1; } postHead(''); AuthUser("{$Pl_Value['USERNAME']}", "{$Pl_Value['PASSWORD']}"); if ($CFU_Time >= $TIMEAUTH + $TIME_OUT_TIME || $TIMEAUTH <= $CFU_Time - $TIME_OUT_TIME) { echo "連線逾時!<br>請重新登入!"; exit; } mt_srand((double) microtime() * 1000000); include 'includes/sfo.class.php'; include 'includes/obattle.ext.php'; $Pl = new oBattle(); $Pl->SetUser($Pl_Value['USERNAME']); $Pl->FetchPlayer(true, true); if ($CFU_Time - $Pl->Player['btltime'] < $Btl_Intv) { echo "距離上次攻擊或移動的時間太短了!<br>請在 " . ($Btl_Intv - ($CFU_Time - $Pl->Player['btltime'])) . " 秒後再進行攻擊!"; exit; } if ($Pl->Player['msuit']) { $Pl->ProcessAllWeapon(); $Pl_Repaired = RepairPlayer($Pl->Player, $Pl->Eq['D'], $Pl->Eq['E']); $Pl->Player['hp'] = $Pl_Repaired['hp']; $Pl->Player['en'] = $Pl_Repaired['en']; $Pl->Player['sp'] = $Pl_Repaired['sp']; $Pl->Player['status'] = $Pl_Repaired['status']; $t_now = $Pl->Player['time1'] = $Pl_Repaired['time1']; if ($Pl->Player['status']) { echo "修理中,無法出擊。"; postFooter();
// // Pre-phase // $AtkFortFlag = 0; $Op_Name = isset($Op_Name) ? $Op_Name : ''; $isAtkFortName = $Op_Name == '<AttackFort>'; if (!$Op_Name) { echo "請先挑選對手!"; exit; } elseif ($Op_Name == $Pl_Value['USERNAME']) { echo "不能攻擊自己!"; exit; } elseif (!$isAtkFortName) { $Op = new oBattle(); $Op->SetUser($Op_Name); $Op->FetchPlayer(true); } else { if ($AttackFort != 'True' || $Area["User"]["hp"] <= 0) { echo "不能攻擊要塞"; postFooter(); exit; } //Search for Defenders if (count($Defenders) > 0) { $d_sql_where = '('; $i = 0; foreach ($Defenders as $u) { $d_sql_where = $d_sql_where . ($i == 0 ? '' : ' OR') . " `ge`.`username` = '{$u}' "; $i++; } $d_sql_where .= " ) AND `ga`.`username` = `ge`.`username`";