/// <summary> /// 初始化建造主页签 /// </summary> public void RefreshBuildMainTab() { var buildtab = Transform.FindTransfrom("ConstructPanel/TabPanel"); List <FunctionBlockTypeData> mainTypeList = FunctionBlockModule.GetInitMainType(); var toggleGroup = buildtab.SafeGetComponent <ToggleGroup>(); buildtab.InitObj(UIPath.PrefabPath.Construct_MainTab_Element_Path, mainTypeList.Count); for (int i = 0; i < buildtab.childCount; i++) { ConstructMainTabElement element = buildtab.GetChild(i).SafeGetComponent <ConstructMainTabElement>(); if (toggleGroup != null) { element.toggle.group = toggleGroup; } element.InitMainTabElement(mainTypeList[i]); element.transform.name = mainTypeList[i].Type.ToString(); mainTabElementList.Add(element); } ///Set Default Select if (mainTabElementList.Count != 0) { mainTabElementList[0].toggle.isOn = true; } }
public override bool OnMessage(UIMessage msg) { switch (msg.type) { case UIMsgType.GameAreaStateChange: RefreshAreaState(); return(true); case UIMsgType.MainShip_Area_EnergyLoad_Change: UpdateEnergyLoad(); return(true); case UIMsgType.MainShip_Area_PowerLevel_Change: return(UpdateAreaEnergyCost((MainShipAreaType)msg.content[0])); case UIMsgType.MenuPage_Update_BuildPanel: FunctionBlockTypeData typeData = (FunctionBlockTypeData)msg.content[0]; var type = FunctionBlockModule.GetBlockType(typeData); return(RefreshBuildMainPanel(type)); case UIMsgType.UpdateTime: return(UpdateTimePanel()); default: return(false); } }
/// <summary> /// 生成基础区划 /// </summary> public void InitDistrictArea(FunctionBlockInfoData blockInfo) { if (blockInfo.districtInfo.currentDistrictDataDic == null) { return; } //gridlayoutGroup.constraint = GridLayoutGroup.Constraint.FixedColumnCount; //gridlayoutGroup.constraintCount = (int)blockInfo.districtAreaMax.x; foreach (KeyValuePair <Vector2, DistrictAreaInfo> kvp in blockInfo.districtInfo.currentDistrictDataDic) { int index = FunctionBlockModule.GetDistrictAreaIndex(blockInfo.districtInfo.size, kvp.Key); //if (_elementList.Length < index) //{ // Debug.LogError("Area Error!"); // continue; //} //else //{ // if (kvp.Value.isLargeDistrict == false) // { // //Init Small District // DistrictSlot slot = (DistrictSlot)_elementList[index - 1]; // slot.InitDistrictAreaSlot(kvp.Value); // } // else if (kvp.Value.isLargeDistrict == true && kvp.Value.OriginCoordinate == kvp.Key) // { // //Init Large District // List<Vector2> v2 = DistrictModule.GetRealDistrictTypeArea(kvp.Value.data, kvp.Key); // for (int i = 0; i < v2.Count; i++) // { // int pos = FunctionBlockModule.GetDistrictAreaIndex(blockInfo.districtAreaMax, v2[i]); // DistrictSlot slot = (DistrictSlot)_elementList[pos]; // slot.InitDistrictAreaSlot(kvp.Value); // } // } //} } }
bool InitBaseData() { if (model.ID != 0) { FunctionBlockDataModel blockModel = new FunctionBlockDataModel(); if (blockModel.Create(model.BuildData.FunctionBlockID)) { _blockIcon.sprite = blockModel.Icon; _blockName.text = blockModel.Name; _desc.text = model.Desc; _timeCost.text = model.BuildData.TimeCost.ToString(); var blockData = FunctionBlockModule.GetFunctionBlockByBlockID(model.BuildData.FunctionBlockID); if (blockData != null) { //var areaMax = FunctionBlockModule.GetFunctionBlockAreaMax(blockData); //_districtMaxText.text = string.Format("{0} X {1}", areaMax.x.ToString(), areaMax.y.ToString()); } return(true); } } return(false); }
public void SetFunctionBlock(FunctionBlock block, int amount = 1) { this.functionBlock = block; this.Amount = amount; ItemImage.sprite = FunctionBlockModule.GetFunctionBlockIcon(block.FunctionBlockID); }