Пример #1
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;
        }
Пример #2
0
        public VClip Clone()
        {
            VClip clip = (VClip)MemberwiseClone();

            clip.Frames = new ushort[30];
            Array.Copy(Frames, clip.Frames, 30);

            return(clip);
        }
Пример #3
0
 public void WriteVClip(VClip clip, BinaryWriter bw)
 {
     bw.Write(clip.PlayTime.value);
     bw.Write(clip.NumFrames);
     bw.Write(clip.FrameTime.value);
     bw.Write(clip.Flags);
     bw.Write(clip.SoundNum);
     for (int x = 0; x < 30; x++)
     {
         bw.Write(clip.Frames[x]);
     }
     bw.Write(clip.LightValue.value);
 }
Пример #4
0
        public VClip ReadVClip(BinaryReader br)
        {
            VClip clip = new VClip();

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

            return(clip);
        }
Пример #5
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();
 }