use origin instead of pivot
and use trimesh instead of convex
This commit is contained in:
17
src/gates.rs
17
src/gates.rs
@@ -1,9 +1,9 @@
|
||||
use std::collections::HashMap;
|
||||
|
||||
use avian3d::math::PI;
|
||||
use bevy::{prelude::*, state::commands};
|
||||
use bevy::prelude::*;
|
||||
|
||||
use crate::tb_entities::{NamedEntity, Pivot};
|
||||
use crate::tb_entities::NamedEntity;
|
||||
|
||||
#[derive(Resource)]
|
||||
enum GatesState {
|
||||
@@ -19,8 +19,7 @@ pub fn plugin(app: &mut App) {
|
||||
fn update(
|
||||
keyboard: Res<ButtonInput<KeyCode>>,
|
||||
mut state: ResMut<GatesState>,
|
||||
mut names_entities: Query<(&NamedEntity, &mut Transform), Without<Pivot>>,
|
||||
pivot_entities: Query<(&Pivot, &Transform)>,
|
||||
mut names_entities: Query<(&NamedEntity, &mut Transform)>,
|
||||
) {
|
||||
if keyboard.just_pressed(KeyCode::Digit1) {
|
||||
if matches!(*state, GatesState::Init) {
|
||||
@@ -35,15 +34,7 @@ fn update(
|
||||
|
||||
for (named_entity, mut transform) in names_entities.iter_mut() {
|
||||
if let Some(fence) = fences.get(named_entity.name.as_str()) {
|
||||
let Some((_, t)) = pivot_entities
|
||||
.iter()
|
||||
.find(|(p, _)| &p.name == named_entity.name.as_str())
|
||||
else {
|
||||
warn!("Pivot not found for {}", named_entity.name);
|
||||
continue;
|
||||
};
|
||||
|
||||
transform.rotate_around(t.translation, *fence);
|
||||
transform.rotate(*fence);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user