예제 #1
0
        public void Serialize(IUnrealStream stream)
        {
            stream.Serialize(ref this.IsFemale);
            stream.Serialize(ref this.PlayerClassName);
            stream.Serialize(ref this.Level);
            stream.Serialize(ref this.CurrentXP);
            stream.Serialize(ref this.FirstName);
            stream.Serialize(ref this.LastName);
            stream.SerializeEnum(ref this.Origin);
            stream.SerializeEnum(ref this.Notoriety);
            stream.Serialize(ref this.TalentPoints);
            stream.Serialize(ref this.MappedPower1);
            stream.Serialize(ref this.MappedPower2);
            stream.Serialize(ref this.MappedPower3);
            stream.Serialize(ref this.Appearance);
            stream.Serialize(ref this.Powers);
            stream.Serialize(ref this.Weapons);

            if (stream.Version >= 18)
            {
                stream.Serialize(ref this.LoadoutWeapons);
            }

            if (stream.Version >= 19)
            {
                stream.Serialize(ref this.HotKeys);
            }

            stream.Serialize(ref this.Credits);
            stream.Serialize(ref this.Medigel);
            stream.Serialize(ref this.Eezo);
            stream.Serialize(ref this.Iridium);
            stream.Serialize(ref this.Palladium);
            stream.Serialize(ref this.Platinum);
            stream.Serialize(ref this.Probes);
            stream.Serialize(ref this.CurrentFuel);

            if (stream.Version >= 25)
            {
                stream.Serialize(ref this.FaceCode);
            }
            else
            {
                throw new Exception();
            }

            if (stream.Version >= 26)
            {
                stream.Serialize(ref this.ClassFriendlyName);
            }
        }
예제 #2
0
        public void Serialize(IUnrealStream stream)
        {
            stream.Serialize(ref this._IsFemale);
            stream.Serialize(ref this._ClassName);
            stream.Serialize(ref this._IsCombatPawn, s => s.Version < 37, () => true);
            stream.Serialize(ref this._IsInjuredPawn, s => s.Version < 48, () => false);
            stream.Serialize(ref this._UseCasualAppearance, s => s.Version < 48, () => false);
            stream.Serialize(ref this._Level);
            stream.Serialize(ref this._CurrentXP);
            stream.Serialize(ref this._FirstName);
            stream.Serialize(ref this._LastName);
            stream.SerializeEnum(ref this._Origin);
            stream.SerializeEnum(ref this._Notoriety);
            stream.Serialize(ref this._TalentPoints);
            stream.Serialize(ref this._MappedPower1);
            stream.Serialize(ref this._MappedPower2);
            stream.Serialize(ref this._MappedPower3);
            stream.Serialize(ref this._Appearance);
            stream.Serialize(ref this._Powers);
            stream.Serialize(ref this._GAWAssets, s => s.Version < 38, () => new List <GAWAsset>());
            stream.Serialize(ref this._Weapons);
            stream.Serialize(ref this._WeaponMods, s => s.Version < 32, () => new List <WeaponMod>());
            stream.Serialize(ref this._LoadoutWeapons, s => s.Version < 18, () => new Loadout());
            stream.Serialize(ref this._PrimaryWeapon, s => s.Version < 41, () => null);
            stream.Serialize(ref this._SecondaryWeapon, s => s.Version < 41, () => null);
            stream.Serialize(ref this._LoadoutWeaponGroups, s => s.Version < 33, () => new List <int>());
            stream.Serialize(ref this._HotKeys, s => s.Version < 19, () => new List <HotKey>());
            stream.Serialize(ref this._CurrentHealth, s => s.Version < 44, () => 0.0f);
            stream.Serialize(ref this._Credits);
            stream.Serialize(ref this._Medigel);
            stream.Serialize(ref this._Eezo);
            stream.Serialize(ref this._Iridium);
            stream.Serialize(ref this._Palladium);
            stream.Serialize(ref this._Platinum);
            stream.Serialize(ref this._Probes);
            stream.Serialize(ref this._CurrentFuel);
            stream.Serialize(ref this._Grenades, s => s.Version < 54, () => 0);

            if (stream.Version >= 25)
            {
                stream.Serialize(ref this._FaceCode);
            }
            else
            {
                throw new NotSupportedException();
            }

            stream.Serialize(ref this._ClassFriendlyName, s => s.Version < 26, () => 0);
            stream.Serialize(ref this._Guid, s => s.Version < 42, () => Guid.Empty);
        }
