Beispiel #1
0
 /// <summary>
 /// Creates a new Collision with values copied from another.
 /// </summary>
 public Collision(Collision clone) : base(clone)
 {
     HitFilterID          = clone.HitFilterID;
     SoundSpaceType       = clone.SoundSpaceType;
     EnvLightMapSpotIndex = clone.EnvLightMapSpotIndex;
     ReflectPlaneHeight   = clone.ReflectPlaneHeight;
     MapNameID            = clone.MapNameID;
     UnkT08b = clone.UnkT08b;
     DisableBonfireEntityID = clone.DisableBonfireEntityID;
     UnkHitName             = clone.UnkHitName;
     PlayRegionID           = clone.PlayRegionID;
     LockCamID1             = clone.LockCamID1;
     LockCamID2             = clone.LockCamID2;
     UnkT14 = clone.UnkT14;
     UnkT18 = clone.UnkT18;
     UnkT1C = clone.UnkT1C;
     UnkT20 = clone.UnkT20;
     UnkT24 = clone.UnkT24;
     UnkT38 = clone.UnkT38;
     UnkT40 = clone.UnkT40;
     UnkT44 = clone.UnkT44;
     UnkT48 = clone.UnkT48;
     UnkT4C = clone.UnkT4C;
     UnkT70 = clone.UnkT70;
     UnkT74 = clone.UnkT74;
 }
Beispiel #2
0
 /// <summary>
 /// Creates a new Collision with the given ID and name.
 /// </summary>
 public Collision(int id, string name) : base(id, name, 80, 112)
 {
     HitFilterID          = 0;
     SoundSpaceType       = SoundSpace.NoReverb;
     EnvLightMapSpotIndex = 0;
     ReflectPlaneHeight   = 0;
     MapNameID            = -1;
     UnkT08b = 0;
     DisableBonfireEntityID = -1;
     UnkHitName             = null;
     PlayRegionID           = -1;
     LockCamID1             = 0;
     LockCamID2             = 0;
     UnkT14 = 0;
     UnkT18 = 0;
     UnkT1C = 0;
     UnkT20 = 0;
     UnkT24 = 0;
     UnkT38 = 0;
     UnkT40 = 0;
     UnkT44 = 0;
     UnkT48 = 0;
     UnkT4C = 0;
     UnkT70 = 0;
     UnkT74 = 0;
 }
Beispiel #3
0
                internal override void Read(BinaryReaderEx br)
                {
                    HitFilterID          = br.ReadByte();
                    SoundSpaceType       = br.ReadEnum8 <SoundSpace>();
                    EnvLightMapSpotIndex = br.ReadInt16();
                    ReflectPlaneHeight   = br.ReadSingle();
                    MapNameID            = br.ReadInt16();
                    UnkT08b = br.ReadInt16();
                    DisableBonfireEntityID = br.ReadInt32();
                    LockCamID1             = br.ReadInt16();
                    LockCamID2             = br.ReadInt16();
                    UnkT14 = br.ReadInt32();
                    UnkT18 = br.ReadInt32();
                    UnkT1C = br.ReadInt32();
                    UnkT20 = br.ReadInt32();
                    UnkT24 = br.ReadInt32();

                    br.AssertInt32(0);
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                    UnkT38 = br.ReadInt32();
                    br.AssertInt32(0);
                    UnkT40 = br.ReadInt32();
                    UnkT44 = br.ReadInt32();
                    UnkT48 = br.ReadInt32();
                    UnkT4C = br.ReadInt32();
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                    br.AssertInt32(0);

                    UnkT70 = br.ReadInt32();
                    UnkT74 = br.ReadInt32();
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                }
Beispiel #4
0
                internal override void Read(BinaryReaderEx br)
                {
                    HitFilterID          = br.ReadByte();
                    SoundSpaceType       = br.ReadEnum8 <SoundSpace>();
                    EnvLightMapSpotIndex = br.ReadInt16();
                    ReflectPlaneHeight   = br.ReadSingle();
                    br.AssertInt32(0); // Navmesh Group (4)
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                    br.AssertInt32(-1); // Vagrant Entity ID (3)
                    br.AssertInt32(-1);
                    br.AssertInt32(-1);
                    MapNameID              = br.ReadInt16();
                    DisableStart           = br.AssertInt16(0, 1) == 1;
                    DisableBonfireEntityID = br.ReadInt32();
                    UnkT2C       = br.ReadInt32();
                    UnkHitIndex  = br.ReadInt32();
                    UnkT34       = br.ReadInt32();
                    PlayRegionID = br.ReadInt32();
                    LockCamID1   = br.ReadInt16();
                    LockCamID2   = br.ReadInt16();
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                    UnkT50 = br.ReadInt32();
                    UnkT54 = br.ReadInt32();
                    UnkT58 = br.ReadInt32();
                    UnkT5C = br.ReadInt32();

                    for (int i = 0; i < 19; i++)
                    {
                        br.AssertInt32(0);
                    }

                    UnkT74 = br.ReadInt32();
                    UnkT78 = br.ReadSingle();
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                    br.AssertInt32(0);
                }
