Example #1
0
        /// <summary>Print out some information about this HDU.</summary>
        public override void Info()
        {
            BinaryTable myData = (BinaryTable)this.myData;

            Console.Out.WriteLine("  Binary Table");
            Console.Out.WriteLine("      Header Information:");

            int nhcol   = myHeader.GetIntValue("TFIELDS", -1);
            int nrow    = myHeader.GetIntValue("NAXIS2", -1);
            int rowsize = myHeader.GetIntValue("NAXIS1", -1);

            Console.Out.Write("          " + nhcol + " fields");
            Console.Out.WriteLine(", " + nrow + " rows of length " + rowsize);

            for (int i = 1; i <= nhcol; i += 1)
            {
                Console.Out.Write("           " + i + ":");
                PrtField("Name", "TTYPE" + i);
                PrtField("Format", "TFORM" + i);
                PrtField("Dimens", "TDIM" + i);
                Console.Out.WriteLine(" ");
            }

            Console.Out.WriteLine("      Data Information:");
            if (myData == null || table.NRows == 0 || table.NCols == 0)
            {
                Console.Out.WriteLine("         No data present");
                if (table.HeapSize > 0)
                {
                    Console.Out.WriteLine("         Heap size is: " + table.HeapSize + " bytes");
                }
            }
            else
            {
                Console.Out.WriteLine("          Number of rows=" + table.NRows);
                Console.Out.WriteLine("          Number of columns=" + table.NCols);
                if (table.HeapSize > 0)
                {
                    Console.Out.WriteLine("          Heap size is: " + table.HeapSize + " bytes");
                }
                Object[] cols = table.FlatColumns;
                for (int i = 0; i < cols.Length; i += 1)
                {
                    Console.Out.WriteLine("           " + i + ":" + ArrayFuncs.ArrayDescription(cols[i]));
                }
            }
        }
Example #2
0
        public bool ReadFromBinary(BinaryTable table, int index)
        {
            LevelMonsterRecord record = GetRecord(table, index);

            group    = DataRecordUtility.ExtractInt(table, record.group, 0);
            scene    = DataRecordUtility.ExtractInt(table, record.scene, 0);
            camp     = DataRecordUtility.ExtractInt(table, record.camp, 0);
            actorID  = DataRecordUtility.ExtractInt(table, record.actorID, 0);
            x        = DataRecordUtility.ExtractFloat(table, record.x, 0);
            y        = DataRecordUtility.ExtractFloat(table, record.y, 0);
            dir      = DataRecordUtility.ExtractFloat(table, record.dir, 0);
            level    = DataRecordUtility.ExtractInt(table, record.level, 0);
            passive  = DataRecordUtility.ExtractBool(table, record.passive, false);
            aiLogic  = DataRecordUtility.ExtractString(table, record.aiLogic, "");
            aiParams = DataRecordUtility.ExtractStringList(table, record.aiParams, null);
            return(true);
        }
