Пример #1
0
        public override void OnStart()
        {
            durationTime = Charator.Play(this);


            State = aStateState.OnUpdate;
        }
Пример #2
0
        /// <summary>
        /// 加载模型
        /// </summary>
        /// <param name="charator"></param>
        /// <param name="charatorName"></param>
        private static Task InitCharatorModel(Charator charator, string charatorName)
        {
            Task async = new Task();

            ///第一种方法
            ///开启一个协同分离加载和回调
            Instance.StartCoroutine(TempC(
                                        () =>
            {
                Task <GameObject> task = new Task <GameObject>();
                Instance.StartCoroutine(LoadModel(charatorName, task));
                return(task);
            },

                                        (model) =>
            {
                ///将模型挂在model节点下
                model.transform.SetParent(charator.transform);
                ///从实例化数据
                Data4Charator d4c = GetData(charatorName);
                ///添加数据
                charator.Set(d4c);
                async.IsDone = true;
            }
                                        ));

            ///第二种方法


            return(async);
        }
Пример #3
0
        /// <summary>
        /// 初始化角色
        /// </summary>
        public static Task InstantiateCharator(string name)
        {
            var      charator = GetCharatorTemplate();
            Charator ch       = charator.AddComponent <Charator>();

            return(InitCharatorModel(ch, name));
        }
Пример #4
0
 public void SetTarget(Charator target)
 {
     this.target = target;
 }
Пример #5
0
        /// <summary>
        /// 加载模型
        /// </summary>
        /// <param name="charator"></param>
        /// <param name="charatorName"></param>
        private static Task InitCharatorModel(Charator charator, string charatorName)
        {
            Task async = new Task();
            ///第一种方法
            ///开启一个协同分离加载和回调
            Instance.StartCoroutine(TempC(
                () =>
                {
                    Task<GameObject> task = new Task<GameObject>();
                    Instance.StartCoroutine(LoadModel(charatorName, task));
                    return task;
                },

                (model) =>
                {
                    ///将模型挂在model节点下
                    model.transform.SetParent(charator.transform);
                    ///从实例化数据
                    Data4Charator d4c = GetData(charatorName);
                    ///添加数据
                    charator.Set(d4c);
                    async.IsDone = true;
                }
                ));

            ///第二种方法
            

            return async;
        }
Пример #6
0
 public void SetTarget(Charator target)
 {
     this.target = target;
 }