summary refs log tree commit diff stats
path: root/src/systems/pondering.h
diff options
context:
space:
mode:
authorKelly Rauchenberger <fefferburbia@gmail.com>2018-05-04 10:50:15 -0400
committerKelly Rauchenberger <fefferburbia@gmail.com>2018-05-09 17:59:13 -0400
commit893dbf8a235db2b4f1fafacf90290b0821f0048c (patch)
tree4e224187fbaae891c4ddfa5f38c7f8eae11f06e3 /src/systems/pondering.h
parentff99cefc647f9215ad1cdc9f408c9fc655b45706 (diff)
downloadtherapy-893dbf8a235db2b4f1fafacf90290b0821f0048c.tar.gz
therapy-893dbf8a235db2b4f1fafacf90290b0821f0048c.tar.bz2
therapy-893dbf8a235db2b4f1fafacf90290b0821f0048c.zip
Recursively handle ferried bodies
PonderingSystem now recursively ticks bodies, starting with unferried bodies at the top level, and recursively ticking their passengers. This fixes the second issue described in 8f1c4f1 -- that passengers may be ticked before their ferries, causing it to use out-of-date information about the ferry's location.
Diffstat (limited to 'src/systems/pondering.h')
-rw-r--r--src/systems/pondering.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/systems/pondering.h b/src/systems/pondering.h index adc0cda..eed0d32 100644 --- a/src/systems/pondering.h +++ b/src/systems/pondering.h
@@ -46,6 +46,11 @@ private:
46 id_type groundEntity; 46 id_type groundEntity;
47 }; 47 };
48 48
49 void tickBody(
50 id_type entity,
51 double dt,
52 const std::set<id_type>& entities);
53
49 void processCollision( 54 void processCollision(
50 id_type entity, 55 id_type entity,
51 id_type collider, 56 id_type collider,