Codingkaizenn
This commit is contained in:
@@ -10,6 +10,15 @@ public class CodingModeManager : MonoBehaviour
|
||||
[Tooltip("台座に配置した Slot_B の XRSocketInteractor を指定してください")]
|
||||
[SerializeField] private XRSocketInteractor socketB;
|
||||
|
||||
[Header("XR Interaction Toolkit 移動系コンポーネント")]
|
||||
[Tooltip("Continuous Move Provider などの移動スクリプトをアタッチ")]
|
||||
[SerializeField] private Behaviour moveProvider;
|
||||
|
||||
[Tooltip("Snap Turn Provider や Continuous Turn Provider などの旋回スクリプトをアタッチ")]
|
||||
[SerializeField] private Behaviour turnProvider;
|
||||
|
||||
public bool IsCodingModeActive { get; private set; } = false;
|
||||
|
||||
private void OnEnable()
|
||||
{
|
||||
// ソケットにオブジェクトが「ハメ込まれた瞬間」のイベントを登録
|
||||
@@ -85,4 +94,15 @@ public class CodingModeManager : MonoBehaviour
|
||||
socketB.firstInteractableSelected.transform.position = transform.position + (transform.forward * -0.2f) + (transform.right * 0.1f);
|
||||
}
|
||||
}
|
||||
|
||||
public void ToggleCodingMode()
|
||||
{
|
||||
IsCodingModeActive = !IsCodingModeActive;
|
||||
|
||||
// CodingModeが有効(true)なら、enabled を false にして足止めする
|
||||
if (moveProvider != null) moveProvider.enabled = !IsCodingModeActive;
|
||||
if (turnProvider != null) turnProvider.enabled = !IsCodingModeActive;
|
||||
|
||||
Debug.Log($"💻 CodingMode: {(IsCodingModeActive ? "ON (移動・旋回を一時ロック)" : "OFF (移動解禁)")}");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user