Skip to content

machine ​

Types ​

Machine type ​

luau
type Machine = {
	State: (self: any) -> types.State,
	Change: (self: any, request: types.ChangeRequest) -> boolean,
	Changed: (self: any) -> signal.Signal<types.StateChanged>,
	Destroy: (self: any) -> (),
}

Functions ​

new ​

luau
machine.new(initial: types.State, machine_realm: types.Realm): Machine

The realm chooses which change sources this machine acceps, so a client machine takes sensor, driver and consumer. But a server machine takes: sensor, driver, and server, and rejects anything tagged client.