Пример #1
0
        public EditorHAMFile(HAMFile baseFile, PIGFile piggyFile)
        {
            BaseFile         = baseFile;
            this.piggyFile   = piggyFile;
            EClipNameMapping = new Dictionary <string, EClip>();
            ObjBitmapMapping = new Dictionary <string, int>();

            Textures          = new List <ushort>();
            TMapInfo          = new List <TMAPInfo>();
            VClips            = new List <VClip>();
            EClips            = new List <EClip>();
            WClips            = new List <WClip>();
            Robots            = new List <Robot>();
            Joints            = new List <JointPos>();
            Weapons           = new List <Weapon>();
            Models            = new List <Polymodel>();
            Gauges            = new List <ushort>();
            GaugesHires       = new List <ushort>();
            ObjBitmaps        = new List <ushort>();
            ObjBitmapPointers = new List <ushort>();
            Cockpits          = new List <ushort>();
            Reactors          = new List <Reactor>();
            Powerups          = new List <Powerup>();
            BitmapXLATData    = new ushort[2620];

            SoundNames = new List <string>();
        }
Пример #2
0
 public void fillOutTextureBox(HAMFile bmData)
 {
     /*int max = bmData.NumBitmaps;
      * for (int x = 0; x < max; x++)
      * {
      *  Bitmap bm = bmData.LookUpImageByIndex(bmData.Textures[x]).GetPicture();
      *  imageList1.Images.Add(bm);
      *  //bm.Dispose();
      *  string name = new String(bmData.TMapInfo[x].filename);
      *  ListViewItem lvi = new ListViewItem(name);
      *  lvi.ImageIndex = x;
      *  listView1.Items.Add(lvi);
      * }
      * listView1.LargeImageList = imageList1;*/
 }
Пример #3
0
        public static EditorHAMFile TranslatePIGToHam(Descent1PIGFile pigfile, PIGFile convertedPigFile)
        {
            HAMFile file = new HAMFile();

            foreach (ushort texture in pigfile.Textures)
            {
                file.Textures.Add(texture);
            }
            foreach (TMAPInfo tmapInfo in pigfile.TMapInfo)
            {
                file.TMapInfo.Add(tmapInfo);
            }

            for (int i = 0; i < pigfile.SoundIDs.Length; i++)
            {
                file.Sounds[i] = pigfile.SoundIDs[i];
            }
            for (int i = 0; i < pigfile.AltSounds.Length; i++)
            {
                file.AltSounds[i] = pigfile.AltSounds[i];
            }
            foreach (VClip clip in pigfile.VClips)
            {
                file.VClips.Add(clip);
            }
            foreach (EClip clip in pigfile.EClips)
            {
                file.EClips.Add(clip);
            }
            foreach (WClip clip in pigfile.WClips)
            {
                file.WClips.Add(clip);
            }
            foreach (Robot robot in pigfile.Robots)
            {
                file.Robots.Add(robot);
            }
            foreach (JointPos joint in pigfile.Joints)
            {
                file.Joints.Add(joint);
            }
            foreach (Weapon weapon in pigfile.Weapons)
            {
                if (weapon.ModelNum == 255)
                {
                    weapon.ModelNum = 0;
                }
                if (weapon.ModelNumInner == 255)
                {
                    weapon.ModelNumInner = 0;
                }
                file.Weapons.Add(weapon);
            }
            foreach (Polymodel model in pigfile.Models)
            {
                if (model != null)
                {
                    file.Models.Add(model);
                }
            }
            foreach (ushort gauge in pigfile.Gauges)
            {
                file.Gauges.Add(gauge);
                file.GaugesHires.Add(gauge);
            }
            foreach (ushort cockpit in pigfile.Cockpits)
            {
                file.Cockpits.Add(cockpit);
            }
            for (int i = 0; i < pigfile.ObjBitmaps.Length; i++)
            {
                file.ObjBitmaps.Add(pigfile.ObjBitmaps[i]);
                file.ObjBitmapPointers.Add(pigfile.ObjBitmapPointers[i]);
            }
            foreach (Powerup powerup in pigfile.Powerups)
            {
                file.Powerups.Add(powerup);
            }
            file.PlayerShip = pigfile.PlayerShip;
            file.Reactors.Add(pigfile.reactor);
            file.FirstMultiBitmapNum = pigfile.FirstMultiBitmapNum;
            for (int i = 0; i < pigfile.BitmapXLATData.Length; i++)
            {
                file.BitmapXLATData[i] = pigfile.BitmapXLATData[i];
            }

            EditorHAMFile res = new EditorHAMFile(file, convertedPigFile);

            res.CreateLocalLists();
            res.GenerateDefaultNamelists();
            res.TranslateData();
            return(res);
        }