from pybevy.input import MouseButtonInput, MouseMotion, MouseWheel
from pybevy.prelude import *
def print_mouse_events_system(
mouse_button_input_reader: MessageReader[MouseButtonInput],
mouse_motion_reader: MessageReader[MouseMotion],
cursor_moved_reader: MessageReader[CursorMoved],
mouse_wheel_reader: MessageReader[MouseWheel],
) -> None:
for button_event in mouse_button_input_reader:
print(f"Mouse button: {button_event}")
for motion_event in mouse_motion_reader:
print(f"Mouse motion (delta): {motion_event}")
for cursor_event in cursor_moved_reader:
print(f"Cursor moved (position): {cursor_event}")
for wheel_event in mouse_wheel_reader:
print(f"Mouse wheel: {wheel_event}")
@entrypoint
def main(app: App) -> App:
return app.add_plugins(DefaultPlugins).add_systems(
Update, print_mouse_events_system
)
if __name__ == "__main__":
main().run()