예제 #3
0
        public void Serialize(IUnrealStream stream)
        {
            stream.SerializeEnum(ref this._CombatAppearance);
            stream.Serialize(ref this._CasualId);
            stream.Serialize(ref this._FullBodyId);
            stream.Serialize(ref this._TorsoId);
            stream.Serialize(ref this._ShoulderId);
            stream.Serialize(ref this._ArmId);
            stream.Serialize(ref this._LegId);
            stream.Serialize(ref this._SpecId);
            stream.Serialize(ref this._Tint1Id);
            stream.Serialize(ref this._Tint2Id);
            stream.Serialize(ref this._Tint3Id);
            stream.Serialize(ref this._PatternId);
            stream.Serialize(ref this._PatternColorId);
            stream.Serialize(ref this._HelmetId);
            stream.Serialize(ref this._HasMorphHead);

            if (this._HasMorphHead == true)
            {
                stream.Serialize(ref this._MorphHead);
            }

            stream.Serialize(ref this._EmissiveId, s => s.Version < 55, () => 0);
        }
예제 #4
0
 public void Serialize(IUnrealStream stream)
 {
     stream.Serialize(ref this._MarkerOwnerPath);
     stream.Serialize(ref this._MarkerOffset);
     stream.Serialize(ref this._MarkerLabel);
     stream.Serialize(ref this._BoneToAttachTo);
     stream.SerializeEnum(ref this._MarkerIconType);
 }
예제 #5
0
 protected void Serialize(IUnrealStream stream)
 {
     stream.Serialize(ref this.DebugName);
     stream.Serialize(ref this.SecondsPlayed);
     stream.Serialize(ref this.Disc);
     stream.Serialize(ref this.BaseLevelName);
     stream.SerializeEnum(ref this.Difficulty);
     stream.SerializeEnum(ref this.EndGameState);
     stream.Serialize(ref this.TimeStamp);
     stream.Serialize(ref this.SaveLocation);
     stream.Serialize(ref this.SaveRotation);
     stream.Serialize(ref this.CurrentLoadingTip);
     stream.Serialize(ref this.LevelRecords);
     stream.Serialize(ref this.StreamingRecords);
     stream.Serialize(ref this.KismetRecords);
     stream.Serialize(ref this.DoorRecords);
     stream.Serialize(ref this.PawnRecords);
     stream.Serialize(ref this.PlayerRecord);
     stream.Serialize(ref this.HenchmanRecords);
     stream.Serialize(ref this.PlotRecord);
     stream.Serialize(ref this.ME1PlotRecord);
     stream.Serialize(ref this.GalaxyMapRecord);
     stream.Serialize(ref this.DependentDLC);
 }
예제 #6
0
        public void Serialize(IUnrealStream stream)
        {
            stream.SerializeEnum(ref this.CombatAppearance);
            stream.Serialize(ref this.CasualID);
            stream.Serialize(ref this.FullBodyID);
            stream.Serialize(ref this.TorsoID);
            stream.Serialize(ref this.ShoulderID);
            stream.Serialize(ref this.ArmID);
            stream.Serialize(ref this.LegID);
            stream.Serialize(ref this.SpecID);
            stream.Serialize(ref this.Tint1ID);
            stream.Serialize(ref this.Tint2ID);
            stream.Serialize(ref this.Tint3ID);
            stream.Serialize(ref this.PatternID);
            stream.Serialize(ref this.PatternColorID);
            stream.Serialize(ref this.HelmetID);
            stream.Serialize(ref this.HasMorphHead);

            if (this.HasMorphHead == true)
            {
                stream.Serialize(ref this.MorphHead);
            }
        }
