void InitPlayer() { currentSize = startingSize; currentPlayer = sizes[startingSize]; currentPlayer.myJelly.SetPosition(startingPos.position, true); currentPlayer.myVCam.Priority = 1; }
public void Scale(int scaleBy) { if (currentSize + scaleBy >= 0 && currentSize + scaleBy <= sizes.Length - 1 && canScale) { canScale = false; JellyPlayer scaleTo = sizes[currentSize + scaleBy]; scaleTo.myJelly.SetPosition(currentPlayer.transform.position, true); scaleTo.myJelly.CentralPoint.transform.rotation = currentPlayer.myJelly.CentralPoint.transform.rotation; scaleTo.myVCam.Priority = 1; currentPlayer.myVCam.Priority = 0; for (int i = 0; i < scaleTo.myJelly.ReferencePoints.Count; i++) { scaleTo.myJelly.ReferencePoints[i].transform.position = currentPlayer.myJelly.ReferencePoints[i].transform.position; scaleTo.myJelly.ReferencePoints[i].Body2D.velocity = currentPlayer.myJelly.ReferencePoints[i].Body2D.velocity; } currentPlayer.SetInactive(); currentPlayer = scaleTo; if (currentSize + scaleBy < currentSize) { StartCoroutine(EjectBlob()); } currentSize += scaleBy; trajectory.ScaleDots(scaleBy, currentSize); camProxy.skipFrame = true; } }
IEnumerator Act(JellyPlayer j) { yield return(new WaitForSeconds(1f)); j.myJelly.SetPosition(j.homePos, true); yield return(new WaitForEndOfFrame()); j.gameObject.SetActive(true); canScale = true; }
public void Activate(JellyPlayer j) { StartCoroutine("Act", j); }
void Awake() { Instance = this; }