protected override void Load(Dsl.CallData callData, SkillInstance instance)
        {
            int num = callData.GetParamNum();

            if (num > 0)
            {
                m_Duration = long.Parse(callData.GetParamId(0));
            }
            if (num > 1)
            {
                m_Velocity = float.Parse(callData.GetParamId(1));
            }
            if (num > 2)
            {
                m_StopAtTarget = int.Parse(callData.GetParamId(2));
            }
            if (num > 3)
            {
                m_Offset = DslUtility.CalcVector3(callData.GetParam(3) as Dsl.CallData);
            }
            if (num > 4)
            {
                StartTime = long.Parse(callData.GetParamId(4));
            }
            if (num > 5)
            {
                string         moveType = callData.GetParamId(5);
                IList <string> list     = Converter.ConvertStringList(moveType);
                m_IsFreeMove           = list.IndexOf("freemove") >= 0;
                m_RelativeToSelf       = list.IndexOf("relativetoself") >= 0;
                m_RandRelativeToSelf   = list.IndexOf("randrelativetoself") >= 0;
                m_RandRelativeToTarget = list.IndexOf("randrelativetotarget") >= 0;
            }
        }
예제 #2
0
        protected override void Load(Dsl.CallData callData, SkillInstance instance)
        {
            int num = callData.GetParamNum();

            if (num > 0)
            {
                m_Duration = long.Parse(callData.GetParamId(0));
            }
            else
            {
                m_Duration = 0;
            }
            if (num > 1)
            {
                m_Height = float.Parse(callData.GetParamId(1));
            }
            if (num > 2)
            {
                m_Velocity = float.Parse(callData.GetParamId(2));
            }
            if (num > 3)
            {
                m_StopAtTarget = int.Parse(callData.GetParamId(3));
            }
            if (num > 4)
            {
                m_Offset = DslUtility.CalcVector3(callData.GetParam(4) as Dsl.CallData);
            }
            if (num > 5)
            {
                StartTime = long.Parse(callData.GetParamId(5));
            }

            CalcYVelocityAndG();
        }
예제 #3
0
        protected override void Load(Dsl.CallData callData, SkillInstance instance)
        {
            int num = callData.GetParamNum();

            if (num > 0)
            {
                m_Duration = long.Parse(callData.GetParamId(0));
            }
            if (num > 1)
            {
                m_Velocity = float.Parse(callData.GetParamId(1));
            }
            if (num > 2)
            {
                m_StopAtTarget = int.Parse(callData.GetParamId(2));
            }
            if (num > 3)
            {
                m_Offset = DslUtility.CalcVector3(callData.GetParam(3) as Dsl.CallData);
            }
            if (num > 4)
            {
                StartTime = long.Parse(callData.GetParamId(4));
            }
            if (num > 5)
            {
                m_IsForRoundMove = callData.GetParamId(5) == "true";
            }
        }
        protected override void Load(Dsl.CallData callData, SkillInstance instance)
        {
            int num = callData.GetParamNum();

            if (num > 0)
            {
                m_Duration = long.Parse(callData.GetParamId(0));
            }
            else
            {
                m_Duration = 1000;
            }
            if (num > 1)
            {
                m_G = float.Parse(callData.GetParamId(1));
            }
            if (num > 2)
            {
                var param = callData.GetParam(2);
                m_ObjPath = param.GetId();
                var cd = param as Dsl.CallData;
                if (null != cd && m_ObjPath == "vector3")
                {
                    m_Offset = DslUtility.CalcVector3(cd);
                }
            }
            if (num > 3)
            {
                StartTime = long.Parse(callData.GetParamId(3));
            }
        }
예제 #5
0
 private void LoadBoneConfig(Dsl.FunctionData stCall)
 {
     if (stCall.GetParamNum() >= 2)
     {
         m_IsBoneSound = true;
         m_Position    = DslUtility.CalcVector3(stCall.GetParam(0) as Dsl.FunctionData);;
         m_IsAttach    = bool.Parse(stCall.GetParamId(1));
     }
 }
 protected override void Load(Dsl.CallData callData, SkillInstance instance)
 {
     if (callData.GetParamNum() >= 3)
     {
         StartTime     = long.Parse(callData.GetParamId(0));
         m_RemainTime  = long.Parse(callData.GetParamId(1));
         m_RotateSpeed = DslUtility.CalcVector3(callData.GetParam(2) as Dsl.CallData);
     }
 }
        protected override void Load(Dsl.CallData callData, SkillInstance instance)
        {
            int num = callData.GetParamNum();

            if (num >= 3)
            {
                StartTime = long.Parse(callData.GetParamId(0));
                var param = callData.GetParam(1);
                m_ObjPath = param.GetId();
                var cd = param as Dsl.CallData;
                if (null != cd && m_ObjPath == "vector3")
                {
                    m_RelativeOffset = DslUtility.CalcVector3(cd);
                }
                m_DurationTime = long.Parse(callData.GetParamId(2));
            }
        }
