aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Handlers')
-rw-r--r--src/server/game/Handlers/AuthHandler.cpp9
-rw-r--r--src/server/game/Handlers/CharacterHandler.cpp5
-rw-r--r--src/server/game/Handlers/HousingHandler.cpp28
-rw-r--r--src/server/game/Handlers/LFGHandler.cpp2
4 files changed, 41 insertions, 3 deletions
diff --git a/src/server/game/Handlers/AuthHandler.cpp b/src/server/game/Handlers/AuthHandler.cpp
index d61ce409595..bd671c558a2 100644
--- a/src/server/game/Handlers/AuthHandler.cpp
+++ b/src/server/game/Handlers/AuthHandler.cpp
@@ -138,6 +138,8 @@ void WorldSession::SendFeatureSystemStatusGlueScreen()
}, gameRule.Value);
}
+ features.AvailableGameModeIDs.push_back(8); // GameMode.db2, standard
+
SendPacket(features.Write());
WorldPackets::System::MirrorVarSingle vars[] =
@@ -148,6 +150,13 @@ void WorldSession::SendFeatureSystemStatusGlueScreen()
{ "bpayStoreEnable"sv, "0"sv },
{ "recentAlliesEnabledClient"sv, "0"sv },
{ "browserEnabled"sv, "0"sv },
+ { "housingEnableCreateGuildNeighborhood"sv, "0"sv },
+ { "housingEnableDeleteHouse"sv, "0"sv },
+ { "housingServiceEnabled"sv, "0"sv },
+ { "housingEnableMoveHouse"sv, "0"sv },
+ { "housingEnableCreateCharterNeighborhood"sv, "0"sv },
+ { "housingEnableBuyHouse"sv, "0"sv },
+ { "housingMarketEnabled"sv, "0"sv },
};
WorldPackets::System::MirrorVars variables;
diff --git a/src/server/game/Handlers/CharacterHandler.cpp b/src/server/game/Handlers/CharacterHandler.cpp
index b1d644fb5a3..6c0505fca7e 100644
--- a/src/server/game/Handlers/CharacterHandler.cpp
+++ b/src/server/game/Handlers/CharacterHandler.cpp
@@ -1192,8 +1192,9 @@ void WorldSession::HandlePlayerLogin(LoginQueryHolder const& holder)
// Send MOTD
{
- for (std::string const& motdLine : sWorld->GetMotd())
- sWorld->SendServerMessage(SERVER_MSG_STRING, motdLine, pCurrChar);
+ WorldPackets::System::MOTD motd;
+ motd.Text = &sWorld->GetMotd();
+ SendPacket(motd.Write());
}
SendSetTimeZoneInformation();
diff --git a/src/server/game/Handlers/HousingHandler.cpp b/src/server/game/Handlers/HousingHandler.cpp
new file mode 100644
index 00000000000..3c36b790f11
--- /dev/null
+++ b/src/server/game/Handlers/HousingHandler.cpp
@@ -0,0 +1,28 @@
+/*
+ * This file is part of the TrinityCore Project. See AUTHORS file for Copyright information
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "WorldSession.h"
+#include "HousingPackets.h"
+#include "Player.h"
+
+void WorldSession::HandleDeclineNeighborhoodInvites(WorldPackets::Housing::DeclineNeighborhoodInvites const& declineNeighborhoodInvites)
+{
+ if (declineNeighborhoodInvites.Allow)
+ GetPlayer()->SetPlayerFlagEx(PLAYER_FLAGS_EX_AUTO_DECLINE_NEIGHBORHOOD);
+ else
+ GetPlayer()->RemovePlayerFlagEx(PLAYER_FLAGS_EX_AUTO_DECLINE_NEIGHBORHOOD);
+}
diff --git a/src/server/game/Handlers/LFGHandler.cpp b/src/server/game/Handlers/LFGHandler.cpp
index 3e4030a5691..523a3e6e03a 100644
--- a/src/server/game/Handlers/LFGHandler.cpp
+++ b/src/server/game/Handlers/LFGHandler.cpp
@@ -143,7 +143,7 @@ void WorldSession::SendLfgPlayerLockInfo()
// Get Random dungeons that can be done at a certain level and expansion
uint8 level = GetPlayer()->GetLevel();
- uint32 contentTuningReplacementConditionMask = GetPlayer()->m_playerData->CtrOptions->ConditionalFlags;
+ std::span<uint32 const> contentTuningReplacementConditionMask = GetPlayer()->m_playerData->CtrOptions->ConditionalFlags;
lfg::LfgDungeonSet const& randomDungeons = sLFGMgr->GetRandomAndSeasonalDungeons(level, GetExpansion(), contentTuningReplacementConditionMask);
WorldPackets::LFG::LfgPlayerInfo lfgPlayerInfo;