Jumper
Jumper copied to clipboard
Add path:shift()?
I think it would be useful to implement a method that returns the first node of a path and deletes it at the same time.
Can I have some use cases/examples where such a method would be really useful ?
Well, if I have a path and I'd like an object to move along this path, I will make it move from node to node. As soon as I reached the node, I will want to get the next node and I don't need to know about the previous node any longer.
You can create this relatively easily by populating a table with all node values. I created something like this for use with Corona SDK, so you can move and actor along the path.
if path then
print(('Path found! Length: %.2f'):format(path:getLength()))
for node, count in path:nodes() do
print(('Step: %d - x: %d - y: %d'):format(count, node:getX(), node:getY()))
setX[#setX+1] = node:getX() -- populating coordinate table on each movement
setY[#setY+1] = node:getY() -- populating coordinate table on each movement
end
end
I assume this would be just as easy to bake into the actual library, but you know what they say about assuming.