protected override void Start()
        {
            shooterManager = GetComponent <vShooterManager>();

            base.Start();

            if (GameController.Instance.IsMultyPlayer())
            {
                if (!isLocalPlayer)
                {
                    Destroy(this);
                    return;
                }
            }

            leftHand          = animator.GetBoneTransform(HumanBodyBones.LeftHand);
            rightHand         = animator.GetBoneTransform(HumanBodyBones.RightHand);
            leftUpperArm      = animator.GetBoneTransform(HumanBodyBones.LeftUpperArm);
            rightUpperArm     = animator.GetBoneTransform(HumanBodyBones.RightUpperArm);
            onlyArmsLayer     = animator.GetLayerIndex("OnlyArms");
            aimAngleReference = new GameObject("aimAngleReference");
            aimAngleReference.transform.rotation = transform.rotation;
            var chest = animator.GetBoneTransform(HumanBodyBones.Chest);

            aimAngleReference.transform.SetParent(chest);
            aimAngleReference.transform.localPosition = Vector3.zero;

            headTrack = GetComponent <vHeadTrack>();

            if (!controlAimCanvas)
            {
                Debug.LogWarning("Missing the AimCanvas, drag and drop the prefab to this scene in order to Aim", gameObject);
            }
        }
Exemplo n.º 2
0
 void OnEnable()
 {
     m_Logo   = (Texture2D)Resources.Load("headTrackIcon", typeof(Texture2D));
     track    = (vHeadTrack)target;
     animator = track.GetComponentInParent <Animator>();
     skin     = Resources.Load("skin") as GUISkin;
     AddEventToTpInput();
 }
Exemplo n.º 3
0
    void OnEnable()
    {
        m_Logo = (Texture2D)Resources.Load("icon_v2", typeof(Texture2D));
        vHeadTrack track = (vHeadTrack)target;

        animator = track.GetComponentInParent <Animator>();
        skin     = Resources.Load("skin") as GUISkin;
    }
Exemplo n.º 4
0
    public override void OnInspectorGUI()
    {
        vHeadTrack track = (vHeadTrack)target;

        if (skin != null)
        {
            GUI.skin = skin;
        }
        if (animator)
        {
            GUILayout.BeginVertical("Head Track System", "window");
            GUILayout.Label(m_Logo, GUILayout.MaxHeight(25));

            openWindow = GUILayout.Toggle(openWindow, openWindow ? "Close" : "Open", EditorStyles.toolbarButton);
            if (openWindow)
            {
                base.DrawDefaultInspector();

                if (track.head == null)
                {
                    track.head = animator.GetBoneTransform(HumanBodyBones.Head);
                }

                if (track.useLimitAngle)
                {
                    GUILayout.BeginVertical("box");
                    //GUILayout.Box("Head Track Angle Limit", GUILayout.ExpandWidth(true));
                    GUILayout.Label(new GUIContent("Angle Range X"), EditorStyles.boldLabel);
                    GUILayout.BeginHorizontal();
                    track.minAngleX = EditorGUILayout.FloatField(track.minAngleX, GUILayout.MaxWidth(40));
                    EditorGUILayout.MinMaxSlider(ref track.minAngleX, ref track.maxAngleX, -180, 180);
                    track.maxAngleX = EditorGUILayout.FloatField(track.maxAngleX, GUILayout.MaxWidth(40));
                    GUILayout.EndHorizontal();

                    GUILayout.Label(new GUIContent("Angle Range Y"), EditorStyles.boldLabel);
                    GUILayout.BeginHorizontal();
                    track.minAngleY = EditorGUILayout.FloatField(track.minAngleY, GUILayout.MaxWidth(40));
                    EditorGUILayout.MinMaxSlider(ref track.minAngleY, ref track.maxAngleY, -180, 180);
                    track.maxAngleY = EditorGUILayout.FloatField(track.maxAngleY, GUILayout.MaxWidth(40));
                    GUILayout.EndHorizontal();
                    GUILayout.EndVertical();
                }
            }

            GUILayout.EndVertical();
            if (GUI.changed)
            {
                EditorUtility.SetDirty(target);
            }
        }
    }
Exemplo n.º 5
0
    protected override void Start()
    {
        shooterManager = GetComponent <vShooterManager>();

        base.Start();

        leftHand      = animator.GetBoneTransform(HumanBodyBones.LeftHand);
        rightHand     = animator.GetBoneTransform(HumanBodyBones.RightHand);
        rightUpperArm = animator.GetBoneTransform(HumanBodyBones.RightUpperArm);
        onlyArmsLayer = animator.GetLayerIndex("OnlyArms");
        headTrack     = GetComponent <vHeadTrack>();
        if (headTrack)
        {
            headTrack.onFinishUpdate.AddListener(UpdateAimBehaviour);
        }
        if (!controlAimCanvas)
        {
            Debug.LogWarning("Don't exist a AimCanvas in current scene", gameObject);
        }
        animator.updateMode = AnimatorUpdateMode.AnimatePhysics;
    }
Exemplo n.º 6
0
 internal void ExitLook(vHeadTrack vHeadTrack)
 {
     onExitLook.Invoke(vHeadTrack);
 }
Exemplo n.º 7
0
 internal void EnterLook(vHeadTrack vHeadTrack)
 {
     onEnterLook.Invoke(vHeadTrack);
 }