mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2026-11-14 15:57:13 +00:00
fix(component): the zone control object constructs as on live
Minigame control (50) is an activity component in the client (LWOMinigameComponent) and is made from the registry, so the zone control object (LOT 2365, registry id 0) has one; it sends what an activity sends (dirty, no players), not a fixed 0x40000000 (which nothing sent: the old id > 0 check never made it). The zone's script on that object is server only: the client makes no script component for it, so it sends nothing. DLU's zone control construction now equals live's byte for byte (209 captures, e.g. GruntMonkey world2); the decoder reads 50 as an activity. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -20,6 +20,8 @@ ScriptComponent::ScriptComponent(Entity* parent, const int32_t componentID, cons
|
||||
}
|
||||
|
||||
void ScriptComponent::Serialize(RakNet::BitStream& outBitStream, bool bIsInitialUpdate) {
|
||||
// A server-only script (the zone control object's) sends nothing: the client made no script component for it
|
||||
if (!m_Serialized) return;
|
||||
if (bIsInitialUpdate) {
|
||||
const auto& networkSettings = m_Parent->GetNetworkSettings();
|
||||
auto hasNetworkSettings = !networkSettings.values.empty();
|
||||
|
||||
Reference in New Issue
Block a user