Esempio n. 1
0
 void Awake()
 {
     if (self == null)
     {
         self = this;
     }
     _dataSource = new Block45OctDataSource(AddNodeToBuildList);
 }
Esempio n. 2
0
    public void Init(BlockBuilding building, Block45CurMan perfab)
    {
        mBlockBuilding = building;

        Vector3 size;

        List <Vector3> npcPosition;

        List <CreatItemInfo> itemList;

        Dictionary <int, BuildingNpc> npcIdNum;

        mBlockBuilding.GetBuildingInfo(out size, out mBlocks, out npcPosition, out itemList, out npcIdNum);

        BoxCollider col = gameObject.AddComponent <BoxCollider>();

        col.center = 0.5f * size + 0.5f * Vector3.up;
        col.size   = size;

        mB45Building = Instantiate(perfab) as Block45CurMan;
        mB45Building.transform.parent        = transform;
        mB45Building.transform.localPosition = Vector3.zero;
        mB45Building.transform.localRotation = Quaternion.identity;
        mB45Building.transform.localScale    = Vector3.one;

        Invoke("BuildBuilding", 0.5f);

        foreach (CreatItemInfo item in itemList)
        {
            ItemProto itemData = ItemProto.GetItemData(item.mItemId);
//			AssetBundleReq req = AssetBundlesMan.Instance.AddReq(itemData.m_ModelPath, Vector3.zero, Quaternion.identity);
//			req.ReqFinishWithReqHandler += OnSpawned;
//			mReqList[req] = item;

            GameObject go = Instantiate(Resources.Load(itemData.resourcePath)) as GameObject;
            go.transform.parent = transform;
            go.transform.transform.localPosition = item.mPos;
            go.transform.transform.localRotation = item.mRotation;
            go.transform.transform.localScale    = Vector3.one;
        }
    }
Esempio n. 3
0
    public void InitEdit()
    {
        mIsActive = true;
        if (mPerfab == null)
        {
            mPerfab = Block45CurMan.self;
        }
        for (int i = 0; i < mTownDataList.Count; i++)
        {
            BlockBuilding building = BlockBuilding.GetBuilding(mTownDataList[i].mBuildingId);

            GameObject editObj = new GameObject();
            editObj.name = "EditBuilding";
            editObj.transform.position   = mTownDataList[i].mPosition;
            editObj.transform.rotation   = Quaternion.Euler(0, mTownDataList[i].mRot * 90, 0);
            editObj.transform.localScale = Vector3.one;

            EditBuilding editBuilding = editObj.AddComponent <EditBuilding>();
            editBuilding.Init(building, mPerfab);
            mEditBuildingList.Add(editBuilding);
        }
    }
Esempio n. 4
0
    public void OnCreateBuilding(string fileName)
    {
        if (mPerfab == null)
        {
            mPerfab = Block45CurMan.self;
        }
        BlockBuilding building = BlockBuilding.GetBuilding(fileName);

        GameObject editObj = new GameObject();

        editObj.name = "EditBuilding";
        editObj.transform.position   = Vector3.zero;
        editObj.transform.rotation   = Quaternion.identity;
        editObj.transform.localScale = Vector3.one;

        EditBuilding editBuilding = editObj.AddComponent <EditBuilding>();

        editBuilding.Init(building, mPerfab);

        mEditBuildingList.Add(editBuilding);

        OnBuildingSelected(editBuilding);
        mDragMode = true;
    }