Example #1
0
 void Awake()
 {
     m_targetRaycast = GetComponentInParent <TargetRaycast>();
 }
Example #2
0
    public static TargetRaycast TargetRaycastSettings(TargetRaycast ray)
    {
        ray.active = EditorGUILayout.Toggle("Target raycast", ray.active, GUILayout.Width(mWidth));
        if(ray.active)
        {
            EditorGUILayout.BeginVertical("box");
            GUILayout.Label("Raycast settings", EditorStyles.boldLabel);
            ray.distance = EditorGUILayout.FloatField("Distance", ray.distance, GUILayout.Width(mWidth));
            ray.layerMask = EditorGUILayout.LayerField("Layer", ray.layerMask, GUILayout.Width(mWidth));
            ray.ignoreUser = EditorGUILayout.Toggle("Ignore user", ray.ignoreUser, GUILayout.Width(mWidth));
            EditorGUILayout.Separator();

            ray.mouseTouch = EditorHelper.MouseTouchControlSettings(ray.mouseTouch, true);

            ray.rayOrigin = (TargetRayOrigin)EditorTab.EnumToolbar("Ray origin", (int)ray.rayOrigin, typeof(TargetRayOrigin));
            if(TargetRayOrigin.USER.Equals(ray.rayOrigin))
            {
                ray.pathToChild = EditorGUILayout.TextField("Path to child", ray.pathToChild, GUILayout.Width(mWidth*1.2f));
                if(!ray.mouseTouch.Active())
                {
                    ray.rayDirection = EditorGUILayout.Vector3Field("Direction (local space)", ray.rayDirection, GUILayout.Width(mWidth));
                }
            }
            ray.offset = EditorGUILayout.Vector3Field("Offset", ray.offset, GUILayout.Width(mWidth));
            EditorGUILayout.Separator();

            GUILayout.Label("AI target", EditorStyles.boldLabel);
            ray.pathToTarget = EditorGUILayout.TextField("Path to child", ray.pathToTarget, GUILayout.Width(mWidth*1.2f));
            ray.targetOffset = EditorGUILayout.Vector3Field("Offset", ray.targetOffset, GUILayout.Width(mWidth));
            EditorGUILayout.Separator();
            EditorGUILayout.EndVertical();
        }
        return ray;
    }