예제 #7
0
 public void Serialize(IUnrealStream stream)
 {
     stream.SerializeEnum(ref this.CombatAppearance);
     stream.Serialize(ref this.CasualID);
     stream.Serialize(ref this.FullBodyID);
     stream.Serialize(ref this.TorsoID);
     stream.Serialize(ref this.ShoulderID);
     stream.Serialize(ref this.ArmID);
     stream.Serialize(ref this.LegID);
     stream.Serialize(ref this.SpecID);
     stream.Serialize(ref this.Tint1ID);
     stream.Serialize(ref this.Tint2ID);
     stream.Serialize(ref this.Tint3ID);
     stream.Serialize(ref this.PatternID);
     stream.Serialize(ref this.PatternColorID);
     stream.Serialize(ref this.HelmetID);
     stream.Serialize(ref this.HasMorphHead);
     
     if (this.HasMorphHead == true)
     {
         stream.Serialize(ref this.MorphHead);
     }
 }
예제 #8
0
        public void Serialize(IUnrealStream stream)
        {
            stream.Serialize(ref this.IsFemale);
            stream.Serialize(ref this.PlayerClassName);
            stream.Serialize(ref this.Level);
            stream.Serialize(ref this.CurrentXP);
            stream.Serialize(ref this.FirstName);
            stream.Serialize(ref this.LastName);
            stream.SerializeEnum(ref this.Origin);
            stream.SerializeEnum(ref this.Notoriety);
            stream.Serialize(ref this.TalentPoints);
            stream.Serialize(ref this.MappedPower1);
            stream.Serialize(ref this.MappedPower2);
            stream.Serialize(ref this.MappedPower3);
            stream.Serialize(ref this.Appearance);
            stream.Serialize(ref this.Powers);
            stream.Serialize(ref this.Weapons);

            if (stream.Version >= 18)
            {
                stream.Serialize(ref this.LoadoutWeapons);
            }

            if (stream.Version >= 19)
            {
                stream.Serialize(ref this.HotKeys);
            }

            stream.Serialize(ref this.Credits);
            stream.Serialize(ref this.Medigel);
            stream.Serialize(ref this.Eezo);
            stream.Serialize(ref this.Iridium);
            stream.Serialize(ref this.Palladium);
            stream.Serialize(ref this.Platinum);
            stream.Serialize(ref this.Probes);
            stream.Serialize(ref this.CurrentFuel);

            if (stream.Version >= 25)
            {
                stream.Serialize(ref this.FaceCode);
            }
            else
            {
                throw new Exception();
            }

            if (stream.Version >= 26)
            {
                stream.Serialize(ref this.ClassFriendlyName);
            }
        }
예제 #9
0
 protected void Serialize(IUnrealStream stream)
 {
     stream.Serialize(ref this.DebugName);
     stream.Serialize(ref this.SecondsPlayed);
     stream.Serialize(ref this.Disc);
     stream.Serialize(ref this.BaseLevelName);
     stream.SerializeEnum(ref this.Difficulty);
     stream.SerializeEnum(ref this.EndGameState);
     stream.Serialize(ref this.TimeStamp);
     stream.Serialize(ref this.SaveLocation);
     stream.Serialize(ref this.SaveRotation);
     stream.Serialize(ref this.CurrentLoadingTip);
     stream.Serialize(ref this.LevelRecords);
     stream.Serialize(ref this.StreamingRecords);
     stream.Serialize(ref this.KismetRecords);
     stream.Serialize(ref this.DoorRecords);
     stream.Serialize(ref this.PawnRecords);
     stream.Serialize(ref this.PlayerRecord);
     stream.Serialize(ref this.HenchmanRecords);
     stream.Serialize(ref this.PlotRecord);
     stream.Serialize(ref this.ME1PlotRecord);
     stream.Serialize(ref this.GalaxyMapRecord);
     stream.Serialize(ref this.DependentDLC);
 }