public int MoveBallard(int index, int amount) { if (index < 0 || index >= m_ballards.Count) { return(index); } BallardData ballard = m_ballards[index]; return(MoveBallard(ballard, amount)); }
public void RemoveBallard(int index) { if (index < 0 || index >= m_ballards.Count) { return; } BallardData ballard = m_ballards[index]; RemoveBallard(ballard); }
public int MoveBallard(BallardData ballard, int amount) { int position = m_ballards.IndexOf(ballard) + amount; position = Mathf.Min(m_ballards.Count - 1, position); // don't exceed count position = Mathf.Max(0, position); // don't exceed 0 m_ballards.Remove(ballard); m_ballards.Insert(position, ballard); return(position); }
public bool GetBallard(int index, out BallardData ballard) { if (index < 0 || index >= m_ballards.Count) { Debug.LogError("Index out of range, Ballard #" + index.ToString() + " doesn't exist!"); ballard = null; return(false); } ballard = m_ballards[index]; return(true); }
private void AssignChord() { if (ballardCurrent.Value == -1 || sequenceCurrent.Value == -1 || chordCurrent.Value == -1) { return; } BallardData ballard = null; if (BallardDatabase.Instance.GetBallard(ballardCurrent.Value, out ballard) == false) { return; } SequenceData sequence = null; if (ballard.GetSequence(sequenceCurrent.Value, out sequence) == false) { return; } ChordData chord = null; if (sequence.GetChord(chordCurrent.Value, out chord) == false) { return; } if (chord.clip == null) { Debug.LogError("Chord Clip is null!"); return; } clip.Value = chord.clip; }
void OnGUI_Sequence(BallardData parent, SequenceData sequence) { sequence.debug_isFoldedOut = EditorGUILayout.Foldout(sequence.debug_isFoldedOut, sequence.name); if (sequence.debug_isFoldedOut == false) { return; } ++EditorGUI.indentLevel; EditorGUILayout.BeginHorizontal(); { GUILayout.Space((EditorGUI.indentLevel + 2) * 10.0f); GUILayout.Label("Name: ", GUILayout.MaxWidth(64.0f)); sequence.name = EditorGUILayout.TextField(sequence.name); if (GUILayout.Button("Add Chord" , EditorStyles.miniButtonLeft , GUILayout.MaxWidth(128.0f))) { sequence.AddChord(new ChordData()); } if (GUILayout.Button("Remove Chord" , EditorStyles.miniButtonRight , GUILayout.MaxWidth(128.0f))) { int i = sequence.chords.Count - 1; sequence.RemoveChord(i); } } EditorGUILayout.EndHorizontal(); for (int i = 0; i < sequence.chords.Count; ++i) { OnGUI_Chord(sequence, sequence.chords[i]); } --EditorGUI.indentLevel; }
void OnGUI_Ballard(BallardData ballard) { int index = target.m_ballards.IndexOf(ballard); EditorGUILayout.BeginHorizontal(); { isBallardFoldedOut[index] = EditorGUILayout.Foldout(isBallardFoldedOut[index], ballard.name); if (GUILayout.Button(" + " , EditorStyles.miniButtonLeft , GUILayout.MaxWidth(32.0f))) { int position = target.MoveBallard(index, -1); SwitchValue(ref isBallardFoldedOut[index], ref isBallardFoldedOut[position]); } if (GUILayout.Button(" - " , EditorStyles.miniButtonRight , GUILayout.MaxWidth(32.0f))) { int position = target.MoveBallard(index, 1); SwitchValue(ref isBallardFoldedOut[index], ref isBallardFoldedOut[position]); } if (GUILayout.Button("Remove" , EditorStyles.miniButtonRight , GUILayout.MaxWidth(128.0f))) { target.RemoveBallard(index); } } EditorGUILayout.EndHorizontal(); if (isBallardFoldedOut[index] == false) return; ++EditorGUI.indentLevel; // Ballard Options EditorGUILayout.BeginHorizontal(); { GUILayout.Space((EditorGUI.indentLevel + 1) * 10.0f); GUILayout.Label("Name: ", GUILayout.MaxWidth(64.0f)); ballard.name = EditorGUILayout.TextField(ballard.name); } EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); { GUILayout.Space((EditorGUI.indentLevel + 1) * 10.0f); GUILayout.Label("Duration: ", GUILayout.MaxWidth(64.0f)); ballard.duration = EditorGUILayout.FloatField(ballard.duration); } EditorGUILayout.EndHorizontal(); // Ballard Sequences ballard.debug_isFoldedOut = EditorGUILayout.Foldout(ballard.debug_isFoldedOut, "Sequences"); if (ballard.debug_isFoldedOut == true) { ++EditorGUI.indentLevel; for (int i = 0; i < ballard.sequences.Count; ++i) { OnGUI_Sequence(ballard, ballard.sequences[i]); } --EditorGUI.indentLevel; } --EditorGUI.indentLevel; EditorGUILayout.Separator(); EditorGUILayout.Separator(); EditorGUILayout.Separator(); }
void OnGUI_Sequence(BallardData parent, SequenceData sequence) { sequence.debug_isFoldedOut = EditorGUILayout.Foldout(sequence.debug_isFoldedOut, sequence.name); if (sequence.debug_isFoldedOut == false) return; ++EditorGUI.indentLevel; EditorGUILayout.BeginHorizontal(); { GUILayout.Space((EditorGUI.indentLevel + 2) * 10.0f); GUILayout.Label("Name: ", GUILayout.MaxWidth(64.0f)); sequence.name = EditorGUILayout.TextField(sequence.name); if (GUILayout.Button("Add Chord" , EditorStyles.miniButtonLeft , GUILayout.MaxWidth(128.0f))) { sequence.AddChord(new ChordData()); } if (GUILayout.Button("Remove Chord" , EditorStyles.miniButtonRight , GUILayout.MaxWidth(128.0f))) { int i = sequence.chords.Count - 1; sequence.RemoveChord(i); } } EditorGUILayout.EndHorizontal(); for (int i = 0; i < sequence.chords.Count; ++i) { OnGUI_Chord(sequence, sequence.chords[i]); } --EditorGUI.indentLevel; }
public void RemoveBallard(BallardData ballard) { m_ballards.Remove(ballard); }
public void AddBallard(BallardData ballard) { m_ballards.Add(ballard); }
void OnGUI_Ballard(BallardData ballard) { int index = target.m_ballards.IndexOf(ballard); EditorGUILayout.BeginHorizontal(); { isBallardFoldedOut[index] = EditorGUILayout.Foldout(isBallardFoldedOut[index], ballard.name); if (GUILayout.Button(" + " , EditorStyles.miniButtonLeft , GUILayout.MaxWidth(32.0f))) { int position = target.MoveBallard(index, -1); SwitchValue(ref isBallardFoldedOut[index], ref isBallardFoldedOut[position]); } if (GUILayout.Button(" - " , EditorStyles.miniButtonRight , GUILayout.MaxWidth(32.0f))) { int position = target.MoveBallard(index, 1); SwitchValue(ref isBallardFoldedOut[index], ref isBallardFoldedOut[position]); } if (GUILayout.Button("Remove" , EditorStyles.miniButtonRight , GUILayout.MaxWidth(128.0f))) { target.RemoveBallard(index); } } EditorGUILayout.EndHorizontal(); if (isBallardFoldedOut[index] == false) { return; } ++EditorGUI.indentLevel; // Ballard Options EditorGUILayout.BeginHorizontal(); { GUILayout.Space((EditorGUI.indentLevel + 1) * 10.0f); GUILayout.Label("Name: ", GUILayout.MaxWidth(64.0f)); ballard.name = EditorGUILayout.TextField(ballard.name); } EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); { GUILayout.Space((EditorGUI.indentLevel + 1) * 10.0f); GUILayout.Label("Duration: ", GUILayout.MaxWidth(64.0f)); ballard.duration = EditorGUILayout.FloatField(ballard.duration); } EditorGUILayout.EndHorizontal(); // Ballard Sequences ballard.debug_isFoldedOut = EditorGUILayout.Foldout(ballard.debug_isFoldedOut, "Sequences"); if (ballard.debug_isFoldedOut == true) { ++EditorGUI.indentLevel; for (int i = 0; i < ballard.sequences.Count; ++i) { OnGUI_Sequence(ballard, ballard.sequences[i]); } --EditorGUI.indentLevel; } --EditorGUI.indentLevel; EditorGUILayout.Separator(); EditorGUILayout.Separator(); EditorGUILayout.Separator(); }
public bool GetBallard(int index, out BallardData ballard) { if (index < 0 || index >= m_ballards.Count) { Debug.LogError("Index out of range, Ballard #" + index.ToString() + " doesn't exist!"); ballard = null; return false; } ballard = m_ballards[index]; return true; }
public int MoveBallard(BallardData ballard, int amount) { int position = m_ballards.IndexOf(ballard) + amount; position = Mathf.Min(m_ballards.Count - 1, position); // don't exceed count position = Mathf.Max(0, position); // don't exceed 0 m_ballards.Remove(ballard); m_ballards.Insert(position, ballard); return position; }