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

	// m_OnUnpressed
	[SchemaMember("CMomentaryRotButton", "m_OnUnpressed")]
	public CEntityIOOutput OnUnpressed => Schema.GetDeclaredClass<CEntityIOOutput>(this.Handle, "CMomentaryRotButton", "m_OnUnpressed");

	// m_OnFullyOpen
	[SchemaMember("CMomentaryRotButton", "m_OnFullyOpen")]
	public CEntityIOOutput OnFullyOpen => Schema.GetDeclaredClass<CEntityIOOutput>(this.Handle, "CMomentaryRotButton", "m_OnFullyOpen");

	// m_OnFullyClosed
	[SchemaMember("CMomentaryRotButton", "m_OnFullyClosed")]
	public CEntityIOOutput OnFullyClosed => Schema.GetDeclaredClass<CEntityIOOutput>(this.Handle, "CMomentaryRotButton", "m_OnFullyClosed");

	// m_OnReachedPosition
	[SchemaMember("CMomentaryRotButton", "m_OnReachedPosition")]
	public CEntityIOOutput OnReachedPosition => Schema.GetDeclaredClass<CEntityIOOutput>(this.Handle, "CMomentaryRotButton", "m_OnReachedPosition");

	// m_lastUsed
	[SchemaMember("CMomentaryRotButton", "m_lastUsed")]
	public ref Int32 LastUsed => ref Schema.GetRef<Int32>(this.Handle, "CMomentaryRotButton", "m_lastUsed");

	// m_start
	[SchemaMember("CMomentaryRotButton", "m_start")]
	public QAngle Start => Schema.GetDeclaredClass<QAngle>(this.Handle, "CMomentaryRotButton", "m_start");

	// m_end
	[SchemaMember("CMomentaryRotButton", "m_end")]
	public QAngle End => Schema.GetDeclaredClass<QAngle>(this.Handle, "CMomentaryRotButton", "m_end");

	// m_IdealYaw
	[SchemaMember("CMomentaryRotButton", "m_IdealYaw")]
	public ref float IdealYaw => ref Schema.GetRef<float>(this.Handle, "CMomentaryRotButton", "m_IdealYaw");

	// m_sNoise
	[SchemaMember("CMomentaryRotButton", "m_sNoise")]
	public string Noise
	{
		get { return Schema.GetUtf8String(this.Handle, "CMomentaryRotButton", "m_sNoise"); }
		set { Schema.SetString(this.Handle, "CMomentaryRotButton", "m_sNoise", value); }
	}

	// m_bUpdateTarget
	[SchemaMember("CMomentaryRotButton", "m_bUpdateTarget")]
	public ref bool UpdateTarget => ref Schema.GetRef<bool>(this.Handle, "CMomentaryRotButton", "m_bUpdateTarget");

	// m_direction
	[SchemaMember("CMomentaryRotButton", "m_direction")]
	public ref Int32 Direction => ref Schema.GetRef<Int32>(this.Handle, "CMomentaryRotButton", "m_direction");

	// m_returnSpeed
	[SchemaMember("CMomentaryRotButton", "m_returnSpeed")]
	public ref float ReturnSpeed => ref Schema.GetRef<float>(this.Handle, "CMomentaryRotButton", "m_returnSpeed");

	// m_flStartPosition
	[SchemaMember("CMomentaryRotButton", "m_flStartPosition")]
	public ref float StartPosition => ref Schema.GetRef<float>(this.Handle, "CMomentaryRotButton", "m_flStartPosition");

}
