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

	// m_iszWorldName
	[SchemaMember("CPointTemplate", "m_iszWorldName")]
	public string WorldName
	{
		get { return Schema.GetUtf8String(this.Handle, "CPointTemplate", "m_iszWorldName"); }
		set { Schema.SetString(this.Handle, "CPointTemplate", "m_iszWorldName", value); }
	}

	// m_iszSource2EntityLumpName
	[SchemaMember("CPointTemplate", "m_iszSource2EntityLumpName")]
	public string Source2EntityLumpName
	{
		get { return Schema.GetUtf8String(this.Handle, "CPointTemplate", "m_iszSource2EntityLumpName"); }
		set { Schema.SetString(this.Handle, "CPointTemplate", "m_iszSource2EntityLumpName", value); }
	}

	// m_iszEntityFilterName
	[SchemaMember("CPointTemplate", "m_iszEntityFilterName")]
	public string EntityFilterName
	{
		get { return Schema.GetUtf8String(this.Handle, "CPointTemplate", "m_iszEntityFilterName"); }
		set { Schema.SetString(this.Handle, "CPointTemplate", "m_iszEntityFilterName", value); }
	}

	// m_flTimeoutInterval
	[SchemaMember("CPointTemplate", "m_flTimeoutInterval")]
	public ref float TimeoutInterval => ref Schema.GetRef<float>(this.Handle, "CPointTemplate", "m_flTimeoutInterval");

	// m_bAsynchronouslySpawnEntities
	[SchemaMember("CPointTemplate", "m_bAsynchronouslySpawnEntities")]
	public ref bool AsynchronouslySpawnEntities => ref Schema.GetRef<bool>(this.Handle, "CPointTemplate", "m_bAsynchronouslySpawnEntities");

	// m_clientOnlyEntityBehavior
	[SchemaMember("CPointTemplate", "m_clientOnlyEntityBehavior")]
	public ref PointTemplateClientOnlyEntityBehavior_t ClientOnlyEntityBehavior => ref Schema.GetRef<PointTemplateClientOnlyEntityBehavior_t>(this.Handle, "CPointTemplate", "m_clientOnlyEntityBehavior");

	// m_ownerSpawnGroupType
	[SchemaMember("CPointTemplate", "m_ownerSpawnGroupType")]
	public ref PointTemplateOwnerSpawnGroupType_t OwnerSpawnGroupType => ref Schema.GetRef<PointTemplateOwnerSpawnGroupType_t>(this.Handle, "CPointTemplate", "m_ownerSpawnGroupType");

	// m_createdSpawnGroupHandles
	[SchemaMember("CPointTemplate", "m_createdSpawnGroupHandles")]
	public NetworkedVector<UInt32> CreatedSpawnGroupHandles => Schema.GetDeclaredClass<NetworkedVector<UInt32>>(this.Handle, "CPointTemplate", "m_createdSpawnGroupHandles");

	// m_SpawnedEntityHandles
	[SchemaMember("CPointTemplate", "m_SpawnedEntityHandles")]
	public NetworkedVector<CHandle<CEntityInstance>> SpawnedEntityHandles => Schema.GetDeclaredClass<NetworkedVector<CHandle<CEntityInstance>>>(this.Handle, "CPointTemplate", "m_SpawnedEntityHandles");

}
