// Use this for initialization public virtual void Initialize(Material _parent) { parent = _parent; holder = _parent.GetHolder(); sprite = _parent.GetSprite(); myData = _parent.GetMementoData(); position = _parent.GetPosition(); z_offset = _parent.GetHeight(); z_velocity = _parent.GetZVelocity(); momentum = _parent.GetMomentum(); }
//Save State method for time blink. This method saves the object's state into an object public virtual Memento CreateMemento() { //Keep track of item's memento so that should the item be placed in the inventory, it can be retrieved if (curMemento == null) { mementoData = Instantiate((MementoData)GameManager.instance.GetDataReference(GameManager.DataType.t_MementoData)); Memento newMemento = Instantiate(MementoType).GetComponent <Memento>(); newMemento.Initialize(this); return(newMemento); } else { curMemento.Initialize(this); return(curMemento); } }