void OnItemUnlockButton(PictruePage_Item item) { var data = item.data; var cost = data.picRow.Get <int>("cost"); var gold = PlayerStatus.gold; if (gold >= cost) { Debug.Log("can unlock"); gold -= cost; PlayerStatus.gold = gold; var pictureId = data.picRow.Get <string>("id"); LevelStorage.SetPictureUnlocked(pictureId); PlayerStatus.Save(); // 单独处理需要修改显示状态的 item data.status = PicturePage_ItemStatus.Unlocked; SetItem(item, data); item.Flash(); AudioManager.PlaySe("button"); AudioManager.PlaySe("unlock-pic"); } else { var param = new DialogParam(); param.des = MsgList.Get("lack_of_gold"); param.button = "商城"; var popup = new Admission_PopupNewPage(); var dialog = UIEngine.Forward <DialogPage>(param, popup); dialog.Complete = result => { if (result == DialogResult.Conform) { UIEngineHelper.WateAdmissionComplete(() => { UIEngine.Forward <ShopPage>(); }); } }; AudioManager.PlaySe("lack-of-gold"); } }