use godot::{ classes::{ISkeletonModifier3D, SkeletonModifier3D}, prelude::*, }; #[derive(GodotClass)] #[class(base=SkeletonModifier3D, init)] pub struct PlayerHandRemover { pub active: bool, base: Base, } #[godot_api] impl ISkeletonModifier3D for PlayerHandRemover { fn process_modification_with_delta(&mut self, _delta: f64) { if self.active { if let Some(mut skeleton) = self.base_mut().get_skeleton() { let uar = skeleton.find_bone("UA.R"); let ual = skeleton.find_bone("UA.L"); skeleton.set_bone_pose_scale(uar, Vector3::ZERO); skeleton.set_bone_pose_scale(ual, Vector3::ZERO); } } } }