mirror of
https://github.com/DCFApixels/DragonECS-Graphs.git
synced 2025-09-18 20:04:35 +08:00
fix add method
This commit is contained in:
parent
d9bedb4d8b
commit
b7b2e1dd79
@ -52,26 +52,16 @@ namespace DCFApixels.DragonECS.Relations.Utils
|
||||
/// <returns> new node index</returns>
|
||||
public int InsertAfter(int nodeIndex, int value)
|
||||
{
|
||||
int newNodeIndex;
|
||||
if (_recycledNodesCount > 0)
|
||||
{
|
||||
newNodeIndex = _recycledNodes[--_recycledNodesCount];
|
||||
_count++;
|
||||
}
|
||||
else
|
||||
{
|
||||
newNodeIndex = ++_count;
|
||||
}
|
||||
_count++;
|
||||
int newNodeIndex = _recycledNodesCount > 0 ? _recycledNodes[--_recycledNodesCount] : _count;
|
||||
|
||||
ref Node prevNode = ref _nodes[nodeIndex];
|
||||
ref Node nextNode = ref _nodes[prevNode.next];
|
||||
|
||||
_nodes[newNodeIndex].Set(value, nextNode.prev, prevNode.next);
|
||||
|
||||
prevNode.next = newNodeIndex;
|
||||
nextNode.prev = newNodeIndex;
|
||||
|
||||
_lastNodeIndex = newNodeIndex;
|
||||
if(prevNode.next == 0)
|
||||
_lastNodeIndex = newNodeIndex;
|
||||
return newNodeIndex;
|
||||
}
|
||||
//public int InsertBefore(int nodeIndex, int value) { }
|
||||
@ -84,8 +74,6 @@ namespace DCFApixels.DragonECS.Relations.Utils
|
||||
_nodes[node.next].prev = node.prev;
|
||||
_nodes[node.prev].next = node.next;
|
||||
|
||||
// node = Node.Empty;
|
||||
|
||||
if (_recycledNodesCount >= _recycledNodes.Length)
|
||||
Array.Resize(ref _recycledNodes, _recycledNodes.Length << 1);
|
||||
_recycledNodes[_recycledNodesCount++] = nodeIndex;
|
||||
|
Loading…
Reference in New Issue
Block a user