/// <summary> /// 展示宝箱数据 /// </summary> /// <param name="data"></param> async void ShowData(PackageDefine data, int type = 0) { GameItemDefine gameItemDefine = WarehouseTool.GetGameItemData(data.BoxID); DestroyTime(); _titleNameText.text = StaticData.GetMultilingual(gameItemDefine.ItemName); _keyNumber.text = data.UseGoodsNum[0].Count.ToString(); _surplusKeyNumber.text = WarehouseTool.GetWareHouseGold(data.UseGoodsNum[0].ID).ToString(); ClearItem(); List <int> awardIds = GetAward(data); if (awardIds != null && awardIds.Count > 0) { for (int i = 0; i < awardIds.Count; i++) { CreateItem(awardIds[i]); } } _iconImage.sprite = null; _iconImage.sprite = await ABManager.GetAssetAsync <Sprite>(gameItemDefine.Icon); //_iconImage.SetNativeSize(); if (type == 0) { _showTimeBoxTra.gameObject.SetActive(false); } else { _showTimeBoxTra.gameObject.SetActive(true); } }
/// <summary> /// 钥匙解锁 /// </summary> public void KeyUnlock() { int id = _goodsDatas[0]._id; _configCurrData = WarehouseTool.GetTreasureChestConfig(id); WarehouseTool.UnlockTreasureChest(id, Game.Protocal.UnlockTreasureChest.Key, KeyUnlockSucceed); }
/// <summary> /// 免费解锁 /// </summary> /// <param name="timeCountDownComponent"></param> /// <param name="time"></param> public void FreeUnlock(Action <long> time) { int id = _goodsDatas[0]._id; _configCurrData = WarehouseTool.GetTreasureChestConfig(id); _curTimeAction = time; WarehouseTool.UnlockTreasureChest(id, Game.Protocal.UnlockTreasureChest.CountDown, TimeUnlockTreasure); }
/// <summary> /// 打开加速界面 /// </summary> /// <param name="id"></param> /// <param name="timeStamp"></param> /// <param name="speedUpAction"></param> public void ShowSpeedUp(int id, long timeStamp, Action <Action <long> > speedAction) { _speedAction = speedAction; _packageDefine = WarehouseTool.GetTreasureChestConfigData(id); ShowData(_packageDefine, 1); ChangeInterface(1); RefreshTime(timeStamp); }
/// <summary> /// 广告加速 /// </summary> /// <param name="timeCountDownComponent"></param> /// <param name="time"></param> public void SpeedUp(Action <long> time) { int id = _goodsDatas[0]._id; _configCurrData = WarehouseTool.GetTreasureChestConfig(id); _curTimeAction = time; WarehouseTool.TreasureChestAdvertisingSpeedUp(id, TreasureChestAdvertisingSpeedUpAction); }
/// <summary> /// 打开解锁界面 /// </summary> /// <param name="id"></param> /// <param name="KeyUnlock"></param> /// <param name="freeUnlock"></param> public void ShowUnlock(int id, Action KeyUnlock, Action <Action <long> > freeUnlock, Action <Action <long> > speedAction) { _keyUnlockAction = KeyUnlock; _freeUnlockAction = freeUnlock; _speedAction = speedAction; _packageDefine = WarehouseTool.GetTreasureChestConfigData(id); ShowData(_packageDefine); ChangeInterface(0); }
public PackageDefine Get(int id) { ShippmentEntities db = new ShippmentEntities(); PackageDefine pack = (from p in db.PackageDefines where p.Id == id && !p.IsDeleted select p).FirstOrDefault(); return(pack); }
/// <summary> /// 关闭 /// </summary> public void Close() { DestroyTime(); UniversalTool.CancelPopAnim(_bgBoxTra, () => { _packageDefine = null; ClearItem(); UIComponent.HideUI(UIType.GiftBoxUnlocking); }); }
/// <summary> /// 根据宝箱id获取对应宝箱配置数据 /// </summary> /// <param name="id"></param> public static PackageDefine GetTreasureChestConfigData(int id) { for (int i = 0; i < StaticData.configExcel.Package.Count; i++) { PackageDefine data = StaticData.configExcel.Package[i]; if (data.ID == id) { return(data); } } return(null); }
public ErrorInfo Add(PackageDefine packageDefine) { ShippmentEntities db = new ShippmentEntities(); db.PackageDefines.Add(packageDefine); if (db.SaveChanges() > 0) { return(ErrorInfo.Succeed); } else { return(ErrorInfo.Err_Internal_Error); } }
/// <summary> /// 设置礼盒显示 /// </summary> /// <param name="treasureChestID"></param> async void SetTreasureChestShow(int treasureChestID) { PackageDefine data = WarehouseTool.GetTreasureChestConfigData(treasureChestID); string closeTreasureChestIconName = data.AcceptThePrize[0]; string OpenTreasureChestIconName = data.AcceptThePrize[1]; Sprite closeTreasureChestIconSprite = null; closeTreasureChestIconSprite = await ABManager.GetAssetAsync <Sprite>(closeTreasureChestIconName); _treasureChestIcon.sprite = closeTreasureChestIconSprite; _treasureChestIcon.SetNativeSize(); _openTreasureChestIcon = await ABManager.GetAssetAsync <Sprite>(OpenTreasureChestIconName); }
/// <summary> /// 获取宝箱配置的奖励数据 /// </summary> /// <param name="data"></param> /// <returns></returns> List <int> GetAward(PackageDefine data) { List <int> ids = new List <int>(); for (int i = 0; i < data.PackageContent.Count; i++) { if (!ids.Contains(data.PackageContent[i].ID)) { ids.Add(data.PackageContent[i].ID); } } return(ids); }
/// <summary> /// 个数变化 /// </summary> /// <param name="number"></param> void Change(int number) { int numberValue = 0; switch (_data._data.Use) { case Company.Cfg.GoodsUseType.ExtendBag: ExtendBagIDCount extendBagIDCount = StaticData.configExcel.GetVertical().UserExtendBag; if (extendBagIDCount.GoodsID == _data._id) { int count = extendBagIDCount.Count; numberValue = number * count; } break; case Company.Cfg.GoodsUseType.GiftBox: PackageDefine packageDefine = null; for (int i = 0; i < StaticData.configExcel.Package.Count; i++) { PackageDefine data = StaticData.configExcel.Package[i]; if (data.BoxID == _data._data.ID) { packageDefine = data; } } int index = 0; if (packageDefine != null) { for (int i = 0; i < packageDefine.BoxAward.Count; i++) { index = index + (int)packageDefine.BoxAward[i].Count; } } numberValue = index * number; break; } _effectText.text = numberValue.ToString(); }
/// <summary> /// 点击宝箱 /// </summary> public void ClickTresureChestBtn() { GetUnlocked(); OpenRedDot(false); WarehouseController.Instance.RefreshData(); if (_isBeTimeUnlock) { StaticData.OpenTreasureSpeedUp(_configCurrData.ID, _countDownTime, SpeedUp); return; } else if (_isCanReceiveAward) { GetAward(); } else { int id = _goodsDatas[0]._id; _configCurrData = WarehouseTool.GetTreasureChestConfig(id); StaticData.OpenTreasureUnlock(_configCurrData.ID, KeyUnlock, FreeUnlock, SpeedUp); } }
public ErrorInfo Delete(int id) { ShippmentEntities db = new ShippmentEntities(); PackageDefine pack = db.PackageDefines.FirstOrDefault(p => p.Id == id); if (pack != null) { pack.IsDeleted = true; db.Entry(pack).State = EntityState.Modified; if (db.SaveChanges() > 0) { return(ErrorInfo.Succeed); } else { return(ErrorInfo.Err_Internal_Error); } } else { return(ErrorInfo.Err_Resource_NotExist); } }
public ErrorInfo Edit(int id, PackageDefine packageDefine) { if (id != packageDefine.Id) { return(ErrorInfo.Err_Bad_Request_Information); } ShippmentEntities db = new ShippmentEntities(); PackageDefine pack = db.PackageDefines.FirstOrDefault(p => p.Id == id && !p.IsDeleted); if (pack != null) { pack.Material = packageDefine.Material; pack.Length_mm = packageDefine.Length_mm; pack.Width_mm = packageDefine.Width_mm; pack.Height_mm = packageDefine.Height_mm; pack.NetWeight_kg = packageDefine.NetWeight_kg; pack.GrossWeight_kg = packageDefine.GrossWeight_kg; pack.Note = packageDefine.Note; pack.IsDeleted = packageDefine.IsDeleted; pack.PartNo = packageDefine.PartNo; pack.Unit = packageDefine.Unit; pack.Qty = packageDefine.Qty; db.Entry(pack).State = EntityState.Modified; if (db.SaveChanges() > 0) { return(ErrorInfo.Succeed); } else { return(ErrorInfo.Err_Internal_Error); } } else { return(ErrorInfo.Err_Resource_NotExist); } }
/// <summary> /// 获取解锁状态 /// </summary> public void GetUnlocked() { if (IsThereAnUnlock()) { _isCanReceiveAward = true; _isBeTimeUnlock = false; //_maskTra.gameObject.SetActive(false); RefreshTreasureChestUnlock(); Debug.Log("解锁"); SetShowTip(3); } else if (IsTimeThereAnUnlock()) { _isCanReceiveAward = false; _isBeTimeUnlock = true; Debug.Log("正在解锁"); _configCurrData = WarehouseTool.GetTreasureChestConfig(_currDataId); TimeUnlockTreasure(true, WarehouseTool.GetTimeThereAnUnlockTime(_currDataId)); } else { SetShowTip(1); } }
/// <summary> /// 展示数据 /// </summary> /// <param name="data"></param> public async void ShowData(GoodsData data) { if (_isInitial == false) { Initial(); } _data = data; _nameText.text = StaticData.GetMultilingual(_data._data.ItemName); _haveNumberText.text = _data._number.ToString();; //设置输入框默认显示钥匙数量Placeholder _uISetAmountComponent.inputFiled.text = "1"; _uISetAmountComponent.inputFiled.placeholder.GetComponent <Text>().text = "1"; switch (_data._data.Use) { case Company.Cfg.GoodsUseType.ExtendBag: _effectText.transform.parent.Find("Title").GetComponent <Text>().text = StaticData.GetMultilingual(120232); ExtendBagIDCount extendBagIDCount = StaticData.configExcel.GetVertical().UserExtendBag; if (extendBagIDCount.GoodsID == _data._id) { int count = extendBagIDCount.Count; _effectText.text = count.ToString(); } break; case Company.Cfg.GoodsUseType.GiftBox: PackageDefine packageDefine = null; _effectText.transform.parent.Find("Title").GetComponent <Text>().text = StaticData.GetMultilingual(120233); for (int i = 0; i < StaticData.configExcel.Package.Count; i++) { PackageDefine PackageData = StaticData.configExcel.Package[i]; if (PackageData.BoxID == _data._data.ID) { packageDefine = PackageData; } } int index = 0; if (packageDefine != null) { for (int i = 0; i < packageDefine.BoxAward.Count; i++) { index = index + (int)packageDefine.BoxAward[i].Count; } _effectText.text = index.ToString(); } break; } //设置最多能输入 switch (data._data.Use) { case Company.Cfg.GoodsUseType.ExtendBag: int max = StaticData.configExcel.GetVertical().WarehouseTotal - StaticData.playerInfoData.userInfo.WarehouseCount; int number = StaticData.configExcel.GetVertical().UserExtendBag.Count; int index = max / number; if (index <= (int)data._number) { _uISetAmountComponent._maxValue = index; } else { _uISetAmountComponent._maxValue = (int)data._number; } if (max == 0) { _uISetAmountComponent._defaultValue = "0"; _uISetAmountComponent._minValue = 0; //设置输入框默认显示钥匙数量Placeholder _uISetAmountComponent.inputFiled.text = "0"; _uISetAmountComponent.inputFiled.placeholder.GetComponent <Text>().text = "0"; } break; default: _uISetAmountComponent._maxValue = (int)data._number; break; } Sprite iconSprite = null; try { iconSprite = await ABManager.GetAssetAsync <Sprite>(_data._data.Icon); } catch (System.Exception er) { Debug.Log("获取道具icon失败"); } _iconImage.sprite = iconSprite; //_iconImage.SetNativeSize(); gameObject.SetActive(true); }