示例#1
0
 // Token: 0x06001D5C RID: 7516 RVA: 0x00137D98 File Offset: 0x00135F98
 public GMS_EVE_DATA_DC_HEADER(AmbChunk data)
 {
     using (MemoryStream memoryStream = new MemoryStream(data.array, data.offset, data.array.Length - data.offset))
     {
         using (BinaryReader binaryReader = new BinaryReader(memoryStream))
         {
             this.width  = binaryReader.ReadUInt16();
             this.height = binaryReader.ReadUInt16();
             int num = (int)(this.width * this.height);
             this.ofst = new uint[num];
             for (int i = 0; i < num; i++)
             {
                 this.ofst[i] = binaryReader.ReadUInt32();
             }
             this.dc_list = AppMain.New <AppMain.GMS_EVE_DATA_DC_LIST>(num);
             for (int j = 0; j < num; j++)
             {
                 binaryReader.BaseStream.Seek(( long )(( ulong )this.ofst[j]), 0);
                 this.dc_list[j].dec_num = binaryReader.ReadUInt16();
                 if (this.dc_list[j].dec_num > 0)
                 {
                     this.dc_list[j].dec_data = AppMain.New <AppMain.GMS_EVE_RECORD_DECORATE>(( int )this.dc_list[j].dec_num);
                     for (int k = 0; k < ( int )this.dc_list[j].dec_num; k++)
                     {
                         this.dc_list[j].dec_data[k].pos_x = binaryReader.ReadByte();
                         this.dc_list[j].dec_data[k].pos_y = binaryReader.ReadByte();
                         this.dc_list[j].dec_data[k].id    = binaryReader.ReadUInt16();
                     }
                 }
             }
         }
     }
 }
示例#2
0
    // Token: 0x060003F1 RID: 1009 RVA: 0x0002031C File Offset: 0x0001E51C
    public static void GmEneHariSenboBuild()
    {
        AppMain.gm_ene_harisenbo_obj_3d_list = AppMain.GmGameDBuildRegBuildModel(AmFs.readAMBFile(AppMain.GmGameDatGetEnemyData(658)), AmFs.readAMBFile(AppMain.GmGameDatGetEnemyData(659)), 0U);
        AMS_AMB_HEADER ams_AMB_HEADER = AmFs.readAMBFile(AppMain.GmGameDatGetEnemyData(659));
        AmbChunk       ambChunk       = AmBind.Get(ams_AMB_HEADER, ams_AMB_HEADER.file_num - 1, out ams_AMB_HEADER.dir);

        AppMain.TXB_HEADER txb = AppMain.readTXBfile(ambChunk.array, ambChunk.offset);
        AppMain.gm_ene_harisenbo_r_obj_3d_list = AppMain.GmGameDBuildRegBuildModel(AmFs.readAMBFile(AppMain.GmGameDatGetEnemyData(658)), AmFs.readAMBFile(AppMain.GmGameDatGetEnemyData(659)), 0U, txb);
    }
示例#3
0
    // Token: 0x06001A27 RID: 6695 RVA: 0x000EA778 File Offset: 0x000E8978
    public static void amMotionSetup(out NNS_MOTION motion, AmbChunk buf)
    {
        motion = null;
        using (MemoryStream memoryStream = new MemoryStream(buf.array, buf.offset, buf.array.Length - buf.offset))
        {
            BinaryReader          binaryReader          = new BinaryReader(memoryStream);
            NNS_BINCNK_FILEHEADER nns_BINCNK_FILEHEADER = NNS_BINCNK_FILEHEADER.Read(binaryReader);
            long num;
            binaryReader.BaseStream.Seek(num = nns_BINCNK_FILEHEADER.OfsData, 0x0);
            NNS_BINCNK_DATAHEADER nns_BINCNK_DATAHEADER = NNS_BINCNK_DATAHEADER.Read(binaryReader);
            long num2 = num;
            binaryReader.BaseStream.Seek(nns_BINCNK_FILEHEADER.OfsNOF0, 0x0);
            NNS_BINCNK_NOF0HEADER.Read(binaryReader);
            int i = nns_BINCNK_FILEHEADER.nChunk;
            while (i > 0x0)
            {
                uint id = nns_BINCNK_DATAHEADER.Id;
                if (id <= 0x434D494E)
                {
                    if (id == 0x414D494E || id == 0x434D494E)
                    {
                        goto LOAD_NMO;
                    }
                }
                else
                {
                    if (id == 0x444E454E) // NEND
                    {
                        break;
                    }

                    if (id == 0x4F4D494E || id == 0x4F4D5A4E) // NIMO, NZMO
                    {
                        goto LOAD_NMO;
                    }
                }

IL_D4:
                i++;
                binaryReader.BaseStream.Seek(num += 0x8 + nns_BINCNK_DATAHEADER.OfsNextId, 0x0);
                nns_BINCNK_DATAHEADER             = NNS_BINCNK_DATAHEADER.Read(binaryReader);
                continue;

LOAD_NMO:
                binaryReader.BaseStream.Seek(num2 + nns_BINCNK_DATAHEADER.OfsMainData, 0x0);
                motion = NNS_MOTION.Read(binaryReader, num2);
                goto IL_D4;
            }
        }
    }
