public void InitData(int blockID, int posX, int posZ) { functionBlock = FunctionBlockModule.GetFunctionBlockByBlockID(blockID); UIinfo = UIUtility.SafeGetComponent <BlockUIScriptInfo>(transform); UIinfo.SetData(this); ModelRoot = UIUtility.FindTransfrom(transform, "Root/ModelRoot").gameObject; gameObject.name = instanceID + "[Block]"; SetPosition(new Vector3(posX, transform.localScale.y / 2, posZ)); info = new FunctionBlockInfoData(); info.CreateBaseInfo(transform.position, functionBlock, new FunctionBlockModifier(ModifierTarget.FunctionBlock, instanceID)); var blockType = info.dataModel.BlockType; if (blockType == FunctionBlockType.ElementCapsule) { var manuBase = transform.SafeAddCmpt <ManufactoryBase>(); manuBase.SetData(); } else if (blockType == FunctionBlockType.EnergyStorageUnit) { var normalBase = transform.SafeAddCmpt <BlockNormalBase>(); normalBase.SetData(); } InitBase(); }
public bool Create(int id) { if (FunctionBlockModule.GetFunctionBlockByBlockID(id) == null) { return(false); } _id = id; return(true); }
//获取所有解锁的区块ID public static List <FunctionBlock> GetUnLockBuildBlockID() { List <FunctionBlock> result = new List <FunctionBlock>(); List <BuildingPanelData> unlockList = GetUnLockBuildData(); for (int i = 0; i < unlockList.Count; i++) { result.Add(FunctionBlockModule.GetFunctionBlockByBlockID(unlockList[i].FunctionBlockID)); } return(result); }
public static List <int> ParseTechParam_Unlock_Block(string content) { List <int> result = new List <int>(); var list = Utility.TryParseIntList(content, ','); for (int i = 0; i < list.Count; i++) { if (FunctionBlockModule.GetFunctionBlockByBlockID(list[i]) != null) { result.Add(list[i]); } } return(result); }
/// <summary> /// 获取区块 /// </summary> /// <param name="data"></param> /// <returns></returns> public FunctionBlock GetBuildFunctionBlock(BuildingPanelData data) { return(FunctionBlockModule.GetFunctionBlockByBlockID(data.FunctionBlockID)); }