public void Init(PromoPicInfo picInfo, bool lazyLoad = false) { base.Id = picInfo.id; base.Type = FeaturedItem.ItemType.PromoPic; this.Order = picInfo.order; this.picItem.Init(picInfo.picData, lazyLoad, false, false); if (picInfo.picData.HasSave) { PictureSaveData save = SharedData.Instance.GetSave(picInfo.picData); if (save != null) { this.picItem.AddSave(save); } } if (GeneralSettings.IsOldDesign) { this.titleLabel.text = picInfo.title; this.descLabel.text = picInfo.desc; } else { if (string.IsNullOrEmpty(picInfo.desc)) { this.descLabel.gameObject.SetActive(false); this.titleLabel.rectTransform.anchoredPosition = Vector2.zero; } else { this.descLabel.text = picInfo.desc; } this.titleLabel.text = picInfo.title; this.btnLabel.text = picInfo.btnLabel; } }
public void Init(DailyPicInfo picInfo) { base.Id = picInfo.id; this.Order = picInfo.order; base.Type = FeaturedItem.ItemType.Daily; if (GeneralSettings.IsOldDesign) { this.dayLabel.text = picInfo.day; this.monthLabel.text = picInfo.month; } else { this.dayLabel.text = picInfo.day + "\n" + picInfo.month; this.btnLabel.text = picInfo.btnLabel; } this.descLabel.text = picInfo.desc; this.picItem.Init(picInfo.picData, false, false, false); if (picInfo.picData.HasSave) { PictureSaveData save = SharedData.Instance.GetSave(picInfo.picData); if (save != null) { this.picItem.AddSave(save); } } }
private void SaveProcess() { PictureSaveData data = new PictureSaveData(); for (int i = 0; i < answerGroup.Count; i++) { data.answer.Add(answerGroup[i].letter.text); } for (int j = 0; j < letterGroup.Count; j++) { data.select.Add(letterGroup[j].letter.text); if (letterGroup[j].isShowing) { data.selectShowing.Add(true); } else { data.selectShowing.Add(false); } } for (int k = 0; k < answerDic.Count; k++) { data.answer_select.Add(answerDic[k].transform.GetSiblingIndex()); } TextManager.Instance.SaveProgress <PictureSaveData> ("PictureProgress.json", data); }
public void AddSave(PictureSaveData pictureSaveData) { DatabaseManager.AddSave(pictureSaveData); if (this.orderedMainPage != null) { for (int i = 0; i < this.orderedMainPage.Count; i++) { if (this.orderedMainPage[i].Id == pictureSaveData.Id) { this.orderedMainPage[i].SetSaveState(true); } } } if (this.featuredSection != null) { this.featuredSection.UpdateSaveState(pictureSaveData.Id, true); } if (this.newsTabInfo != null) { this.newsTabInfo.UpdateSaveState(pictureSaveData.Id, true); } if (this.dailyTabInfo != null) { this.dailyTabInfo.UpdateSaveState(pictureSaveData.Id, true); } }
public void AddSave(PictureSaveData save) { if (save == null) { return; } this.saveData = save; if (this.pd.picType == PictureType.System) { return; } string iconMaskPath = this.saveData.iconMaskPath; if (this.saveData.progres == 100) { this.labels.AddComplete(); } if (string.IsNullOrEmpty(iconMaskPath)) { return; } if (this.lazyLoad) { return; } this.saveIconTask = new LocalIconTask(iconMaskPath, new Action <bool, Texture2D>(this.SaveIconLoaded)); ImageManager.Instance.LoadLocalIcon(this.saveIconTask); }
public bool Create(PictureData picData) { this.timeFromLastAction = DateTime.Now; Texture2D texture2D = null; Texture2D c = null; PaletteData p = default(PaletteData); this.fillType = picData.FillType; if (picData.picType == PictureType.System) { if (this.Error != null) { this.Error(Gameboard.LoadError.Unknown); } return(false); } if (picData.picType == PictureType.Local) { try { texture2D = FileHelper.LoadTextureFromFile(picData.LineArt); texture2D.wrapMode = TextureWrapMode.Clamp; if (this.fillType == FillAlgorithm.Flood) { c = FileHelper.LoadTextureFromFile(picData.ColorMap); } string json = FileHelper.LoadTextFromFile(picData.Palette); p = JsonUtility.FromJson <PaletteData>(json); } catch (Exception ex) { if (this.Error != null) { this.Error(Gameboard.LoadError.FileMissing); UnityEngine.Debug.Log(ex.ToString()); } return(false); } } this.Create(texture2D, c, p); if (picData.HasSave) { PictureSaveData pictureSaveData = SharedData.Instance.GetSave(picData); if (pictureSaveData != null && pictureSaveData.steps != null) { this.LoadSave(pictureSaveData.steps); if (this.pictureSaveData != null) { this.pictureSaveData.AddTimeSpent(pictureSaveData.timeSpent); this.pictureSaveData.hintsUsed = pictureSaveData.hintsUsed; } } } return(true); }
public static void UpdateSave(PictureSaveData pictureSaveData) { try { SaveDb obj = DbTypeConvertor.FromPictureSaveData(pictureSaveData); DatabaseManager.db.UpdateTable(obj); } catch (Exception ex) { FMLogger.Log("upd saveData fail. " + ex.Message); } }
public static PictureSaveData GetSave(PictureData pd) { PictureSaveData result; try { SaveDb s = DatabaseManager.db.Get <SaveDb>(pd.Id); PictureSaveData pictureSaveData = DbTypeConvertor.ToPictureSaveData(s); result = pictureSaveData; } catch { result = null; } return(result); }
protected override void Awake() { base.Awake(); _instance = this; PictureSaveData saveData = TextManager.Instance.ReadProgress <PictureSaveData> ("PictureProgress.json"); if (saveData != null) { selectLetter = saveData.select; selectShowing = saveData.selectShowing; alreadyShowAnswer = saveData.answer; answer_select = saveData.answer_select; } hint.info = "picturehintcost"; hint.SetHint(); hint.HintEvent += ClickHint; }
public static SaveDb FromPictureSaveData(PictureSaveData save) { SaveDb saveDb = new SaveDb(); saveDb.PicId = save.Id; saveDb.PackId = save.PackId; saveDb.IconPath = save.iconMaskPath; saveDb.Progress = save.progres; saveDb.TimeSpent = save.timeSpent; saveDb.TimeStamp = DateTime.UtcNow.Ticks; saveDb.HintsUsed = save.hintsUsed; StepsDb obj = new StepsDb { steps = save.steps }; saveDb.StepsJsonStr = JsonUtility.ToJson(obj); return(saveDb); }
private PictureData ParseWebPic(WebPicData webPic, string[] serverPaths, List <PictureData> pics, bool forceManualSearch = false) { if (pics != null) { PictureData pictureData = pics.Find((PictureData pd) => pd.Id == webPic.id); if (pictureData != null) { pictureData.AddExtras(WebPicData.ParseLabels(webPic.labels), webPic.categories); if (pictureData.Solved) { PictureSaveData save = this.GetSave(pictureData); if (save != null && save.progres == 100) { pictureData.SetCompleted(); } } return(pictureData); } } else if (forceManualSearch) { PictureData pictureData2 = this.GetPictureData(webPic.id); if (pictureData2 != null) { pictureData2.AddExtras(WebPicData.ParseLabels(webPic.labels), webPic.categories); if (pictureData2.Solved) { PictureSaveData save2 = this.GetSave(pictureData2); if (save2 != null && save2.progres == 100) { pictureData2.SetCompleted(); } } return(pictureData2); } } PictureData pictureData3 = new PictureData(webPic, serverPaths); pictureData3.AddExtras(WebPicData.ParseLabels(webPic.labels), webPic.categories); return(pictureData3); }
public static PictureSaveData ToPictureSaveData(SaveDb s) { PictureSaveData pictureSaveData = new PictureSaveData(); pictureSaveData.Id = s.PicId; pictureSaveData.PackId = s.PackId; pictureSaveData.iconMaskPath = s.IconPath; pictureSaveData.progres = s.Progress; pictureSaveData.timeSpent = s.TimeSpent; pictureSaveData.hintsUsed = s.HintsUsed; StepsDb stepsDb = JsonUtility.FromJson <StepsDb>(s.StepsJsonStr); if (stepsDb != null && stepsDb.steps != null) { pictureSaveData.steps = stepsDb.steps; } else { pictureSaveData.steps = null; } return(pictureSaveData); }
private static void AddItem(PictureData pictureData) { int id = pictureData.Id; string filename = id + "i"; string directory = pictureData.PackId.ToString(); Texture2D iconText = DbDebugTest.GetIconText(); FileHelper.SaveTextureToFile(iconText, directory, filename); SharedData.Instance.AddPictureToPack(pictureData); PictureSaveData pictureSaveData = new PictureSaveData(); pictureSaveData.PackId = pictureData.PackId; pictureSaveData.Id = pictureData.Id; pictureSaveData.hintsUsed = UnityEngine.Random.Range(0, 5); pictureSaveData.iconMaskPath = "0/shared"; if (UnityEngine.Random.Range(0, 4) == 1) { pictureSaveData.progres = 100; } else { pictureSaveData.progres = UnityEngine.Random.Range(1, 99); } pictureSaveData.timeSpent = UnityEngine.Random.Range(1f, 99999f); pictureSaveData.steps = new List <SaveStep>(); int num = UnityEngine.Random.Range(400, 1000); for (int i = 0; i < num; i++) { SaveStep item = new SaveStep { colorId = UnityEngine.Random.Range(0, 99), point = new Point(UnityEngine.Random.Range(0, 2048), UnityEngine.Random.Range(0, 2048)) }; pictureSaveData.steps.Add(item); } SharedData.Instance.AddSave(pictureSaveData); }
public static void AddSave(PictureSaveData pictureSaveData) { try { SaveDb obj = DbTypeConvertor.FromPictureSaveData(pictureSaveData); DatabaseManager.db.Insert(obj); string query = "SELECT * FROM PictureDb WHERE PicId=?"; bool flag; PictureDb pictureDb = DatabaseManager.db.QueryFirstRecord <PictureDb>(out flag, query, new object[] { pictureSaveData.Id }); if (flag && pictureDb.HasSave == 0) { pictureDb.HasSave = 1; DatabaseManager.db.UpdateTable(pictureDb); } } catch (Exception ex) { FMLogger.Log("failed to add save. " + ex.Message); AnalyticsManager.DbTransactionError("saveDb", "AddSave: " + ex.Message); } }
public void UpdateSave(PictureSaveData pictureSaveData) { DatabaseManager.UpdateSave(pictureSaveData); }
public void RemoveItemFromFeed(int id) { ScrollRowItem rowWithId = this.scroll.GetRowWithId(id); List <ScrollRowItem> list = new List <ScrollRowItem>(this.scroll.Views); if (rowWithId != null) { List <PicItem> pics = new List <PicItem>(); list.Sort((ScrollRowItem x, ScrollRowItem y) => x.Row.CompareTo(y.Row)); int num = list.IndexOf(rowWithId); if (MenuScreen.RowItems == 2) { if (rowWithId.pics[0].Id == id) { rowWithId.pics[0].Reset(); if (rowWithId.pics[1].gameObject.activeSelf) { pics.AddRange(rowWithId.pics); } else { pics.Add(rowWithId.pics[0]); } } else { rowWithId.pics[1].Reset(); pics.Add(rowWithId.pics[1]); } } else if (MenuScreen.RowItems == 3) { if (rowWithId.pics[0].Id == id) { rowWithId.pics[0].Reset(); pics.Add(rowWithId.pics[0]); if (rowWithId.pics[1].gameObject.activeSelf) { pics.Add(rowWithId.pics[1]); } if (rowWithId.pics[2].gameObject.activeSelf) { pics.Add(rowWithId.pics[2]); } } else if (rowWithId.pics[1].gameObject.activeSelf && rowWithId.pics[1].Id == id) { rowWithId.pics[1].Reset(); pics.Add(rowWithId.pics[1]); if (rowWithId.pics[2].gameObject.activeSelf) { pics.Add(rowWithId.pics[2]); } } else { rowWithId.pics[2].Reset(); pics.Add(rowWithId.pics[2]); } } for (int i = num + 1; i < list.Count; i++) { for (int j = 0; j < list[i].pics.Count; j++) { if (list[i].pics[j].gameObject.activeSelf) { pics.Add(list[i].pics[j]); } } } for (int k = 0; k < pics.Count - 1; k++) { pics[k].InitFromItem(pics[k + 1]); } if (pics.Count == 1) { pics[pics.Count - 1].Reset(); pics[pics.Count - 1].gameObject.SetActive(false); } else { PictureData pictureData = this.data.Find((PictureData pd) => pd.Id == pics[pics.Count - 2].Id); if (pictureData != null) { int num2 = this.data.IndexOf(pictureData); if (num2 == this.data.Count - 1) { pics[pics.Count - 1].gameObject.SetActive(false); } else if (num2 != -1 && num2 < this.data.Count - 1) { pics[pics.Count - 1].Init(this.data[num2 + 1], false, true, false); for (int l = 0; l < this.saves.Count; l++) { if (this.saves[l].Id == pics[pics.Count - 1].Id) { pics[pics.Count - 1].AddSave(this.saves[l]); break; } } } } } } for (int m = 0; m < this.data.Count; m++) { PictureData pictureData2 = this.data[m]; if (pictureData2.Id == id) { this.data.RemoveAt(m); break; } } for (int n = 0; n < this.saves.Count; n++) { PictureSaveData pictureSaveData = this.saves[n]; if (pictureSaveData.Id == id) { this.saves.RemoveAt(n); break; } } }