public EClip ReadEClipPSX(BinaryReader br)
        {
            EClip clip = new EClip();

            clip.Clip.PlayTime  = new Fix(br.ReadInt32());
            clip.Clip.NumFrames = br.ReadInt32();
            clip.Clip.FrameTime = new Fix(br.ReadInt32());
            clip.Clip.Flags     = br.ReadInt32();
            clip.Clip.SoundNum  = br.ReadInt16();
            for (int f = 0; f < 30; f++)
            {
                clip.Clip.Frames[f] = br.ReadUInt16();
            }
            short unk1 = br.ReadInt16();

            clip.Clip.LightValue       = new Fix(br.ReadInt32());
            clip.TimeLeft              = br.ReadInt32();
            clip.FrameCount            = br.ReadInt32();
            clip.ChangingWallTexture   = br.ReadInt16();
            clip.ChangingObjectTexture = br.ReadInt16();
            clip.Flags              = br.ReadInt32();
            clip.CriticalClip       = br.ReadInt32();
            clip.DestroyedBitmapNum = br.ReadInt32();
            clip.ExplosionVClip     = br.ReadInt32();
            clip.ExplosionEClip     = br.ReadInt32();
            clip.ExplosionSize      = new Fix(br.ReadInt32());
            clip.SoundNum           = br.ReadInt32();
            clip.SegNum             = br.ReadInt32();
            clip.SideNum            = br.ReadInt32();

            return(clip);
        }
示例#2
0
        public Descent1PIGFile(bool macPig = false, bool loadData = true)
        {
            Textures  = new ushort[800];
            TMapInfo  = new TMAPInfo[800];
            SoundIDs  = new byte[250];
            AltSounds = new byte[250];
            VClips    = new VClip[70];
            EClips    = new EClip[60];
            WClips    = new WClip[30];
            Robots    = new Robot[30];
            Joints    = new JointPos[600];
            Weapons   = new Weapon[30];
            Models    = new Polymodel[85];
            if (macPig)
            {
                Gauges = new ushort[85];
            }
            else
            {
                Gauges = new ushort[80];
            }
            ObjBitmaps        = new ushort[210];
            ObjBitmapPointers = new ushort[210];
            Cockpits          = new ushort[4];
            ObjectTypes       = new EditorObjectDefinition[100];
            Powerups          = new Powerup[29];
            BitmapXLATData    = new ushort[1800];
            reactor           = new Reactor();

            Bitmaps = new List <PIGImage>();
            Sounds  = new List <SoundData>();

            this.big      = macPig;
            this.LoadData = loadData;
        }
示例#3
0
 public void WriteEClip(EClip clip, BinaryWriter bw)
 {
     WriteVClip(clip.Clip, bw);
     bw.Write(clip.TimeLeft);
     bw.Write(clip.FrameCount);
     bw.Write(clip.ChangingWallTexture);
     bw.Write(clip.ChangingObjectTexture);
     bw.Write(clip.Flags);
     bw.Write(clip.CriticalClip);
     bw.Write(clip.DestroyedBitmapNum);
     bw.Write(clip.ExplosionVClip);
     bw.Write(clip.ExplosionEClip);
     bw.Write(clip.ExplosionSize.value);
     bw.Write(clip.SoundNum);
     bw.Write(clip.SegNum);
     bw.Write(clip.SideNum);
 }
示例#4
0
 public PSXDatFile()
 {
     Textures          = new ushort[800];
     TMapInfo          = new TMAPInfo[800];
     Sounds            = new byte[250];
     AltSounds         = new byte[250];
     VClips            = new VClip[70];
     EClips            = new EClip[60];
     WClips            = new WClip[30];
     Robots            = new Robot[30];
     Joints            = new JointPos[600];
     Weapons           = new Weapon[30];
     Models            = new Polymodel[85];
     Gauges            = new ushort[80];
     ObjBitmaps        = new ushort[210];
     ObjBitmapPointers = new ushort[210];
     Cockpits          = new ushort[4];
     ObjectTypes       = new EditorObjectDefinition[100];
     Powerups          = new Powerup[29];
     BitmapXLATData    = new ushort[1800];
     reactor           = new Reactor();
 }