UI/SpawnMenu/AiSettingsPage.razor
@using Sandbox;
@using Sandbox.UI;
@using Sandbox.Npcs;
@inherits UtilityPage
@namespace Sandbox
@attribute [Icon( "🤖" )]
@attribute [Title( "#spawnmenu.utility.npcs" )]
@attribute [Group( "#spawnmenu.utility.group.world" )]
@attribute [Order( 1 )]
<root class="page" style="flex-direction: column;">
@if ( Connection.Local.HasPermission( "admin" ) )
{
<div class="control-row" Tooltip=@EnabledDescription @onclick=@ToggleAiEnabled>
<div class="left"><label>@(NpcConVars.Enabled ? "🟢" : "🔴") </label><label>#spawnmenu.utility.ai_enabled</label></div>
<div style="flex-grow: 1;"></div>
<label class="right">@(NpcConVars.Enabled ? "#spawnmenu.common.on" : "#spawnmenu.common.off")</label>
</div>
<div class="control-row" Tooltip=@NoTargetDescription @onclick=@ToggleNoTarget>
<div class="left"><label>@(NpcConVars.NoTarget ? "🟢" : "⚪") </label><label>#spawnmenu.utility.no_target</label></div>
<div style="flex-grow: 1;"></div>
<label class="right">@(NpcConVars.NoTarget ? "#spawnmenu.common.on" : "#spawnmenu.common.off")</label>
</div>
}
else
{
<div class="control-row">
<div class="left"><label>⚠️ </label><label>#spawnmenu.common.host_only</label></div>
</div>
}
</root>
@code
{
public override bool IsPageVisible() => Connection.Local.HasPermission( "admin" );
static readonly string EnabledDescription = "#spawnmenu.utility.ai_enabled_description";
static readonly string NoTargetDescription = "#spawnmenu.utility.no_target_description";
void ToggleAiEnabled() => GameManager.SetConVar( "sb.ai.enabled", !NpcConVars.Enabled );
void ToggleNoTarget() => GameManager.SetConVar( "sb.ai.notarget", !NpcConVars.NoTarget );
}