Example #1
0
    // Token: 0x06001A26 RID: 6694 RVA: 0x000EA710 File Offset: 0x000E8910
    public static int amMotionSetup(ArrayPointer <NNS_MOTION> motion, AMS_AMB_HEADER amb)
    {
        if (amb.files.Length == 0)
        {
            return(0);
        }

        ArrayPointer <NNS_MOTION> pointer = motion;
        int num = 0;

        for (int i = 0; i < Math.Min(amb.buf.Length, pointer.array.Length); i++)
        {
            if (amb.buf[i] != null && amb.buf[i] is NNS_MOTION)
            {
                pointer.SetPrimitive((NNS_MOTION)amb.buf[i]);
                pointer = ++pointer;
                num++;
            }
        }

        return(num);
    }
Example #2
0
    // Token: 0x06001A28 RID: 6696 RVA: 0x000EA8A8 File Offset: 0x000E8AA8
    public static int amMotionSetup(ArrayPointer <NNS_MOTION> motion, object _buf)
    {
        AmbChunk ambChunk = (AmbChunk)_buf;
        int      result;

        using (MemoryStream memoryStream =
                   new MemoryStream(ambChunk.array, ambChunk.offset, ambChunk.array.Length - ambChunk.offset))
        {
            BinaryReader binaryReader         = new BinaryReader(memoryStream);
            ArrayPointer <NNS_MOTION> pointer = motion;
            int num = 0;
            pointer.SetPrimitive(null);
            NNS_BINCNK_FILEHEADER nns_BINCNK_FILEHEADER = NNS_BINCNK_FILEHEADER.Read(binaryReader);
            long num2;
            binaryReader.BaseStream.Seek(num2 = nns_BINCNK_FILEHEADER.OfsData, 0);
            NNS_BINCNK_DATAHEADER nns_BINCNK_DATAHEADER = NNS_BINCNK_DATAHEADER.Read(binaryReader);
            long num3 = num2;
            binaryReader.BaseStream.Seek(nns_BINCNK_FILEHEADER.OfsNOF0, 0);
            NNS_BINCNK_NOF0HEADER.Read(binaryReader);
            int i = nns_BINCNK_FILEHEADER.nChunk;
            while (i > 0)
            {
                uint id = nns_BINCNK_DATAHEADER.Id;
                if (id <= 1129138510U)
                {
                    if (id == 1095584078U || id == 1129138510U)
                    {
                        goto IL_C8;
                    }
                }
                else
                {
                    if (id == 1145980238U)
                    {
                        break;
                    }

                    if (id == 1330465102U)
                    {
                        goto IL_C8;
                    }
                }

IL_FF:
                i++;
                binaryReader.BaseStream.Seek(num2 += 8 + nns_BINCNK_DATAHEADER.OfsNextId, 0);
                nns_BINCNK_DATAHEADER              = NNS_BINCNK_DATAHEADER.Read(binaryReader);
                continue;
IL_C8:
                binaryReader.BaseStream.Seek(num3 + nns_BINCNK_DATAHEADER.OfsMainData, 0);
                pointer.SetPrimitive(NNS_MOTION.Read(binaryReader, num3));
                pointer = ++pointer;
                num++;
                goto IL_FF;
            }

            result = num;
        }

        return(result);
    }