Create() private method

private Create ( ) : Bone,
return Bone,
コード例 #1
0
    private IEnumerator Attack()
    {
        speed_box = 0;
        yield return(null);

        speed_box = speed;
        yield return(null);

        speed = 0;
        yield return(new WaitForSeconds(0.5f));

        //Instantiate(bone, transform.position, transform.rotation);
        GameObject shot = Instantiate(bone, transform.position, transform.rotation) as GameObject;

        yield return(null);

        Bone s = shot.GetComponent <Bone>();

        yield return(null);

        s.Create(transform.localScale.x);
        yield return(new WaitForSeconds(0.5f));

        speed = speed_box;
        // yield return new WaitForSeconds(0.5f);

        StopCoroutine("Attack");
    }
コード例 #2
0
 /// <summary>
 /// 初期化
 /// </summary>
 protected override void InitSingleton()
 {
     Particle.Create();
     Bone.Create();
     Mesh.Create();
     Team.Create();
     Wind.Create();
     Compute.Create();
 }
コード例 #3
0
    private IEnumerator Attack()
    {
        GameObject shot = Instantiate(bone, transform.position, transform.rotation) as GameObject;

        yield return(null);

        Bone s = shot.GetComponent <Bone>();

        yield return(null);

        s.Create(transform.localScale.x);

        StopCoroutine("Attack");
    }
コード例 #4
0
    public override void OnInspectorGUI()
    {
        DrawDefaultInspector();

        EditorGUILayout.Separator();
        if (GUILayout.Button("FlipY") && !bone.editMode)
        {
            bone.flipY = !bone.flipY;
        }
        else if (bone.editMode)
        {
            EditorGUILayout.HelpBox("Need to uncheck Edit in skeleton.", MessageType.Error);
        }

        if (GUILayout.Button("FlipX") && !bone.editMode)
        {
            bone.flipX = !bone.flipX;
        }
        else if (bone.editMode)
        {
            EditorGUILayout.HelpBox("Need to uncheck Edit in skeleton.", MessageType.Error);
        }
        EditorGUILayout.Separator();

        GUILayout.BeginHorizontal();

        if (GUILayout.Button("Add child"))
        {
            Bone.Create();
        }
        if (GUILayout.Button("Split"))
        {
            Bone.Split();
        }
        if (GUILayout.Button("Add IK"))
        {
            bone.AddIK();
        }

        GUILayout.EndHorizontal();
    }
コード例 #5
0
    public override void OnInspectorGUI()
    {
        DrawDefaultInspector();

        GUILayout.BeginHorizontal();

        if (GUILayout.Button("Add child"))
        {
            Bone.Create();
        }
        if (GUILayout.Button("Split"))
        {
            Bone.Split();
        }
        if (GUILayout.Button("Add IK"))
        {
            bone.AddIK();
        }

        GUILayout.EndHorizontal();
    }
コード例 #6
0
    void OnSceneGUI()
    {
        Handles.color = Color.green;

        if (bone.editMode)
        {
            Event current = Event.current;

            if (bone.enabled && !current.control)
            {
                EditorGUI.BeginChangeCheck();
                Vector3 v = Handles.FreeMoveHandle(bone.Head, Quaternion.identity, 0.1f, Vector3.zero, Handles.RectangleHandleCap);
                Undo.RecordObject(bone.transform, "Change bone transform");
                Undo.RecordObject(bone, "Change bone");
                bone.length       = Vector2.Distance(v, bone.transform.position);
                bone.transform.up = (v - bone.transform.position).normalized;
                if (EditorGUI.EndChangeCheck())
                {
                    EditorUtility.SetDirty(bone);
                }
            }

            int controlID = GUIUtility.GetControlID(FocusType.Passive);

            if (current.control)
            {
                switch (current.GetTypeForControl(controlID))
                {
                case EventType.MouseDown:
                    current.Use();
                    break;

                case EventType.MouseUp:
                    Undo.FlushUndoRecordObjects();
                    Bone b = Bone.Create();
                    Selection.activeGameObject = b.gameObject;

                    Vector3 p = HandleUtility.GUIPointToWorldRay(current.mousePosition).origin;
                    p              = new Vector3(p.x, p.y);
                    b.length       = Vector3.Distance(p, bone.Head);
                    b.transform.up = p - (Vector3)bone.Head;

                    Event.current.Use();
                    break;

                case EventType.Layout:
                    HandleUtility.AddDefaultControl(controlID);
                    break;
                }
            }
            if (Event.current.control && Event.current.type == EventType.mouseDown)
            {
            }
        }
        else
        {
            var ik = bone.GetComponent <InverseKinematics>();
            if (bone.transform.parent != null && (ik == null || !ik.enabled || ik.influence == 0) && bone.snapToParent)
            {
                Transform parent = bone.transform.parent;
                float     length = Vector2.Distance(parent.position, bone.transform.position);

                Bone parentBone = parent.GetComponent <Bone>();

                if (parentBone != null && Mathf.Abs(parentBone.length - length) > 0.0001)
                {
                    bone.transform.parent = null;
                    parent.up             = (bone.transform.position - parent.position).normalized;
                    parentBone.length     = length;
                    bone.transform.parent = parent;
                }
            }
        }
    }