public void SetData(object state) { MovementSaveData data = (MovementSaveData)state; transform.position = data.position.ToVector(); transform.eulerAngles = data.rotation.ToVector(); GetComponent <Rigidbody2D>().velocity = new Vector2(data.acceleration.ToVector().x, data.acceleration.ToVector().y); }
public object CaptureState() { MovementSaveData data = new MovementSaveData(); data.position = new SerializableVector3(transform.position); data.rotation = new SerializableVector3(transform.eulerAngles); return(data); }
public MovementSaveData GetData() { MovementSaveData data = new MovementSaveData(); data.position = new SerializableVector3(transform.position); data.rotation = new SerializableVector3(transform.eulerAngles); data.acceleration = new SerializableVector3(new Vector3(rb.velocity.x, rb.velocity.y, 0)); return(data); }
public void RestoreState(object state) { MovementSaveData data = (MovementSaveData)state; navMeshAgent.enabled = false; transform.position = data.position.ToVector(); transform.eulerAngles = data.rotation.ToVector(); navMeshAgent.enabled = true; GetComponent <ActionScheduler>().CancelCurrentAction();//Not included in lecture 85, why? }