// <auto-generated />
#nullable enable
#pragma warning disable CS1591

using System;
using System.Diagnostics;
using System.Drawing;
using CounterStrikeSharp;
using CounterStrikeSharp.API.Modules.Events;
using CounterStrikeSharp.API.Modules.Entities;
using CounterStrikeSharp.API.Modules.Memory;
using CounterStrikeSharp.API.Modules.Utils;
using CounterStrikeSharp.API.Core.Attributes;

namespace CounterStrikeSharp.API.Core;

public partial class CEnvVolumetricFogVolume : CBaseEntity
{
    public CEnvVolumetricFogVolume (IntPtr pointer) : base(pointer) {}

	// m_bActive
	[SchemaMember("CEnvVolumetricFogVolume", "m_bActive")]
	public ref bool Active => ref Schema.GetRef<bool>(this.Handle, "CEnvVolumetricFogVolume", "m_bActive");

	// m_vBoxMins
	[SchemaMember("CEnvVolumetricFogVolume", "m_vBoxMins")]
	public Vector BoxMins => Schema.GetDeclaredClass<Vector>(this.Handle, "CEnvVolumetricFogVolume", "m_vBoxMins");

	// m_vBoxMaxs
	[SchemaMember("CEnvVolumetricFogVolume", "m_vBoxMaxs")]
	public Vector BoxMaxs => Schema.GetDeclaredClass<Vector>(this.Handle, "CEnvVolumetricFogVolume", "m_vBoxMaxs");

	// m_bStartDisabled
	[SchemaMember("CEnvVolumetricFogVolume", "m_bStartDisabled")]
	public ref bool StartDisabled => ref Schema.GetRef<bool>(this.Handle, "CEnvVolumetricFogVolume", "m_bStartDisabled");

	// m_bIndirectUseLPVs
	[SchemaMember("CEnvVolumetricFogVolume", "m_bIndirectUseLPVs")]
	public ref bool IndirectUseLPVs => ref Schema.GetRef<bool>(this.Handle, "CEnvVolumetricFogVolume", "m_bIndirectUseLPVs");

	// m_flStrength
	[SchemaMember("CEnvVolumetricFogVolume", "m_flStrength")]
	public ref float Strength => ref Schema.GetRef<float>(this.Handle, "CEnvVolumetricFogVolume", "m_flStrength");

	// m_nFalloffShape
	[SchemaMember("CEnvVolumetricFogVolume", "m_nFalloffShape")]
	public ref Int32 FalloffShape => ref Schema.GetRef<Int32>(this.Handle, "CEnvVolumetricFogVolume", "m_nFalloffShape");

	// m_flFalloffExponent
	[SchemaMember("CEnvVolumetricFogVolume", "m_flFalloffExponent")]
	public ref float FalloffExponent => ref Schema.GetRef<float>(this.Handle, "CEnvVolumetricFogVolume", "m_flFalloffExponent");

	// m_flHeightFogDepth
	[SchemaMember("CEnvVolumetricFogVolume", "m_flHeightFogDepth")]
	public ref float HeightFogDepth => ref Schema.GetRef<float>(this.Handle, "CEnvVolumetricFogVolume", "m_flHeightFogDepth");

	// m_fHeightFogEdgeWidth
	[SchemaMember("CEnvVolumetricFogVolume", "m_fHeightFogEdgeWidth")]
	public ref float HeightFogEdgeWidth => ref Schema.GetRef<float>(this.Handle, "CEnvVolumetricFogVolume", "m_fHeightFogEdgeWidth");

	// m_fIndirectLightStrength
	[SchemaMember("CEnvVolumetricFogVolume", "m_fIndirectLightStrength")]
	public ref float IndirectLightStrength => ref Schema.GetRef<float>(this.Handle, "CEnvVolumetricFogVolume", "m_fIndirectLightStrength");

	// m_fSunLightStrength
	[SchemaMember("CEnvVolumetricFogVolume", "m_fSunLightStrength")]
	public ref float SunLightStrength => ref Schema.GetRef<float>(this.Handle, "CEnvVolumetricFogVolume", "m_fSunLightStrength");

	// m_fNoiseStrength
	[SchemaMember("CEnvVolumetricFogVolume", "m_fNoiseStrength")]
	public ref float NoiseStrength => ref Schema.GetRef<float>(this.Handle, "CEnvVolumetricFogVolume", "m_fNoiseStrength");

	// m_TintColor
	[SchemaMember("CEnvVolumetricFogVolume", "m_TintColor")]
	public Color TintColor
	{
		get { return Schema.GetCustomMarshalledType<Color>(this.Handle, "CEnvVolumetricFogVolume", "m_TintColor"); }
		set { Schema.SetCustomMarshalledType<Color>(this.Handle, "CEnvVolumetricFogVolume", "m_TintColor", value); }
	}

	// m_bOverrideTintColor
	[SchemaMember("CEnvVolumetricFogVolume", "m_bOverrideTintColor")]
	public ref bool OverrideTintColor => ref Schema.GetRef<bool>(this.Handle, "CEnvVolumetricFogVolume", "m_bOverrideTintColor");

	// m_bOverrideIndirectLightStrength
	[SchemaMember("CEnvVolumetricFogVolume", "m_bOverrideIndirectLightStrength")]
	public ref bool OverrideIndirectLightStrength => ref Schema.GetRef<bool>(this.Handle, "CEnvVolumetricFogVolume", "m_bOverrideIndirectLightStrength");

	// m_bOverrideSunLightStrength
	[SchemaMember("CEnvVolumetricFogVolume", "m_bOverrideSunLightStrength")]
	public ref bool OverrideSunLightStrength => ref Schema.GetRef<bool>(this.Handle, "CEnvVolumetricFogVolume", "m_bOverrideSunLightStrength");

	// m_bOverrideNoiseStrength
	[SchemaMember("CEnvVolumetricFogVolume", "m_bOverrideNoiseStrength")]
	public ref bool OverrideNoiseStrength => ref Schema.GetRef<bool>(this.Handle, "CEnvVolumetricFogVolume", "m_bOverrideNoiseStrength");

}
