#adapter #game-cube #controller #nintendo #gc #up #usb

gc-adapter

一个用于操作任天堂 Gamecube 控制器适配器的 Rust 库

3 个版本

0.1.2 2020 年 11 月 28 日
0.1.1 2020 年 11 月 28 日
0.1.0 2020 年 11 月 28 日

#806游戏

MIT 许可证

17KB
287

gc-adapter

一个用于操作任天堂 Gamecube 控制器适配器的 Rust 库

示例

use gc_adapter::GcAdapter;

// get adapter from global context
let mut adapter = GcAdapter::from_usb().unwrap();

// refresh inputs to ensure they are up to date
adapter.refresh_inputs();

// read and display all controller ports
dbg!(adapter.read_controllers());

// enable rumble for only ports 1 and 4
adapter.set_rumble([false, false, false, true]);

std::thread::sleep(std::time::Duration::from_millis(100));

// on drop all rumble will be disabled and the USB connection
// will be cleaned up
let _ = adapter;

lib.rs:

一个用于操作任天堂 Gamecube 控制器适配器的库。

支持

  • 任天堂 Gamecube 控制器适配器(适用于 Wii U 和 Switch)
  • Mayflash Gamecube 控制器适配器(在 "Wii U/Switch" 模式下)
  • 其他第三方适配器(未测试)

示例

use gc_adapter::GcAdapter;

// get adapter from global context
let mut adapter = GcAdapter::from_usb().unwrap();

// refresh inputs to ensure they are up to date
adapter.refresh_inputs();

// read and display all controller ports
dbg!(adapter.read_controllers());

// enable rumble for only ports 4
adapter.set_rumble([false, false, false, true]);

std::thread::sleep(std::time::Duration::from_millis(100));

// on drop all rumble will be disabled and the USB connection
// will be cleaned up
let _ = adapter;

依赖项

~1.3–2.7MB
~50K SLoC