Example #1
0
        private UnitObject _createInstance <T>() where T : UnitObject
        {
            if (mUnitObject != null)
            {
                return(mUnitObject);
            }

            var obj = FEngineManager.Create(nTypeKey, this.gameObject);

            if (obj != null)
            {
                mUnitObject = obj.GetComponent <T>();
                if (mUnitObject == null)
                {
                    mUnitObject = obj.AddComponent <T>();
                }
            }
            var tran = mUnitObject.transform as RectTransform;

            if (tran != null)
            {
                tran.anchoredPosition3D = Vector3.zero;
            }
            else
            {
                mUnitObject.transform.localPosition = Vector3.zero;
            }
            return(mUnitObject);
        }
Example #2
0
        public GameObject ChangeWeapon(string boneName, string sourceName)
        {
            Transform bone = GetBone(boneName);

            if (bone)
            {
                GameObject weapon = null;
                if (sourceName != "")
                {
                    weapon = FEngineManager.Create(sourceName, bone.gameObject);
                }

                if (mWeapons.ContainsKey(boneName))
                {
                    FEngineManager.Remove(mWeapons[boneName]);
                }
                mWeapons[boneName] = weapon;
                return(weapon);
            }
            else
            {
                Debug.LogError(sourceName + "武器切换,骨骼:" + boneName + "没有找到");
            }
            return(null);
        }
Example #3
0
 public void CreateBones(string boneName)
 {
     mBody  = FEngineManager.Create(boneName, this.gameObject);
     mBones = mBody.GetComponentsInChildren <Transform>(true);
     FEngineManager.AddComponent <SkinnedMeshRenderer>(mBody);
     mBodyAnimator = FEngineManager.AddComponent <FCAnimator>(mBody);
     Init();
 }
Example #4
0
 public GameObject Create(string name, GameObject pos = null)
 {
     return(FEngineManager.Create(name, pos));
 }