void Awake() { endScale = foldedXform.localScale; endPosition = foldedXform.localPosition; if(startFolded) { state = FoldState.folded; foldedXform.position = spriteContainer.transform.position; foldedXform.localScale = foldScale; foldedXform.gameObject.SetActive(false); } }
void Finish() { switch(state) { case FoldState.folding: state = FoldState.folded; foldedXform.gameObject.SetActive(false); break; case FoldState.unfolding: state = FoldState.unfolded; break; default: break; } }
public void Fold() { switch(state) { case FoldState.folded: case FoldState.folding: state = FoldState.unfolding; smoothVelocity = -smoothVelocity; smoothScale = -smoothScale; foldedXform.gameObject.SetActive(true); break; case FoldState.unfolded: case FoldState.unfolding: state = FoldState.folding; smoothVelocity = -smoothVelocity; smoothScale = -smoothScale; break; default: break; } }