zuma-like/src/states/linear/components_track.rs

17 lines
645 B
Rust
Raw Normal View History

2026-04-15 23:02:14 +03:00
use bevy::prelude::*;
#[derive(Component)]
pub struct Track{
pub start_point: Vec2,
pub start_direction: Vec2, // будет нормализовано при построении
pub segments: Vec<PathSegment>,
}
// линия всегда строится от точки старта по направлению
// направление изменяется сегментами поворота
// left при истине - поворот против часовой стрелки, ложь - по часовой
#[derive(Clone, Copy)]
pub enum PathSegment{
Line { length: f32 },
Turn { radius: f32, left: bool },
}