Example #1
0
        private void SetSkillController(SkillData skillData, GameObject gameobject, ref ISkillController skillController, Transform owner
                                        , string TeamId, Direction direction, Vector3 SkillFrameEventpos)
        {
            if (string.IsNullOrEmpty(skillData.id))
            {
                return;
            }
            // 基本参数
            skillController.TeamId = TeamId;
            skillController.Owner  = owner.gameObject;

            // 设置位置 add by TangJian 2019/4/20 12:25

            gameobject.transform.parent        = skillData.parentType == FrameEventInfo.ParentType.Parent ? owner.parent : owner;
            gameobject.transform.localPosition = owner.transform.localPosition + new Vector3(skillData.pos.x * getDirectionInt(direction), skillData.pos.y, skillData.pos.z) + new Vector3(SkillFrameEventpos.x * getDirectionInt(direction), SkillFrameEventpos.y, SkillFrameEventpos.z);

            // 设置方向 add by TangJian 2019/4/20 12:25
            skillController.Direction = direction;

            // 速度 add by TangJian 2018/04/13 20:10:56
            skillController.Speed = new Vector3(skillData.speed.x * getDirectionInt(direction), skillData.speed.y, skillData.speed.z);


            skillController.InitSkill(skillData);
        }
        public static void Initialize(TestContext context)
        {
            testHelpers     = new TestHelpers();
            skillController = new SkillController();
            userController  = new UserController();

            testHelpers.ClearData();
            testHelpers.InsertTestData();
        }
Example #3
0
    public override void SetObject(IObject obj)
    {
        base.SetObject(obj);

        mMaxAttackCount = obj.GetProperty("AttackActionCount").GetInt();

        animator         = obj.mGameObject.GetComponent <Animator>();
        my_AttackCtrl    = animator.GetBehaviour <IAttackController>();
        my_BackCtrl      = animator.GetBehaviour <BackController>();
        my_SkillCtrl     = animator.GetBehaviour <ISkillController>();
        my_SwoonCtrl     = animator.GetBehaviour <SwoonController>();
        mFloatController = animator.GetBehaviour <FloatController>();
        mSkillComponent  = obj.GetComponent <SkillComponent>();
    }
Example #4
0
        public ISkillController UseSkill_Single(SkillData skillData, Transform owner
                                                , string TeamId, Direction direction, Vector3 SkillFrameEventpos)
        {
            GameObject gameobject = GameObjectManager.Instance.Spawn("SkillPrefab");

            if (string.IsNullOrEmpty(skillData.componentTypeName))
            {
                return(null);
            }
            System.Type      type            = System.Type.GetType(skillData.componentTypeName);
            ISkillController skillController = gameobject.AddComponent(type) as ISkillController;

            SetSkillController(skillData, gameobject, ref skillController, owner, TeamId, direction, SkillFrameEventpos);

            return(skillController);
        }
Example #5
0
        public ISkillController UseSkill(string id, Transform owner, string TeamId
                                         , Direction direction, Vector3 SkillFrameEventpos
                                         , FrameEventInfo.RoleSkillFrameEventData.SkillActionType skillActionType = FrameEventInfo.RoleSkillFrameEventData.SkillActionType.Default)
        {
            if (GetSkillData(id) is SkillData skill)
            {
                ISkillController retSkillController = UseSkill(skill, owner, TeamId, direction, SkillFrameEventpos, skillActionType);

                // 自己释放的技能忽略自己
                retSkillController.SetIgnoreList(new List <int>()
                {
                    owner.gameObject.GetHashCode()
                });

                return(retSkillController);
            }
            Debug.Log("找不到skilldata");
            return(null);
        }
Example #6
0
    public void SetSpecialSkill(int skillId, int type)
    {
        if (animator.GetInteger("Skill") != 4)
        {
            i_SpecialSkillIndex = 0;
            animator.SetInteger("Skill", 4);
        }

        i_SpecialSkillIndex++;

        animator.SetInteger("SpecialSkillIndex", i_SpecialSkillIndex);

        //设置播放的动作普通攻击;

        ISkillController skillController = animator.GetBehaviour <ISkillController>();

        if (skillController != null)
        {
            //skillController.iSkillId = skillId;
        }
    }
Example #7
0
        public System.Collections.IEnumerator TestAnimEffect(int times, float interval, string TeamId, Transform transform, Vector3 pos, Direction direction)
        {
            //var playerObject = GameObject.Find("Player1");

            //RoleController roleController = playerObject.GetComponent<RoleController>();

            for (int i = 0; i < times; i++)
            {
                ISkillController skillController = SkillManager.Instance.UseSkill(currSkillData, transform, TeamId, direction, pos);

                if (roleTarget == null)
                {
                    var roleTranformList = transform.parent.GetChidrenLayer("Role");
                    if (roleTranformList != null && roleTranformList.Count > 1)
                    {
                        roleTarget = roleTranformList[0].gameObject;
                        if (roleTarget.tag == "Player1")
                        {
                            roleTarget = roleTranformList[1].gameObject;
                        }
                    }
                }

                if (roleTarget != null)
                {
                    skillController.FlyTo(roleTarget.transform.position);
                }
                float time = 0;
                while (time < interval)
                {
                    time += Time.deltaTime;
                    yield return(0);
                }
            }

            yield return(0);
        }
 public SkillController()
 {
     skillController = new SkillControllerLogic();
 }
 public UserController()
 {
     usersAccess           = new UsersAccess();
     skillController       = new SkillController();
     applicationController = new ApplicationController();
 }