Add more property data definitions
This commit is contained in:
		
							parent
							
								
									c61cd5cd47
								
							
						
					
					
						commit
						691220b5c8
					
				| 
						 | 
					@ -140,4 +140,151 @@ public class PropRenderType : Property
 | 
				
			||||||
        base.Read(reader);
 | 
					        base.Read(reader);
 | 
				
			||||||
        mode = (Mode)reader.ReadUInt32();
 | 
					        mode = (Mode)reader.ReadUInt32();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class PropSlayResult : Property
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    public enum Effect
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        Normal, NoEffect, Terminate, Destroy,
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public Effect effect;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public override void Read(BinaryReader reader)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        base.Read(reader);
 | 
				
			||||||
 | 
					        effect = (Effect)reader.ReadUInt32();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class PropInventoryType : Property
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    public enum Slot
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        Junk, Item, Weapon,
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public Slot type;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public override void Read(BinaryReader reader)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        base.Read(reader);
 | 
				
			||||||
 | 
					        type = (Slot)reader.ReadUInt32();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class PropCollisionType : Property
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    public bool Bounce;
 | 
				
			||||||
 | 
					    public bool DestroyOnImpact;
 | 
				
			||||||
 | 
					    public bool SlayOnImpact;
 | 
				
			||||||
 | 
					    public bool NoCollisionSound;
 | 
				
			||||||
 | 
					    public bool NoResult;
 | 
				
			||||||
 | 
					    public bool FullCollisionSound;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public override void Read(BinaryReader reader)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        base.Read(reader);
 | 
				
			||||||
 | 
					        var flags = reader.ReadUInt32();
 | 
				
			||||||
 | 
					        Bounce = (flags & 0x1) != 0;
 | 
				
			||||||
 | 
					        DestroyOnImpact = (flags & (0x1 << 1)) != 0;
 | 
				
			||||||
 | 
					        SlayOnImpact = (flags & (0x1 << 2)) != 0;
 | 
				
			||||||
 | 
					        NoCollisionSound = (flags & (0x1 << 3)) != 0;
 | 
				
			||||||
 | 
					        NoResult = (flags & (0x1 << 4)) != 0;
 | 
				
			||||||
 | 
					        FullCollisionSound = (flags & (0x1 << 5)) != 0;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class PropPosition : Property
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    public Vector3 Location;
 | 
				
			||||||
 | 
					    public Vector3 Rotation;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public override void Read(BinaryReader reader)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        base.Read(reader);
 | 
				
			||||||
 | 
					        Location = reader.ReadVec3();
 | 
				
			||||||
 | 
					        reader.ReadBytes(4); // Runtime Cell/Hint in editor
 | 
				
			||||||
 | 
					        Rotation = reader.ReadRotation();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class PropLight : Property
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    public float Brightness;
 | 
				
			||||||
 | 
					    public Vector3 Offset;
 | 
				
			||||||
 | 
					    public float Radius;
 | 
				
			||||||
 | 
					    public float InnerRadius;
 | 
				
			||||||
 | 
					    public bool QuadLit;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public override void Read(BinaryReader reader)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        base.Read(reader);
 | 
				
			||||||
 | 
					        Brightness = reader.ReadSingle();
 | 
				
			||||||
 | 
					        Offset = reader.ReadVec3();
 | 
				
			||||||
 | 
					        Radius = reader.ReadSingle();
 | 
				
			||||||
 | 
					        QuadLit = reader.ReadBoolean();
 | 
				
			||||||
 | 
					        reader.ReadBytes(3);
 | 
				
			||||||
 | 
					        InnerRadius = reader.ReadSingle();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class PropLightColor : Property
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    public float Hue;
 | 
				
			||||||
 | 
					    public float Saturation;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public override void Read(BinaryReader reader)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        base.Read(reader);
 | 
				
			||||||
 | 
					        Hue = reader.ReadSingle();
 | 
				
			||||||
 | 
					        Saturation = reader.ReadSingle();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class PropSpotlight : Property
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    public float InnerAngle;
 | 
				
			||||||
 | 
					    public float OuterAngle;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public override void Read(BinaryReader reader)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        base.Read(reader);
 | 
				
			||||||
 | 
					        InnerAngle = reader.ReadSingle();
 | 
				
			||||||
 | 
					        OuterAngle = reader.ReadSingle();
 | 
				
			||||||
 | 
					        reader.ReadBytes(4); // Z is unused
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class PropSpotlightAndAmbient : Property
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    public float InnerAngle;
 | 
				
			||||||
 | 
					    public float OuterAngle;
 | 
				
			||||||
 | 
					    public float SpotBrightness;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public override void Read(BinaryReader reader)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        base.Read(reader);
 | 
				
			||||||
 | 
					        InnerAngle = reader.ReadSingle();
 | 
				
			||||||
 | 
					        OuterAngle = reader.ReadSingle();
 | 
				
			||||||
 | 
					        SpotBrightness = reader.ReadSingle();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// TODO: Work out what this property actually does
 | 
				
			||||||
 | 
					public class PropLightBasedAlpha : Property
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    public bool Enabled;
 | 
				
			||||||
 | 
					    public Vector2 AlphaRange;
 | 
				
			||||||
 | 
					    public Vector2 LightRange;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public override void Read(BinaryReader reader)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        base.Read(reader);
 | 
				
			||||||
 | 
					        Enabled = reader.ReadBoolean();
 | 
				
			||||||
 | 
					        reader.ReadBytes(3);
 | 
				
			||||||
 | 
					        AlphaRange = reader.ReadVec2();
 | 
				
			||||||
 | 
					        LightRange = new Vector2(reader.ReadInt32(), reader.ReadInt32());
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue