using UnityEngine.Animations.Rigging;
using UnityEngine;
using UnityEditor;
using UnityEngine.XR.Interaction.Toolkit;
using Unity.XR.CoreUtils;
using UnityEngine.SpatialTracking;
using UnityEngine.XR;
public class HikersEditorMenu : EditorWindow
{
[MenuItem("HikersEditorMenu/Rig Fix 22 - 21 prjs")]
public static void ShowWindow()
{
HikersEditorMenu window = GetWindow<HikersEditorMenu>("Rig fixer");
window.Show();
}
void OnGUI()
{
EditorGUILayout.LabelField("by hiker!!!", EditorStyles.boldLabel);
EditorGUILayout.LabelField("also this fixes like half ur project lmfao", EditorStyles.boldLabel);
if (GUILayout.Button("Fix Rig"))
{
RigFix();
}
}
void RigFix()
{
GameObject upperarml = GameObject.Find("upper_arm.L");
GameObject forearml = GameObject.Find("forearm.L");
GameObject handl = GameObject.Find("hand.L");
GameObject upperarmr = GameObject.Find("upper_arm.R");
GameObject forearmr = GameObject.Find("forearm.R");
GameObject handr = GameObject.Find("hand.R");
GameObject gorillaPlayer = GameObject.Find("GorillaPlayer");
GameObject leftarmik = GameObject.Find("Left Arm IK");
GameObject rightarmik = GameObject.Find("Right Arm IK");
GameObject xr = GameObject.Find("XR Interaction Manager");
GameObject player = GameObject.Find("Player");
GameObject leftController = GameObject.Find("LeftHand Controller");
GameObject rightController = GameObject.Find("RightHand Controller");
GameObject mainCamera = GameObject.Find("Main Camera");
Camera cameraa = GameObject.Find("Main Camera").GetComponent<Camera>();
GameObject memezisgayl = leftarmik.GetComponentInChildren<AudioSource>().gameObject;
GameObject memezisgayr = rightarmik.GetComponentInChildren<AudioSource>().gameObject;
leftarmik.AddComponent<TwoBoneIKConstraint>();
rightarmik.AddComponent<TwoBoneIKConstraint>();
var constraint = leftarmik.GetComponent<TwoBoneIKConstraint>();
var constrainttwo = rightarmik.GetComponent<TwoBoneIKConstraint>();
var data = constraint.data;
var datatwo = constrainttwo.data;
data.root = upperarml.transform;
data.mid = forearml.transform;
data.tip = handl.transform;
datatwo.root = upperarmr.transform;
datatwo.mid = forearmr.transform;
datatwo.tip = handr.transform;
data.targetPositionWeight = 1f;
data.targetRotationWeight = 1f;
data.maintainTargetPositionOffset = true;
datatwo.targetPositionWeight = 1f;
datatwo.targetRotationWeight = 1f;
datatwo.maintainTargetPositionOffset = true;
data.target = memezisgayl.transform;
datatwo.target = memezisgayr.transform;
constraint.data = data;
constrainttwo.data = datatwo;
constraint.weight = 1f;
constrainttwo.weight = 1f;
gorillaPlayer.AddComponent<LocomotionSystem>();
xr.AddComponent<XRInteractionManager>();
player.AddComponent<XROrigin>();
gorillaPlayer.GetComponent<LocomotionSystem>().xrOrigin = player.GetComponent<XROrigin>();
player.GetComponent<XROrigin>().CameraFloorOffsetObject = gorillaPlayer;
player.GetComponent<XROrigin>().Camera = cameraa;
mainCamera.AddComponent<TrackedPoseDriver>();
leftController.AddComponent<XRController>();
leftController.GetComponent<XRController>().controllerNode = XRNode.LeftHand;
rightController.AddComponent<XRController>();
leftController.AddComponent<XRInteractorLineVisual>();
leftController.GetComponent<XRInteractorLineVisual>().enabled = false;
leftController.AddComponent<XRDirectInteractor>();
leftController.AddComponent<LineRenderer>();
rightController.AddComponent<XRInteractorLineVisual>();
rightController.GetComponent<XRInteractorLineVisual>().enabled = false;
rightController.AddComponent<XRDirectInteractor>();
rightController.AddComponent<LineRenderer>();
Debug.Log("ur ready to go its fixed now.");
Debug.Log("Youll have to check all unfixed stuff lol i fixed a bunch");
Debug.Log("Made by hiker");
}
}