diff --git a/qodana.yml b/qodana.yml index 1621c979a9d..c8292718857 100644 --- a/qodana.yml +++ b/qodana.yml @@ -3,6 +3,8 @@ version: "1.0" profile: name: qodana.recommended +linter: "jetbrains/qodana-clang" + bootstrap: | set -e sudo apt-get update && sudo apt-get -y dist-upgrade diff --git a/src/creatures/players/player.cpp b/src/creatures/players/player.cpp index 5c46124e65f..8a443c58167 100644 --- a/src/creatures/players/player.cpp +++ b/src/creatures/players/player.cpp @@ -7853,7 +7853,7 @@ bool Player::canBuyStoreOffer(const Offer* offer) { case OfferTypes_t::ALLBLESSINGS: { for (auto bless : magic_enum::enum_values()) { - auto blessingAmount = getBlessingCount(bless); + auto blessingAmount = getBlessingCount(enumToValue(bless)); if (blessingAmount >= STORE_BLESSING_MAX_AMOUNT) { canBuy = false; break; @@ -7893,7 +7893,7 @@ bool Player::canBuyStoreOffer(const Offer* offer) { case OfferTypes_t::HUNTINGSLOT: { const auto &thirdSlot = getTaskHuntingSlotById(PreySlot_Three); - if (thirdSlot->state != PreyDataState_Locked) { + if (thirdSlot->state != PreyTaskDataState_Locked) { canBuy = false; } diff --git a/src/game/game.cpp b/src/game/game.cpp index dfbb9103231..6b99ea98917 100644 --- a/src/game/game.cpp +++ b/src/game/game.cpp @@ -10257,7 +10257,7 @@ bool Game::addInfluencedMonster(std::shared_ptr monster) { return false; } -bool Game::processHouseOffer(std::shared_ptr player, uint32_t itemId, uint16_t charges /* = 0*/) { +bool Game::processHouseOffer(const std::shared_ptr &player, uint32_t itemId, uint16_t charges /* = 0*/) { std::shared_ptr decoKit = Item::CreateItem(ITEM_DECORATION_KIT, 1); if (!decoKit) { return false; @@ -10307,7 +10307,7 @@ void Game::addPlayerUniqueLogin(std::shared_ptr player) { m_uniqueLoginPlayerNames[lowercase_name] = player; } -bool Game::processChargesOffer(std::shared_ptr player, uint32_t itemId, uint16_t charges /* = 0*/, bool movable /* = false*/) { +bool Game::processChargesOffer(const std::shared_ptr &player, uint32_t itemId, uint16_t charges /* = 0*/, bool movable /* = false*/) { std::shared_ptr newItem = Item::CreateItem(itemId, 1); if (!newItem) { return false; @@ -10346,7 +10346,7 @@ bool Game::processChargesOffer(std::shared_ptr player, uint32_t itemId, return true; } -bool Game::processStackableOffer(std::shared_ptr player, uint32_t itemId, uint16_t amount /* = 1*/, bool movable /* = false*/) { +bool Game::processStackableOffer(const std::shared_ptr &player, uint32_t itemId, uint16_t amount /* = 1*/, bool movable /* = false*/) { std::shared_ptr newItem = Item::CreateItem(itemId, amount); if (!newItem) { return false; @@ -10381,29 +10381,28 @@ bool Game::processStackableOffer(std::shared_ptr player, uint32_t itemId return true; } -bool Game::processNameChangeOffer(std::shared_ptr player, std::string &name) { - std::string newName = name; - trimString(newName); +bool Game::processNameChangeOffer(const std::shared_ptr &player, std::string name) { + trimString(name); - auto isValidName = validateName(newName); + auto isValidName = validateName(name); if (isValidName != VALID) { return false; } - capitalizeWords(newName); + capitalizeWords(name); - if (g_monsters().getMonsterType(newName, true)) { + if (g_monsters().getMonsterType(name, true)) { return false; - } else if (getNpcByName(newName)) { + } else if (getNpcByName(name)) { return false; } - DBResult_ptr result = g_database().storeQuery(fmt::format("SELECT `id` FROM `players` WHERE `name` = {}", g_database().escapeString(newName))); + DBResult_ptr result = g_database().storeQuery(fmt::format("SELECT `id` FROM `players` WHERE `name` = {}", g_database().escapeString(name))); if (result) { return false; } - std::string query = fmt::format("UPDATE `players` SET `name` = {} WHERE `id` = {}", g_database().escapeString(newName), player->getGUID()); + std::string query = fmt::format("UPDATE `players` SET `name` = {} WHERE `id` = {}", g_database().escapeString(name), player->getGUID()); if (!g_database().executeQuery(query)) { return false; } @@ -10411,7 +10410,7 @@ bool Game::processNameChangeOffer(std::shared_ptr player, std::string &n return true; } -bool Game::processTempleOffer(std::shared_ptr player) { +bool Game::processTempleOffer(const std::shared_ptr &player) { if (player->isPzLocked() || player->hasCondition(CONDITION_INFIGHT)) { return false; } @@ -10858,7 +10857,7 @@ void Game::playerBuyStoreOffer(uint32_t playerId, const Offer* offer, std::strin case OfferTypes_t::HUNTINGSLOT: { const auto &thirdSlot = player->getTaskHuntingSlotById(PreySlot_Three); - if (thirdSlot->state != PreyDataState_Locked) { + if (thirdSlot->state != PreyTaskDataState_Locked) { break; } diff --git a/src/game/game.hpp b/src/game/game.hpp index a980f1544f2..2682a48da74 100644 --- a/src/game/game.hpp +++ b/src/game/game.hpp @@ -308,11 +308,11 @@ class Game { void playerOpenStoreHistory(uint32_t playerId, uint32_t page); void playerBuyStoreOffer(uint32_t playerId, const Offer* offer, std::string newName, uint8_t sexId); // Process Offers - bool processChargesOffer(std::shared_ptr player, uint32_t itemId, uint16_t charges = 0, bool movable = false); - bool processStackableOffer(std::shared_ptr player, uint32_t itemId, uint16_t amount = 1, bool movable = false); - bool processHouseOffer(std::shared_ptr player, uint32_t itemId, uint16_t charges = 0); - bool processNameChangeOffer(std::shared_ptr player, std::string &name); - bool processTempleOffer(std::shared_ptr player); + bool processChargesOffer(const std::shared_ptr &player, uint32_t itemId, uint16_t charges = 0, bool movable = false); + bool processStackableOffer(const std::shared_ptr &player, uint32_t itemId, uint16_t amount = 1, bool movable = false); + bool processHouseOffer(const std::shared_ptr &player, uint32_t itemId, uint16_t charges = 0); + bool processNameChangeOffer(const std::shared_ptr &player, std::string name); + bool processTempleOffer(const std::shared_ptr &player); void playerRewardChestCollect(uint32_t playerId, const Position &pos, uint16_t itemId, uint8_t stackPos, uint32_t maxMoveItems = 0);