예제 #8
0
        protected override void Load(Dsl.FunctionData funcData, SkillInstance instance)
        {
            Dsl.CallData callData = funcData.Call;
            if (null != callData)
            {
                Load(callData, instance);

                Dsl.ISyntaxComponent statement = funcData.Statements.Find(st => st.GetId() == "transform");
                if (null != statement)
                {
                    Dsl.CallData stCall = statement as Dsl.CallData;
                    if (null != stCall)
                    {
                        if (stCall.GetParamNum() > 0)
                        {
                            Dsl.CallData param0 = stCall.GetParam(0) as Dsl.CallData;
                            if (null != param0)
                            {
                                m_Pos = DslUtility.CalcVector3(param0);
                            }
                        }
                        if (stCall.GetParamNum() > 1)
                        {
                            Dsl.CallData param1 = stCall.GetParam(1) as Dsl.CallData;
                            if (null != param1)
                            {
                                m_Dir = DslUtility.CalcEularRotation(param1);
                            }
                        }
                        if (stCall.GetParamNum() > 2)
                        {
                            Dsl.CallData param2 = stCall.GetParam(2) as Dsl.CallData;
                            if (null != param2)
                            {
                                m_Scale = DslUtility.CalcVector3(param2);
                            }
                        }
                    }
                }
            }
        }
 protected override void Load(Dsl.CallData callData, SkillInstance instance)
 {
     if (callData.GetParamNum() >= 5)
     {
         StartTime  = long.Parse(callData.GetParamId(0));
         m_BoneName = callData.GetParamId(1);
         if (m_BoneName == " ")
         {
             m_BoneName = "";
         }
         var param2 = callData.GetParam(2);
         m_PosObjPath = param2.GetId();
         var cd2 = param2 as Dsl.CallData;
         if (null != cd2 && m_PosObjPath == "vector3")
         {
             m_Postion = DslUtility.CalcVector3(cd2);
         }
         var param3 = callData.GetParam(3);
         m_RotateObjPath = param3.GetId();
         var cd3 = param3 as Dsl.CallData;
         if (null != cd3 && m_RotateObjPath == "eular")
         {
             m_Rotate = DslUtility.CalcEularAngles(cd3);
         }
         m_RelativeType = callData.GetParamId(4);
     }
     if (callData.GetParamNum() >= 6)
     {
         m_IsAttach = bool.Parse(callData.GetParamId(5));
     }
     if (callData.GetParamNum() >= 7)
     {
         m_IsUseTerrainHeight = bool.Parse(callData.GetParamId(6));
     }
     if (callData.GetParamNum() >= 8)
     {
         m_RandomRotate = DslUtility.CalcVector3(callData.GetParam(7) as Dsl.CallData);
     }
 }
        protected override void Load(Dsl.CallData callData, SkillInstance instance)
        {
            int num = callData.GetParamNum();

            if (num > 0)
            {
                m_Duration = long.Parse(callData.GetParamId(0));
            }
            else
            {
                m_Duration = 1000;
            }
            if (num > 1)
            {
                m_G = float.Parse(callData.GetParamId(1));
            }
            if (num > 2)
            {
                var param = callData.GetParam(2);
                m_ObjPath = param.GetId();
                var cd = param as Dsl.CallData;
                if (null != cd && m_ObjPath == "vector3")
                {
                    m_Offset = DslUtility.CalcVector3(cd);
                }
            }
            if (num > 3)
            {
                StartTime = long.Parse(callData.GetParamId(3));
            }
            if (num > 4)
            {
                string         moveType = callData.GetParamId(4);
                IList <string> list     = Converter.ConvertStringList(moveType);
                m_IsFaceToTarget = list.IndexOf("facetotarget") >= 0;
            }
        }
 protected override void Load(Dsl.CallData callData, SkillInstance instance)
 {
     if (callData.GetParamNum() >= 6)
     {
         StartTime  = long.Parse(callData.GetParamId(0));
         m_BoneName = callData.GetParamId(1);
         if (m_BoneName == " ")
         {
             m_BoneName = "";
         }
         m_Postion      = DslUtility.CalcVector3(callData.GetParam(2) as Dsl.CallData);
         m_Rotate       = DslUtility.CalcEularAngles(callData.GetParam(3) as Dsl.CallData);
         m_RelativeType = callData.GetParamId(4);
         m_IsAttach     = bool.Parse(callData.GetParamId(5));
     }
     if (callData.GetParamNum() >= 7)
     {
         m_IsUseTerrainHeight = bool.Parse(callData.GetParamId(6));
     }
     if (callData.GetParamNum() >= 8)
     {
         m_RandomRotate = DslUtility.CalcVector3(callData.GetParam(7) as Dsl.CallData);
     }
 }