Fix GetObject/SetObject usage in network replication hierarchy
This commit is contained in:
@@ -223,11 +223,17 @@ bool NetworkReplicationGridNode::GetObject(ScriptingObject* obj, NetworkReplicat
|
|||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (_children[coord].Node->GetObject(obj, result))
|
return _children[coord].Node->GetObject(obj, result);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool NetworkReplicationGridNode::SetObject(const NetworkReplicationHierarchyObject& value)
|
||||||
|
{
|
||||||
|
Int3 coord;
|
||||||
|
if (!_objectToCell.TryGet(value.Object.Get(), coord))
|
||||||
{
|
{
|
||||||
return true;
|
return false;
|
||||||
}
|
}
|
||||||
return false;
|
return _children[coord].Node->SetObject(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool NetworkReplicationGridNode::DirtyObject(ScriptingObject* obj)
|
bool NetworkReplicationGridNode::DirtyObject(ScriptingObject* obj)
|
||||||
|
|||||||
@@ -206,7 +206,7 @@ API_CLASS(Abstract, Namespace = "FlaxEngine.Networking") class FLAXENGINE_API Ne
|
|||||||
/// <param name="obj">The object to get.</param>
|
/// <param name="obj">The object to get.</param>
|
||||||
/// <param name="result">The hierarchy object to retrieve.</param>
|
/// <param name="result">The hierarchy object to retrieve.</param>
|
||||||
/// <returns>True on successful retrieval, otherwise false.</returns>
|
/// <returns>True on successful retrieval, otherwise false.</returns>
|
||||||
API_FUNCTION() virtual bool GetObject(ScriptingObject* obj, NetworkReplicationHierarchyObject& result);
|
API_FUNCTION() virtual bool GetObject(ScriptingObject* obj, API_PARAM(Out) NetworkReplicationHierarchyObject& result);
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Sets object properties in the hierarchy. Can be used to modify replication settings at runtime.
|
/// Sets object properties in the hierarchy. Can be used to modify replication settings at runtime.
|
||||||
@@ -264,6 +264,7 @@ public:
|
|||||||
void AddObject(NetworkReplicationHierarchyObject obj) override;
|
void AddObject(NetworkReplicationHierarchyObject obj) override;
|
||||||
bool RemoveObject(ScriptingObject* obj) override;
|
bool RemoveObject(ScriptingObject* obj) override;
|
||||||
bool GetObject(ScriptingObject* obj, NetworkReplicationHierarchyObject& result) override;
|
bool GetObject(ScriptingObject* obj, NetworkReplicationHierarchyObject& result) override;
|
||||||
|
bool SetObject(const NetworkReplicationHierarchyObject& value) override;
|
||||||
bool DirtyObject(ScriptingObject* obj) override;
|
bool DirtyObject(ScriptingObject* obj) override;
|
||||||
void Update(NetworkReplicationHierarchyUpdateResult* result) override;
|
void Update(NetworkReplicationHierarchyUpdateResult* result) override;
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user