Пример #1
0
        public override void Init(ISkillCellData cellData, SkillBase skillBase)
        {
            m_skillBase         = skillBase;
            m_movePosAttackDesc = (MovePosAttackDesc)cellData;

            m_param            = null;
            m_uuid             = -1;
            m_needMove         = false;
            m_canResetDistance = false;
            m_distance         = 0;
            m_dstPos           = Vector3.zero;
        }
Пример #2
0
        public override void Init(ISkillCellData cellData, SkillBase skillBase)
        {
            m_skillBase = skillBase;
            cellDesc    = (CompositedSkillCellDesc)cellData;

            SkillList.Clear();
            timer = 0;

            for (int i = 0; i < cellDesc.SkillList.Count; ++i)
            {
                SkillList.Add(cellDesc.SkillList[i]);
            }
        }
Пример #3
0
        //float freq = 0.5f;
        //float timer = 0;
        //float lastTime = 1f;
        //bool isAoe = true;
        //ActorObj target = null;

        public override void Init(ISkillCellData cellData, SkillBase skillBase)
        {
            //m_skillBase = skillBase;
            cellDesc = (ForceFactoryCellDesc)cellData;
            radius   = cellDesc.Radius;
            speed    = cellDesc.Speed;
            ////isAoe = cellDesc.IsAoe;
            //timer = 0;
            //lastTime = cellDesc.LastTime;
            //target = null;

            radiusSQ = radius * radius;

            // InvokeRepeating("AffectTarget", 0f, freq);
        }
Пример #4
0
        public override void Init(ISkillCellData cellData, SkillBase skillBase)
        {
            //m_dataIndex = param.damageCellIndex;
            m_oneDamageInfo = (OneDamageInfo)cellData;

            m_skillBase = skillBase;

            //重新计算hittime
            if (skillBase.m_skilleffect != null)
            {
                // m_oneDamageInfo.hitTime = skillBase.m_skilleffect.delay * 0.001f;
            }

            m_dataIndex          = 0;
            m_repeateKeep        = 0;
            m_isHadLoadFrameStop = false;
        }
Пример #5
0
        public override void Preload(ISkillCellData cellData, SkillBase skillBase)
        {
            m_skillBase      = skillBase;
            m_actionCellDesc = (ActionCellDesc)cellData;

            if (m_actionCellDesc.efx.Length > 0)
            {
                GameObject efxObj = CoreEntry.gGameObjPoolMgr.InstantiateEffect(m_actionCellDesc.efx);
                CoreEntry.gGameObjPoolMgr.Destroy(efxObj);
            }

            //if (0 != m_actionCellDesc.efxWarning.Length)
            //{
            //    m_WarningefxObj = Instantiate(
            //      CoreEntry.gResLoader.LoadResource(m_actionCellDesc.efxWarning)) as GameObject;
            //}
        }
Пример #6
0
        public override void Init(ISkillCellData cellData, SkillBase skillBase)
        {
            m_skillBase  = skillBase;
            m_summonDesc = (SummonCellDesc)cellData;

            // 初始化位置
            if (m_summonDesc.npcPosType == 0) // 9宫格
            {
                m_posList[0] = new Vector3(1f, 0, 0);
                m_posList[1] = new Vector3(-1f, 0, 0);

                m_posList[2] = new Vector3(0, 0, 1f);
                m_posList[3] = new Vector3(0, 0, -1f);

                m_posList[4] = new Vector3(1f, 0, 1f);
                m_posList[5] = new Vector3(-1f, 0, 1f);

                m_posList[6] = new Vector3(1f, 0, -1f);
                m_posList[7] = new Vector3(-1f, 0, -1f);
            }
            else
            if (m_summonDesc.npcPosType == 1) // 前排
            {
                m_posList[0] = new Vector3(0, 0, 1f);
                m_posList[1] = new Vector3(1f, 0, 1f);
                m_posList[2] = new Vector3(-1f, 0, 1f);

                m_posList[3] = new Vector3(0, 0, 2f);
                m_posList[4] = new Vector3(1f, 0, 2f);
                m_posList[5] = new Vector3(-1f, 0, 2f);
            }
            else
            if (m_summonDesc.npcPosType == 2) // 后排
            {
                m_posList[0] = new Vector3(0, 0, -1f);
                m_posList[1] = new Vector3(1f, 0, -1f);
                m_posList[2] = new Vector3(-1f, 0, -1f);

                m_posList[3] = new Vector3(0, 0, -2f);
                m_posList[4] = new Vector3(1f, 0, -2f);
                m_posList[5] = new Vector3(-1f, 0, -2f);
            }
        }
Пример #7
0
        public override void Init(ISkillCellData cellData, SkillBase skillBase)
        {
            if (skillBase == null)
            {
                return;
            }
            bool can = skillBase.m_actor.IsMainPlayer() || skillBase.m_actor.mActorType == ActorType.AT_BOSS;

            if (!can)
            {
                return;
            }

            desc = cellData as CameraZoomCellDesc;
            if (desc == null)
            {
                return;
            }

            beginTime = Time.time;
            isBlurEnd = false;
            setBlur   = false;
            isZoomEnd = false;
        }