Beispiel #5
0
                internal override void Read(BinaryReaderEx br, MSBVersion version)
                {
                    HitFilterID          = br.ReadByte();
                    SoundSpaceType       = br.ReadEnum8 <SoundSpace>();
                    EnvLightMapSpotIndex = br.ReadInt16();
                    ReflectPlaneHeight   = br.ReadSingle();

                    if (version == MSBVersion.MSBVersionDS3)
                    {
                        br.AssertInt32(0); // Navmesh Group (4)
                        br.AssertInt32(0);
                        br.AssertInt32(0);
                        br.AssertInt32(0);
                        br.AssertInt32(-1); // Vagrant Entity ID (3)
                        br.AssertInt32(-1);
                        br.AssertInt32(-1);
                        MapNameID              = br.ReadInt16();
                        DisableStart           = br.AssertInt16(0, 1) == 1;
                        DisableBonfireEntityID = br.ReadInt32();
                        UnkT2C       = br.ReadInt32();
                        UnkT30       = br.ReadInt32();
                        UnkT34       = br.ReadInt32();
                        PlayRegionID = br.ReadInt32();
                        LockCamID1   = br.ReadInt16();
                        LockCamID2   = br.ReadInt16();
                        br.AssertInt32(0);
                        br.AssertInt32(0);
                        br.AssertInt32(0);
                        br.AssertInt32(0);
                        UnkT50 = br.ReadInt32();
                        UnkT54 = br.ReadInt32();
                        UnkT58 = br.ReadInt32();
                        UnkT5C = br.ReadInt32();

                        for (int i = 0; i < 19; i++)
                        {
                            br.AssertInt32(0);
                        }

                        UnkT74 = br.ReadInt32();
                        UnkT78 = br.ReadSingle();
                        br.AssertInt32(0);
                        br.AssertInt32(0);
                        br.AssertInt32(0);
                    }
                    else
                    {
                        // BB collision format much different (and simpler) so bullshit some values
                        MapNameID = br.ReadInt16();
                        MapNameID = -3000;
                        //DisableStart = br.AssertInt16(0, 1) == 1;
                        br.ReadInt16();
                        DisableStart           = false;
                        DisableBonfireEntityID = br.ReadInt32();

                        UnkT2C = -1;
                        UnkT30 = -1;
                        UnkT34 = 0;

                        PlayRegionID = br.ReadInt32();
                        PlayRegionID = 300000;
                        LockCamID1   = br.ReadInt16();
                        LockCamID2   = br.ReadInt16();
                        UnkT50       = br.ReadInt32();
                        UnkT54       = br.ReadInt32();
                        UnkT58       = br.ReadInt32();
                        UnkT5C       = br.ReadInt32();

                        for (int i = 0; i < 19; i++)
                        {
                            br.ReadInt32();
                        }
                        //br.AssertInt32(0);

                        UnkT74 = br.ReadInt32();
                        UnkT78 = br.ReadSingle();
                        br.AssertInt32(0);
                        br.AssertInt32(0);
                        br.AssertInt32(0);
                    }
                }