public void Reset() { DayTime = 0; DayScene.MaxAccelerant = GlobalDataScript.MaxAccelerant; DayScene.AccelerantInHand = GlobalDataScript.AccelerantInHand; DayScene.MaxHealth = GlobalDataScript.MaxHealth; DayScene.MeleeWeaponDmg = GlobalDataScript.MeleeWeaponDmg; DayScene.RangeWeaponDmg = GlobalDataScript.RangeWeaponDmg; Day = GlobalDataScript.Day; this.canvases[3].GetComponentInChildren <Text>().text = "" + "\tMagic Circle Max Health: " + DayScene.MaxHealth + "\n\tHeart Pouches: " + DayScene.MaxAccelerant + "\n\tSacrificial Hearts: " + DayScene.AccelerantInHand + "\n\tMelee Attack: " + DayScene.MeleeWeaponDmg + "\n\tRanged Attack: " + DayScene.RangeWeaponDmg; SpeedBonus = (TimeinaDay - DayScene.DayTime) * 10; this.canvases[4].GetComponentInChildren <Text>().text = "Rest Until Dawn\n(Gain Temporary " + DayScene.SpeedBonus + "% Speed Bonus)"; SelectPanel.SetActive(true); SelectorIcon.SetActive(true); texts[0].text = " Day " + (Day + 1) + " -- " + (TimeinaDay - DayTime) + " Hours Until Nightfall";; SelectPossible = true; SelectState = SelectStates.Displaying; SelectedPanelNumber = 0; FadeCanvasStartingColor = new Color32(0, 0, 0, 0); StartBackgroundColor = new Color32(129, 218, 255, 251); EndBackgroundColor = new Color32(45, 79, 119, 255); FadeCanvasEndingColor = new Color32(0, 0, 0, 255); SelectPanel.transform.localPosition = canvases[0].transform.localPosition; BackUpPanel.transform.localPosition = new Vector3(canvases[0].transform.localPosition.x, canvases[0].transform.localPosition.y - (BackUpPanel.GetComponent <RectTransform>().rect.height / 2) - (canvases[0].GetComponent <RectTransform>().rect.height / 4), canvases[0].transform.localPosition.z); CanvasHoverState = CanvasHoverStates.GoingUp; CanvasHoverStartingY = canvases[0].transform.localPosition.y; CanvasHoverEndingY = CanvasHoverStartingY + (canvases[0].GetComponent <RectTransform>().rect.height / 15); Egg.GetComponent <Image>().sprite = eggSprites[Day]; EggStart = Egg.transform.localPosition; EggWiggle = new Vector3(EggStart.x + Random.Range(-2f, 2f), EggStart.y + Random.Range(-1f, 1f), EggStart.z); EggPriorLocation = EggStart; EggWiggling = false; FinalTransition = false; FinalTransitionTimer = 0.0f; LagFinalTransitionTime = 2.5f; ObjectFinalTransitionXoffset.Clear(); ObjectFinalTransitionYoffset.Clear(); canvases[6].GetComponent <Image>().color = FadeCanvasStartingColor; LERPtimer = 0; for (int x = 0; x < ObjectsMovingInFinalTransition.Length; x++) { ObjectFinalTransitionXoffset.Add(0f); ObjectFinalTransitionYoffset.Add(0f); FinalTransitionOffset(x); } }
void Update() { if (IntroFading) { FinalTransitionTimer += Time.deltaTime; if (FinalTransitionTimer >= LagFinalTransitionTime) { IntroFading = false; FinalTransitionTimer = 0.0f; } else { canvases[10].GetComponent <Image>().color = Color32.Lerp(new Color32(255, 255, 255, 255), new Color32(255, 255, 255, 0), FinalTransitionTimer / (LagFinalTransitionTime - 1f)); } } if (CanvasHoverState == CanvasHoverStates.GoingUp && (DayTime < TimeinaDay)) { CanvasHoverTimer += Time.deltaTime; if (CanvasHoverTimer >= LagCanvasHoverTimer) { CanvasHoverTimer = 0.0f; CanvasHoverState = CanvasHoverStates.GoingDown; float x = Random.Range(0, 3); if (x > 1) { EggPriorLocation = Egg.transform.localPosition; EggWiggle = new Vector3(EggStart.x + Random.Range(-3f, 3f), EggStart.y, EggStart.z); EggWiggling = true; } } else { canvases[SelectedPanelNumber].transform.localPosition = Vector3.Lerp(OffsetVector(CanvasHoverStartingY), OffsetVector(CanvasHoverEndingY), CanvasHoverTimer / LagCanvasHoverTimer); SelectPanel.transform.localPosition = canvases[SelectedPanelNumber].transform.localPosition; CorrectSelectorIcon(); } } else if (CanvasHoverState == CanvasHoverStates.GoingDown && (DayTime < TimeinaDay)) { if (EggWiggling) { Egg.transform.localPosition = Vector3.Lerp(EggPriorLocation, EggWiggle, CanvasHoverTimer / LagCanvasHoverTimer); } CanvasHoverTimer += Time.deltaTime; if (CanvasHoverTimer >= LagCanvasHoverTimer) { CanvasHoverTimer = 0.0f; CanvasHoverState = CanvasHoverStates.GoingUp; EggWiggling = false; } else { canvases[SelectedPanelNumber].transform.localPosition = Vector3.Lerp(OffsetVector(CanvasHoverEndingY), OffsetVector(CanvasHoverStartingY), CanvasHoverTimer / LagCanvasHoverTimer); SelectPanel.transform.localPosition = canvases[SelectedPanelNumber].transform.localPosition; } CorrectSelectorIcon(); } if (timeron) { LERPtimer += Time.deltaTime; if (LERPtimer >= LagTimeFade) { timeron = false; FinalTransition = true; texts[0].text = "Night Arrives"; } else { canvases[6].GetComponent <Image>().color = Color32.Lerp(FadeCanvasStartingColor, FadeCanvasEndingColor, LERPtimer / LagTimeFade); texts[0].text = "Night Approaches"; texts[0].color = Color32.Lerp(new Color32(139, 32, 221, 255), FadeCanvasEndingColor, LERPtimer / LagTimeFade); } } if (TimeinaDay <= DayTime) { texts[0].text = " Night Arrives";; } else { texts[0].text = " Day " + (Day + 1) + " -- " + (TimeinaDay - DayTime) + " Hours Until Nightfall";; if ((TimeinaDay - DayTime) == 1) { texts[0].text = " Day " + (Day + 1) + " -- " + "1 Hour Until Nightfall";; } } if (SelectPossible) { SelectPanelTimer += Time.deltaTime; if ((SelectState == SelectStates.Displaying) && (SelectPanelTimer >= SelectPanelDisplayTime)) { SelectPanelTimer = 0.0f; SelectState = SelectStates.FadingOut; } else if ((SelectState == SelectStates.FadingOut) && (SelectPanelTimer >= SelectPanelFadeTime)) { SelectPanelTimer = 0.0f; SelectState = SelectStates.FadingIn; } else if ((SelectState == SelectStates.FadingOut) && (SelectPanelTimer < SelectPanelFadeTime)) { SelectPanel.GetComponent <Image>().color = Color32.Lerp(StartingSelectColor, EndingSelectColor, SelectPanelTimer / SelectPanelFadeTime); SelectorIcon.GetComponent <Image>().color = Color32.Lerp(new Color32(255, 255, 255, 255), new Color32(255, 255, 255, 0), SelectPanelTimer / SelectPanelFadeTime); } else if ((SelectState == SelectStates.FadingIn) && (SelectPanelTimer >= SelectPanelFadeTime)) { SelectPanelTimer = 0.0f; SelectState = SelectStates.Displaying; } else if ((SelectState == SelectStates.FadingIn) && (SelectPanelTimer < SelectPanelFadeTime)) { SelectPanel.GetComponent <Image>().color = Color32.Lerp(EndingSelectColor, StartingSelectColor, SelectPanelTimer / SelectPanelFadeTime); SelectorIcon.GetComponent <Image>().color = Color32.Lerp(new Color32(255, 255, 255, 0), new Color32(255, 255, 255, 255), SelectPanelTimer / SelectPanelFadeTime); } } if (canvases[5].GetComponentInChildren <SunScript>().Moving == false && ((DayTime + canvases[SelectedPanelNumber].GetComponent <DayChoice>().ChoiceCost) <= TimeinaDay) && (Input.GetKeyUp("space") || Input.GetKeyUp("return"))) { MakeSelection(canvases[SelectedPanelNumber].GetComponent <DayChoice>()); } if (Input.GetKeyUp("s") && canvases[5].GetComponentInChildren <SunScript>().Moving == false) { canvases[SelectedPanelNumber].transform.localPosition = OffsetVector(CanvasHoverStartingY); if (SelectedPanelNumber == 0) { SelectedPanelNumber = 1; SelectPanel.transform.localPosition = canvases[1].transform.localPosition; } else if (SelectedPanelNumber == 1) { SelectedPanelNumber = 2; SelectPanel.transform.localPosition = canvases[2].transform.localPosition; } else if (SelectedPanelNumber == 2) { SelectedPanelNumber = 7; SelectPanel.transform.localPosition = canvases[7].transform.localPosition; } else if (SelectedPanelNumber == 7) { SelectedPanelNumber = 8; SelectPanel.transform.localPosition = canvases[8].transform.localPosition; } else if (SelectedPanelNumber == 8) { SelectedPanelNumber = 4; SelectPanel.transform.localPosition = canvases[4].transform.localPosition; } else if (SelectedPanelNumber == 4) { SelectedPanelNumber = 0; SelectPanel.transform.localPosition = canvases[0].transform.localPosition; } CorrectSelectorIcon(); } else if (Input.GetKeyUp("w") && canvases[5].GetComponentInChildren <SunScript>().Moving == false) { canvases[SelectedPanelNumber].transform.localPosition = OffsetVector(CanvasHoverStartingY); if (SelectedPanelNumber == 0) { SelectedPanelNumber = 4; SelectPanel.transform.localPosition = canvases[4].transform.localPosition; } else if (SelectedPanelNumber == 1) { SelectedPanelNumber = 0; SelectPanel.transform.localPosition = canvases[0].transform.localPosition; } else if (SelectedPanelNumber == 2) { SelectedPanelNumber = 1; SelectPanel.transform.localPosition = canvases[1].transform.localPosition; } else if (SelectedPanelNumber == 7) { SelectedPanelNumber = 2; SelectPanel.transform.localPosition = canvases[2].transform.localPosition; } else if (SelectedPanelNumber == 8) { SelectedPanelNumber = 7; SelectPanel.transform.localPosition = canvases[7].transform.localPosition; } else if (SelectedPanelNumber == 4) { SelectedPanelNumber = 8; SelectPanel.transform.localPosition = canvases[8].transform.localPosition; } CorrectSelectorIcon(); } //Final Scene Timer (moves visible objects like egg to center of screen if (FinalTransition) { FinalTransitionTimer += Time.deltaTime; if (FinalTransitionTimer >= LagFinalTransitionTime) { //FinalTransition = false; Fade(); } else { Egg.transform.localPosition = Vector3.Lerp(EggPriorLocation, new Vector3(2, 80, 0), FinalTransitionTimer / LagFinalTransitionTime); for (int x = 0; x < ObjectsMovingInFinalTransition.Length; x++) { Vector3 startVector = new Vector3(EggPriorLocation.x + ObjectFinalTransitionXoffset[x], EggPriorLocation.y + ObjectFinalTransitionYoffset[x], 0); Vector3 endVector = new Vector3(0 + ObjectFinalTransitionXoffset[x] + 2, 0 + ObjectFinalTransitionYoffset[x] + 80, 0); ObjectsMovingInFinalTransition[x].transform.localPosition = Vector3.Lerp(startVector, endVector, FinalTransitionTimer / LagFinalTransitionTime); } EggWiggling = false; CanvasHoverTimer = 0.0f; } } }