rename Bot to CompleteBot

This commit is contained in:
2026-02-18 10:22:40 -08:00
parent d0e71b8431
commit bd8981bb2f
6 changed files with 17 additions and 17 deletions

View File

@@ -1,11 +1,11 @@
/// A loaded bot file.
pub struct Bot{
pub struct CompleteBot{
//Instructions
timelines:strafesnet_roblox_bot_file::v0::Block,
offset:f64,
duration:f64,
}
impl Bot{
impl CompleteBot{
pub(crate) const CAMERA_OFFSET:glam::Vec3=glam::vec3(0.0,2.0,0.0);
pub fn new(
data:&[u8],

View File

@@ -31,7 +31,7 @@ impl PlaybackHead{
timer,
}
}
pub fn advance_time(&mut self,bot:&crate::bot::Bot,time:SessionTime){
pub fn advance_time(&mut self,bot:&crate::bot::CompleteBot,time:SessionTime){
let simulation_time=self.timer.time(time);
let mut time_float=simulation_time.get() as f64/PhysicsTime::ONE_SECOND.get() as f64+bot.offset()+self.offset;
loop{
@@ -52,7 +52,7 @@ impl PlaybackHead{
}
}
}
pub fn get_position_angles(&self,bot:&crate::bot::Bot,time:SessionTime)->(glam::Vec3,glam::Vec2){
pub fn get_position_angles(&self,bot:&crate::bot::CompleteBot,time:SessionTime)->(glam::Vec3,glam::Vec2){
let time=self.timer.time(time);
let event0=&bot.timelines().output_events[self.event_id];
let event1=&bot.timelines().output_events[self.event_id+1];
@@ -76,6 +76,6 @@ impl PlaybackHead{
let angles1=vector3_to_glam(&event1.event.angles);
let angles=angles0.lerp(angles1,t);
(p+crate::bot::Bot::CAMERA_OFFSET,angles.yx())
(p+crate::bot::CompleteBot::CAMERA_OFFSET,angles.yx())
}
}

View File

@@ -1,6 +1,6 @@
use strafesnet_common::instruction::TimedInstruction;
use strafesnet_common::session::Time as SessionTime;
use strafesnet_roblox_bot_player::{bot::Bot,graphics::Graphics,head::PlaybackHead};
use strafesnet_roblox_bot_player::{bot::CompleteBot,graphics::Graphics,head::PlaybackHead};
pub enum SessionControlInstruction{
SetPaused(bool),
@@ -22,13 +22,13 @@ pub enum Instruction{
pub struct PlayerWorker<'a>{
surface:wgpu::Surface<'a>,
graphics_thread:Graphics,
bot:Bot,
bot:CompleteBot,
playback_head:PlaybackHead,
}
impl<'a> PlayerWorker<'a>{
pub fn new(
surface:wgpu::Surface<'a>,
bot:Bot,
bot:CompleteBot,
graphics_thread:Graphics,
)->Self{
let playback_head=PlaybackHead::new(SessionTime::ZERO);

View File

@@ -201,7 +201,7 @@ impl WindowContext<'_>{
let screen_size=glam::uvec2(config.width,config.height);
let bot=include_bytes!("../../web-demo/bhop_marble_7cf33a64-7120-4514-b9fa-4fe29d9523d.qbot");
let map=include_bytes!("../../web-demo/bhop_marble_5692093612.snfm");
let bot=strafesnet_roblox_bot_player::bot::Bot::new(bot).unwrap();
let bot=strafesnet_roblox_bot_player::bot::CompleteBot::new(bot).unwrap();
let map=strafesnet_roblox_bot_player::map::CompleteMap::new(map).unwrap();
let mut graphics=strafesnet_roblox_bot_player::graphics::Graphics::new(device,queue,config);
graphics.change_map(&map);

View File

@@ -55,7 +55,7 @@ impl Graphics{
}
}
#[wasm_bindgen]
pub fn render(&mut self,bot:&Bot,head:&PlaybackHead,time:f64){
pub fn render(&mut self,bot:&CompleteBot,head:&PlaybackHead,time:f64){
// TODO: check f64 range
let time=SessionTime::raw((time*SessionTime::ONE_SECOND.get() as f64) as i64);
let (pos,angles)=head.head.get_position_angles(&bot.bot,time);
@@ -72,15 +72,15 @@ impl Graphics{
}
#[wasm_bindgen]
pub struct Bot{
bot:bot::Bot,
pub struct CompleteBot{
bot:bot::CompleteBot,
}
#[wasm_bindgen]
impl Bot{
impl CompleteBot{
#[wasm_bindgen(constructor)]
pub fn new(data:&[u8])->Result<Self,JsValue>{
Ok(Self{
bot:bot::Bot::new(data).map_err(|e|JsValue::from_str(&e.to_string()))?,
bot:bot::CompleteBot::new(data).map_err(|e|JsValue::from_str(&e.to_string()))?,
})
}
}
@@ -114,7 +114,7 @@ impl PlaybackHead{
})
}
#[wasm_bindgen]
pub fn advance_time(&mut self,bot:&Bot,time:f64){
pub fn advance_time(&mut self,bot:&CompleteBot,time:f64){
// TODO: check f64 range
let time=SessionTime::raw((time*SessionTime::ONE_SECOND.get() as f64) as i64);
self.head.advance_time(&bot.bot,time);

View File

@@ -1,6 +1,6 @@
import init, {
setup,
Bot,
CompleteBot,
Graphics,
CompleteMap,
PlaybackHead,
@@ -15,7 +15,7 @@ const canvas = document.querySelector("canvas");
const context = await setup(canvas);
const graphics = new Graphics(context);
const bot = new Bot(new Uint8Array(await b.arrayBuffer()));
const bot = new CompleteBot(new Uint8Array(await b.arrayBuffer()));
const map = new CompleteMap(new Uint8Array(await m.arrayBuffer()));
const playback = new PlaybackHead(0);