Example #3
0
        public void WriteToBinary(BinaryTable table)
        {
            LevelMonsterRecord record = new LevelMonsterRecord();

            record.group    = DataRecordUtility.SetValue(table, group, 0);
            record.scene    = DataRecordUtility.SetValue(table, scene, 0);
            record.camp     = DataRecordUtility.SetValue(table, camp, 0);
            record.actorID  = DataRecordUtility.SetValue(table, actorID, 0);
            record.x        = DataRecordUtility.SetValue(table, x, 0);
            record.y        = DataRecordUtility.SetValue(table, y, 0);
            record.dir      = DataRecordUtility.SetValue(table, dir, 0);
            record.level    = DataRecordUtility.SetValue(table, level, 0);
            record.passive  = DataRecordUtility.SetValue(table, passive, false);
            record.aiLogic  = DataRecordUtility.SetValue(table, aiLogic, "");
            record.aiParams = DataRecordUtility.SetValue(table, aiParams, null);
            byte[] bytes = GetRecordBytes(record);
            table.Records.Add(bytes);
        }
        public void AddToBinary(BinaryTable table)
        {
            AttributeConfigRecord record = new AttributeConfigRecord();

            record.Id                  = DBCUtil.SetValue(table, Id, 0);
            record.Describe            = DBCUtil.SetValue(table, Describe, "");
            record.AddStrength         = DBCUtil.SetValue(table, AddStrength, 0);
            record.AddStrengthRate     = DBCUtil.SetValue(table, AddStrengthRate, 0);
            record.AddIntelligence     = DBCUtil.SetValue(table, AddIntelligence, 0);
            record.AddIntelligenceRate = DBCUtil.SetValue(table, AddIntelligenceRate, 0);
            record.AddCharm            = DBCUtil.SetValue(table, AddCharm, 0);
            record.AddCharmRate        = DBCUtil.SetValue(table, AddCharmRate, 0);
            record.AddAction           = DBCUtil.SetValue(table, AddAction, 0);
            record.AddActionMax        = DBCUtil.SetValue(table, AddActionMax, 0);
            record.AddGold             = DBCUtil.SetValue(table, AddGold, 0);
            byte[] bytes = GetRecordBytes(record);
            table.Records.Add(bytes);
        }
        public bool CollectDataFromBinary(BinaryTable table, int index)
        {
            AttributeConfigRecord record = GetRecord(table, index);

            Id                  = DBCUtil.ExtractInt(table, record.Id, 0);
            Describe            = DBCUtil.ExtractString(table, record.Describe, "");
            AddStrength         = DBCUtil.ExtractInt(table, record.AddStrength, 0);
            AddStrengthRate     = DBCUtil.ExtractInt(table, record.AddStrengthRate, 0);
            AddIntelligence     = DBCUtil.ExtractInt(table, record.AddIntelligence, 0);
            AddIntelligenceRate = DBCUtil.ExtractInt(table, record.AddIntelligenceRate, 0);
            AddCharm            = DBCUtil.ExtractInt(table, record.AddCharm, 0);
            AddCharmRate        = DBCUtil.ExtractInt(table, record.AddCharmRate, 0);
            AddAction           = DBCUtil.ExtractInt(table, record.AddAction, 0);
            AddActionMax        = DBCUtil.ExtractInt(table, record.AddActionMax, 0);
            AddGold             = DBCUtil.ExtractInt(table, record.AddGold, 0);
            AfterCollectData();
            return(true);
        }
Example #6
0
        public bool CollectDataFromBinary(BinaryTable table, int index)
        {
            BlocksRecord record = GetRecord(table, index);

            Id              = DBCUtil.ExtractInt(table, record.Id, 0);
            Description     = DBCUtil.ExtractString(table, record.Description, "");
            Length          = DBCUtil.ExtractFloat(table, record.Length, 0);
            Width           = DBCUtil.ExtractFloat(table, record.Width, 0);
            Res             = DBCUtil.ExtractString(table, record.Res, "");
            Type            = DBCUtil.ExtractInt(table, record.Type, 0);
            LeftPortType    = DBCUtil.ExtractInt(table, record.LeftPortType, 0);
            LeftOffeset     = DBCUtil.ExtractFloatArray(table, record.LeftOffeset, null);
            RightPortType   = DBCUtil.ExtractInt(table, record.RightPortType, 0);
            RightOffset     = DBCUtil.ExtractFloatArray(table, record.RightOffset, null);
            ForwardPortType = DBCUtil.ExtractInt(table, record.ForwardPortType, 0);
            ForwardOffset   = DBCUtil.ExtractFloatArray(table, record.ForwardOffset, null);
            BackPortType    = DBCUtil.ExtractInt(table, record.BackPortType, 0);
            BackOffset      = DBCUtil.ExtractFloatArray(table, record.BackOffset, null);
            return(true);
        }
Example #7
0
        public void AddToBinary(BinaryTable table)
        {
            BlocksRecord record = new BlocksRecord();

            record.Id              = DBCUtil.SetValue(table, Id, 0);
            record.Description     = DBCUtil.SetValue(table, Description, "");
            record.Length          = DBCUtil.SetValue(table, Length, 0);
            record.Width           = DBCUtil.SetValue(table, Width, 0);
            record.Res             = DBCUtil.SetValue(table, Res, "");
            record.Type            = DBCUtil.SetValue(table, Type, 0);
            record.LeftPortType    = DBCUtil.SetValue(table, LeftPortType, 0);
            record.LeftOffeset     = DBCUtil.SetValue(table, LeftOffeset, null);
            record.RightPortType   = DBCUtil.SetValue(table, RightPortType, 0);
            record.RightOffset     = DBCUtil.SetValue(table, RightOffset, null);
            record.ForwardPortType = DBCUtil.SetValue(table, ForwardPortType, 0);
            record.ForwardOffset   = DBCUtil.SetValue(table, ForwardOffset, null);
            record.BackPortType    = DBCUtil.SetValue(table, BackPortType, 0);
            record.BackOffset      = DBCUtil.SetValue(table, BackOffset, null);
            byte[] bytes = GetRecordBytes(record);
            table.Records.Add(bytes);
        }
