mirror of
https://github.com/DarkflameUniverse/DarkflameServer
synced 2024-08-30 18:43:58 +00:00
b713b94841
Added functions and methods to support the pickup radius. Functionality includes: Corrected serialization for ControllablePhysicsComponent which correctly serializes the pickup radius to the client. A method to add the pickup radius to the list of active pickup radii the component has. A method to remove and re-calculate the largest active radii the component currently has. Tested equipping all variations of the LootBuff behavior (passive skills, items, item skills) and all functioned as intended. Tested equipping multiple items with a loot buff and then unequipping them in different orders. Tested adding pickup radii of different values and the server correctly adjusted the pickup radius to the largest one currently equipped.
33 lines
864 B
C++
33 lines
864 B
C++
#pragma once
|
|
#include "Behavior.h"
|
|
#include "BehaviorBranchContext.h"
|
|
#include "BehaviorContext.h"
|
|
#include "ControllablePhysicsComponent.h"
|
|
|
|
/**
|
|
* @brief This is the behavior class to be used for all Loot Buff behavior nodes in the Behavior tree.
|
|
*
|
|
*/
|
|
class LootBuffBehavior final : public Behavior
|
|
{
|
|
public:
|
|
|
|
float m_Scale;
|
|
|
|
/*
|
|
* Inherited
|
|
*/
|
|
|
|
explicit LootBuffBehavior(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 UnCast(BehaviorContext* context, BehaviorBranchContext branch) override;
|
|
|
|
void Timer(BehaviorContext* context, BehaviorBranchContext branch, LWOOBJID second) override;
|
|
|
|
void Load() override;
|
|
};
|