public override void OnShow(object msg) { base.OnShow(msg); MsgOpenProduce msgOpenProduce = (MsgOpenProduce)msg; m_CurrentType = msgOpenProduce.CurrentProduceType; }
/// <summary> /// 视图打开时调用 /// </summary> /// <param name="owner">父视图</param> public override void OnShow(object msg) { base.OnShow(msg); m_FoundryProxy = GameFacade.Instance.RetrieveProxy(ProxyName.FoundryProxy) as FoundryProxy; m_PackageProxy = GameFacade.Instance.RetrieveProxy(ProxyName.PackageProxy) as PackageProxy; m_CfgEternityProxy = GameFacade.Instance.RetrieveProxy(ProxyName.CfgEternityProxy) as CfgEternityProxy; m_ServerListProxy = GameFacade.Instance.RetrieveProxy(ProxyName.ServerListProxy) as ServerListProxy; m_ShipProxy = GameFacade.Instance.RetrieveProxy(ProxyName.ShipProxy) as ShipProxy; HOLD_TIME = State.GetAction(UIAction.Product_Accelerate).StateList[0].Time; m_ExpendNumber = m_CfgEternityProxy.GetGamingConfig(1).Value.Produce.Value.FinishExpenseRate; m_ProduceView = OwnerView as ProduceView; m_FoundryProxy.GetAllDataByTable(); m_PartProduceList = m_FoundryProxy.GetDataByMainType(BlueprintL1.Material);//零件 NetworkManager.Instance.GetFoundryController().SendGetFoundryInfo(); MsgOpenProduce msgOpenProduce = (MsgOpenProduce)msg; m_CurrentType = msgOpenProduce.CurrentProduceType; m_Grad = (int)msgOpenProduce.MProduceDialogType; m_GradOld = m_Grad; State.OnSelectionChanged -= OnSelectionDataChanged; State.OnSelectionChanged += OnSelectionDataChanged; State.GetAction(UIAction.Product_Accelerate).Callback += OnProduce; State.GetAction(UIAction.Product_Cancel).Callback += OnCanelProduce; State.GetAction(UIAction.Product_ProduceAndCollect).Callback += OnRevecie; State.GetAction(UIAction.Product_Accelerate).Visible = false; switch (m_CurrentType) { case ProduceType.HeavyWeapon: m_CurrentBlueprintType = BlueprintL1.Weapon; break; case ProduceType.Reformer: m_CurrentBlueprintType = BlueprintL1.Reformer; break; case ProduceType.Chip: m_CurrentBlueprintType = BlueprintL1.EquipmentMod; break; case ProduceType.Device: m_CurrentBlueprintType = BlueprintL1.Equipment; break; case ProduceType.Ship: m_CurrentBlueprintType = BlueprintL1.Warship; m_FoundryProxy.InitShipPackage(); break; default: break; } }
/// <summary> /// 选择打开子面板 /// </summary> /// <param name="typeName">面板名字</param> public virtual void SelectOpen(int index) { ProduceDialogType type = (ProduceDialogType)index; UIManager.Instance.ClosePanel(OwnerView); UIManager.Instance.StartCoroutine(Excute(0, () => { MsgOpenProduce msgOpenProduce = new MsgOpenProduce(); msgOpenProduce.MProduceDialogType = type; msgOpenProduce.CurrentProduceType = m_CurrentProduceType; switch (m_CurrentProduceType) { case ProduceType.HeavyWeapon: UIManager.Instance.OpenPanel(UIPanel.ProduceWeaponPanel, msgOpenProduce); break; case ProduceType.Reformer: UIManager.Instance.OpenPanel(UIPanel.ProduceReformerPanel, msgOpenProduce); break; case ProduceType.Chip: UIManager.Instance.OpenPanel(UIPanel.ProduceChipPanel, msgOpenProduce); break; case ProduceType.Device: UIManager.Instance.OpenPanel(UIPanel.ProduceDevicePanel, msgOpenProduce); break; case ProduceType.Ship: UIManager.Instance.OpenPanel(UIPanel.ProduceShipPanel, msgOpenProduce); break; default: break; } } )); }