示例#4
0
    // Token: 0x060018C7 RID: 6343 RVA: 0x000E21DC File Offset: 0x000E03DC
    private static void dmTitleOpLoadPostFuncMapFar(AppMain.DMS_LOGO_COM_LOAD_CONTEXT context)
    {
        AppMain.dm_titleop_data[context.no] = context.fs_req;
        AMS_AMB_HEADER ams_AMB_HEADER = AmFs.readAMBFile(AppMain.dm_titleop_data[context.no]);

        for (int i = 0; i < ams_AMB_HEADER.file_num; i++)
        {
            string         dir;
            AmbChunk       buf             = AmBind.Get(ams_AMB_HEADER, i, out dir);
            AMS_AMB_HEADER ams_AMB_HEADER2 = AmFs.readAMBFile(buf);
            ams_AMB_HEADER2.dir = dir;
            AppMain.dm_titleop_mapfar_data[i] = ams_AMB_HEADER2;
        }
    }
示例#5
0
    // Token: 0x06000CF4 RID: 3316 RVA: 0x000747B0 File Offset: 0x000729B0
    public static void AoTexBuild(AppMain.AOS_TEXTURE tex, AMS_AMB_HEADER amb)
    {
        if (tex == null)
        {
            return;
        }
        if (amb == null)
        {
            return;
        }
        AppMain.aoTexInitTex(tex);
        tex.amb = amb;
        AmbChunk ambChunk = AmBind.SearchEx(amb, ".txb");

        tex.txb = AppMain.readTXBfile(ambChunk.array, ambChunk.offset, amb.dir);
        AppMain.TXB_HEADER txb = tex.txb;
    }
