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

	// m_pController
	[SchemaMember("CBot", "m_pController")]
	public CCSPlayerController? Controller => Schema.GetPointer<CCSPlayerController>(this.Handle, "CBot", "m_pController");

	// m_pPlayer
	[SchemaMember("CBot", "m_pPlayer")]
	public CCSPlayerPawn? Player => Schema.GetPointer<CCSPlayerPawn>(this.Handle, "CBot", "m_pPlayer");

	// m_bHasSpawned
	[SchemaMember("CBot", "m_bHasSpawned")]
	public ref bool HasSpawned => ref Schema.GetRef<bool>(this.Handle, "CBot", "m_bHasSpawned");

	// m_id
	[SchemaMember("CBot", "m_id")]
	public ref UInt32 Id => ref Schema.GetRef<UInt32>(this.Handle, "CBot", "m_id");

	// m_isRunning
	[SchemaMember("CBot", "m_isRunning")]
	public ref bool IsRunning => ref Schema.GetRef<bool>(this.Handle, "CBot", "m_isRunning");

	// m_isCrouching
	[SchemaMember("CBot", "m_isCrouching")]
	public ref bool IsCrouching => ref Schema.GetRef<bool>(this.Handle, "CBot", "m_isCrouching");

	// m_forwardSpeed
	[SchemaMember("CBot", "m_forwardSpeed")]
	public ref float ForwardSpeed => ref Schema.GetRef<float>(this.Handle, "CBot", "m_forwardSpeed");

	// m_leftSpeed
	[SchemaMember("CBot", "m_leftSpeed")]
	public ref float LeftSpeed => ref Schema.GetRef<float>(this.Handle, "CBot", "m_leftSpeed");

	// m_verticalSpeed
	[SchemaMember("CBot", "m_verticalSpeed")]
	public ref float VerticalSpeed => ref Schema.GetRef<float>(this.Handle, "CBot", "m_verticalSpeed");

	// m_buttonFlags
	[SchemaMember("CBot", "m_buttonFlags")]
	public ref UInt64 ButtonFlags => ref Schema.GetRef<UInt64>(this.Handle, "CBot", "m_buttonFlags");

	// m_jumpTimestamp
	[SchemaMember("CBot", "m_jumpTimestamp")]
	public ref float JumpTimestamp => ref Schema.GetRef<float>(this.Handle, "CBot", "m_jumpTimestamp");

	// m_viewForward
	[SchemaMember("CBot", "m_viewForward")]
	public Vector ViewForward => Schema.GetDeclaredClass<Vector>(this.Handle, "CBot", "m_viewForward");

	// m_postureStackIndex
	[SchemaMember("CBot", "m_postureStackIndex")]
	public ref Int32 PostureStackIndex => ref Schema.GetRef<Int32>(this.Handle, "CBot", "m_postureStackIndex");

}
