public void Selection(GameObject obj) { SoundManager.Ins.PlaySound(SoundManager.Ins._Select); PetData p = obj.GetComponent <PetData>(); if (int.Parse(countText.text) >= 5 && !p.selected) { Popup.Ins.PopupOne("Cannot select more than 5 characters.", "OK", null); return; } if (p.color == -1) { Popup.Ins.PopupOne("Please create an avatar for this pet first.", "OK", null); return; } Popup.Ins.PopupWaiting(true); int countIndex = p.transform.parent.childCount; int lastSelect = 0; for (int i = 0; i < countIndex; i++) { PetData pp = obj.transform.parent.GetChild(i).GetComponent <PetData>(); if (pp == null) { continue; } if (pp.selected) { lastSelect = i; continue; } } p.selected = !p.selected; if (p.selected) { countText.text = (int.Parse(countText.text) + 1).ToString(); p.transform.SetSiblingIndex(lastSelect + 1); } else { countText.text = (int.Parse(countText.text) - 1).ToString(); p.transform.SetSiblingIndex(lastSelect); } p.transform.GetChild(4).GetChild(0).gameObject.SetActive(p.selected); SaveSystem.A_EditPet(p, true); }
public void CallbackDelete(bool bo) { if (!bo) { return; } Player p = SaveSystem.A_LoadSaveGame(); for (int i = 0; i < p.pets.Count; i++) { if (petID == p.pets[i].id) { p.pets[i].status = -1; PetData petData = new PetData(); petData.CloneData(p.pets[i]); SaveSystem.A_EditPet(petData, true, LoadItem); popupEdit.SetActive(false); } } }
public void CloseInteract() { //PetData petData = SaveSystem.A_LoadPet(petAI.id); target.transform.localScale = new Vector3(0.3f, 0.3f, 1); target.transform.position = new Vector3(0, -1.5f, 0); target.transform.rotation = Quaternion.identity; petAI.rigidbody.constraints = RigidbodyConstraints2D.None; petAI.PetAct = PetActivity.Stand; petData.hunger = (int)petAI.Hunger; petData.happiness = (int)petAI.Happiness; Transform[] roots = target.GetComponentsInChildren <Transform>(); foreach (Transform g in roots) { g.gameObject.layer = 10; } interactCam.gameObject.SetActive(false); SaveSystem.A_EditPet(petData, true); if (foodDic.Count > 0) { SaveSystem.A_SaveListFood(foodDic); } petAI.Happiness = petAI.Happiness; petAI.Hunger = petAI.Hunger; target.layer = 10; timeer = 0; petAI.aleart = true; target = null; petAI = null; interactUI.SetActive(false); interactUIBG.SetActive(false); foodCanvasList.SetActive(false); dressUpBtn.onClick.Invoke(); gameMode = GameMode.Normal; }
public IEnumerator StatusAndRewardCalculator() { DateTime oldTime; int totalMin = 0; if (p.lastTimeInGame != null && p.lastTimeInGame.Length > 0) { oldTime = DateTime.Parse(p.lastTimeInGame); totalMin = (int)DateTime.Now.Subtract(oldTime).TotalMinutes; string datett = DateTime.Now.Year + DateTime.Now.Month.ToString("00") + DateTime.Now.Day.ToString("00") + DateTime.Now.Hour.ToString("00") + DateTime.Now.Minute.ToString("00"); string formm = "yyyyMMddHHmm"; } p.lastTimeInGame = DateTime.Now.ToString(); SaveSystem.A_SaveGame(p); for (int i = 0; i < petList.Count; i++) { m_Data = SaveSystem.A_LoadPet(petList[i].id); // Debug.LogError(m_Data.UUID.Length + "**" + m_Data.UUID); if (m_Data.UUID.Length != 10) { m_Data.UUID = "2019010112"; } string formm = "yyyyMMddHH"; DateTime oldDate = DateTime.ParseExact(m_Data.UUID, formm, null); oldTime = oldDate; totalMin = (int)DateTime.Now.Subtract(oldTime).TotalMinutes; string newTime = DateTime.Now.Year + DateTime.Now.Month.ToString("00") + DateTime.Now.Day.ToString("00") + DateTime.Now.Hour.ToString("00") /*+ DateTime.Now.Minute.ToString("00")*/; // Debug.LogError(newTime); m_Data.UUID = newTime; if (!m_Data.selected) { continue; } float happy = petList[i].Happiness; float hungy = petList[i].Hunger; float unitPerMin = 0.000115740741f; // float unitPerMin = 5f; if (Mathf.Abs(((unitPerMin * totalMin) - hungy)) < 40) { if (hungy > 40f) { float earlierMin = (hungy - 40) / unitPerMin; float afterMin = totalMin - earlierMin; petList[i].Hunger -= unitPerMin * totalMin; petList[i].Happiness -= (unitPerMin / 2) * earlierMin; petList[i].Happiness -= ((unitPerMin / 2) * afterMin) * 2; } else { petList[i].Hunger -= unitPerMin * totalMin; petList[i].Happiness -= unitPerMin * totalMin; } } else { petList[i].Hunger -= unitPerMin * totalMin; petList[i].Happiness -= (unitPerMin / 2) * totalMin; } m_Data.happiness = (int)petList[i].Happiness; m_Data.hunger = (int)petList[i].Hunger; //Reward getReward = false; if (m_Data.lastTimeReward.Length > 0 && petList[i].Happiness >= 50) { DateTime petDate = DateTime.Parse(m_Data.lastTimeReward); if (petDate.Day != DateTime.Now.Day) { m_Data.lastTimeReward = DateTime.Now.ToString("yyyy-MM-dd"); RandomReward(); yield return(null); SoundManager.Ins.PlaySound(SoundManager.Ins._Reward); Popup.Ins.PopupReward(m_Data.namePet + " has a gift for you.", Atlas.Ins.GetSprites(Atlas.Ins.reward.reward)[indexReward], CallbackReward); yield return(new WaitUntil(() => getReward == true)); } } if (m_Data.lastTimeReward.Length <= 0) { Debug.LogError("zxc"); m_Data.lastTimeReward = DateTime.Now.ToString("yyyy-MM-dd"); RandomReward(); yield return(null); SoundManager.Ins.PlaySound(SoundManager.Ins._Reward); Popup.Ins.PopupReward(m_Data.namePet + " has a gift for you.", Atlas.Ins.GetSprites(Atlas.Ins.reward.reward)[indexReward], CallbackReward); yield return(new WaitUntil(() => getReward == true)); } getReward = false; SaveSystem.A_EditPet(m_Data, true); yield return(null); } //Daily Reward if (PlayerPrefs.HasKey("DailyReward")) { DateTime dailyTime = DateTime.Parse(PlayerPrefs.GetString("DailyReward")); if (dailyTime.Day != DateTime.Now.Day) { SaveSystem.A_AddCoin(500); Popup.Ins.PopupReward("", lottery.point500, null); PlayerPrefs.SetString("DailyReward", DateTime.Now.ToString()); } } else { SaveSystem.A_AddCoin(500); Popup.Ins.PopupReward("", lottery.point500, null); PlayerPrefs.SetString("DailyReward", DateTime.Now.ToString()); } }