self.machine.ball_locks.*¶
-
class
mpf.devices.ball_lock.BallLock(*args, **kwargs)¶ Bases:
mpf.core.system_wide_device.SystemWideDevice,mpf.core.mode_device.ModeDeviceBall lock device which can be used to keep balls in ball devices and control their eject later on.
Accessing ball_locks in code
The device collection which contains the ball_locks in your machine is available via
self.machine.ball_locks. For example, to access one called “foo”, you would useself.machine.ball_locks.foo. You can also access ball_locks in dictionary form, e.g.self.machine.ball_locks['foo'].You can also get devices by tag or hardware number. See the DeviceCollection documentation for details.
Methods & Attributes
Ball_locks have the following methods & attributes available. Note that methods & attributes inherited from base classes are not included here.
-
disable(**kwargs)¶ Disable the lock.
If the lock is not enabled, no balls will be locked.
Parameters: **kwargs – unused
-
enable(**kwargs)¶ Enable the lock.
If the lock is not enabled, no balls will be locked.
Parameters: **kwargs – unused
-
is_full()¶ Return true if lock is full.
-
raise_config_error(msg, error_no, *, context=None)¶ Raise a ConfigFileError exception.
-
release_all_balls()¶ Release all balls in lock.
-
release_balls(balls_to_release)¶ Release all balls and return the actual amount of balls released.
Parameters: balls_to_release – number of ball to release from lock
-
release_one(**kwargs)¶ Release one ball.
Parameters: **kwargs – unused
-
release_one_if_full(**kwargs)¶ Release one ball if lock is full.
-
remaining_space_in_lock()¶ Return the remaining capacity of the lock.
-
reset(**kwargs)¶ Reset the lock.
Will release locked balls. Device will status will stay the same (enabled/disabled). It will wait for those balls to drain and block ball_ending until they did. Those balls are not included in ball_in_play.
Parameters: **kwargs – unused
-