Skip to main content

Configure The Service

Now that the service is registered, let's take a look at configuration options.

The locomotion service profile.
The locomotion service profile.

Startup Behaviour

There is three settings related to locomotion startup behaviour in total.

Locomotion Startup Behaviour

This setting defines whether locomotion is enabled or disabled on application launch on a global level. Settings this setting to Manual Start will also disable free movement and teleportation on app launch, regardless of their individiual startup behaviour.

Runtime API

ServiceManager.Instance.GetService<ILocomotionService>().LocomotionEnabled = false;
ServiceManager.Instance.GetService<ILocomotionService>().LocomotionEnabled = true;

Movement Startup Behaviour

This settings defines whether free movement will be available immediately after the application has launched.

Runtime API

ServiceManager.Instance.GetService<ILocomotionService>().MovementEnabled = false;
ServiceManager.Instance.GetService<ILocomotionService>().MovementEnabled = true;

Teleport Startup Behaviour

This settings defines whether teleportation will be available immediately after the application has launched.

Runtime API

ServiceManager.Instance.GetService<ILocomotionService>().TeleportationEnabled = false;
ServiceManager.Instance.GetService<ILocomotionService>().TeleportationEnabled = true;

Teleport Cooldown

This defaults to 0, meaning that your player can teleport right after completing a teleportation. Settings this value to e.g. 1, will induce a one second cooldown phase after a teleport. Your player will only be able to teleport again, once the cooldown phase has ended.

ServiceManager.Instance.GetService<ILocomotionService>().TeleportCooldownDuration = 1f;
var isCoolingDown = ServiceManager.Instance.GetService<ILocomotionService>().IsTeleportCoolingDown;

Locomotion Service Modules

The locomotion service is powered by a collection of service modules. Each responsible for a specific feature of the overall service. Check the individual module configuraton profiles for advanced configuration options.