mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2024-11-10 02:08:20 +00:00
WIP
This commit is contained in:
parent
82aee95d32
commit
9ee448d3da
107
dGame/Entity.cpp
107
dGame/Entity.cpp
@ -1013,33 +1013,38 @@ void Entity::WriteComponents(RakNet::BitStream* outBitStream, eReplicaPacketType
|
|||||||
possessableComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
possessableComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Blueprint
|
|
||||||
|
|
||||||
ModuleAssemblyComponent* moduleAssemblyComponent;
|
ModuleAssemblyComponent* moduleAssemblyComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::MODULE_ASSEMBLY, moduleAssemblyComponent)) {
|
if (TryGetComponent(eReplicaComponentType::MODULE_ASSEMBLY, moduleAssemblyComponent)) {
|
||||||
moduleAssemblyComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
moduleAssemblyComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// basephys > controllable
|
||||||
ControllablePhysicsComponent* controllablePhysicsComponent;
|
ControllablePhysicsComponent* controllablePhysicsComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::CONTROLLABLE_PHYSICS, controllablePhysicsComponent)) {
|
if (TryGetComponent(eReplicaComponentType::CONTROLLABLE_PHYSICS, controllablePhysicsComponent)) {
|
||||||
controllablePhysicsComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
controllablePhysicsComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
// ProjectilePhysics Deserilized
|
// ProjectilePhysics Deserilized
|
||||||
|
|
||||||
|
// basephys > physicssystem (base on but not for serialization)
|
||||||
// PhysicsSystem Deserialized
|
// PhysicsSystem Deserialized
|
||||||
|
|
||||||
|
// basephys > vehicle
|
||||||
// VehiclePhysics Deserialized
|
// VehiclePhysics Deserialized
|
||||||
|
|
||||||
|
// basephys > havokveh
|
||||||
// This is Havok Vehicle
|
// This is Havok Vehicle
|
||||||
VehiclePhysicsComponent* vehiclePhysicsComponent;
|
VehiclePhysicsComponent* vehiclePhysicsComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::VEHICLE_PHYSICS, vehiclePhysicsComponent)) {
|
if (TryGetComponent(eReplicaComponentType::VEHICLE_PHYSICS, vehiclePhysicsComponent)) {
|
||||||
vehiclePhysicsComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
vehiclePhysicsComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// basephys > rigidbody (base on but not for serialization)
|
||||||
RigidbodyPhantomPhysicsComponent* rigidbodyPhantomPhysics;
|
RigidbodyPhantomPhysicsComponent* rigidbodyPhantomPhysics;
|
||||||
if (TryGetComponent(eReplicaComponentType::RIGID_BODY_PHANTOM_PHYSICS, rigidbodyPhantomPhysics)) {
|
if (TryGetComponent(eReplicaComponentType::RIGID_BODY_PHANTOM_PHYSICS, rigidbodyPhantomPhysics)) {
|
||||||
rigidbodyPhantomPhysics->Serialize(outBitStream, bIsInitialUpdate, flags);
|
rigidbodyPhantomPhysics->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
// basephys > simple (base on but not for serialization)
|
||||||
SimplePhysicsComponent* simplePhysicsComponent;
|
SimplePhysicsComponent* simplePhysicsComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::SIMPLE_PHYSICS, simplePhysicsComponent)) {
|
if (TryGetComponent(eReplicaComponentType::SIMPLE_PHYSICS, simplePhysicsComponent)) {
|
||||||
simplePhysicsComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
simplePhysicsComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
@ -1050,6 +1055,7 @@ void Entity::WriteComponents(RakNet::BitStream* outBitStream, eReplicaPacketType
|
|||||||
phantomPhysicsComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
phantomPhysicsComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Destroyable
|
||||||
BuffComponent* buffComponent;
|
BuffComponent* buffComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::BUFF, buffComponent)) {
|
if (TryGetComponent(eReplicaComponentType::BUFF, buffComponent)) {
|
||||||
buffComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
buffComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
@ -1061,42 +1067,23 @@ void Entity::WriteComponents(RakNet::BitStream* outBitStream, eReplicaPacketType
|
|||||||
destroyableSerialized = true;
|
destroyableSerialized = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (HasComponent(eReplicaComponentType::COLLECTIBLE)) {
|
|
||||||
DestroyableComponent* destroyableComponent;
|
|
||||||
if (TryGetComponent(eReplicaComponentType::DESTROYABLE, destroyableComponent) && !destroyableSerialized) {
|
|
||||||
destroyableComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
|
||||||
}
|
|
||||||
destroyableSerialized = true;
|
|
||||||
outBitStream->Write(m_CollectibleID); // Collectable component
|
|
||||||
}
|
|
||||||
|
|
||||||
CharacterComponent* characterComponent;
|
CharacterComponent* characterComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::CHARACTER, characterComponent)) {
|
if (TryGetComponent(eReplicaComponentType::CHARACTER, characterComponent)) {
|
||||||
|
|
||||||
PossessorComponent* possessorComponent;
|
PossessorComponent* possessorComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::POSSESSOR, possessorComponent)) {
|
if (TryGetComponent(eReplicaComponentType::POSSESSOR, possessorComponent)) {
|
||||||
possessorComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
possessorComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
} else {
|
|
||||||
// Should never happen, but just to be safe
|
|
||||||
outBitStream->Write0();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
LevelProgressionComponent* levelProgressionComponent;
|
LevelProgressionComponent* levelProgressionComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::LEVEL_PROGRESSION, levelProgressionComponent)) {
|
if (TryGetComponent(eReplicaComponentType::LEVEL_PROGRESSION, levelProgressionComponent)) {
|
||||||
levelProgressionComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
levelProgressionComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
} else {
|
|
||||||
// Should never happen, but just to be safe
|
|
||||||
outBitStream->Write0();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
PlayerForcedMovementComponent* playerForcedMovementComponent;
|
PlayerForcedMovementComponent* playerForcedMovementComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::PLAYER_FORCED_MOVEMENT, playerForcedMovementComponent)) {
|
if (TryGetComponent(eReplicaComponentType::PLAYER_FORCED_MOVEMENT, playerForcedMovementComponent)) {
|
||||||
playerForcedMovementComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
playerForcedMovementComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
} else {
|
|
||||||
// Should never happen, but just to be safe
|
|
||||||
outBitStream->Write0();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
characterComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
characterComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1105,14 +1092,12 @@ void Entity::WriteComponents(RakNet::BitStream* outBitStream, eReplicaPacketType
|
|||||||
petComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
petComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// currently has Client and equiped item serialization in it
|
||||||
InventoryComponent* inventoryComponent;
|
InventoryComponent* inventoryComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::INVENTORY, inventoryComponent)) {
|
if (TryGetComponent(eReplicaComponentType::INVENTORY, inventoryComponent)) {
|
||||||
inventoryComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
inventoryComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
// ProximityMonitor
|
|
||||||
// MovementAI
|
|
||||||
|
|
||||||
ScriptComponent* scriptComponent;
|
ScriptComponent* scriptComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::SCRIPT, scriptComponent)) {
|
if (TryGetComponent(eReplicaComponentType::SCRIPT, scriptComponent)) {
|
||||||
scriptComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
scriptComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
@ -1128,18 +1113,12 @@ void Entity::WriteComponents(RakNet::BitStream* outBitStream, eReplicaPacketType
|
|||||||
baseCombatAiComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
baseCombatAiComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Spawner
|
// kek
|
||||||
|
|
||||||
if (HasComponent(eReplicaComponentType::ITEM)) {
|
if (HasComponent(eReplicaComponentType::ITEM)) {
|
||||||
outBitStream->Write0();
|
outBitStream->Write0();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Rebuild (The real one)
|
// QUICKBUILD
|
||||||
// BuildBorder
|
|
||||||
// Module
|
|
||||||
// RebuildStart
|
|
||||||
// RebuildActivator
|
|
||||||
|
|
||||||
RebuildComponent* rebuildComponent;
|
RebuildComponent* rebuildComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::QUICK_BUILD, rebuildComponent)) {
|
if (TryGetComponent(eReplicaComponentType::QUICK_BUILD, rebuildComponent)) {
|
||||||
DestroyableComponent* destroyableComponent;
|
DestroyableComponent* destroyableComponent;
|
||||||
@ -1150,16 +1129,18 @@ void Entity::WriteComponents(RakNet::BitStream* outBitStream, eReplicaPacketType
|
|||||||
rebuildComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
rebuildComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
// MissionOffer
|
// base vendor
|
||||||
|
|
||||||
VendorComponent* vendorComponent;
|
VendorComponent* vendorComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::VENDOR, vendorComponent)) {
|
if (TryGetComponent(eReplicaComponentType::VENDOR, vendorComponent)) {
|
||||||
vendorComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
vendorComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
// base vendor > Donation
|
||||||
|
// Donation Vendor Deserialized
|
||||||
|
|
||||||
// Donation Vendor
|
// base vendor
|
||||||
// Achievement Vendor
|
// Achievement Vendor Deserialized
|
||||||
|
|
||||||
|
// activity > shooting gall
|
||||||
ShootingGalleryComponent* shootingGalleryComponent;
|
ShootingGalleryComponent* shootingGalleryComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::SHOOTING_GALLERY, shootingGalleryComponent)) {
|
if (TryGetComponent(eReplicaComponentType::SHOOTING_GALLERY, shootingGalleryComponent)) {
|
||||||
shootingGalleryComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
shootingGalleryComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
@ -1167,34 +1148,35 @@ void Entity::WriteComponents(RakNet::BitStream* outBitStream, eReplicaPacketType
|
|||||||
|
|
||||||
// Roller Deserialized
|
// Roller Deserialized
|
||||||
|
|
||||||
|
// activity
|
||||||
ScriptedActivityComponent* scriptedActivityComponent;
|
ScriptedActivityComponent* scriptedActivityComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::SCRIPTED_ACTIVITY, scriptedActivityComponent)) {
|
if (TryGetComponent(eReplicaComponentType::SCRIPTED_ACTIVITY, scriptedActivityComponent)) {
|
||||||
scriptedActivityComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
scriptedActivityComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Collectible??? why is it done that way above
|
// Collectible
|
||||||
|
if (HasComponent(eReplicaComponentType::COLLECTIBLE)) {
|
||||||
|
DestroyableComponent* destroyableComponent;
|
||||||
|
if (TryGetComponent(eReplicaComponentType::DESTROYABLE, destroyableComponent) && !destroyableSerialized) {
|
||||||
|
destroyableComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
|
}
|
||||||
|
destroyableSerialized = true;
|
||||||
|
outBitStream->Write(m_CollectibleID); // Collectable component
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
MovingPlatformComponent* movingPlatformComponent;
|
MovingPlatformComponent* movingPlatformComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::MOVING_PLATFORM, movingPlatformComponent)) {
|
if (TryGetComponent(eReplicaComponentType::MOVING_PLATFORM, movingPlatformComponent)) {
|
||||||
movingPlatformComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
movingPlatformComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Changling
|
|
||||||
// ChoiceBuilds Deserialized
|
// ChoiceBuilds Deserialized
|
||||||
// Package
|
|
||||||
// PlatformBoundary
|
|
||||||
// HF Light Direction Gadget
|
|
||||||
// Culling Plane
|
|
||||||
// Exhibit
|
|
||||||
|
|
||||||
LUPExhibitComponent* lupExhibitComponent;
|
LUPExhibitComponent* lupExhibitComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::LUP_EXHIBIT, lupExhibitComponent)) {
|
if (TryGetComponent(eReplicaComponentType::LUP_EXHIBIT, lupExhibitComponent)) {
|
||||||
lupExhibitComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
lupExhibitComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Property
|
|
||||||
// Property Plaque
|
|
||||||
|
|
||||||
ModelComponent* modelComponent;
|
ModelComponent* modelComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::MODEL, modelComponent)) {
|
if (TryGetComponent(eReplicaComponentType::MODEL, modelComponent)) {
|
||||||
modelComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
modelComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
@ -1208,67 +1190,50 @@ void Entity::WriteComponents(RakNet::BitStream* outBitStream, eReplicaPacketType
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// PropertyEntrance
|
|
||||||
// Rocket Launch LUP
|
|
||||||
// Property Management
|
|
||||||
// Rail Activator
|
|
||||||
|
|
||||||
BouncerComponent* bouncerComponent;
|
BouncerComponent* bouncerComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::BOUNCER, bouncerComponent)) {
|
if (TryGetComponent(eReplicaComponentType::BOUNCER, bouncerComponent)) {
|
||||||
bouncerComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
bouncerComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Spring Pad
|
|
||||||
|
|
||||||
SwitchComponent* switchComponent;
|
SwitchComponent* switchComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::SWITCH, switchComponent)) {
|
if (TryGetComponent(eReplicaComponentType::SWITCH, switchComponent)) {
|
||||||
switchComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
switchComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// activity
|
||||||
if (HasComponent(eReplicaComponentType::ZONE_CONTROL)) {
|
if (HasComponent(eReplicaComponentType::ZONE_CONTROL)) {
|
||||||
outBitStream->Write<uint32_t>(0x40000000);
|
outBitStream->Write<uint32_t>(0x40000000);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Model Builder
|
|
||||||
// Sound Repeater Deserialized
|
// Sound Repeater Deserialized
|
||||||
// Chest Deserialized
|
// Chest Deserialized
|
||||||
// Showcase Model Handler
|
|
||||||
// Arcade (Jetpackpad)
|
|
||||||
|
|
||||||
|
// actually fx comp, that get's loaded via render comp
|
||||||
RenderComponent* renderComponent;
|
RenderComponent* renderComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::RENDER, renderComponent)) {
|
if (TryGetComponent(eReplicaComponentType::RENDER, renderComponent)) {
|
||||||
renderComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
renderComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Soung Ambient 2D
|
|
||||||
// Soung Ambient 2D
|
|
||||||
|
|
||||||
SoundTriggerComponent* soundTriggerComponent;
|
SoundTriggerComponent* soundTriggerComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::SOUND_TRIGGER, soundTriggerComponent)) {
|
if (TryGetComponent(eReplicaComponentType::SOUND_TRIGGER, soundTriggerComponent)) {
|
||||||
soundTriggerComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
soundTriggerComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Racing Sound Trigger Deserialize
|
// just sound trigger again
|
||||||
// Custom Build Assembly
|
// Racing Sound Trigger Deserialize (base is SoundTrigger)
|
||||||
// Generic Activator
|
|
||||||
// Property Vendor
|
|
||||||
// Rocket Launch
|
|
||||||
// Rocket Landing
|
|
||||||
// Faction Trigger
|
|
||||||
|
|
||||||
|
// activity > scripted activity > base racing > racing
|
||||||
RacingControlComponent* racingControlComponent;
|
RacingControlComponent* racingControlComponent;
|
||||||
if (TryGetComponent(eReplicaComponentType::RACING_CONTROL, racingControlComponent)) {
|
if (TryGetComponent(eReplicaComponentType::RACING_CONTROL, racingControlComponent)) {
|
||||||
racingControlComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
racingControlComponent->Serialize(outBitStream, bIsInitialUpdate, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Gate Rush
|
// activity > scripted activity > base racing > gaterush
|
||||||
|
// Gate Rush Deserialize
|
||||||
|
|
||||||
// BBB Component, unused currently
|
// BBB Component, unused currently
|
||||||
// Need to to write0 so that is serialized correctly
|
|
||||||
// TODO: Implement BBB Component
|
// TODO: Implement BBB Component
|
||||||
outBitStream->Write0();
|
outBitStream->Write0();
|
||||||
|
|
||||||
// Crafting
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Entity::ResetFlags() {
|
void Entity::ResetFlags() {
|
||||||
|
@ -725,6 +725,7 @@ void InventoryComponent::Serialize(RakNet::BitStream* outBitStream, const bool b
|
|||||||
outBitStream->Write(item.id);
|
outBitStream->Write(item.id);
|
||||||
outBitStream->Write(item.lot);
|
outBitStream->Write(item.lot);
|
||||||
|
|
||||||
|
// subkey
|
||||||
outBitStream->Write0();
|
outBitStream->Write0();
|
||||||
|
|
||||||
outBitStream->Write(item.count > 0);
|
outBitStream->Write(item.count > 0);
|
||||||
@ -732,7 +733,7 @@ void InventoryComponent::Serialize(RakNet::BitStream* outBitStream, const bool b
|
|||||||
|
|
||||||
outBitStream->Write(item.slot != 0);
|
outBitStream->Write(item.slot != 0);
|
||||||
if (item.slot != 0) outBitStream->Write<uint16_t>(item.slot);
|
if (item.slot != 0) outBitStream->Write<uint16_t>(item.slot);
|
||||||
|
//invtype
|
||||||
outBitStream->Write0();
|
outBitStream->Write0();
|
||||||
|
|
||||||
bool flag = !item.config.empty();
|
bool flag = !item.config.empty();
|
||||||
@ -763,7 +764,7 @@ void InventoryComponent::Serialize(RakNet::BitStream* outBitStream, const bool b
|
|||||||
} else {
|
} else {
|
||||||
outBitStream->Write(false);
|
outBitStream->Write(false);
|
||||||
}
|
}
|
||||||
|
//EquippedModelTransform
|
||||||
outBitStream->Write(false);
|
outBitStream->Write(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user