public void updatePotentialPartnersSprites(List <Character> potentialConversationPartners) { for (int i = 0; i < 3; i++) { Image partnerPortrait = GameObject.Find("Character " + (i + 1) + " Portrait").GetComponent <Image>(); Text partnerNameplate = GameObject.Find("Character " + (i + 1) + " NamePlate").GetComponent <Text>(); Text partnerLoveAmount = GameObject.Find("Character " + (i + 1) + " LoveAmount").GetComponent <Text>(); if (i < potentialConversationPartners.Count) { partnerPortrait.sprite = BackgroundSwapper.createSpriteFromTex2D(potentialConversationPartners[i].image); partnerNameplate.text = potentialConversationPartners[i].givenName + " " + potentialConversationPartners[i].surname; if (potentialConversationPartners[i] is DateableCharacter) { partnerLoveAmount.text = "In Love Amount: " + potentialConversationPartners[i].inLoveAmount.ToString(); } else { partnerLoveAmount.text = ""; } } else { myAnimationMaestro.disablePartnerSelectionUI(partnerPortrait, partnerNameplate, partnerLoveAmount); } } }
void MoveTopToBottom() { BackgroundBoundFinder topBound = Backgrounds [CurrentTopIndex].GetComponent <BackgroundBoundFinder> (); BackgroundBoundFinder bottomBound = Backgrounds [CurrentBottomIndex].GetComponent <BackgroundBoundFinder> (); topBound.transform.position = new Vector3( topBound.transform.position.x, bottomBound.MinY + (topBound.transform.position.y - topBound.MaxY), topBound.transform.position.z ); topBound.GetComponent <BackgroundController> ().Init(); if (CurrentTopIndex < Backgrounds.Length - 1) { CurrentTopIndex++; } else { CurrentTopIndex = 0; } if (CurrentBottomIndex < Backgrounds.Length - 1) { CurrentBottomIndex++; } else { CurrentBottomIndex = 0; } BackgroundSwapper bg = topBound.GetComponent <BackgroundSwapper> (); ChangeBG(bg); }
void MoveBackgrounds() { for (int i = 0; i < Backgrounds.Length; i++) { BackgroundSwapper bs = Backgrounds [i]; bs.Move(MovingDistance * Time.deltaTime); if (MovingDistance.y > 0) { // moving up if (i == CurrentTopIndex) { if (bs.transform.position.y > TopPosition.transform.position.y) { MoveTopToBottom(); } } } else { // moving down if (i == CurrentBottomIndex) { if (bs.transform.position.y < BottomPosition.transform.position.y) { MoveBottomToTop(); } } } } }
void MoveBottomToTop() { BackgroundBoundFinder topBound = Backgrounds [CurrentTopIndex].GetComponent <BackgroundBoundFinder> (); BackgroundBoundFinder bottomBound = Backgrounds [CurrentBottomIndex].GetComponent <BackgroundBoundFinder> (); bottomBound.transform.position = new Vector3( bottomBound.transform.position.x, topBound.MaxY + (bottomBound.transform.position.y - bottomBound.MinY), bottomBound.transform.position.z ); if (CurrentTopIndex > 0) { CurrentTopIndex--; } else { CurrentTopIndex = Backgrounds.Length - 1; } if (CurrentBottomIndex > 0) { CurrentBottomIndex--; } else { CurrentBottomIndex = Backgrounds.Length - 1; } BackgroundSwapper bg = bottomBound.GetComponent <BackgroundSwapper> (); ChangeBG(bg); }
void ChangeBG(BackgroundSwapper bg) { if (IsChanging) { BGSeamModel seam = _CurrentSeamModel; // get next seam int randomRange = Random.Range(0, seam.NextArea.Length); BackgroundSwapper.BGType nextSeam = seam.NextArea [randomRange]; // change top bound content bg.CurrentType = nextSeam; bg.CurrentBackgroundModel.BGSprite.Init(); SetCurrentSeamModel(nextSeam); } }
private void updateUIComponentsForState(GameState.gameStates currentState) { this.deactivateUIComponents(); if (currentState == GameState.gameStates.COMMANDSEQUENCE) { mainPanel.SetActive(true); characterPanel.gameObject.SetActive(true); sequenceButtonsPanel.SetActive(true); updatePotentialPartnersSprites(myDialogueManager.getAllCurrentLocalPresentConversationPartners()); } else if (currentState == GameState.gameStates.CUTSCENE) { updateUIForCutSceneState(); } else if (currentState == GameState.gameStates.PROWL) { mainPanel.SetActive(true); mainPanelButtonsPanel.SetActive(true); mapButton.SetActive(!mySceneCatalogue.getIsInInteriorScene()); characterPanel.gameObject.SetActive(true); toggleMainPanelIfUIEnabled(mapPanel, this.mapEnabled); toggleMainPanelIfUIEnabled(journalPanel, this.journalEnabled); if (mainPanel.activeSelf == true) { myAnimationMaestro.writeDescriptionText(mySceneCatalogue.getLocationDescription(), textPanel); updatePotentialPartnersSprites(myDialogueManager.getAllCurrentLocalPresentConversationPartners()); updateSelectedPartnerButtonUI(); updateToggleInteriorButtonUI(); } } else if (currentState == GameState.gameStates.CONVERSATION) { dialoguePanel.SetActive(true); characterPanel.gameObject.SetActive(true); Image speakerPortrait = GameObject.Find("SpeakerPortrait").GetComponent <Image>(); speakerPortrait.sprite = BackgroundSwapper.createSpriteFromTex2D(myConversationTracker.currentConversation.speaker.portrait); askOnDateButton.SetActive(myConversationTracker.canAskOnDateEnabled()); } else if (currentState == GameState.gameStates.DATEINTRO) { mainPanel.SetActive(true); dateButtonsPanel.SetActive(myRelationshipCounselor.isAtDate); dateActionButton.SetActive(!myRelationshipCounselor.getDateAbandonedOrExperienced()); dateActionButton.GetComponentInChildren <Text>().text = mySceneCatalogue.getCurrentLocation().currentDateAction; characterPanel.gameObject.SetActive(true); updatePotentialPartnersSprites(new List <Character>() { myRelationshipCounselor.getDatePartner(mySceneCatalogue.getCurrentLocation(), myTimelord.getCurrentTimestep()) }); myAnimationMaestro.writeDescriptionText(mySceneCatalogue.getCurrentLocation().descriptionDate, textPanel); } else if (currentState == GameState.gameStates.DATE) { mainPanel.SetActive(true); dateButtonsPanel.SetActive(myRelationshipCounselor.isAtDate); dateActionButton.SetActive(!myRelationshipCounselor.getDateAbandonedOrExperienced()); dateActionButton.GetComponentInChildren <Text>().text = mySceneCatalogue.getCurrentLocation().currentDateAction; characterPanel.gameObject.SetActive(true); updatePotentialPartnersSprites(new List <Character>() { myRelationshipCounselor.getDatePartner(mySceneCatalogue.getCurrentLocation(), myTimelord.getCurrentTimestep()) }); } else if (currentState == GameState.gameStates.DATECUTSCENE) { mainPanel.SetActive(true); characterPanel.gameObject.SetActive(true); sequenceButtonsPanel.SetActive(true); updatePotentialPartnersSprites(GameObject.FindObjectOfType <CommandBuilder>().dateCutSceneCharList); } else if (currentState == GameState.gameStates.DATEOUTRO) { mainPanel.SetActive(true); dateButtonsPanel.SetActive(true); dateActionButton.SetActive(!myRelationshipCounselor.getDateAbandonedOrExperienced()); myAnimationMaestro.writeDescriptionText("One good date can change your life.", textPanel); } }