Пример #1
0
 public XHitAttribute(Transform tr, AnimatorOverrideController oc, Animator at, XEntityPresentation.RowData pres)
 {
     transform   = tr;
     controllder = oc;
     ator        = at;
     present     = pres;
     radius      = present.BoundRadius;
 }
Пример #2
0
        public static GameObject GetDummy(uint presentid)
        {
            XEntityPresentation.RowData raw_data = AssociatedAnimations(presentid);
            if (raw_data == null)
            {
                return(null);
            }

            return(GetDummy(raw_data.Prefab));
        }
Пример #3
0
 public void UnloadEntity()
 {
     OnUnintial();
     if (_go != null)
     {
         XResources.RecyleInPool(_go, _path);
     }
     _present   = null;
     components = null;
     base.Unload();
 }
Пример #4
0
 public GameObject GetDummy(uint statictid)
 {
     XEntityStatistics.RowData row = XTableMgr.GetTable<XEntityStatistics>().GetByID((int)statictid);
     if (row != null)
     {
         XEntityPresentation.RowData raw_data = XTableMgr.GetTable<XEntityPresentation>().GetItemID(row.PresentID);
         if (raw_data == null) return null;
         string prefab = raw_data.Prefab;
         return XResources.Load<GameObject>("Prefabs/" + prefab, AssetType.Prefab);
     }
     return null;
 }
Пример #5
0
 public void Initilize(GameObject o, XAttributes attr)
 {
     base.Initilize();
     _object    = o;
     _transf    = o.transform;
     _attr      = attr;
     _present   = XTableMgr.GetTable <XEntityPresentation>().GetItemID(_attr.PresentID);
     components = new Dictionary <uint, XComponent>();
     anim       = AttachComponent <XAnimComponent>();
     OnInitial();
     InitAnim();
 }
Пример #6
0
 public void Load(uint uid, uint presentid)
 {
     _uid       = uid;
     _present   = XTableMgr.GetTable <XEntityPresentation>().GetItemID(presentid);
     _path      = "Prefabs/" + present.Prefab;
     _go        = XResources.LoadInPool(_path);
     _go.name   = present.Name;
     components = new Dictionary <uint, NativeComponent>();
     anim       = AttachComponent <NativeAnimComponent>();
     base.Initilize();
     OnInitial();
     InitAnim();
 }
Пример #7
0
    public static GameObject GetDummy(uint presentid)
    {
        XEntityPresentation.RowData raw_data = XTableMgr.GetTable <XEntityPresentation>().GetItemID(presentid);
        if (raw_data == null)
        {
            return(null);
        }
        string prefab = raw_data.Prefab;
        int    n      = prefab.LastIndexOf("_SkinnedMesh");
        int    m      = prefab.LastIndexOf("Loading");

        return(n < 0 || m > 0 ?
               AssetDatabase.LoadAssetAtPath("Assets/Resources/Prefabs/" + prefab + ".prefab", typeof(GameObject)) as GameObject :
               AssetDatabase.LoadAssetAtPath("Assets/Editor/EditorResources/Prefabs/" + prefab.Substring(0, n) + ".prefab", typeof(GameObject)) as GameObject);
    }
Пример #8
0
    public override void OnTrigger(object param)
    {
        XMobUnitData mob = param as XMobUnitData;

        uint id = XTableMgr.GetTable <XEntityStatistics>().GetByID(mob.TemplateID).PresentID;

        XEntityPresentation.RowData data = XTableMgr.GetTable <XEntityPresentation>().GetItemID(id);
        GameObject mob_unit = GameObject.Instantiate(Resources.Load("Prefabs/" + data.Prefab)) as GameObject;
        Vector3    offset   = host.Transform.rotation * new Vector3(mob.Offset_At_X, mob.Offset_At_Y, mob.Offset_At_Z);
        Vector3    pos      = host.Transform.position + offset;

        mob_unit.transform.position = pos;
        mob_unit.transform.forward  = host.Transform.forward;
        if (mob.LifewithinSkill)
        {
            mob_unit.tag = "Finish";
        }
        _mob_unit.Add(mob_unit);
    }
Пример #9
0
    public void RebuildSkillAniamtion()
    {
        AnimationClip clip = XResources.Load <AnimationClip>(SkillData.ClipName, AssetType.Anim);

        if (oVerrideController == null)
        {
            BuildOverride();
        }
        if (SkillData.TypeToken == 0)
        {
            string motion = XSkillData.JaOverrideMap[SkillData.SkillPosition];
            oVerrideController[motion] = clip;
        }
        else if (SkillData.TypeToken == 1)
        {
            oVerrideController[Clip.Art] = clip;
        }

        _present_data = XTableMgr.GetTable <XEntityPresentation>().GetItemID((uint)_xConfigData.Player);
        oVerrideController[Clip.Idle] = Resources.Load("Animation/" + _present_data.AnimLocation + _present_data.AttackIdle) as AnimationClip;
        oVerrideController[Clip.Run]  = Resources.Load("Animation/" + _present_data.AnimLocation + _present_data.AttackRun) as AnimationClip;
        oVerrideController[Clip.Walk] = Resources.Load("Animation/" + _present_data.AnimLocation + _present_data.AttackWalk) as AnimationClip;
    }
Пример #10
0
        protected override void ParseInfo(string data)
        {
            base.ParseInfo(data);
            string rawData = data.Substring(3);

            switch (infotype)
            {
            case InfoType.SpawnType:
                SpawnType = spawnType;
                break;

            case InfoType.BaseInfo:
                UID = uid;
                break;

            case InfoType.ExString:
                string[] strInfos = rawData.Split('|');
                if (strInfos.Length > 0)
                {
                    exString = strInfos[0];
                }
                break;

            case InfoType.EditorInfo:
                if (rawData.Length > 0)
                {
                    string[] strEditorCoords = rawData.Split(',');
                    rectX = int.Parse(strEditorCoords[0]);
                    rectY = int.Parse(strEditorCoords[1]);
                }
                break;

            case InfoType.TransformInfo:
                string[] strFloats = rawData.Split(',');
                int      index     = int.Parse(strFloats[0]);
                _prefabSlot.Add(index);
                if (_prefab != null)
                {
                    if (go == null)
                    {
                        go = GameObject.Instantiate(_prefab);
                    }
                    go.name = GetMonsterName(_id);
                    go.transform.position = pos;
                    go.transform.Rotate(0, rotateY, 0);

                    XEntityStatistics.RowData sData = XTableMgr.GetTable <XEntityStatistics>().GetByID((int)_uni_id);
                    if (sData == null)
                    {
                        XDebug.Log("enemy id not exist:", _uni_id);
                        break;
                    }
                    if (sData.PresentID > 0)
                    {
                        XEntityPresentation.RowData pData = XTableMgr.GetTable <XEntityPresentation>().GetItemID((uint)sData.PresentID);
                        go.transform.localScale = Vector3.one * pData.Scale;
                    }
                }
                break;
            }
        }