Example #8
0
        public void BuildByColumn()
        {
            BinaryTable btab = new BinaryTable();

            btab.AddColumn(floats);
            btab.AddColumn(vf);
            btab.AddColumn(strings);
            btab.AddColumn(vbool);
            btab.AddColumn(ints);

            Fits f = new Fits();

            f.AddHDU(Fits.MakeHDU(btab));

            // BufferedDataStream bdos = new BufferedDataStream(new FileStream("bt3.fits",FileMode.Open));
            BufferedFile bdos = new BufferedFile("bt3.fits", FileAccess.ReadWrite, FileShare.ReadWrite);

            f.Write(bdos);
            bdos.Close();

            f = new Fits("bt3.fits");
            BinaryTableHDU bhdu = (BinaryTableHDU)f.GetHDU(1);

            btab = (BinaryTable)bhdu.Data;

            Assertion.AssertEquals("col1", true, ArrayFuncs.ArrayEquals(floats, bhdu.GetColumn(0)));
            Assertion.AssertEquals("col2", true, ArrayFuncs.ArrayEquals(vf, bhdu.GetColumn(1))); // problem is here only

            String[] col = (String[])bhdu.GetColumn(2);
            for (int i = 0; i < col.Length; i += 1)
            {
                col[i] = col[i].Trim();
            }
            Assertion.AssertEquals("coi3", true, ArrayFuncs.ArrayEquals(strings, col));

            Assertion.AssertEquals("col4", true, ArrayFuncs.ArrayEquals(vbool, bhdu.GetColumn(3)));
            Assertion.AssertEquals("col5", true, ArrayFuncs.ArrayEquals(ints, bhdu.GetColumn(4)));
            f.Close();
        }
Example #9
0
        public void BuildByRow()
        {
            Fits f = null;

            try
            {
                f = new Fits(
                    TestFileSetup.GetTargetFilename("bt2.fits"),
                    FileAccess.Read);
                f.Read();

                BinaryTableHDU bhdu = (BinaryTableHDU)f.GetHDU(1);
                Header         hdr  = bhdu.Header;

                BinaryTable btab = (BinaryTable)bhdu.Data;
                for (int i = 0; i < 50; i += 1)
                {
                    Object[] row = (Object[])btab.GetRow(i);
                    float[]  qx  = (float[])row[1];
                    Array[]  p   = (Array[])row[0];
                    float[]  pt  = (float[])p.GetValue(0);
                    pt[0] = (float)(i * Math.Sin(i));
                    btab.AddRow(row);
                }
                f.Close();

                f = new Fits();
                f.AddHDU(Fits.MakeHDU(btab));

                BufferedFile bf =
                    new BufferedFile(
                        TestFileSetup.GetTargetFilename("bt4.fits"),
                        FileAccess.ReadWrite,
                        FileShare.ReadWrite);
                f.Write(bf);

                bf.Flush();
                bf.Close();
                bf.Dispose();
                f.Close();

                f = new Fits(
                    TestFileSetup.GetTargetFilename("bt4.fits"),
                    FileAccess.Read);

                btab = (BinaryTable)f.GetHDU(1).Data;
                Assert.AreEqual(100, btab.NRows);

                // Try getting data before we Read in the table.
                Array[] xf   = (Array[])btab.GetColumn(0);
                Array[] xft  = (Array[])xf.GetValue(50);
                float[] xftt = (float[])xft.GetValue(0);

                Assert.AreEqual((float)0, (float)xftt[0]);

                xft  = (Array[])xf.GetValue(99);
                xftt = (float[])xft.GetValue(0);
                Assert.AreEqual((float)(49 * Math.Sin(49)), (float)xftt[0]);

                for (int i = 0; i < xf.Length; i += 3)
                {
                    bool[]  ba = (bool[])btab.GetElement(i, 5);
                    float[] fx = (float[])btab.GetElement(i, 1);

                    int trow = i % 50;

                    Assert.AreEqual(true, ArrayFuncs.ArrayEquals(ba, vbool[trow])); // prob 1
                    Assert.AreEqual(true, ArrayFuncs.ArrayEquals(fx, vf[trow]));
                }

                // Fill the table.
                Data data = f.GetHDU(1).Data;

                xf   = (Array[])btab.GetColumn(0);
                xft  = (Array[])xf.GetValue(50);
                xftt = (float[])xft.GetValue(0);
                Assert.AreEqual(0F, (float)xftt[0]);
                xft  = (Array[])xf.GetValue(99);
                xftt = (float[])xft.GetValue(0);
                Assert.AreEqual((float)(49 * Math.Sin(49)), (float)xftt[0]);

                for (int i = 0; i < xf.Length; i += 3)
                {
                    bool[]  ba = (bool[])btab.GetElement(i, 5);
                    float[] fx = (float[])btab.GetElement(i, 1);

                    int trow = i % 50;

                    Assert.AreEqual(true, ArrayFuncs.ArrayEquals(ba, vbool[trow])); // prob 2
                    Assert.AreEqual(true, ArrayFuncs.ArrayEquals(fx, vf[trow]));
                }
            }
            finally
            {
                if (f != null)
                {
                    f.Close();
                }
            }
        }
