//一键浇水 public static void SendCSEmptyOnceWatering(CSEmptyOnceWatering csEmptyOnceWatering, Action <SCOnceWatering> ResponseSCSCOnceWateringCallBack) { if (StaticData.IsUsedLocalDataNotServer) { SCOnceWatering scOnceWatering = new SCOnceWatering(); scOnceWatering.SoilId.Add(10001); ResponseSCSCOnceWateringCallBack(scOnceWatering); } else { ProtocalManager.Instance().SendCSEmptyOnceWatering(csEmptyOnceWatering, ResponseSCSCOnceWateringCallBack, null); } }
//庄园一键浇水 void OnButtonWateringOneKeyClick() { if (Root2dSceneManager._instance.isFriendManor) {//好友庄园不可操作 return; } var firstFertilizer = StaticData.GetFertilizerCountByWhich(0); //水滴数量不足提示 if (firstFertilizer.GoodNum <= 0) { //关闭UI StaticData.GetUIWorldHandleComponent().SetHandleTileUIClose(); string FertilizerName = StaticData.GetMultiLanguageByGameItemId(firstFertilizer.GoodId); string Tips = string.Format(StaticData.GetMultilingual(120068), FertilizerName); StaticData.OpenCommonTips(Tips, 120010, async() => { //跳转商城 await StaticData.OpenShopUI(1); }); return; } //对接服务器 CSEmptyOnceWatering csEmptyOnceWatering = new CSEmptyOnceWatering(); ManorProtocalHelper.SendCSEmptyOnceWatering(csEmptyOnceWatering, (succ) => { if (succ == null) { return; } if (succ.SoilId == null) { return; } if (succ.SoilId.Count <= 0) { return; } List <ItemFirstStageFertilizerComponent> listItemWaterComponent = new List <ItemFirstStageFertilizerComponent>(); listItemWaterComponent.AddRange(uIWorldHandleManager.TransGoFirstStageRoot.GetComponentsInChildren <ItemFirstStageFertilizerComponent>()); if (listItemWaterComponent != null && listItemWaterComponent.Count > 0) { //关闭UI StaticData.GetUIWorldHandleComponent().SetHandleTileUIClose(); //播放音效点击 GameSoundPlayer.Instance.PlaySoundEffect(MusicHelper.SoundEffectWatering); for (int i = 0; i < succ.SoilId.Count; i++) { var itemWaterCom = listItemWaterComponent.Find(x => x.seedGrowComponent.tileComponent.SoilId == succ.SoilId[i]); if (itemWaterCom != null) { //点击浇水的时候,关闭水滴 itemWaterCom.ButtonFertilizer.gameObject.SetActive(false); itemWaterCom.TextNumNormal.gameObject.SetActive(false); itemWaterCom.TextNumZero.gameObject.SetActive(false); //施肥特效 StaticData.GetUIWorldHandleComponent().PlayWateringAnim(itemWaterCom.seedGrowComponent.tileComponent); //end 施肥特效 SeedGrowComponent.PeriodGrow nextPeriod = SeedGrowComponent.PeriodGrow.Germinate; //种子的下一时期,幼苗期 //直接进入下一个时期 float remainTime = StaticData.GetSeedGrowComponentTotalSecond(itemWaterCom.seedGrowComponent, nextPeriod); itemWaterCom.seedGrowComponent.SetPeriod(nextPeriod, (long)remainTime * 1000); } } //更新水滴数量 StaticData.UpdateWareHouseItem(firstFertilizer.GoodId, -succ.SoilId.Count); //看是否还有能浇水的 SetCanWateringOnekey(); } }); }
public void SendCSEmptyOnceWatering(CSEmptyOnceWatering csemptyoncewatering, Action <SCOnceWatering> ResponseSCOnceWateringCallBack, Action <ErrorInfo> errorCallBack, bool isShowDefaultTip = true) { OpCodeType opCodeType = ListOPRelation.GetOpCodeTypeByRequest <CSEmptyOnceWatering> (); ProtoSendMethod.BusinessRequest <SCOnceWatering>(csemptyoncewatering, opCodeType, ResponseSCOnceWateringCallBack, errorCallBack, isShowDefaultTip); }