示例#6
0
 // Token: 0x06001948 RID: 6472 RVA: 0x000E483C File Offset: 0x000E2A3C
 public static byte[] ObjDataLoad(AppMain.OBS_DATA_WORK data_work, string filename, object archive)
 {
     byte[] array = null;
     AppMain.sFile = filename;
     if (data_work != null)
     {
         if (data_work.pData == null)
         {
             if (archive != null)
             {
                 AmbChunk ambChunk = AmBind.Search((AMS_AMB_HEADER)archive, AppMain.sFile);
                 array = new byte[ambChunk.length];
                 Buffer.BlockCopy(ambChunk.array, ambChunk.offset, array, 0, ambChunk.length);
                 data_work.pData = array;
                 data_work.num   = 32768;
                 data_work.num  += 1;
             }
             else
             {
                 byte[] pData;
                 AmFs.amFsRead(AppMain.sFile, out pData);
                 data_work.pData = pData;
                 if (data_work.pData != null)
                 {
                     data_work.num += 1;
                 }
             }
         }
         else
         {
             data_work.num += 1;
         }
         return(( byte[] )data_work.pData);
     }
     if (archive != null)
     {
         AmbChunk ambChunk2 = AmBind.Search((AMS_AMB_HEADER)archive, AppMain.sFile);
         array = new byte[ambChunk2.length];
         Buffer.BlockCopy(ambChunk2.array, ambChunk2.offset, array, 0, ambChunk2.length);
     }
     else
     {
         AmFs.amFsRead(AppMain.sFile, out array);
     }
     return(array);
 }
    // Token: 0x06001145 RID: 4421 RVA: 0x000972F4 File Offset: 0x000954F4
    public static void amObjectSetup(out AppMain.NNS_OBJECT _object, out AppMain.NNS_TEXFILELIST texfilelist, object _buf)
    {
        _object     = null;
        texfilelist = null;
        AmbChunk ambChunk = (AmbChunk)_buf;

        using (MemoryStream memoryStream = new MemoryStream(ambChunk.array, ambChunk.offset, ambChunk.array.Length - ambChunk.offset))
        {
            BinaryReader binaryReader = new BinaryReader(memoryStream);
            AppMain.NNS_BINCNK_FILEHEADER nns_BINCNK_FILEHEADER = AppMain.NNS_BINCNK_FILEHEADER.Read(binaryReader);
            long num;
            binaryReader.BaseStream.Seek(num = (long)nns_BINCNK_FILEHEADER.OfsData, 0);
            AppMain.NNS_BINCNK_DATAHEADER nns_BINCNK_DATAHEADER = AppMain.NNS_BINCNK_DATAHEADER.Read(binaryReader);
            long num2 = num;
            binaryReader.BaseStream.Seek((long)nns_BINCNK_FILEHEADER.OfsNOF0, 0);
            AppMain.NNS_BINCNK_NOF0HEADER.Read(binaryReader);
            int i = nns_BINCNK_FILEHEADER.nChunk;
            while (i > 0)
            {
                uint id = nns_BINCNK_DATAHEADER.Id;
                // NIOB/NZOB (little endian)
                if (id != 0x424F494E && id != 0x424F5A4E)
                {
                    if (id == 1145980238U)
                    {
                        break;
                    }
                    if (id == 1280592206U || id == 0x4C545A4e)
                    {
                        binaryReader.BaseStream.Seek(num2 + (long)nns_BINCNK_DATAHEADER.OfsMainData, 0);
                        texfilelist = AppMain.NNS_TEXFILELIST.Read(binaryReader, num2);
                    }
                }
                else
                {
                    binaryReader.BaseStream.Seek(num2 + (long)nns_BINCNK_DATAHEADER.OfsMainData, 0);
                    _object = AppMain.NNS_OBJECT.Read(binaryReader, num2);
                }
                i--;
                binaryReader.BaseStream.Seek(num += (long)(8 + nns_BINCNK_DATAHEADER.OfsNextId), 0);
                nns_BINCNK_DATAHEADER             = AppMain.NNS_BINCNK_DATAHEADER.Read(binaryReader);
            }
        }
    }
        // Token: 0x0600205A RID: 8282 RVA: 0x0013E04C File Offset: 0x0013C24C
        private void fileLoading()
        {
            bool flag = true;

            for (int i = 0; i < 2; i++)
            {
                if (!AmFs.amFsIsComplete(this.m_fs[i]))
                {
                    flag = false;
                    break;
                }
            }
            if (flag)
            {
                for (int j = 0; j < 2; j++)
                {
                    this.m_file[j] = this.m_fs[j];
                }
                for (uint num = 0U; num < 6U; num += 1U)
                {
                    AppMain.CMain.SLocalUnfoldTable slocalUnfoldTable = AppMain.CMain.c_local_unfold_table[(int)((UIntPtr)num)];
                    int file = (int)slocalUnfoldTable.file;
                    int num2 = 2;
                    if (file < num2)
                    {
                        string   text;
                        AmbChunk ambChunk = AmBind.Get(this.m_fs[(int)slocalUnfoldTable.file], (int)slocalUnfoldTable.index, out text);
                        object   obj;
                        if (AppMain.AoActIsAma(ambChunk.array, ambChunk.offset))
                        {
                            obj = A2S.readAMAFile(ambChunk);
                        }
                        else
                        {
                            obj = AmFs.readAMBFile(ambChunk);
                        }
                        this.m_file[(int)((UIntPtr)num)] = obj;
                    }
                }
                this.m_flag[4] = true;
                this.m_pTaskLink.DetachTask();
            }
        }
示例#9
0
 // Token: 0x06002599 RID: 9625 RVA: 0x0014DB3C File Offset: 0x0014BD3C
 public TVX_FILE(AmbChunk data)
 {
     this.header   = new AppMain.TVXS_HEADER(data.array, data.offset);
     this.textures = new AppMain.TVXS_TEXTURE[this.header.tex_num];
     this.vertexes = new AppMain.AOS_TVX_VERTEX[this.header.tex_num][];
     for (int i = 0; i < this.textures.Length; i++)
     {
         int offset = (int)((ulong)this.header.tex_tbl_ofst + (ulong)((long)(i * AppMain.TVXS_TEXTURE.SizeBytes))) + data.offset;
         this.textures[i] = new AppMain.TVXS_TEXTURE(data.array, offset);
         this.vertexes[i] = new AppMain.AOS_TVX_VERTEX[this.textures[i].vtx_num];
         int num = 0;
         while (( long )num < ( long )(( ulong )this.textures[i].vtx_num))
         {
             offset = ( int )(( ulong )this.textures[i].vtx_tbl_ofst + ( ulong )(( long )(num * ( int )AppMain.AOS_TVX_VERTEX.SizeBytes))) + data.offset;
             this.vertexes[i][num] = new AppMain.AOS_TVX_VERTEX(data.array, offset);
             num++;
         }
     }
 }
示例#10
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);
    }
示例#11
0
    // Token: 0x0600170A RID: 5898 RVA: 0x000C9174 File Offset: 0x000C7374
    public static AppMain.TXB_HEADER readTXBfile(object data)
    {
        AmbChunk ambChunk = (AmbChunk)data;

        return(AppMain.readTXBfile(ambChunk.array, ambChunk.offset));
    }