Example #10
0
 public BinaryTableHDU(Header hdr, Data datum) : base((TableData)datum)
 {
     myHeader = hdr;
     myData   = datum;
     table    = (BinaryTable)datum;
 }
        public void WriteToBinary(BinaryTable table)
        {
            SkillRecord record = new SkillRecord();

            record.id                      = DataRecordUtility.SetValue(table, id, 0);
            record.desc                    = DataRecordUtility.SetValue(table, desc, "");
            record.type                    = DataRecordUtility.SetValue(table, type, 0);
            record.icon                    = DataRecordUtility.SetValue(table, icon, 0);
            record.distance                = DataRecordUtility.SetValue(table, distance, 0);
            record.cooldown                = DataRecordUtility.SetValue(table, cooldown, 0);
            record.BaseCooldown            = DataRecordUtility.SetValue(table, BaseCooldown, 0);
            record.duration                = DataRecordUtility.SetValue(table, duration, 0);
            record.interval                = DataRecordUtility.SetValue(table, interval, 0);
            record.damage                  = DataRecordUtility.SetValue(table, damage, 0);
            record.mpRecover               = DataRecordUtility.SetValue(table, mpRecover, 0);
            record.hpRecover               = DataRecordUtility.SetValue(table, hpRecover, 0);
            record.addAttack               = DataRecordUtility.SetValue(table, addAttack, 0);
            record.addShield               = DataRecordUtility.SetValue(table, addShield, 0);
            record.addSpeed                = DataRecordUtility.SetValue(table, addSpeed, 0);
            record.canmove                 = DataRecordUtility.SetValue(table, canmove, 0);
            record.leadAnim                = DataRecordUtility.SetValue(table, leadAnim, "");
            record.leadAnimTime            = DataRecordUtility.SetValue(table, leadAnimTime, 0);
            record.leadEffect              = DataRecordUtility.SetValue(table, leadEffect, "");
            record.leadEffectBone          = DataRecordUtility.SetValue(table, leadEffectBone, "");
            record.leadEffectStartTime     = DataRecordUtility.SetValue(table, leadEffectStartTime, 0);
            record.leadEffectDeleteTime    = DataRecordUtility.SetValue(table, leadEffectDeleteTime, 0);
            record.castAnim                = DataRecordUtility.SetValue(table, castAnim, "");
            record.castAnimTime            = DataRecordUtility.SetValue(table, castAnimTime, 0);
            record.selfEffect              = DataRecordUtility.SetValue(table, selfEffect, "");
            record.selfEffectBone          = DataRecordUtility.SetValue(table, selfEffectBone, "");
            record.selfEffectStartTime     = DataRecordUtility.SetValue(table, selfEffectStartTime, 0);
            record.selfEffectDeleteTime    = DataRecordUtility.SetValue(table, selfEffectDeleteTime, 0);
            record.targetEffect            = DataRecordUtility.SetValue(table, targetEffect, "");
            record.targetEffectBone        = DataRecordUtility.SetValue(table, targetEffectBone, "");
            record.targetEffectStartTime   = DataRecordUtility.SetValue(table, targetEffectStartTime, 0);
            record.targetEffectDeleteTime  = DataRecordUtility.SetValue(table, targetEffectDeleteTime, 0);
            record.emitEffect              = DataRecordUtility.SetValue(table, emitEffect, "");
            record.emitEffectBone          = DataRecordUtility.SetValue(table, emitEffectBone, "");
            record.emitEffectStartTime     = DataRecordUtility.SetValue(table, emitEffectStartTime, 0);
            record.emitSpeed               = DataRecordUtility.SetValue(table, emitSpeed, 0);
            record.hitAnim                 = DataRecordUtility.SetValue(table, hitAnim, "");
            record.hitAnimTime             = DataRecordUtility.SetValue(table, hitAnimTime, 0);
            record.hitEffect               = DataRecordUtility.SetValue(table, hitEffect, "");
            record.hitEffectBone           = DataRecordUtility.SetValue(table, hitEffectBone, "");
            record.hitEffectStartTime      = DataRecordUtility.SetValue(table, hitEffectStartTime, 0);
            record.hitEffectDeleteTime     = DataRecordUtility.SetValue(table, hitEffectDeleteTime, 0);
            record.impactToSelf            = DataRecordUtility.SetValue(table, impactToSelf, 0);
            record.impactToTarget          = DataRecordUtility.SetValue(table, impactToTarget, 0);
            record.interruptPriority       = DataRecordUtility.SetValue(table, interruptPriority, 0);
            record.isInterrupt             = DataRecordUtility.SetValue(table, isInterrupt, false);
            record.targetType              = DataRecordUtility.SetValue(table, targetType, 0);
            record.aoeType                 = DataRecordUtility.SetValue(table, aoeType, 0);
            record.aoeSize                 = DataRecordUtility.SetValue(table, aoeSize, 0);
            record.aoeAngleOrLength        = DataRecordUtility.SetValue(table, aoeAngleOrLength, 0);
            record.maxAoeTargetCount       = DataRecordUtility.SetValue(table, maxAoeTargetCount, 0);
            record.dslSkillId              = DataRecordUtility.SetValue(table, dslSkillId, 0);
            record.dslFile                 = DataRecordUtility.SetValue(table, dslFile, "");
            record.sound                   = DataRecordUtility.SetValue(table, sound, "");
            record.soundDelay              = DataRecordUtility.SetValue(table, soundDelay, 0);
            record.skilltimescale          = DataRecordUtility.SetValue(table, skilltimescale, 0);
            record.skilltimescalestarttime = DataRecordUtility.SetValue(table, skilltimescalestarttime, 0);
            record.skilltimescaleendtime   = DataRecordUtility.SetValue(table, skilltimescaleendtime, 0);
            byte[] bytes = GetRecordBytes(record);
            table.Records.Add(bytes);
        }
        public bool ReadFromBinary(BinaryTable table, int index)
        {
            SkillRecord record = GetRecord(table, index);

            id                      = DataRecordUtility.ExtractInt(table, record.id, 0);
            desc                    = DataRecordUtility.ExtractString(table, record.desc, "");
            type                    = DataRecordUtility.ExtractInt(table, record.type, 0);
            icon                    = DataRecordUtility.ExtractInt(table, record.icon, 0);
            distance                = DataRecordUtility.ExtractFloat(table, record.distance, 0);
            cooldown                = DataRecordUtility.ExtractFloat(table, record.cooldown, 0);
            BaseCooldown            = DataRecordUtility.ExtractFloat(table, record.BaseCooldown, 0);
            duration                = DataRecordUtility.ExtractFloat(table, record.duration, 0);
            interval                = DataRecordUtility.ExtractFloat(table, record.interval, 0);
            damage                  = DataRecordUtility.ExtractInt(table, record.damage, 0);
            mpRecover               = DataRecordUtility.ExtractInt(table, record.mpRecover, 0);
            hpRecover               = DataRecordUtility.ExtractInt(table, record.hpRecover, 0);
            addAttack               = DataRecordUtility.ExtractInt(table, record.addAttack, 0);
            addShield               = DataRecordUtility.ExtractInt(table, record.addShield, 0);
            addSpeed                = DataRecordUtility.ExtractFloat(table, record.addSpeed, 0);
            canmove                 = DataRecordUtility.ExtractInt(table, record.canmove, 0);
            leadAnim                = DataRecordUtility.ExtractString(table, record.leadAnim, "");
            leadAnimTime            = DataRecordUtility.ExtractInt(table, record.leadAnimTime, 0);
            leadEffect              = DataRecordUtility.ExtractString(table, record.leadEffect, "");
            leadEffectBone          = DataRecordUtility.ExtractString(table, record.leadEffectBone, "");
            leadEffectStartTime     = DataRecordUtility.ExtractInt(table, record.leadEffectStartTime, 0);
            leadEffectDeleteTime    = DataRecordUtility.ExtractInt(table, record.leadEffectDeleteTime, 0);
            castAnim                = DataRecordUtility.ExtractString(table, record.castAnim, "");
            castAnimTime            = DataRecordUtility.ExtractInt(table, record.castAnimTime, 0);
            selfEffect              = DataRecordUtility.ExtractString(table, record.selfEffect, "");
            selfEffectBone          = DataRecordUtility.ExtractString(table, record.selfEffectBone, "");
            selfEffectStartTime     = DataRecordUtility.ExtractInt(table, record.selfEffectStartTime, 0);
            selfEffectDeleteTime    = DataRecordUtility.ExtractInt(table, record.selfEffectDeleteTime, 0);
            targetEffect            = DataRecordUtility.ExtractString(table, record.targetEffect, "");
            targetEffectBone        = DataRecordUtility.ExtractString(table, record.targetEffectBone, "");
            targetEffectStartTime   = DataRecordUtility.ExtractInt(table, record.targetEffectStartTime, 0);
            targetEffectDeleteTime  = DataRecordUtility.ExtractInt(table, record.targetEffectDeleteTime, 0);
            emitEffect              = DataRecordUtility.ExtractString(table, record.emitEffect, "");
            emitEffectBone          = DataRecordUtility.ExtractString(table, record.emitEffectBone, "");
            emitEffectStartTime     = DataRecordUtility.ExtractInt(table, record.emitEffectStartTime, 0);
            emitSpeed               = DataRecordUtility.ExtractInt(table, record.emitSpeed, 0);
            hitAnim                 = DataRecordUtility.ExtractString(table, record.hitAnim, "");
            hitAnimTime             = DataRecordUtility.ExtractInt(table, record.hitAnimTime, 0);
            hitEffect               = DataRecordUtility.ExtractString(table, record.hitEffect, "");
            hitEffectBone           = DataRecordUtility.ExtractString(table, record.hitEffectBone, "");
            hitEffectStartTime      = DataRecordUtility.ExtractInt(table, record.hitEffectStartTime, 0);
            hitEffectDeleteTime     = DataRecordUtility.ExtractInt(table, record.hitEffectDeleteTime, 0);
            impactToSelf            = DataRecordUtility.ExtractInt(table, record.impactToSelf, 0);
            impactToTarget          = DataRecordUtility.ExtractInt(table, record.impactToTarget, 0);
            interruptPriority       = DataRecordUtility.ExtractInt(table, record.interruptPriority, 0);
            isInterrupt             = DataRecordUtility.ExtractBool(table, record.isInterrupt, false);
            targetType              = DataRecordUtility.ExtractInt(table, record.targetType, 0);
            aoeType                 = DataRecordUtility.ExtractInt(table, record.aoeType, 0);
            aoeSize                 = DataRecordUtility.ExtractFloat(table, record.aoeSize, 0);
            aoeAngleOrLength        = DataRecordUtility.ExtractFloat(table, record.aoeAngleOrLength, 0);
            maxAoeTargetCount       = DataRecordUtility.ExtractInt(table, record.maxAoeTargetCount, 0);
            dslSkillId              = DataRecordUtility.ExtractInt(table, record.dslSkillId, 0);
            dslFile                 = DataRecordUtility.ExtractString(table, record.dslFile, "");
            sound                   = DataRecordUtility.ExtractString(table, record.sound, "");
            soundDelay              = DataRecordUtility.ExtractInt(table, record.soundDelay, 0);
            skilltimescale          = DataRecordUtility.ExtractFloat(table, record.skilltimescale, 0);
            skilltimescalestarttime = DataRecordUtility.ExtractInt(table, record.skilltimescalestarttime, 0);
            skilltimescaleendtime   = DataRecordUtility.ExtractInt(table, record.skilltimescaleendtime, 0);
            return(true);
        }