Files
DarkflameServer/dGame/dBehaviors/SpawnBehavior.h
Aaron Kimbrell 0c215de446 fix(entity): send updatesWithParentPosition from the spawn behavior, as live
The parent info always said the object doesn't move with its parent. Live
sent true for objects a spawn behavior made with updatePositionWithParent
(all 70 Engineer Personal Fortress constructions in the captures, LOT 9479,
and the Summoner's Scratch, 9644); the client then moves them with the
player. Every other construction in the captures sent false, and none sent
an object world state, which stays unsent.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 08:30:23 -05:00

28 lines
769 B
C++

#pragma once
#include "Behavior.h"
class SpawnBehavior final : public Behavior
{
public:
LOT m_lot;
float m_Distance;
// The spawned object moves with the one that spawned it (its parent)
bool m_UpdatePositionWithParent;
/*
* Inherited
*/
explicit SpawnBehavior(const uint32_t behaviorId) : Behavior(behaviorId) {
}
void Handle(BehaviorContext* context, RakNet::BitStream& bitStream, BehaviorBranchContext branch) override;
void Calculate(BehaviorContext* context, RakNet::BitStream& bitStream, BehaviorBranchContext branch) override;
void Timer(BehaviorContext* context, BehaviorBranchContext branch, LWOOBJID second) override;
void End(BehaviorContext* context, BehaviorBranchContext branch, LWOOBJID second) override;
void Load() override;
};