// <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 CRagdollProp : CBaseAnimGraph
{
    public CRagdollProp (IntPtr pointer) : base(pointer) {}

	// m_ragdoll
	[SchemaMember("CRagdollProp", "m_ragdoll")]
	public ragdoll_t Ragdoll => Schema.GetDeclaredClass<ragdoll_t>(this.Handle, "CRagdollProp", "m_ragdoll");

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

	// m_ragEnabled
	[SchemaMember("CRagdollProp", "m_ragEnabled")]
	public NetworkedVector<bool> RagEnabled => Schema.GetDeclaredClass<NetworkedVector<bool>>(this.Handle, "CRagdollProp", "m_ragEnabled");

	// m_ragPos
	[SchemaMember("CRagdollProp", "m_ragPos")]
	public NetworkedVector<Vector> RagPos => Schema.GetDeclaredClass<NetworkedVector<Vector>>(this.Handle, "CRagdollProp", "m_ragPos");

	// m_ragAngles
	[SchemaMember("CRagdollProp", "m_ragAngles")]
	public NetworkedVector<QAngle> RagAngles => Schema.GetDeclaredClass<NetworkedVector<QAngle>>(this.Handle, "CRagdollProp", "m_ragAngles");

	// m_hRagdollSource
	[SchemaMember("CRagdollProp", "m_hRagdollSource")]
	public CHandle<CBaseEntity> RagdollSource => Schema.GetDeclaredClass<CHandle<CBaseEntity>>(this.Handle, "CRagdollProp", "m_hRagdollSource");

	// m_lastUpdateTickCount
	[SchemaMember("CRagdollProp", "m_lastUpdateTickCount")]
	public ref UInt32 LastUpdateTickCount => ref Schema.GetRef<UInt32>(this.Handle, "CRagdollProp", "m_lastUpdateTickCount");

	// m_allAsleep
	[SchemaMember("CRagdollProp", "m_allAsleep")]
	public ref bool AllAsleep => ref Schema.GetRef<bool>(this.Handle, "CRagdollProp", "m_allAsleep");

	// m_bFirstCollisionAfterLaunch
	[SchemaMember("CRagdollProp", "m_bFirstCollisionAfterLaunch")]
	public ref bool FirstCollisionAfterLaunch => ref Schema.GetRef<bool>(this.Handle, "CRagdollProp", "m_bFirstCollisionAfterLaunch");

	// m_hDamageEntity
	[SchemaMember("CRagdollProp", "m_hDamageEntity")]
	public CHandle<CBaseEntity> DamageEntity => Schema.GetDeclaredClass<CHandle<CBaseEntity>>(this.Handle, "CRagdollProp", "m_hDamageEntity");

	// m_hKiller
	[SchemaMember("CRagdollProp", "m_hKiller")]
	public CHandle<CBaseEntity> Killer => Schema.GetDeclaredClass<CHandle<CBaseEntity>>(this.Handle, "CRagdollProp", "m_hKiller");

	// m_hPhysicsAttacker
	[SchemaMember("CRagdollProp", "m_hPhysicsAttacker")]
	public CHandle<CBasePlayerPawn> PhysicsAttacker => Schema.GetDeclaredClass<CHandle<CBasePlayerPawn>>(this.Handle, "CRagdollProp", "m_hPhysicsAttacker");

	// m_flLastPhysicsInfluenceTime
	[SchemaMember("CRagdollProp", "m_flLastPhysicsInfluenceTime")]
	public ref float LastPhysicsInfluenceTime => ref Schema.GetRef<float>(this.Handle, "CRagdollProp", "m_flLastPhysicsInfluenceTime");

	// m_flFadeOutStartTime
	[SchemaMember("CRagdollProp", "m_flFadeOutStartTime")]
	public ref float FadeOutStartTime => ref Schema.GetRef<float>(this.Handle, "CRagdollProp", "m_flFadeOutStartTime");

	// m_flFadeTime
	[SchemaMember("CRagdollProp", "m_flFadeTime")]
	public ref float FadeTime => ref Schema.GetRef<float>(this.Handle, "CRagdollProp", "m_flFadeTime");

	// m_vecLastOrigin
	[SchemaMember("CRagdollProp", "m_vecLastOrigin")]
	public Vector LastOrigin => Schema.GetDeclaredClass<Vector>(this.Handle, "CRagdollProp", "m_vecLastOrigin");

	// m_flAwakeTime
	[SchemaMember("CRagdollProp", "m_flAwakeTime")]
	public ref float AwakeTime => ref Schema.GetRef<float>(this.Handle, "CRagdollProp", "m_flAwakeTime");

	// m_flLastOriginChangeTime
	[SchemaMember("CRagdollProp", "m_flLastOriginChangeTime")]
	public ref float LastOriginChangeTime => ref Schema.GetRef<float>(this.Handle, "CRagdollProp", "m_flLastOriginChangeTime");

	// m_strOriginClassName
	[SchemaMember("CRagdollProp", "m_strOriginClassName")]
	public string StrOriginClassName
	{
		get { return Schema.GetUtf8String(this.Handle, "CRagdollProp", "m_strOriginClassName"); }
		set { Schema.SetString(this.Handle, "CRagdollProp", "m_strOriginClassName", value); }
	}

	// m_strSourceClassName
	[SchemaMember("CRagdollProp", "m_strSourceClassName")]
	public string StrSourceClassName
	{
		get { return Schema.GetUtf8String(this.Handle, "CRagdollProp", "m_strSourceClassName"); }
		set { Schema.SetString(this.Handle, "CRagdollProp", "m_strSourceClassName", value); }
	}

	// m_bHasBeenPhysgunned
	[SchemaMember("CRagdollProp", "m_bHasBeenPhysgunned")]
	public ref bool HasBeenPhysgunned => ref Schema.GetRef<bool>(this.Handle, "CRagdollProp", "m_bHasBeenPhysgunned");

	// m_bShouldTeleportPhysics
	[SchemaMember("CRagdollProp", "m_bShouldTeleportPhysics")]
	public ref bool ShouldTeleportPhysics => ref Schema.GetRef<bool>(this.Handle, "CRagdollProp", "m_bShouldTeleportPhysics");

	// m_bAllowStretch
	[SchemaMember("CRagdollProp", "m_bAllowStretch")]
	public ref bool AllowStretch => ref Schema.GetRef<bool>(this.Handle, "CRagdollProp", "m_bAllowStretch");

	// m_flBlendWeight
	[SchemaMember("CRagdollProp", "m_flBlendWeight")]
	public ref float BlendWeight => ref Schema.GetRef<float>(this.Handle, "CRagdollProp", "m_flBlendWeight");

	// m_flDefaultFadeScale
	[SchemaMember("CRagdollProp", "m_flDefaultFadeScale")]
	public ref float DefaultFadeScale => ref Schema.GetRef<float>(this.Handle, "CRagdollProp", "m_flDefaultFadeScale");

	// m_ragdollMins
	[SchemaMember("CRagdollProp", "m_ragdollMins")]
	public NetworkedVector<Vector> RagdollMins => Schema.GetDeclaredClass<NetworkedVector<Vector>>(this.Handle, "CRagdollProp", "m_ragdollMins");

	// m_ragdollMaxs
	[SchemaMember("CRagdollProp", "m_ragdollMaxs")]
	public NetworkedVector<Vector> RagdollMaxs => Schema.GetDeclaredClass<NetworkedVector<Vector>>(this.Handle, "CRagdollProp", "m_ragdollMaxs");

	// m_bShouldDeleteActivationRecord
	[SchemaMember("CRagdollProp", "m_bShouldDeleteActivationRecord")]
	public ref bool ShouldDeleteActivationRecord => ref Schema.GetRef<bool>(this.Handle, "CRagdollProp", "m_bShouldDeleteActivationRecord");

	// m_bValidatePoweredRagdollPose
	[SchemaMember("CRagdollProp", "m_bValidatePoweredRagdollPose")]
	public ref bool ValidatePoweredRagdollPose => ref Schema.GetRef<bool>(this.Handle, "CRagdollProp", "m_bValidatePoweredRagdollPose");

}
