3 releases
new 0.0.4 | Apr 11, 2025 |
---|---|
0.0.3 | Apr 11, 2025 |
0.0.2 | Apr 7, 2025 |
0.0.1 |
|
#586 in Debugging
380 downloads per month
14KB
249 lines
Turing API
The rust Turing scripting API for Beat Saber
This API exposes methods defined by the Turing mod for Beat Saber map scripting
This is a work-in-progress and will not be usable until the Turing mod is released (probably will be a while)
Traits
UnityConvertible
pub trait UnityConvertible {
type UnityType;
fn to_unity_type(self) -> Self::UnityType;
fn from_unity_type(t: Self::UnityType) -> Self;
}
Structs
Static types
Beatmap
impl Beatmap {
pub fn add_color_note(note: ColorNote) { ... }
pub fn add_bomb_note(note: ColorNote) { ... }
pub fn add_chain_head_note(note: ColorNote) { ... }
pub fn add_chain_link_note(note: ColorNote) { ... }
pub fn add_chain_note(note: ColorNote) { ... }
pub fn add_arc(note: ColorNote) { ... }
pub fn add_wall(note: ColorNote) { ... }
}
Data
impl Data {
pub fn set_temp_value<T>(key: &str, v: T) {...}
pub fn get_temp_value<T>(key: &str) -> Option<T> {...}
pub fn remove_temp_value(key: &str) {...}
}
Log
impl Log {
pub fn info(message: &str) {...}
pub fn warning(message: &str) {...}
pub fn error(message: &str) {...}
pub fn debug(message: &str) {...}
}
Instanced types
Color
impl Color {
pub fn set_rgb(&mut self, r: f32, g: f32, b: f32) {...}
pub fn set_rgba(&mut self, r: f32, g: f32, b: f32, a: f32) {...}
}
ColorNote
BombNote
ChainHeadNote
ChainLinkNote
ChainNote
Arc
Wall
Saber
Vec2
impl Vec2 {
pub fn get_x(&self) -> f32 { ... }
pub fn get_y(&self) -> f32 { ... }
pub fn set_x(&self, x: f32) { ... }
pub fn set_y(&self, y: f32) { ... }
}
impl UnityConvertible for glam::Vec2 {
type UnityType = Vec2;
// ...
}
Vec3
impl Vec3 {
pub fn get_x(&self) -> f32 { ... }
pub fn get_y(&self) -> f32 { ... }
pub fn get_z(&self) -> f32 { ... }
pub fn set_x(&self, x: f32) { ... }
pub fn set_y(&self, y: f32) { ... }
pub fn set_z(&self, z: f32) { ... }
}
impl UnityConvertible for glam::Vec3 {
type UnityType = Vec3;
// ...
}
Vec4
impl Vec4 {
pub fn get_x(&self) -> f32 { ... }
pub fn get_y(&self) -> f32 { ... }
pub fn get_z(&self) -> f32 { ... }
pub fn get_w(&self) -> f32 { ... }
pub fn set_x(&self, x: f32) { ... }
pub fn set_y(&self, y: f32) { ... }
pub fn set_z(&self, z: f32) { ... }
pub fn set_w(&self, z: f32) { ... }
}
impl UnityConvertible for glam::Vec4 {
type UnityType = Vec4;
// ...
}
Quat
impl Quat {
pub fn get_x(&self) -> f32 { ... }
pub fn get_y(&self) -> f32 { ... }
pub fn get_z(&self) -> f32 { ... }
pub fn get_w(&self) -> f32 { ... }
pub fn set_x(&self, x: f32) { ... }
pub fn set_y(&self, y: f32) { ... }
pub fn set_z(&self, z: f32) { ... }
pub fn set_w(&self, z: f32) { ... }
}
impl UnityConvertible for glam::Quat {
type UnityType = Quat;
// ...
}
Static Functions
pub fn create_color_note(beat: f32) -> ColorNote {...}
pub fn create_bomb_note(beat: f32) -> BombNote {...}
pub fn create_chain_head_note(beat: f32) -> ChainHeadNote {...}
pub fn create_chain_link_note(beat: f32) -> ChainLinkNote {...}
pub fn create_chain_note(beat: f32) -> ChainNote {...}
pub fn create_arc(beat: f32) -> Arc {...}
pub fn create_wall(beat: f32) -> Wall {...}
Dependencies
~4.5MB
~146K SLoC