void OnFrameChanged() { Editor.CharacterAnimation currentAnim = CharacterEditor.Instance.CurrentAnimation(); if (currentAnim == null || currentAnim.hitBoxes.Count == 0) { _boxPanel.SetInteractible(false); _copyButton.interactable = false; _typeDropdown.interactable = false; UpdateParameter(); return; } Editor.HitBox currentHit = currentAnim.hitBoxes[CharacterEditor.Instance.SelectedHitId]; int frameId = CharacterEditor.Instance.SelectedFrame; currentHit.EnsureBoxExists(frameId); Editor.Box currentBox = currentHit.boxesPerFrame[frameId]; _enabledToggle.isOn = currentHit.enabledFrames[frameId]; if (currentBox != null) { if (!(currentBox.pointOne.Equals(FixedVector3.Zero) && currentBox.pointTwo.Equals(FixedVector3.Zero))) { _boxPanel.SetPoints(currentBox.pointOne, currentBox.pointTwo); } else if (_enabledToggle.isOn) { OnBoxChanged(); } } _boxPanel.SetInteractible(_enabledToggle.isOn); _copyButton.interactable = _enabledToggle.isOn; _typeDropdown.interactable = true; UpdateParameter(); }
public void OnCopyButton() { Editor.HitBox currentHit = CharacterEditor.Instance.GetHitBox(_hitsList.SelectedItem); Editor.Box originalBox = currentHit.boxesPerFrame[CharacterEditor.Instance.SelectedFrame]; copyFramesPanel.GetComponent <CopyFramesPanel>().Setup(originalBox, _hitsList.SelectedItem, true); copyFramesPanel.SetActive(true); }
public void OnCopyButton() { Editor.CollisionBox currentCollision = CharacterEditor.Instance.GetCollisionBox(_collisionsList.SelectedItem); Editor.Box originalBox = currentCollision.boxesPerFrame[CharacterEditor.Instance.SelectedFrame]; copyFramesPanel.GetComponent <CopyFramesPanel>().Setup(originalBox, _collisionsList.SelectedItem, false); copyFramesPanel.SetActive(true); }
protected void UpdateBox(int boxId, Editor.Box box, bool isSelected) { GameObject obj = boxObjects[boxId]; Vector3 scale = (box.pointTwo - box.pointOne).AsVector3(); Vector3 position = box.pointOne.AsVector3() + scale * 0.5f; obj.transform.localScale = scale; obj.transform.localPosition = position; obj.GetComponent <Renderer>().material.color = isSelected ? selectedColor : unselectedColor; }
public void Setup(Editor.Box originalBox, int listId, bool isHitFrame) { this.originalBox = originalBox; this.isHitFrame = isHitFrame; this.listId = listId; }
void SetBox(int boxId, List <Editor.Box> boxes, List <bool> enablings) { boxes[boxId] = new Editor.Box(originalBox.pointOne, originalBox.pointTwo); enablings[boxId] = true; }