| 692 | } |
| 693 | |
| 694 | void MovementController::tickSlave(float dt) { |
| 695 | setTimestep(dt); |
| 696 | if (auto movingCollisionId = m_surfaceMovingCollision.get()) { |
| 697 | if (auto physicsEntity = world()->get<PhysicsEntity>(movingCollisionId->physicsEntityId)) { |
| 698 | if (auto collision = physicsEntity->movingCollision(movingCollisionId->collisionIndex)) { |
| 699 | m_xPosition.set(m_xRelativeSurfaceMovingCollisionPosition.get() + collision->position[0]); |
| 700 | m_yPosition.set(m_yRelativeSurfaceMovingCollisionPosition.get() + collision->position[1]); |
| 701 | } |
| 702 | } |
| 703 | } |
| 704 | |
| 705 | LiquidLevel cll = world()->liquidLevel(collisionBody().boundBox()); |
| 706 | m_liquidPercentage = clamp(cll.level, 0.0f, 1.0f); |
| 707 | m_liquidId = cll.liquid; |
| 708 | } |
| 709 | |
| 710 | void MovementController::setIgnorePhysicsEntities(Set<EntityId> ignorePhysicsEntities) { |
| 711 | m_ignorePhysicsEntities = ignorePhysicsEntities; |
nothing calls this directly
no test coverage detected