Пример #8
0
 public override void Preload(ISkillCellData cellData, SkillBase skillBase)
 {
     Init(cellData, skillBase);
 }
Пример #9
0
        //void Awake()
        //{
        //    m_gameDBMgr = CoreEntry.gGameDBMgr;
        //}

        public override void Init(ISkillCellData cellData, SkillBase skillBase)
        {
            m_skillBase = skillBase;
            //m_dataIndex = param.damageCellIndex;
            m_fireFlyAttackDesc = (FireFlyAttackDesc)cellData;
        }
Пример #10
0
 public override void Init(ISkillCellData cellData, SkillBase skillBase)
 {
     m_skillBase            = skillBase;
     m_bossDeathFromSkyDesc = (BossDeathFromSkyDesc)cellData;
 }
Пример #11
0
 public virtual void Init(ISkillCellData cellData, SkillBase skillBase, ActorObj actorBase)
 {
 }
Пример #12
0
 //todo:addevent
 public virtual void Init(ISkillCellData cellData, SkillBase skillBase)
 {
 }
Пример #13
0
        //private FrameStopCellDesc m_frameStopCellDesc = null;

        //顿帧,屏震一次伤害只处理一次
        //private bool m_isHadLoadFrameStop = false;


        public override void Init(ISkillCellData cellData, SkillBase skillBase)
        {
            m_skillBase = skillBase;
            //聚怪技能 配置
            m_oneDamageInfo = (OneDamageInfo)cellData;
        }
Пример #14
0
 public override void Init(ISkillCellData cellData, SkillBase skillBase)
 {
     m_skillBase      = skillBase;
     m_actionCellDesc = (ActionCellDesc)cellData;
 }
Пример #15
0
        public override void Init(ISkillCellData cellData, SkillBase skillBase)
        {
            m_CellData = (StealthCellDesc)cellData;

            m_SkillBase = skillBase;
        }
Пример #16
0
 public virtual void Preload(ISkillCellData cellData, SkillBase skillBase)
 {
 }
Пример #17
0
 public override void Init(ISkillCellData cellData, SkillBase skillBase)
 {
     base.Init(cellData, skillBase);
 }
Пример #18
0
 public override void Init(ISkillCellData cellData, SkillBase skillBase)
 {
     m_skillBase           = skillBase;
     m_curveDamageCellDesc = (CurveDamageCellDesc)cellData;
     m_curIndex            = 0;
 }
Пример #19
0
        public override void Init(ISkillCellData cellData, SkillBase skillBase)
        {
            m_skillBase = skillBase;
            cellDesc    = (PositionCellDesc)cellData;

            skillBase.ShouldUpdatePositionToCastObj = false;

            orgPos          = m_skillBase.m_actor.transform.position;
            orgFront        = m_skillBase.m_actor.transform.forward;
            orgRight        = m_skillBase.m_actor.transform.right;
            targetTransform = null;

            if (cellDesc != null)
            {
                //有对应的行为技能ID
                if (cellDesc.BehaviorSkillId > 0)
                {
                    behaviorSkillDesc = skillBase.m_actor.GetCurSkillDesc(cellDesc.BehaviorSkillId);
                    if (behaviorSkillDesc != null)
                    {
                        ActorObj targetActorBase = skillBase.m_actor.GetTargetFromSelector(behaviorSkillDesc, null);
                        if (targetActorBase != null)
                        {
                            targetTransform = targetActorBase.transform;
                        }
                    }
                }
                else
                {
                    //默认技能行为
                    if (skillBase.m_hitActor != null)
                    {
                        targetTransform = skillBase.m_hitActor.transform;
                    }
                }

                //是否attach到actor上
                if (cellDesc.AttachToActor)
                {
                    if (cellDesc.SyncRotation)
                    {
                        skillBase.transform.parent = targetTransform;
                        BaseTool.ResetTransform(skillBase.transform);
                        skillBase.transform.localPosition += cellDesc.AttachOffset;
                    }
                    else
                    {
                        SyncPosition();
                        BaseTool.SetLocalPosition(m_skillBase.transform, curMovingPos);
                    }
                }
                else
                {
                    //走相应的轨迹
                    if (cellDesc.PointList.Count > 0)
                    {
                        BaseTool.SetPosition(skillBase.transform, GetPos(0));
                        skillBase.transform.forward = skillBase.transform.forward;
                        currentIndex = 0;
                    }
                }

                //同步施法者位置
                if (cellDesc.SyncOwnerPosition)
                {
                    BaseTool.SetPosition(m_skillBase.m_actor.transform, skillBase.transform.position);
                }

                Reset();

                if (cellDesc.DelayMovingTime >= 0)
                {
                    //吟唱后,发射子弹
                    float curTime = m_skillBase.GetCurActionTime();

                    if (cellDesc.DelayMovingTime <= curTime)
                    {
                        StartToMove();
                    }
                    else
                    {
                        Invoke("StartToMove", cellDesc.DelayMovingTime - curTime);
                    }
                }
            }
        }
Пример #20
0
 public override void Init(ISkillCellData cellData, SkillBase skillBase)
 {
     m_skillBase     = skillBase;
     m_collideDamage = (CollideDamageDesc)cellData;
 }