public void ResetPosition() { mementoState = MementoState.Idle; transform.position = _originalPosition; transform.rotation = _originalRotation; transform.localScale = _originalScale; }
public void PickUp(Mover mover) { mementoState = MementoState.PickedUp; _carrier = mover; transform.SetParent(mover.transform, false); transform.rotation = new Quaternion(0, 0, 0, 90); }
public void Drop() { mementoState = MementoState.Dropped; _carrier = null; transform.SetParent(_originalRoot, true); transform.rotation = _originalRotation; transform.localScale = _originalScale; _triggered = false; }
private void Awake() { _renderer = GetComponentInChildren <Renderer>(); _rigidbody = GetComponent <Rigidbody>(); _command = new MoveCommand(transform, speed); _memento = new MementoState(); StartCoroutine(CreateMemento()); }
/// <summary> /// Adciona um novo estado. /// </summary> public void PushState(MementoState newState) { m_states.Push(newState); }