/** recalculate artefacts' effects for a given cave */ function artefact_recalculateEffects($caveID) { global $db, $effectTypeList; // init result $result = array(); foreach ($effectTypeList as $effectID => $effect) { $result[$effectID] = 0; } // get artefacts $artefacts = artefact_getArtefactByCaveID($caveID); if (!sizeof($artefacts)) { return $result; } // iterate through the effects foreach ($effectTypeList as $effectID => $effect) { // iterate through the artefacts foreach ($artefacts as $artefact) { // consider only initiated artefacts if (ARTEFACT_INITIATED == $artefact['initiated']) { $result[$effectID] += $artefact[$effect->dbFieldName]; } } } return $result; }
$sql->bindValue('caveID', $row['caveID'], PDO::PARAM_INT); if (!$sql->execute()) { echo "FAILURE\n"; } else { echo "SUCCESS\n"; } echo "DELETE PLAYER {$playerID}: Delete hero event "; $sql = $db_game->prepare("DELETE FROM " . EVENT_HERO_TABLE . "\n WHERE caveID = :caveID"); $sql->bindValue('caveID', $row['caveID'], PDO::PARAM_INT); if (!$sql->execute()) { echo "FAILURE\n"; } else { echo "SUCCESS\n"; } echo "DELETE PLAYER {$playerID}: Delete pet artes"; $artefacts = artefact_getArtefactByCaveID($row['caveID']); if (!empty($artefacts)) { foreach ($artefacts as $artefact) { if ($artefact['pet'] == 1) { artefact_removeEffectsFromCave($artefact['artefactID']); artefact_removeArtefactFromCave($artefact['artefactID']); artefact_uninitiateArtefact($artefact['artefactID']); } } } } echo "DELETE PLAYER {$playerID}: Delete messages "; $sql1 = $db_game->prepare("UPDATE " . MESSAGE_TABLE . "\n SET recipientDeleted = 1\n WHERE recipientID = :playerID"); $sql1->bindValue('playerID', $playerID, PDO::PARAM_INT); $sql2 = $db_game->prepare("UPDATE " . MESSAGE_TABLE . "\n SET senderDeleted = 1\n WHERE senderID = :playerID"); $sql2->bindValue('playerID', $playerID, PDO::PARAM_INT);