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"); }
/// <summary> /// 初期化 /// </summary> protected override void InitSingleton() { Particle.Create(); Bone.Create(); Mesh.Create(); Team.Create(); Wind.Create(); Compute.Create(); }
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"); }
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(); }
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(); }
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; } } } }