diff options
author | ErodeesFleurs <3353309908@qq.com> | 2024-04-02 09:34:06 +0800 |
---|---|---|
committer | ErodeesFleurs <3353309908@qq.com> | 2024-04-02 09:34:06 +0800 |
commit | be571b5cd04f3986dc5725b4b04b4f94bd67a16c (patch) | |
tree | 5f0c8e4a3ed78a3fd753f512993afbb7dd60282d /source/game/StarWorldServer.cpp | |
parent | 14506b1014aa2e5cbc041ff7b6907c5f499a0e10 (diff) |
add world.sendPacket and fixed deadlock
Diffstat (limited to 'source/game/StarWorldServer.cpp')
-rw-r--r-- | source/game/StarWorldServer.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/source/game/StarWorldServer.cpp b/source/game/StarWorldServer.cpp index ad3b555..95ec8c3 100644 --- a/source/game/StarWorldServer.cpp +++ b/source/game/StarWorldServer.cpp @@ -544,6 +544,11 @@ List<PacketPtr> WorldServer::getOutgoingPackets(ConnectionId clientId) { return std::move(clientInfo->outgoingPackets); } +void WorldServer::sendPacket(ConnectionId clientId, PacketPtr const& packet) { + if (auto const& clientInfo = m_clientInfo.get(clientId)) + clientInfo->outgoingPackets.append(packet); +} + Maybe<Json> WorldServer::receiveMessage(ConnectionId fromConnection, String const& message, JsonArray const& args) { Maybe<Json> result; for (auto& p : m_scriptContexts) { @@ -2084,7 +2089,7 @@ float WorldServer::lightLevel(Vec2F const& pos) const { } void WorldServer::setDungeonBreathable(DungeonId dungeonId, Maybe<bool> breathable) { - Maybe<float> current = m_dungeonIdBreathable.maybe(dungeonId); + Maybe<bool> current = m_dungeonIdBreathable.maybe(dungeonId); if (breathable != current) { if (breathable) m_dungeonIdBreathable[dungeonId] = *breathable; |