<?xml version="1.0"?>
<doc>
    <assembly>
        <name>package.facepunch.sandbox</name>
    </assembly>
    <members>
        <member name="T:Sandbox.BuilderCatalog">
            <summary>Deterministic, bounded recipes shared by the menu, host, clients and saved games.</summary>
        </member>
        <member name="T:Sandbox.BuilderGeometry">
            <summary>Render surfaces and convex compound collision, including genuinely hollow pieces.</summary>
        </member>
        <member name="T:Sandbox.BuilderProp">
            <summary>
            Recreates the model locally on every peer and after loading a save/dupe.
            Only the recipe is persistent; runtime model resource names are not portable.
            </summary>
        </member>
        <member name="T:Sandbox.CleanupEvent">
            <summary>
            Data passed to <see cref="M:Sandbox.ICleanupEvents.OnCleaningUp(Sandbox.CleanupEvent)"/>. Take objects out of <see cref="P:Sandbox.CleanupEvent.Objects"/> to keep them,
            or set <see cref="P:Sandbox.CleanupEvent.Cancelled"/> to true to stop the cleanup.
            </summary>
        </member>
        <member name="P:Sandbox.CleanupEvent.Client">
            <summary>
            The client whose objects are being cleaned up, or null for the whole map.
            </summary>
        </member>
        <member name="P:Sandbox.CleanupEvent.Objects">
            <summary>
            The objects about to be removed.
            </summary>
        </member>
        <member name="T:Sandbox.ICleanupEvents">
            <summary>
            Implement this on a <see cref="T:Sandbox.Component"/> to hear about cleanups.
            </summary>
        </member>
        <member name="M:Sandbox.ICleanupEvents.OnCleaningUp(Sandbox.CleanupEvent)">
            <summary>
            Called on the host before the map, or one player's objects, are cleaned up.
            </summary>
        </member>
        <member name="M:Sandbox.ICleanupEvents.OnCleanup(System.Int32,System.Int32)">
            <summary>
            Called on every machine after the host has cleaned up the map.
            </summary>
        </member>
        <member name="T:Sandbox.CleanupSystem">
            <summary>
            A system that tracks the baseline scene state and allows resetting the map to its original state.
            Removes all spawned props and restores destroyed map objects while leaving players untouched.
            </summary>
        </member>
        <member name="F:Sandbox.CleanupSystem._baselineObjectIds">
            <summary>
            Set of GameObjects that existed in the original scene baseline.
            </summary>
        </member>
        <member name="F:Sandbox.CleanupSystem._baselineObjectData">
            <summary>
            Serialized data of baseline objects so we can restore them if destroyed.
            </summary>
        </member>
        <member name="P:Sandbox.CleanupSystem.HasBaseline">
            <summary>
            Whether a baseline has been captured.
            </summary>
        </member>
        <member name="M:Sandbox.CleanupSystem.PreserveBaselineForSaveLoad">
            <summary>
            Call from SaveSystem before Game.ChangeScene() to snapshot the current baseline
            </summary>
        </member>
        <member name="M:Sandbox.CleanupSystem.CaptureBaseline">
            <summary>
            Captures the current scene state as the baseline.
            All objects that exist at this point are considered part of the original map.
            </summary>
        </member>
        <member name="M:Sandbox.CleanupSystem.IsPlayerObject(Sandbox.GameObject)">
            <summary>
            Determines if a GameObject is a player or belongs to a player.
            </summary>
        </member>
        <member name="M:Sandbox.CleanupSystem.Cleanup">
            <summary>
            Cleans up the scene by removing all spawned objects and restoring destroyed baseline objects.
            Players and their belongings are preserved.
            </summary>
        </member>
        <member name="M:Sandbox.CleanupSystem.CleanupCommand(System.String)">
            <summary>
            Console command to cleanup the map.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.CombatNpc.CombatEngageSchedule">
            <summary>
            Engages a visible player: close the gap, fire a burst, pause, then reposition to a flanking point.
            Cancels immediately if the target leaves sight.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatEngageSchedule.Target">
            <summary>
            The player to engage.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatEngageSchedule.Weapon">
            <summary>
            Weapon to fire. Should be a child component on the NPC's GameObject. Its NPC usage decides
            the engagement range, burst length and the rest between bursts.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatEngageSchedule.EngageSpeed">
            <summary>
            Speed the NPC moves when engaging.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatEngageSchedule.StrafeSpeed">
            <summary>
            Speed the NPC strafes at when it repositions without sprinting.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatEngageSchedule.RepositionChance">
            <summary>
            Chance to reposition after a burst. Otherwise the NPC holds its ground and fires again.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatEngageSchedule.ReactionTime">
            <summary>
            Seconds to react before the first burst - set for a fresh contact, zero while a fight is
            already going. The NPC calls the contact out, turns to face it and brings its weapon up in
            this time, and won't fire before it's up however quickly those finish.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatEngageSchedule.LostSightGrace">
            <summary>
            How long the target can drop out of sight (ducking behind something, a glimpse through a
            gap) before we give up on this engagement and go searching instead.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatEngageSchedule.FlankRadius">
            <summary>
            Radius around the current position to pick a flanking point.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.CombatNpc.CombatEngageSchedule.AwaitReaction">
            <summary>
            Holds until the schedule's reaction time is up, however long the tasks before it took.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.CombatNpc.CombatEngageSchedule.GetFlankPosition">
            <summary>
            Pick a random position perpendicular to the NPC→target axis at <see cref="P:Sandbox.Npcs.CombatNpc.CombatEngageSchedule.FlankRadius"/>.
            Snaps to navmesh if possible.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.CombatNpc.CombatIdleSchedule">
            <summary>
            Hold a post, HL2-style: stand at ease facing the way we were posted, now and then glance
            around, and walk back to the post if a fight or search pulled us away from it.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatIdleSchedule.Post">
            <summary>
            Where to stand.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatIdleSchedule.PostForward">
            <summary>
            Which way to face while standing there.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatIdleSchedule.WalkSpeed">
            <summary>
            Walking pace back to the post.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatIdleSchedule.ReturnRange">
            <summary>
            Further than this from the post (chased someone a long way), we hold where we are instead.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.CombatNpc.CombatNpc">
            <summary>
            A combat NPC that searches for players, advances on them, fires in bursts, and repositions.
            When friendly, can be recruited to follow a player and engages hostile NPCs instead.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.Friendly">
            <summary>
            When true, this NPC is friendly to players and will follow them, engaging hostile NPCs.
            When false, this NPC targets players and friendly NPCs.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.Weapon">
            <summary>
            The weapon this NPC uses to attack. Its NPC usage decides the engagement range and burst
            cadence - the same soldier fights differently with a shotgun than an SMG.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.WeaponChoices">
            <summary>
            Weapon prefabs to arm this NPC with - one is picked at random when it spawns, replacing
            <see cref="P:Sandbox.Npcs.CombatNpc.CombatNpc.Weapon"/>. Empty keeps the prefab's weapon.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.AimSpreadScale">
            <summary>
            Skill multiplier on the weapon's NPC spread - 1 is a average shot, lower is more accurate.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.EngageSpeed">
            <summary>
            Movement speed while engaging an enemy.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.PatrolSpeed">
            <summary>
            Walking pace while patrolling.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.SearchSpeed">
            <summary>
            Cautious walking pace - sweeping for a hostile we've lost, checking out a noise, strafing to a
            new position. Kept to a walk; only fighting and hot pursuit break into a jog.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.SpeedVariation">
            <summary>
            Each soldier moves up to this much faster or slower than the rest (0.05 = ±5%), so a squad
            doesn't move in lockstep. Keep it small - too much pushes a walk into a jog.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.SearchTimeout">
            <summary>
            How long after the last intel on a hostile (seen, heard or called out) to keep searching for it.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.CalloutRange">
            <summary>
            Allies of the same faction within this range are told where a spotted hostile is.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.Patrols">
            <summary>
            Wander between random points when there's nothing going on, instead of holding a post.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.RelaxDelay">
            <summary>
            How long the weapon stays up after the last sign of trouble before the NPC relaxes.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.ReactionTimeRelaxed">
            <summary>
            Seconds (min, max) to react to a fresh contact when caught at ease - weapon lowered.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.ReactionTimeAlert">
            <summary>
            Seconds (min, max) to react to a fresh contact when already alert - weapon up, searching or fighting.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.DroppedWeaponLifetime">
            <summary>
            Seconds a weapon dropped on death lies around before it's removed, if nobody picks it up.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.FollowDistance">
            <summary>
            How far a friendly NPC will follow a player before stopping.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.Leader">
            <summary>
            The player this friendly NPC is following, if any.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.LastKnownPosition">
            <summary>
            Where we last saw, heard or were told a hostile was. Null when we've got nothing to go on.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.LastKnownVelocity">
            <summary>
            Which way that hostile was moving, so a search can head where it was going.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatNpc.TimeSinceIntel">
            <summary>
            Time since <see cref="P:Sandbox.Npcs.CombatNpc.CombatNpc.LastKnownPosition"/> was last updated.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.CombatNpc.CombatNpc.ArmWithRandomWeapon">
            <summary>
            Swap the prefab's weapon for a random one from <see cref="P:Sandbox.Npcs.CombatNpc.CombatNpc.WeaponChoices"/>.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.CombatNpc.CombatNpc.RememberHostile(Vector3,Vector3)">
            <summary>
            Remember where a hostile is (and which way it's heading).
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.CombatNpc.CombatNpc.GatherAwareness">
            <summary>
            Keep the last known position fresh from everything we sense, every think -- not just when a
            fight starts -- and tell nearby allies about anything we can see.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.CombatNpc.CombatNpc.TrackKill">
            <summary>
            The last hostile we saw is gone - dead. If we were in the fight, remember where the body is so
            we can walk over and check, and stop hunting it.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.CombatNpc.CombatNpc.GetReactionTime(Sandbox.GameObject)">
            <summary>
            How long it takes to react to spotting a hostile: longer when caught at ease (the weapon has
            to come up) than when already alert, plus a little more to pick out something far away.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.CombatNpc.CombatNpc.CallOut(Sandbox.GameObject)">
            <summary>
            Tell allies of our faction nearby where a hostile is. They'll come and help search, or join
            the fight once they see it themselves.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.CombatNpc.CombatNpc.DropWeapon">
            <summary>
            Drop the held weapon into the world where the hand was, so it survives the NPC's death and can
            be picked up. If nobody takes it within <see cref="P:Sandbox.Npcs.CombatNpc.CombatNpc.DroppedWeaponLifetime"/> it's cleaned up.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.CombatNpc.CombatNpc.RemoveIfUnclaimed(BaseSandboxWeapon)">
            <summary>
            Remove a gun we dropped, unless a player has picked it up since. A player who picked it up and
            dropped it again owns it now, so that drop is theirs to keep.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.CombatNpc.CombatPatrolSchedule">
            <summary>
            Wanders to random nearby points when no player is known.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatPatrolSchedule.PatrolRadius">
            <summary>
            Maximum distance from current position to pick a patrol destination.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatPatrolSchedule.Speed">
            <summary>
            Walking pace between patrol points.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.CombatNpc.CombatSearchSchedule">
            <summary>
            Hunt for a hostile we can't see: run to where it was heading, look around, then sweep a couple of
            nearby spots at a cautious pace. Re-plans if fresh intel moves the last known position, and
            spotting the hostile preempts it with <see cref="T:Sandbox.Npcs.CombatNpc.CombatEngageSchedule"/>.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatSearchSchedule.Speed">
            <summary>
            Speed to run to the last known position at.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatSearchSchedule.SweepSpeed">
            <summary>
            Cautious speed to sweep the area at once we get there.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatSearchSchedule.SweepChance">
            <summary>
            Chance to sweep a nearby spot after looking around, rather than holding where we lost them.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatSearchSchedule.LeadTime">
            <summary>
            How far ahead to lead a moving hostile, in seconds of its last known velocity.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.CombatNpc.CombatSearchSchedule.SearchRadius">
            <summary>
            How far around the last known position to sweep.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Disposition">
            <summary>
            How one NPC regards another entity. Drives target selection -- who to fight, follow,
            ignore, or flee from.
            </summary>
        </member>
        <member name="F:Sandbox.Npcs.Disposition.Neutral">
            <summary>No strong feeling -- ignore them.</summary>
        </member>
        <member name="F:Sandbox.Npcs.Disposition.Friendly">
            <summary>An ally -- protect or assist.</summary>
        </member>
        <member name="F:Sandbox.Npcs.Disposition.Hostile">
            <summary>An enemy -- attack on sight.</summary>
        </member>
        <member name="F:Sandbox.Npcs.Disposition.Fearful">
            <summary>A threat to avoid -- flee from them.</summary>
        </member>
        <member name="T:Sandbox.Npcs.Relationship">
            <summary>
            A disposition plus a priority. Priority breaks ties when an NPC must choose between
            several valid targets -- higher wins.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Relationship.#ctor(Sandbox.Npcs.Disposition,System.Int32)">
            <summary>
            A disposition plus a priority. Priority breaks ties when an NPC must choose between
            several valid targets -- higher wins.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Examples.ExampleNpc">
             <summary>
             A minimal NPC to copy when making your own. This "curious villager" wanders around, and
             goes to investigate any gunshot or disturbance it hears nearby.
            
             Everything an NPC needs is here:
               1. A <see cref="P:Sandbox.Npcs.Npc.Faction"/> -- who it is, so others know how to treat it.
               2. Relationships -- who it fights / fears / likes (see <see cref="M:Sandbox.Npcs.Examples.ExampleNpc.SetupRelationships"/>).
               3. A <see cref="M:Sandbox.Npcs.Examples.ExampleNpc.GetSchedule"/> -- what it wants to do right now.
            
             To put one in the world, make a prefab with this component plus a NavMeshAgent, a
             SkinnedModelRenderer (wire it to the Renderer field), and a Collider. The four AI layers
             (Senses, Navigation, Animation, Speech) are added for you automatically.
             </summary>
        </member>
        <member name="T:Sandbox.Npcs.Factions">
            <summary>
            The built-in faction names -- an NPC's faction is its identity to others, like a Source
            engine NPC's class. These are plain strings so UGC NPCs can reuse them or invent their own;
            this list is just the common set so content interoperates.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Layers.AnimationLayer">
            <summary>
            Provides animation parameters and helpers for behaviors.
            Also handles look-at (eyes/head) and body turning via animator parameters.
            Synced properties replicate animation state to all clients.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.AnimationLayer.BodyTurnSpeed">
            <summary>
            How fast the body turns to face a look target, in degrees per second.
            Constant rate - an exponential turn covers most of a half-circle in its
            first moments, which reads as a jolting spin.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.AnimationLayer.MaxAimYaw">
            <summary>How far the head can aim away from the body, in degrees of yaw.</summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.AnimationLayer.AimSmoothSpeed">
            <summary>How quickly the head sweeps onto (and lets go of) a look target.</summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.AnimationLayer.EnableFootsteps">
            <summary>Play footstep sounds from the model's footstep animation events.</summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.AnimationLayer.FootstepVolume">
            <summary>Overall footstep volume multiplier.</summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.AnimationLayer.LookTarget">
            <summary>
            Current world-space target the Npc is looking at (if any). Host-only.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.AnimationLayer.LookTargetObject">
            <summary>
            The GameObject being tracked as the look target, if any. Host-only.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.AnimationLayer.WeaponLowered">
            <summary>
            Hold the weapon lowered, at ease, instead of up and ready. Synced to all clients.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.AnimationLayer.DebugJitter">
            <summary>
            Shows what's feeding the head every frame, to hunt down rhythmic jitter.
            Watch which value pulses: body yaw (someone rotating the object), aim
            (look target moving or flickering), or move params (animgraph input).
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.AnimationLayer.AddLookTarget(Sandbox.GameObject,System.Single)">
            <summary>
            Look at a target for a limited time, overriding the persistent look target.
            The NPC aims at the target's eyes. Call again to extend - when it expires we
            fall back to the persistent target, if any.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.AnimationLayer.GetEyePosition(Sandbox.GameObject)">
            <summary>
            Where a GameObject's eyes are - the "eyes" attachment if it has a model with
            one (players, NPCs), otherwise roughly head height above its position.
            The local player in first person is really "at" their camera, so on their
            own screen we look straight down the lens.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.AnimationLayer.GetOwnEyePosition">
            <summary>
            Where this NPC looks from.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.AnimationLayer.SetLookTarget(Sandbox.GameObject)">
            <summary>
            Set a persistent look target that tracks a GameObject each frame.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.AnimationLayer.SetLookTarget(Vector3)">
            <summary>
            Set a persistent look target at a fixed world position.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.AnimationLayer.ClearLookTarget">
            <summary>
            Clear the persistent look target. The NPC will stop tracking.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.AnimationLayer.ApplyAim(Vector3,System.Single)">
            <summary>
            Ease the applied aim toward a desired direction and weight, clamped to what
            a neck can actually do. Every look path feeds through here, so the head
            sweeps onto targets instead of snapping, and never flip-flops on a target
            directly behind us.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.AnimationLayer.LookAt(Vector3)">
            <summary>
            Command this layer to look at a target (one-shot, no tracking).
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.AnimationLayer.StopLooking">
            <summary>Stop looking.</summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.AnimationLayer.IsFacingTarget">
            <summary>
            Returns true if the NPC body is facing the current look target within MaxHeadAngle.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.AnimationLayer.SetMove(Vector3,Rotation)">
            <summary>
            Records move state for replication. Called by NavigationLayer on the host.
            All clients apply this each frame in OnUpdate.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.AnimationLayer.TriggerAttack">
            <summary>
            Broadcasts the attack trigger to all clients so the animation plays everywhere.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.AnimationLayer.SetHoldType(System.String)">
            <summary>
            Sets the holdtype so the NPC poses its arms for the held item - an option name on the
            animgraph's holdtype enum (e.g. "pistol"). Synced to all clients via HoldType.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Layers.BaseNpcLayer">
            <summary>
            A behavior layer provides specific services for tasks to use -- we don't use behavior layers for state, they are services.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.BaseNpcLayer.Npc">
            <summary>
            The owning NPC
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.BaseNpcLayer.GetDebugString">
            <summary>
            Optional debug string shown in the NPC debug overlay. Return null to skip.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.BaseNpcLayer.ResetLayer">
            <summary>
            Reset any runtime state on this layer.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Layers.NavigationLayer">
            <summary>
            Handles Npc navigation
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.NavigationLayer.WishSpeed">
            <summary>
            The desired movement speed for the agent (its normal walk). Schedules can raise this.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.NavigationLayer.RunSpeed">
            <summary>
            Speed used to run when the destination is far away -- HL-style: walk when close, run
            when there's ground to cover. Acts as a floor, so a schedule that sets a higher
            <see cref="P:Sandbox.Npcs.Layers.NavigationLayer.WishSpeed"/> (fleeing, charging) is never slowed down.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.NavigationLayer.RunDistance">
            <summary>Distance beyond which the NPC breaks into a run.</summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.NavigationLayer.FaceMovementDirection">
            <summary>
            When true (the default) the NPC turns to face the direction it's moving, so it runs
            forward. Combat schedules set this false to strafe -- face a target while moving.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.NavigationLayer.TurnSpeed">
            <summary>How quickly the body turns to face the movement direction.</summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.NavigationLayer.IsMoving">
            <summary>
            True while the agent is actually travelling. Standing NPCs are free to turn
            their body toward whatever they're looking at.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.NavigationLayer.MoveTo(Vector3,System.Single,System.Nullable{System.Single},Sandbox.GameObject)">
            <summary>
            Command this layer to move to a target
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.NavigationLayer.Stop">
            <summary>
            Stop moving and forget the current move target.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.NavigationLayer.GetStatus">
            <summary>
            Current navigation status — reached target, still moving, or failed.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Layers.SensesLayer">
            <summary>
            Handles awareness and environmental scanning.
            Scans for all objects matching <see cref="P:Sandbox.Npcs.Layers.SensesLayer.ScanTags"/> and caches them by tag.
            Whether a scanned object is a hostile target is decided by the NPC's disposition
            toward it (see <see cref="M:Sandbox.Npcs.Npc.GetDisposition(Sandbox.GameObject)"/>), not by tags.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.SensesLayer.FieldOfView">
            <summary>
            Total horizontal field of view in degrees. Targets outside this cone aren't seen
            (they can still be heard, or noticed if they're right next to the NPC).
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.SensesLayer.QuietSpeed">
            <summary>
            Hostiles moving slower than this can't be heard -- creep (crouch-walk) to sneak up on someone.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.SensesLayer.ScanTags">
            <summary>
            Which agents the NPC scans for and caches: "npc" for other NPCs, "player" for players.
            This is just the broad-phase filter -- disposition decides who counts as hostile.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.SensesLayer.VisibleThreats">
            <summary>Visible entities this NPC is disposed Fearful toward (things to flee from).</summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.SensesLayer.Disturbance">
            <summary>
            The most relevant disturbance (gunshot, death, etc.) this NPC currently senses, if any.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SensesLayer.PerceiveStimuli">
            <summary>
            Find the nearest world stimulus this NPC can sense (ignoring its own noise).
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SensesLayer.ScanEnvironment">
            <summary>
            Scan for all objects matching <see cref="P:Sandbox.Npcs.Layers.SensesLayer.ScanTags"/>, bucket by tag, and populate
            the hostile-filtered <see cref="P:Sandbox.Npcs.Layers.SensesLayer.VisibleTargets"/>/<see cref="P:Sandbox.Npcs.Layers.SensesLayer.AudibleTargets"/> using
            the NPC's disposition toward each.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SensesLayer.HasLineOfSight(Sandbox.GameObject)">
            <summary>
            Check if we have line of sight to target
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SensesLayer.IsInViewCone(Sandbox.GameObject,System.Single)">
            <summary>
            True if a target is within the NPC's forward field of view. Anything inside personal
            space is always in view -- you notice someone right next to you, even behind.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SensesLayer.GetNearestVisible">
            <summary>
            Get the nearest visible hostile target (anything this NPC is disposed Hostile toward).
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SensesLayer.GetBestTarget">
            <summary>
            Get the visible hostile this NPC should engage first: highest relationship priority,
            nearest breaking ties.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SensesLayer.GetNearestVisible(System.String)">
            <summary>
            Get the nearest visible object with a specific tag.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SensesLayer.GetNearestVisible(Sandbox.Npcs.Disposition)">
            <summary>
            Get the nearest visible entity this NPC regards with the given disposition
            (e.g. the nearest thing it's afraid of).
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SensesLayer.GetHeardHostile">
            <summary>
            The nearest hostile we can hear moving -- inside <see cref="P:Sandbox.Npcs.Layers.SensesLayer.HearingRange"/> and going faster
            than <see cref="P:Sandbox.Npcs.Layers.SensesLayer.QuietSpeed"/>. Null when nobody's making noise.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SensesLayer.GetPushingPlayer">
            <summary>
            A player inside our personal space who's moving toward us -- they're trying to
            get past and we're in their way. Returns null when nobody is barging in.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SensesLayer.GetVelocity(Sandbox.GameObject)">
            <summary>
            Resolve a scanned object's velocity from whatever movement source it has.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SensesLayer.GetVisible(System.String)">
            <summary>
            Get all visible objects with a specific tag from the cache.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SensesLayer.GetAudible(System.String)">
            <summary>
            Get all audible objects with a specific tag from the cache.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Layers.SpeechLayer">
            <summary>
            Manages NPC speech state and plays sound files.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.SpeechLayer.CurrentSpeech">
            <summary>
            The subtitle text of the current line, if any. Synced to all clients.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.SpeechLayer.IsSpeaking">
            <summary>
            Whether the NPC is currently speaking. Voice lines usually have no subtitle,
            so this has to watch the sound itself, not just the subtitle text.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.SpeechLayer.Cooldown">
            <summary>
            Minimum seconds between speeches.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.SpeechLayer.FallbackSound">
            <summary>
            A generic fallback sound (e.g. a grunt or mumble) played when we're talking without a specific sound.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Layers.SpeechLayer.CanSpeak">
            <summary>
            Whether the cooldown has elapsed and the NPC can speak again.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SpeechLayer.Say(Sandbox.SoundEvent,System.Single,Sandbox.GameObject)">
            <summary>
            Play a sound event, with its subtitle (if one exists) as the current speech.
            If <paramref name="lookAt"/> is given, the NPC looks them in the eyes
            while talking.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SpeechLayer.TrySay(Sandbox.SoundEvent,System.Single,Sandbox.GameObject,Sandbox.TagSet,System.Int32,System.Single)">
            <summary>Attempts to play a tagged sound event.</summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SpeechLayer.Say(Sandbox.SoundEvent,System.String,System.Single,Sandbox.GameObject)">
            <summary>
            Play a sound event with an explicit subtitle override.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SpeechLayer.TrySay(Sandbox.SoundEvent,System.String,System.Single,Sandbox.GameObject,Sandbox.TagSet,System.Int32,System.Single)">
            <summary>Attempts to play a tagged sound event with a subtitle.</summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SpeechLayer.Say(System.String,System.Single,Sandbox.GameObject)">
            <summary>
            Say a string message using the fallback sound, with the string as the subtitle.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SpeechLayer.TrySay(System.String,System.Single,Sandbox.GameObject,Sandbox.TagSet,System.Int32,System.Single)">
            <summary>Attempts to show a tagged message using the fallback sound.</summary>
        </member>
        <member name="M:Sandbox.Npcs.Layers.SpeechLayer.Stop">
            <summary>
            Stop any current speech and sound.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Npc.MaxSafeImpactSpeed">
            <summary>
            Hitting something at or below this speed while airborne doesn't hurt - landing from a throw or
            a fall, or being slammed into a wall.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Npc.FatalImpactSpeed">
            <summary>
            Hitting something at or above this speed is fatal.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Npc.IsAirborne">
            <summary>
            Off our feet - thrown, dropped, or dangling from a physgun. Only NPCs that walk on the navmesh;
            ones that roll around on physics (rollermines) are never "airborne".
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.UpdateAirborne">
            <summary>
            While airborne the animation falls with the body - the animgraph's in-air pose, driven by the
            rigidbody rather than the (disabled) nav agent.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.OnPutDown">
            <summary>
            Back on our feet after a physgun carried us - keep whichever way it turned us, rather than
            snapping back to whatever we were looking at or doing before.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.Sandbox#Component#ICollisionListener#OnCollisionStart(Sandbox.Collision)">
            <summary>
            Hitting something hard while airborne - a wall we've been thrown into, or the floor if the
            collision beats the ground check to it. Only the speed straight into the surface counts, so
            skidding along it doesn't.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.TakeImpact(System.Single,Vector3,Vector3,Sandbox.GameObject,System.String)">
            <summary>
            A hard hit hurts - harsher than a player's fall damage, being flung around by a physgun
            should hurt. Nothing at or below <see cref="P:Sandbox.Npcs.Npc.MaxSafeImpactSpeed"/>, fatal at <see cref="P:Sandbox.Npcs.Npc.FatalImpactSpeed"/>.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.SplatterBlood(Vector3,Vector3,Sandbox.GameObject,System.Single)">
            <summary>
            Paint the surface we smacked into - a big splat where we hit, with droplets around it. Harder
            hits make more mess. Purely cosmetic, so every client makes its own.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Npc.Faction">
            <summary>
            The faction this NPC belongs to -- its identity to others, like a Source NPC's class.
            Override per NPC type.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.SetupRelationships">
            <summary>
            Declare this NPC's relationships toward other factions with <see cref="M:Sandbox.Npcs.Npc.Hates(System.String[])"/> /
            <see cref="M:Sandbox.Npcs.Npc.Fears(System.String[])"/> / <see cref="M:Sandbox.Npcs.Npc.Likes(System.String[])"/>. Anything not listed is neutral (ignored).
            Override per NPC type.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.Hates(System.String[])">
            <summary>Attack members of these factions.</summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.Hates(System.String,System.Int32)">
            <summary>Attack members of a faction, with a target-selection priority.</summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.Fears(System.String[])">
            <summary>Flee members of these factions.</summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.Likes(System.String[])">
            <summary>Treat members of these factions as allies.</summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.SetDisposition(Sandbox.GameObject,Sandbox.Npcs.Disposition,System.Int32)">
            <summary>
            Override how this NPC regards a specific entity, ignoring faction defaults -- e.g. a
            cop turning hostile toward someone it saw commit a crime.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.ClearDisposition(Sandbox.GameObject)">
            <summary>Remove a per-entity override, falling back to the faction default.</summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.GetRelationship(Sandbox.GameObject)">
            <summary>
            The full relationship (disposition + priority) this NPC has toward another entity.
            Per-entity overrides win, then the faction default, then neutral. Override this for
            fully dynamic relationships (the equivalent of Source's IRelationType).
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.GetDisposition(Sandbox.GameObject)">
            <summary>How this NPC regards another entity.</summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.GetFactionOf(Sandbox.GameObject)">
            <summary>
            Resolve any entity's faction -- an NPC's own faction, or the player faction. Returns
            null for things that don't take part in relationships.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Npc.IsOnGround">
            <summary>
            Are we on the ground?
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Npc.GroundObject">
            <summary>
            The object we're standing on. Null if we're standing on nothing.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Npc.GroundComponent">
            <summary>
            The collider component we're standing on. Null if we're standing nothing
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Npc.GroundSurface">
            <summary>
            If we're stnding on a surface this is it
            </summary>
        </member>
        <member name="F:Sandbox.Npcs.Npc.isPickedUp">
            <summary>
            Are we being held by a player?
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Npc.Senses">
            <summary>
            Senses layer - handles environmental awareness and target detection
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Npc.Navigation">
            <summary>
            Navigation layer - handles pathfinding and movement
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Npc.Animation">
            <summary>
            Animation layer - handles look-at and animation parameters
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Npc.Speech">
            <summary>
            Speech layer - handles talking, lipsync, etc..
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Npc.ActiveSchedule">
            <summary>
            The current running schedule for this NPC.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Npc.Awareness">
            <summary>
            What the NPC is aware of this tick, refreshed before selection.
            Schedules declare which of these interrupt them via <see cref="P:Sandbox.Npcs.ScheduleBase.InterruptedBy"/>.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.GetSchedule``1">
            <summary>
            Get a schedule -- if it doesn't exist, one will be created. The instance is reused
            across selections, so set its inputs each time you return it; its runtime state is
            reset when it starts.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.GetSchedule">
            <summary>
            Pick the schedule the NPC most wants to run right now -- return the highest-priority
            applicable one. Only called when (re)selecting, so a little work is fine, but keep it
            free of side effects and avoid randomness that shouldn't re-roll each selection.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.GatherAwareness">
            <summary>
            Build what the NPC is aware of this tick. Override to add NPC-specific
            awareness -- call base first.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.TickSchedule">
            <summary>
            Runs once per tick: refresh conditions, then preempt the active schedule with
            something more important, run it, or select a new one when it finishes.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.SelectNewSchedule">
            <summary>
            End the active schedule and start whatever the NPC wants next.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.EndCurrentSchedule">
            <summary>
            End the current schedule cleanly. Can be called by subclasses to interrupt
            the active schedule (e.g. when damaged).
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.EmitStimulus(System.String,System.Single,System.Single)">
            <summary>
            Broadcast a stimulus from this NPC's position for nearby NPCs to sense (a gunshot when
            it fires, a death when it dies, and so on).
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Npc.DisplayName">
            <summary>
            The name shown in the kill feed when this NPC is killed.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Npc.Health">
            <summary>
            Current health. The NPC dies when this drops below 1.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.CreateRagdoll(Vector3,Vector3,System.Single,System.Single)">
            <summary>
            Spawns a networked ragdoll prop at the NPC's current position, copying the renderer and clothing,
            and optionally applies a launch velocity from the attacker. Host only.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.GetAttacker(Sandbox.DamageInfo@)">
            <summary>
            Who to blame for the damage. The player behind it, like whoever threw the prop, otherwise the attacker.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.Sandbox#Component#IDamageable#OnDamage(Sandbox.DamageInfo@)">
            <summary>
            Base damage handling: subtract health, let the subclass react via <see cref="M:Sandbox.Npcs.Npc.OnHurt(Sandbox.DamageInfo@)"/>,
            and die at zero. Subclasses react by overriding OnHurt and Die -- they don't touch this.
            </summary>
        </member>
        <member name="F:Sandbox.Npcs.Npc._createRagdoll">
            <summary>
            Whether <see cref="M:Sandbox.Npcs.Npc.Die(Sandbox.DamageInfo@)"/> should leave a ragdoll, a death listener can turn it off.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.OnHurt(Sandbox.DamageInfo@)">
            <summary>Called when the NPC takes damage (before the death check). Override to react.</summary>
        </member>
        <member name="M:Sandbox.Npcs.Npc.Die(Sandbox.DamageInfo@)">
            <summary>
            Notifies the kill feed, spawns a ragdoll, and destroys this NPC. Called automatically
            when health drops below 1. Override to add NPC-specific behaviour before/after death.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.NpcAwareness">
            <summary>
            What an NPC perceives this tick. Schedules declare which of these interrupt them via
            <see cref="P:Sandbox.Npcs.ScheduleBase.InterruptedBy"/>, so an idle schedule yields the moment a threat
            or disturbance appears without having to poll for it itself.
            </summary>
        </member>
        <member name="F:Sandbox.Npcs.NpcAwareness.SeesHostile">
            <summary>A hostile target is visible.</summary>
        </member>
        <member name="F:Sandbox.Npcs.NpcAwareness.SeesThreat">
            <summary>A visible entity the NPC is afraid of -- something it wants to flee.</summary>
        </member>
        <member name="F:Sandbox.Npcs.NpcAwareness.HeardDisturbance">
            <summary>A notable disturbance was sensed nearby -- a gunshot, a death, a scream.</summary>
        </member>
        <member name="F:Sandbox.Npcs.NpcAwareness.PlayerPushing">
            <summary>A player is walking into us -- they want to get past and we're in the way.</summary>
        </member>
        <member name="F:Sandbox.Npcs.NpcAwareness.HostileIntel">
            <summary>
            Learned where a hostile is without seeing it -- heard it moving or shooting, or an ally called it out.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.NpcConVars">
            <summary>
            Console variables that control NPC AI behaviour globally.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.NpcConVars.Enabled">
            <summary>
            When disabled, all NPC AI thinking is paused — they just stand idle.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.NpcConVars.NoTarget">
            <summary>
            When enabled, NPCs cannot target players.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.ClothingPreset">
            <summary>
            A designed outfit - a set of clothing to dress an NPC in. Just clothes: heads, hair and facial
            hair come from a <see cref="T:Sandbox.Npcs.FacialAppearance"/>.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.FacialAppearance">
            <summary>
            A head with the hair and beard that go with it, picked together - so nobody ends up with jet
            black hair and a blonde beard, or a beard that doesn't suit their face.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.FacialAppearance.Head">
            <summary>The head (skin clothing).</summary>
        </member>
        <member name="P:Sandbox.Npcs.FacialAppearance.Hair">
            <summary>Hair, if any.</summary>
        </member>
        <member name="P:Sandbox.Npcs.FacialAppearance.Beard">
            <summary>Beard, moustache or the like, if any. Coloured to match the hair.</summary>
        </member>
        <member name="P:Sandbox.Npcs.FacialAppearance.HairTint">
            <summary>
            Where on the hair's colour range to tint it - 0 is white, through blonde, brown and ginger, to
            black at 1. The beard is matched to whatever colour that gives.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.NpcOutfits">
            <summary>
            Dresses an NPC in one of a few designed outfits and one of a few facial appearances, each picked
            at random when it spawns. Replaces whatever's set on the <see cref="T:Sandbox.Dresser"/>, which
            still does the actual dressing.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.NpcOutfits.Dresser">
            <summary>
            The dresser to put the outfit on.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.NpcOutfits.Outfits">
            <summary>
            Outfits to pick from. Empty leaves the dresser's clothes as they are.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.NpcOutfits.FacialAppearances">
            <summary>
            Heads with their hair and beard, picked on top of the outfit. Empty leaves the face alone.
            Headgear in the outfit wins: hair or a beard that can't be worn with it is left off.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.NpcOutfits.MatchFacialHair(System.Collections.Generic.List{Sandbox.ClothingContainer.ClothingEntry})">
            <summary>
            Tint beards, moustaches and the like the same colour as the hair on their head. Each item has
            its own tint gradient, so match the colour rather than the tint value.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.NpcStimulusSystem">
            <summary>
            The world stimulus bus. Anything can broadcast a <see cref="T:Sandbox.Npcs.Stimulus"/> (a gunshot, a
            death, a crime) and nearby NPCs sense it through their <see cref="T:Sandbox.Npcs.Layers.SensesLayer"/>.
            This is how the world pushes events at NPCs, rather than NPCs only polling for entities.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.NpcStimulusSystem.Broadcast(System.String,Vector3,Sandbox.GameObject,System.Single,System.Single)">
            <summary>
            Broadcast a stimulus into the world. <paramref name="radius"/> is how far it can be
            sensed; <paramref name="lifetime"/> is how long it lingers (seconds).
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.NpcStimulusSystem.Near(Vector3)">
            <summary>
            Active stimuli whose range reaches a position.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.NpcSystem">
            <summary>NPC speech coordination.</summary>
            <summary>Shared NPC coordination for a scene.</summary>
        </member>
        <member name="M:Sandbox.Npcs.NpcSystem.TryBeginSpeech(Sandbox.Npcs.Npc,System.Single,Sandbox.TagSet,System.Int32,System.Single)">
            <summary>
            Attempts to reserve speech around an NPC. Higher priorities preempt lower priorities.
            The reservation expires after <paramref name="duration"/> unless stopped early.
            </summary>
            <param name="speaker">NPC requesting the reservation.</param>
            <param name="duration">Length of the selected speech in seconds.</param>
            <param name="tags">Optional tags matched against tag cooldowns.</param>
            <param name="priority">Priority used for blocking and preemption. Defaults to 1000; <see cref="F:System.Int32.MaxValue"/> always speaks.</param>
            <param name="radius">Coordination radius for this line. Defaults to 1500.</param>
        </member>
        <member name="M:Sandbox.Npcs.NpcSystem.StopSpeech(Sandbox.Npcs.Npc)">
            <summary>Releases all speech reservations owned by an NPC before their normal expiry.</summary>
            <param name="speaker">NPC whose reservations should be released.</param>
        </member>
        <member name="M:Sandbox.Npcs.NpcSystem.SetTagCooldown(Vector3,System.String,System.Single,System.Single,System.Int32)">
            <summary>Adds a timed tag cooldown around a position.</summary>
            <param name="position">Center of the cooldown area.</param>
            <param name="tag">Speech tag blocked by the cooldown.</param>
            <param name="duration">Cooldown duration in seconds.</param>
            <param name="radius">Cooldown radius. Defaults to 1500.</param>
            <param name="priority">Requests above this priority bypass the cooldown.</param>
        </member>
        <member name="M:Sandbox.Npcs.NpcSystem.IsWithinSpeechRadius(Vector3,System.Single,Vector3,System.Single)">
            <summary>Returns whether two speech areas overlap, using the larger radius.</summary>
            <param name="firstPosition">Center of the first speech area.</param>
            <param name="firstRadius">Radius of the first speech area.</param>
            <param name="secondPosition">Center of the second speech area.</param>
            <param name="secondRadius">Radius of the second speech area.</param>
        </member>
        <member name="P:Sandbox.Npcs.NpcSystem.Npcs">
            <summary>NPCs currently registered in the scene.</summary>
        </member>
        <member name="M:Sandbox.Npcs.NpcSystem.#ctor(Sandbox.Scene)">
            <summary>Creates the scene NPC coordinator.</summary>
        </member>
        <member name="M:Sandbox.Npcs.NpcSystem.Register(Sandbox.Npcs.Npc)">
            <summary>Registers an NPC with the scene.</summary>
        </member>
        <member name="M:Sandbox.Npcs.NpcSystem.Unregister(Sandbox.Npcs.Npc)">
            <summary>Removes an NPC and any speech reservation it owns.</summary>
        </member>
        <member name="T:Sandbox.Npcs.Roller.Schedules.RollerChaseSchedule">
            <summary>
            Roller chase: roll toward target then leap at it.
            On completion the schedule ends naturally, GetSchedule re-picks it and loops.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Roller.Schedules.RollerIdleSchedule">
            <summary>
            Roller idles when no target is visible — waits briefly then re-evaluates.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Roller.RollerMorphs">
            <summary>
            Drives morph targets and material glow on the rollermine mesh based on hunting state.
            Same mesh as hoverball — uses Coils_Deployed and Pins_Deployed morphs.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Roller.RollerNpc">
            <summary>
            A physics-driven NPC that chases players, leaps at them, and bounces off dealing damage on contact.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Roller.RollerNpc.RollForce">
            <summary>
            Continuous force applied per-frame while rolling toward a target.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Roller.RollerNpc.RollTorque">
            <summary>
            Torque applied per-frame to spin the sphere visually.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Roller.RollerNpc.StuckJumpForce">
            <summary>
            Upward impulse applied when the rollermine gets stuck.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Roller.RollerNpc.LeapForce">
            <summary>
            Impulse applied when leaping at the target.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Roller.RollerNpc.LeapUpwardBias">
            <summary>
            Upward component added to the leap direction (0 = flat, 1 = 45°).
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Roller.RollerNpc.BounceForce">
            <summary>
            Impulse magnitude applied to self when bouncing off a surface/player.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Roller.RollerNpc.ContactDamage">
            <summary>
            Damage applied to anything we crash into.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Roller.RollerNpc.LeapRange">
            <summary>
            Distance at which we switch from rolling to leaping.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Roller.RollerNpc.Eye">
            <summary>
            Eye child GameObject — assign in editor.
            Rotated to face the current target each frame.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Roller.RollerNpc.HuntingEffects">
            <summary>
            GameObject whose child ParticleEffects are enabled while actively hunting a target.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Roller.RollerNpc.LeapEffect">
            <summary>
            Prefab cloned at world position when leaping at the target.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Roller.RollerNpc.ContactEffect">
            <summary>
            Prefab cloned at the contact point when hitting a player.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Roller.RollerNpc.RollSound">
            <summary>
            Looping roll sound — pitch is driven by speed.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Roller.RollerNpc.PitchSpeedMax">
            <summary>Speed (units/s) at which pitch reaches PitchMax.</summary>
        </member>
        <member name="P:Sandbox.Npcs.Roller.RollerNpc.PitchMin">
            <summary>Pitch at rest.</summary>
        </member>
        <member name="P:Sandbox.Npcs.Roller.RollerNpc.PitchMax">
            <summary>Pitch at full speed.</summary>
        </member>
        <member name="M:Sandbox.Npcs.Roller.RollerNpc.SetHunting(System.Boolean)">
            <summary>
            Called by chase/idle schedules to toggle the hunting particle children.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Roller.RollerNpc.BroadcastLeapEffect">
            <summary>
            Clones the leap effect prefab at our current position (broadcast so all clients see it).
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Roller.RollerNpc.BroadcastContactEffect(Vector3)">
            <summary>
            Clones the contact effect prefab at the hit position (broadcast so all clients see it).
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Roller.Tasks.RollerLeapTask">
            <summary>
            Leaps at the current target with a clean impulse (velocity zeroed first),
            then waits for cooldown before handing back to the roll task.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Roller.Tasks.RollerRollTask">
            <summary>
            Rolls toward the current target by applying force and torque.
            Succeeds when within LeapRange.  Fails if target is lost.
            Force/torque values are configured on RollerNpc.
            </summary>
        </member>
        <member name="F:Sandbox.Npcs.Roller.Tasks.RollerRollTask.StuckSpeedThreshold">
            <summary>If lateral speed stays below this for StuckTime, jump to un-stick.</summary>
        </member>
        <member name="T:Sandbox.Npcs.ScheduleBase">
            <summary>
            A schedule -- can be understood as a way to execute a sequence of tasks
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.ScheduleBase.Priority">
            <summary>
            Selection priority. A running schedule is only preempted by one with a strictly
            higher priority. Use <see cref="T:Sandbox.Npcs.SchedulePriority"/> for the common tiers.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.ScheduleBase.InterruptedBy">
            <summary>
            Stimuli that should make this schedule reconsider mid-run. When one of these newly
            appears, the NPC re-selects and a higher-priority schedule can take over. Defaults
            to the "drop everything and re-think" stimuli so ambient schedules yield to threats
            for free; combat and flee schedules override this to stay focused.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.ScheduleBase.InternalInit(Sandbox.Npcs.Npc)">
            <summary>
            Initialize the schedule with the Behavior context
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.ScheduleBase.OnCancelled">
            <summary>
            Called when task is ended because of ShouldCancel returning true
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.ScheduleBase.InternalUpdate">
            <summary>
            Called every frame while schedule is running
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.ScheduleBase.InternalEnd">
            <summary>
            Called once when schedule ends
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.ScheduleBase.OnStart">
            <summary>
            Called when this schedule starts -- this is where you can add tasks to run
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.ScheduleBase.OnEnd">
            <summary>
            Called when this schedule ends -- this is where you can clean stuff up
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.ScheduleBase.AddTask(Sandbox.Npcs.TaskBase)">
            <summary>
            Add a task to the sequence
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.ScheduleBase.StartCurrentTask">
            <summary>
            Start the current task in sequence
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.ScheduleBase.GetDebugString">
            <summary>
            Information about this schedule for debugging purposes
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.SchedulePriority">
            <summary>
            Common schedule priority tiers. A running schedule is only preempted by one with a
            strictly higher priority, so these tiers decide who interrupts whom. Authors are free
            to use their own numbers — these are just sensible defaults.
            </summary>
        </member>
        <member name="F:Sandbox.Npcs.SchedulePriority.Idle">
            <summary>Doing nothing in particular. Yields to everything.</summary>
        </member>
        <member name="F:Sandbox.Npcs.SchedulePriority.Ambient">
            <summary>Ambient behaviour — wandering, patrolling, following, inspecting.</summary>
        </member>
        <member name="F:Sandbox.Npcs.SchedulePriority.Alert">
            <summary>Reacting to something — searching a last-known position, investigating.</summary>
        </member>
        <member name="F:Sandbox.Npcs.SchedulePriority.Combat">
            <summary>Actively fighting a target.</summary>
        </member>
        <member name="F:Sandbox.Npcs.SchedulePriority.Survival">
            <summary>Self-preservation — fleeing, panicking. Overrides combat.</summary>
        </member>
        <member name="T:Sandbox.Npcs.Schedules.FollowSchedule">
            <summary>
            Follow a target around, keeping a respectful distance. Re-evaluates each cycle so it
            tracks a moving target. Higher-priority schedules (like fleeing danger) preempt it.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Schedules.FollowSchedule.FollowDistance">
            <summary>
            How close we walk up to the target before stopping.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Schedules.FollowSchedule.CatchUpDistance">
            <summary>
            How far the target gets before we start walking again. The band between
            this and FollowDistance is "close enough" - without it, a crowd of
            followers endlessly jockeys and shoves to close the last few units.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Schedules.FollowSchedule.TooCloseDistance">
            <summary>
            If the target walks right up into our face, back off to arm's length --
            facing them and walking backwards, not turning our back on them.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Schedules.InvestigateSchedule">
            <summary>
            Move to a point, look around, and wait -- used to check out a last-known position or a
            heard disturbance. Re-spotting a target preempts this with a higher-priority schedule.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Schedules.InvestigateSchedule.Speed">
            <summary>
            Speed to head over at. Null walks, breaking into a run if it's far.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Schedules.MoveAsideSchedule">
            <summary>
            A player is walking into us -- step sideways out of their path and let them
            through, HL2 companion style. We step to whichever side of their path we're
            already closest to, so we clear it instead of crossing in front of them,
            and watch them as they pass.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Schedules.MoveAsideSchedule.Blocker">
            <summary>The player barging into us.</summary>
        </member>
        <member name="P:Sandbox.Npcs.Schedules.MoveAsideSchedule.StepDistance">
            <summary>How far to step out of the way.</summary>
        </member>
        <member name="P:Sandbox.Npcs.Schedules.MoveAsideSchedule.Speed">
            <summary>Speed to step aside at. Null uses the NPC's walk.</summary>
        </member>
        <member name="T:Sandbox.Npcs.Schedules.WanderSchedule">
            <summary>
            Wander to a random reachable point nearby, then pause. A simple ambient behaviour any
            NPC can use as its default.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Schedules.WanderSchedule.Radius">
            <summary>How far to roam from the current position.</summary>
        </member>
        <member name="T:Sandbox.Npcs.Schedules.ScientistFarewellSchedule">
            <summary>
            Stop, turn to face whoever we're talking to, deliver a line while looking them
            in the eyes, and only then get on with life. Used when a player dismisses the
            scientist, so it says goodbye to their face instead of muttering it while
            wandering off.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Schedules.ScientistFleeSchedule">
            <summary>
            Panic flee — scream while sprinting away from the source.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Schedules.ScientistFleeSchedule.PanicLevel">
            <summary>
            0–1 panic intensity. Higher values mean faster speed and longer flee distance.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Schedules.ScientistIdleSchedule">
            <summary>
            Idle in place — glance around at eye level, and watch the people we can see,
            HL2 style: a visible player gets looked at for a while, then other NPCs, and
            otherwise we just scan the room.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Schedules.ScientistInspectPropSchedule">
            <summary>
            Walk to a nearby prop, look at it, and maybe comment on it.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Schedules.ScientistInspectPropSchedule.Speed">
            <summary>
            Walking pace.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Schedules.ScientistWanderSchedule">
            <summary>
            Wander to a random nearby point, avoiding player directions.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Schedules.ScientistWanderSchedule.Speed">
            <summary>
            Walking pace.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Scientist.ScientistNpc.AfraidLevel">
            <summary>
            Current fear level (0–1). Computed from peak fear and time since last hurt.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Scientist.ScientistNpc.FearGracePeriod">
            <summary>
            Seconds at full fear before decay begins.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Scientist.ScientistNpc.FearDecayRate">
            <summary>
            Fear units lost per second after the grace period.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Scientist.ScientistNpc.WalkSpeed">
            <summary>
            Walking pace while pottering about. Scientists only run when they're scared, or to keep up
            with a player they're following.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Scientist.ScientistNpc.Leader">
            <summary>
            The player this scientist is following, if any. Press USE on the scientist to toggle.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Scientist.ScientistNpc.GetIdleSchedule">
            <summary>
            Pick a random idle behavior so the scientist doesn't just stand around.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Scientist.ScientistNpc.FindNearbyProp">
            <summary>
            Find the nearest prop within range to inspect.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Stimulus">
            <summary>
            Something that happened in the world that NPCs can sense -- a gunshot, an explosion, a
            scream. Broadcast via <see cref="T:Sandbox.Npcs.NpcStimulusSystem"/>; sensed by <see cref="T:Sandbox.Npcs.Layers.SensesLayer"/>.
            </summary>
        </member>
        <member name="M:Sandbox.Npcs.Stimulus.#ctor(System.String,Vector3,Sandbox.GameObject,System.Single,System.Single)">
            <summary>
            Something that happened in the world that NPCs can sense -- a gunshot, an explosion, a
            scream. Broadcast via <see cref="T:Sandbox.Npcs.NpcStimulusSystem"/>; sensed by <see cref="T:Sandbox.Npcs.Layers.SensesLayer"/>.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.StimulusKind">
            <summary>
            Common stimulus kinds. Plain strings so UGC can add its own; this is just the shared set.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.TaskBase">
            <summary>
            A task
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.TaskBase.Status">
            <summary>
            What is the current status of this task?
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.TaskStatus">
            <summary>
            Status returned by task execution
            </summary>
        </member>
        <member name="F:Sandbox.Npcs.TaskStatus.Running">
            <summary>
            Task is still running, continue executing
            </summary>
        </member>
        <member name="F:Sandbox.Npcs.TaskStatus.Success">
            <summary>
            Task completed successfully
            </summary>
        </member>
        <member name="F:Sandbox.Npcs.TaskStatus.Failed">
            <summary>
            Task failed or was cancelled
            </summary>
        </member>
        <member name="F:Sandbox.Npcs.TaskStatus.Interrupted">
            <summary>
            Task was interrupted by conditions
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Tasks.FireWeapon">
            <summary>
            Fires a burst at a target. The burst length comes from the weapon's NPC usage - a random shot
            count between its burst min and max. Shots only fire while the target is inside the weapon's
            engagement band.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Tasks.FireWeapon.Weapon">
            <summary>The weapon component to fire.</summary>
        </member>
        <member name="P:Sandbox.Npcs.Tasks.FireWeapon.Target">
            <summary>The GameObject to aim at.</summary>
        </member>
        <member name="P:Sandbox.Npcs.Tasks.FireWeapon.AimTurnSpeed">
            <summary>Body rotation speed (degrees/s scale) used while actively aiming. Higher than the default look speed.</summary>
        </member>
        <member name="T:Sandbox.Npcs.Tasks.LookAt">
            <summary>
            Sets a persistent look target on the AnimationLayer and waits until the NPC is facing it.
            The look target persists after this task completes — call <see cref="M:Sandbox.Npcs.Layers.AnimationLayer.ClearLookTarget"/>
            when you no longer need it (typically in <see cref="M:Sandbox.Npcs.ScheduleBase.OnEnd"/>).
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Tasks.MoveTo">
            <summary>
            Task that commands the NavigationLayer to move to a target position or GameObject.
            When tracking a GameObject, re-evaluates the path periodically.
            Does not override the NPC's look target — but will rotate the body to face the
            movement direction when the angle would otherwise cause silly walking
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Tasks.MoveTo.Speed">
            <summary>Movement speed for this task. Null uses the NPC's configured speed.</summary>
        </member>
        <member name="P:Sandbox.Npcs.Tasks.MoveTo.FaceTarget">
            <summary>
            Keep facing this object while moving instead of turning into the movement
            direction. The NPC backpedals or strafes -- short moves away from someone
            happen without turning our back on them.
            </summary>
        </member>
        <member name="T:Sandbox.Npcs.Tasks.Say">
            <summary>
            Task that plays speech via the SpeechLayer. Waits for the speech to finish before completing.
            Accepts either a SoundEvent or a plain string (which uses the fallback sound).
            If LookAt is set, the NPC looks them in the eyes while talking.
            </summary>
        </member>
        <member name="P:Sandbox.Npcs.Tasks.Say.Tags">
            <summary>Tags describing the line and its shared cooldown groups.</summary>
        </member>
        <member name="P:Sandbox.Npcs.Tasks.Say.Priority">
            <summary>Admission and interruption priority for this line.</summary>
        </member>
        <member name="P:Sandbox.Npcs.Tasks.Say.Radius">
            <summary>Distance within which this line coordinates with other NPC speech.</summary>
        </member>
        <member name="T:Sandbox.Npcs.Tasks.Wait">
            <summary>
            Task that waits for a specified duration
            </summary>
        </member>
        <member name="P:Sandbox.SandboxVoice.MutedList">
            <summary>
            A list of muted users.
            </summary>
        </member>
        <member name="M:Sandbox.SandboxVoice.Mute(Sandbox.SteamId)">
            <summary>
            Toggles mute for a user
            </summary>
            <param name="id"></param>
        </member>
        <member name="M:Sandbox.SandboxVoice.IsMuted(Sandbox.SteamId)">
            <summary>
            Is this user muted?
            </summary>
            <param name="id"></param>
            <returns></returns>
        </member>
        <member name="T:Sandbox.SaveSystem">
            <summary>
            A saving/loading system that captures the differences between the current scene state and the original scene.
            </summary>
        </member>
        <member name="P:Sandbox.SaveSystem.SaveVersion">
            <summary>
            The current save format version. Saves with a different version are incompatible.
            </summary>
        </member>
        <member name="P:Sandbox.SaveSystem.LoadedSavePath">
            <summary>
            The path of the save file that was most recently loaded, if any.
            </summary>
        </member>
        <member name="P:Sandbox.SaveSystem.HasLoadedSave">
            <summary>
            Whether a save file is currently loaded.
            </summary>
        </member>
        <member name="M:Sandbox.SaveSystem.SetMetadata(System.String,System.String)">
            <summary>
            Set metadata on the current session's save.
            This will be written on the next <see cref="M:Sandbox.SaveSystem.Save(System.String)"/> call.
            </summary>
        </member>
        <member name="M:Sandbox.SaveSystem.GetMetadata(System.String,System.String)">
            <summary>
            Get a metadata value from the current session, falling back to a default value.
            </summary>
        </member>
        <member name="M:Sandbox.SaveSystem.GetAllMetadata">
            <summary>
            Get a copy of all metadata for the current session.
            </summary>
        </member>
        <member name="M:Sandbox.SaveSystem.GetFileMetadata(System.String)">
            <summary>
            Read metadata from a save file on disk without loading the full save.
            Returns null if the file doesn't exist or is invalid.
            </summary>
        </member>
        <member name="M:Sandbox.SaveSystem.GetFileSaveVersion(System.String)">
            <summary>
            Read the save format version from a save file without loading the full save.
            Returns 0 if the file doesn't exist, is invalid, or has no version field.
            </summary>
        </member>
        <member name="M:Sandbox.SaveSystem.Save(System.String)">
            <summary>
            Saves the current world to the given path. This means any changes made to the those original
            scenes are preserved when loading an older save.
            </summary>
            <returns>True if the save was successful.</returns>
        </member>
        <member name="M:Sandbox.SaveSystem.Load(System.String)">
            <summary>
            Load a previously saved game state from a file, applying the differences to the original scene file(s) to reconstruct the saved scene.
            </summary>
            <returns>True if the load was successful.</returns>
        </member>
        <member name="M:Sandbox.SaveSystem.BuildCompositeBaseline">
            <summary>
            This builds a baseline JSON from all the loaded scene files that we've tracked in BeforeLoad.
            The final scene gets diffed against this.
            </summary>
        </member>
        <member name="M:Sandbox.SaveSystem.BuildCompositeBaselineFromFiles(System.Collections.Generic.List{Sandbox.SceneFile},System.Guid)">
            <summary>
            Builds a composite baseline JSON from a list of scene files by merging
            all their GameObjects into a single root node.
            </summary>
            <param name="sceneFiles">The scene files to merge.</param>
            <param name="rootId">The GUID to use for the root node. Match the scene's root ID to make sure diffs dont get fucked.</param>
        </member>
        <member name="M:Sandbox.SaveSystem.BuildCurrentSceneJson(Sandbox.Scene)">
            <summary>
            Serializes the current live scene as a JSON object in the same format as <see cref="M:Sandbox.SaveSystem.BuildCompositeBaseline"/> so the two can be diffed.
            </summary>
        </member>
        <member name="M:Sandbox.SaveSystem.SerializeScenePropertyDiffs(Sandbox.Scene,Sandbox.SceneFile)">
            <summary>
            Get any changes made to scene-level properties (like gravity, nav mesh settings, etc)
            </summary>
        </member>
        <member name="M:Sandbox.SaveSystem.CollectNetworkOwnership(Sandbox.Scene)">
            <summary>
            Snapshots network ownership for all owned GameObjects in the scene, storing the owner's SteamID.
            </summary>
        </member>
        <member name="M:Sandbox.SaveSystem.RestoreNetworkOwnership(Sandbox.Scene,System.Text.Json.Nodes.JsonObject)">
            <summary>
            Restores network ownership by matching saved SteamIDs to connected players.
            </summary>
        </member>
        <member name="M:Sandbox.SaveSystem.CollectSyncState(Sandbox.Scene)">
            <summary>
            Collects all [Sync]-only property values from every component in the scene, so the networked state can be restored
            </summary>
        </member>
        <member name="M:Sandbox.SaveSystem.RestoreSyncState(Sandbox.Scene,System.Text.Json.Nodes.JsonObject)">
            <summary>
            Restore the [Sync]-only properties
            </summary>
        </member>
        <member name="M:Sandbox.SaveSystem.BroadcastShowLoadingScreen">
            <summary>
            Tells all clients to show the loading screen immediately, before Scene.Load() fires.
            </summary>
        </member>
        <member name="M:Sandbox.SaveSystem.BuildPatchedSceneFile(Sandbox.SceneFile,System.Text.Json.Nodes.JsonObject,System.Text.Json.Nodes.JsonNode)">
            <summary>
            Constructs a <see cref="T:Sandbox.SceneFile"/> from the patched JSON data so we can load it just like any other scene
            </summary>
        </member>
        <member name="T:Sandbox.ChatBox">
            <summary>
            The chat UI. The platform handles sending, validation and delivery, this only shows the messages it reports through <see cref="T:Sandbox.IChatEvent"/>
            </summary>
        </member>
        <member name="F:Sandbox.ChatBox.MaxEntries">
            <summary>
            Messages kept in the history
            </summary>
        </member>
        <member name="F:Sandbox.ChatBox.SlideOutTime">
            <summary>
            Slideout speed, make sure to keep this inline with ChatBox scss
            </summary>
        </member>
        <member name="M:Sandbox.ChatBox.AddSystem(System.String,System.Nullable{Color})">
            <summary>
            Shows a message with no sender on this client only, optionally in a colour of its own. It doesn't go through the platform, so other players don't see it.
            </summary>
        </member>
        <member name="M:Sandbox.ChatBox.Open">
            <summary>
            Opens the box for typing
            </summary>
        </member>
        <member name="M:Sandbox.ChatBox.Close">
            <summary>
            Closes the box without sending what was typed
            </summary>
        </member>
        <member name="T:Sandbox.ChatEntry">
            <summary>
            Chat message. Comes from the platform's <see cref="T:Sandbox.ChatMessageEvent"/>
            </summary>
        </member>
        <member name="F:Sandbox.ChatEntry.JoinedColor">
            <summary>
            Colour of the platform's "player joined" notice
            </summary>
        </member>
        <member name="F:Sandbox.ChatEntry.LeftColor">
            <summary>
            Colour of the platform's "player left" notice
            </summary>
        </member>
        <member name="P:Sandbox.ChatEntry.Name">
            <summary>
            The player's name, empty for <see cref="F:Sandbox.ChatEntryKind.System"/>
            </summary>
        </member>
        <member name="P:Sandbox.ChatEntry.SteamId">
            <summary>
            Whose avatar to show, zero for none
            </summary>
        </member>
        <member name="P:Sandbox.ChatEntry.TextColor">
            <summary>
            A system message's own cvolor
            </summary>
        </member>
        <member name="T:Sandbox.ChatLine">
            <summary>
            A single chat entry. Used twice per entry: in the chat box history, and in the list of recent
            messages shown while the box is closed, where it fades out on its own.
            </summary>
        </member>
        <member name="F:Sandbox.ChatLine.VisibleTime">
            <summary>
            How long a recent message stays fully visible
            </summary>
        </member>
        <member name="F:Sandbox.ChatLine.FadeTime">
            <summary>
            How long it then takes to fade out
            </summary>
        </member>
        <member name="T:Sandbox.UI.IMixedVirtualGridFullRow">
            <summary>
            Implemented by items that occupy a complete row in a <see cref="T:Sandbox.UI.MixedVirtualGrid"/>.
            </summary>
        </member>
        <member name="T:Sandbox.UI.MixedVirtualGrid">
            <summary>
            A virtual grid that mixes fixed-size tiles with full-width rows.
            </summary>
        </member>
        <member name="M:Sandbox.UI.MixedVirtualGrid.RecreateCells">
            <summary>
            Builds the cells again, for when they show more than their item, like the tile size.
            </summary>
        </member>
        <member name="M:Sandbox.UI.ClientInputControl.LanguageChanged">
            <summary>
            Refreshes composed binding and connection labels when the language changes.
            </summary>
        </member>
        <member name="F:Sandbox.UI.NoticePanel.SlideDuration">
            <summary>
            How long the slide in / slide out takes. You need to manually sync this timing with NoticePanel scss file!!
            </summary>
        </member>
        <member name="P:Sandbox.UI.NoticePanel.Duration">
            <summary>
            How long the notice lives for. Zero will make the notification stay visible until it is manually dismissed
            </summary>
        </member>
        <member name="P:Sandbox.UI.NoticePanel.Manual">
            <summary>
            If true, the notice won't be automatically dismissed. Call Dismiss() to remove it.
            </summary>
        </member>
        <member name="M:Sandbox.UI.NoticePanel.Dismiss">
            <summary>
            Dismiss a manual notice, causing it to slide out and be deleted.
            </summary>
        </member>
        <member name="T:Sandbox.UI.Notices">
            <summary>
            Displays transient HUD notices and delivers messages to individual players.
            </summary>
        </member>
        <member name="M:Sandbox.UI.Notices.SendLocalizedNotice(Sandbox.Connection,System.String,Color,System.String,System.Collections.Generic.Dictionary{System.String,System.String},System.Single)">
            <summary>
            Sends a phrase and its parameters to a connection, resolving them in the recipient's language.
            Must be called from the host.
            </summary>
        </member>
        <member name="P:Sandbox.UI.Notices.Current">
            <summary>
            The notice display in the active scene.
            </summary>
        </member>
        <member name="F:Sandbox.UI.Notices.VoicesGap">
            <summary>
            Space between the list of who is talking and the notices above it
            </summary>
        </member>
        <member name="M:Sandbox.UI.Notices.AddNotice(System.String,System.Single)">
            <summary>
            Displays already formatted text without interpreting leading hashes as phrase references.
            </summary>
        </member>
        <member name="M:Sandbox.UI.Notices.AddNotice(System.String,Color,System.String,System.Single)">
            <summary>
            Displays an icon and already formatted text without interpreting leading hashes as phrase references.
            </summary>
        </member>
        <member name="F:Sandbox.UI.Notices.DefaultColor">
            <summary>
            The colour of a notice's icon, and its timer bar, unless it is given another
            </summary>
        </member>
        <member name="M:Sandbox.UI.Notices.AddNotice(System.String,System.String,System.Single)">
            <summary>
            Displays an icon in the default colour and already formatted text.
            </summary>
        </member>
        <member name="M:Sandbox.UI.Notices.Create(System.String,Color,System.String,System.Single)">
            <summary>
            Every notice is made here, so anything a notice can be configured with (icon, colour, duration) goes through this one place.
            </summary>
        </member>
        <member name="M:Sandbox.UI.Notices.SendNotice(Sandbox.Connection,System.String,Color,System.String,System.Single)">
            <summary>
            Send a notice to a specific connection. Must be called from the host.
            </summary>
        </member>
        <member name="M:Sandbox.UI.Scoreboard.BuildHash">
            <summary>
            update every second
            </summary>
        </member>
        <member name="T:Sandbox.ComponentHandle">
            <summary>
            This component has a kill icon that can be used in the killfeed, or somewhere else.
            </summary>
        </member>
        <member name="T:Sandbox.InspectorEditorAttribute">
            <summary>
            Put this on a panel implementing <see cref="T:Sandbox.IInspectorEditor"/> to register it with the inspector.
            </summary>
        </member>
        <member name="T:Sandbox.DragData">
            <summary>
            Data being dragged. Carries enough info for both the visual and the drop action.
            </summary>
        </member>
        <member name="P:Sandbox.DragData.Type">
            <summary>
            The spawner type, e.g. "prop", "entity", "dupe".
            </summary>
        </member>
        <member name="P:Sandbox.DragData.Path">
            <summary>
            The cloud ident or resource path.
            </summary>
        </member>
        <member name="P:Sandbox.DragData.Icon">
            <summary>
            The icon URL to display while dragging.
            </summary>
        </member>
        <member name="P:Sandbox.DragData.Title">
            <summary>
            Optional display title.
            </summary>
        </member>
        <member name="P:Sandbox.DragData.Source">
            <summary>
            The panel that initiated the drag, so we can ignore it as a drop target.
            </summary>
        </member>
        <member name="P:Sandbox.DragData.SpawnlistItemId">
            <summary>
            Stable spawnlist entry ID when reordering an editable spawnlist.
            </summary>
        </member>
        <member name="P:Sandbox.DragData.Handled">
            <summary>
            Set to true when a drop target has already handled this drag (e.g. slot-to-slot swap),
            so the source panel's OnDragEnd can skip secondary actions like dropping to the world.
            </summary>
        </member>
        <!-- Badly formed XML comment ignored for member "T:Sandbox.HudCanvas" -->
        <member name="P:Sandbox.HudCanvas.Layer">
            <summary>
            The component that owns the effect settings
            </summary>
        </member>
        <member name="F:Sandbox.HudCanvas._regions">
            <summary>
            Screen rects the sections draw into this frame. Empty means there is nothing to paint
            </summary>
        </member>
        <member name="P:Sandbox.HudCanvas.PixelSize">
            <summary>
            Canvas size in whole pixels, which is what the paint target is created with
            </summary>
        </member>
        <member name="M:Sandbox.HudCanvas.Section``1(System.Boolean)">
            <summary>
            The section of type <typeparamref name="T"/>, added on first use unless <paramref name="create"/> is false (then null if there is none)
            </summary>
        </member>
        <member name="T:Sandbox.HudSection">
            <summary>
            One part of the HUD (vitals, weapon buckets etc) painted into the shared HudCanvas
            </summary>
        </member>
        <member name="P:Sandbox.HudSection.Order">
            <summary>
            Paint order, lowest first
            </summary>
        </member>
        <member name="M:Sandbox.HudSection.Paint(Sandbox.Painter)">
            <summary>
            Paint this section
            </summary>
        </member>
        <member name="M:Sandbox.HudSection.GetCompositeRegions(System.Collections.Generic.List{Sandbox.Rect})">
            <summary>
            Screen rects the composite shader runs over. Everything painted (plus its glow) must sit inside them.
            </summary>
        </member>
        <member name="P:Sandbox.HudSection.ScaleToScreen">
            <summary>
            The canvas's scale to the screen times the player's HUD scale. Size everything painted by this.
            </summary>
        </member>
        <member name="T:Sandbox.HudStyle">
            <summary>
            The look of the HUD (font, colours, panels, HDR glow), shared by the HUD sections and the weapon screens
            </summary>
        </member>
        <member name="F:Sandbox.HudStyle.PanelColor">
            <summary>
            Background colour of HUD panels
            </summary>
        </member>
        <member name="F:Sandbox.HudStyle.TitleColor">
            <summary>
            Small captions like HEALTH and AMMO
            </summary>
        </member>
        <member name="M:Sandbox.HudStyle.Brightened(Color,System.Single)">
            <summary>
            Scales the colour, leaving its alpha alone. A gain past 1 goes over 1 for HDR glow, below 1 darkens.
            </summary>
        </member>
        <member name="M:Sandbox.HudStyle.DrawPanel(Sandbox.Painter,Sandbox.Rect,Color,System.Single)">
            <summary>
            A flat panel with rounded corners
            </summary>
        </member>
        <member name="T:Sandbox.HudStyle.Look">
            <summary>
            The HUD's tint and HDR gains, for things painted outside the HUD canvas like the weapon screens
            </summary>
        </member>
        <member name="M:Sandbox.HudStyle.Look.#ctor(Color,System.Single,System.Single)">
            <summary>
            The HUD's tint and HDR gains, for things painted outside the HUD canvas like the weapon screens
            </summary>
        </member>
        <member name="M:Sandbox.HudStyle.Look.Text(Color)">
            <summary>
            Tinted text at the regular HUD brightness
            </summary>
        </member>
        <member name="M:Sandbox.HudStyle.Look.Glow(Color)">
            <summary>
            Tinted and pushed into HDR like the HUD digits, so it glows
            </summary>
        </member>
        <member name="T:Sandbox.IKeepsMenuOpen">
            <summary>
            Add this to a popup panel so it can keep spawn menu up for as long as the popup exists.
            </summary>
        </member>
        <member name="P:Sandbox.IKeepsMenuOpen.KeepsMenuOpen">
            <summary>
            Whether the menu is held up right now. Set it to false to let the menu close as usual, for example while the popup is only hovered.
            </summary>
        </member>
        <member name="T:Sandbox.InventorySection">
            <summary>
            Paints the weapon buckets at the top of the screen
            </summary>
        </member>
        <member name="P:Sandbox.InventorySection.Open">
            <summary>
            Should the menu be open right now?
            </summary>
        </member>
        <member name="M:Sandbox.InventorySection.ColumnWidth(System.Int32,System.Single)">
            <summary>
            Collapsed columns are small squares, the selected one grows to 2:1 as it expands
            </summary>
        </member>
        <member name="M:Sandbox.InventorySection.UpdateLayout">
            <summary>
            Works out where the menu sits this frame, so the composite regions are known before anything is painted.
            Leaves <see cref="F:Sandbox.InventorySection._menuRect"/> empty while the menu is not visible
            </summary>
        </member>
        <member name="M:Sandbox.InventorySection.DrawBar(Sandbox.Painter,Sandbox.Rect,System.Single)">
            <summary>
            A collapsed child slot: just a flat bar, CollapsedHeight tall.
            </summary>
        </member>
        <member name="M:Sandbox.InventorySection.NameLabel(BaseSandboxWeapon)">
            <summary>
            Cached uppercase display name for the inventory weapon
            </summary>
        </member>
        <member name="T:Sandbox.PressableSection">
            <summary>
            Paints the interaction hint (use key and action name) below the crosshair
            </summary>
        </member>
        <member name="P:Sandbox.PressableSection.Hint">
            <summary>
            The hint to show, null to fade out whatever is showing
            </summary>
        </member>
        <member name="P:Sandbox.PressableSection.Action">
            <summary>
            The input action that presses things, shown as the key to press
            </summary>
        </member>
        <member name="M:Sandbox.PressableSection.UpdateLayout">
            <summary>
            The key and name sit on one centred row below the crosshair
            </summary>
        </member>
        <member name="F:Sandbox.BaseSpawnMenu.roots">
            <summary>
            Top level options and headers.
            </summary>
        </member>
        <member name="F:Sandbox.BaseSpawnMenu.currentHeader">
            <summary>
            The header new options are added under, or null for the root.
            </summary>
        </member>
        <member name="F:Sandbox.BaseSpawnMenu.knownHeaders">
            <summary>
            Headers we've opened once already. New headers start open, after that the tree remembers.
            </summary>
        </member>
        <member name="M:Sandbox.BaseSpawnMenu.AddHeader(System.String,System.String)">
            <summary>
            Start a collapsible section. Options added after this go inside it.
            </summary>
        </member>
        <member name="P:Sandbox.BaseSpawnMenu.SpawnMenuOption.Tokenize">
            <summary>
            Whether the name is allowed to reference a localization phrase.
            Disable this for user-authored entries.
            </summary>
        </member>
        <member name="P:Sandbox.BaseSpawnMenu.SpawnMenuOption.Key">
            <summary>
            Identifies this option across rebuilds, so the tree keeps it open and selected.
            Defaults to the name - set it when names can repeat, like folders.
            </summary>
        </member>
        <member name="P:Sandbox.BaseSpawnMenu.SpawnMenuOption.LoadChildren">
            <summary>
            Makes the children the first time the option is opened, for trees too big to build up front.
            </summary>
        </member>
        <member name="P:Sandbox.BaseSpawnMenu.SpawnMenuOption.HasChildren">
            <summary>
            Whether this can be opened, without loading the children to find out.
            </summary>
        </member>
        <member name="T:Sandbox.BaseSpawnMenu.OptionComparer">
            <summary>
            Options are recreated on every rebuild. Match them by key so open ones stay open.
            </summary>
        </member>
        <member name="T:Sandbox.EntityListCloud">
            <summary>
            Local scripted entities followed by cloud entity packages.
            </summary>
        </member>
        <member name="T:Sandbox.BuilderThumbnail">
            <summary>Virtualized, render-once thumbnails; a material change explicitly requests a new render.</summary>
        </member>
        <member name="T:Sandbox.SpawnPageCloud">
            <summary>
            Local props followed by cloud model packages.
            </summary>
        </member>
        <member name="T:Sandbox.SpawnlistCollection">
            <summary>
            Class that handles all the spawnlist data fetching and workshop fetching so it's not a huge mess everywhere.
            </summary>
        </member>
        <member name="P:Sandbox.SpawnlistCollection.OnChanged">
            <summary>
            Raised whenever the visible entry list changes.
            </summary>
        </member>
        <member name="P:Sandbox.SpawnlistCollection.OnInstalled">
            <summary>
            Raised after a workshop install, with the installed entry name.
            </summary>
        </member>
        <member name="E:Sandbox.SpawnlistCollection.Uninstalled">
            <summary>
            Raised after an uninstall.
            </summary>
        </member>
        <member name="P:Sandbox.SpawnlistCollection.PendingCount">
            <summary>
            Number of cookie-tracked workshop entries not yet resolved from storage or the cloud.
            Non-zero while the initial cloud fetch is in progress.
            </summary>
        </member>
        <member name="M:Sandbox.SpawnlistCollection.Refresh">
            <summary>
            Rebuilds the visible list and triggers a cloud re-fetch.
            </summary>
        </member>
        <member name="M:Sandbox.SpawnlistCollection.InstallAsync(Sandbox.Storage.QueryItem)">
            <summary>
            Install a workshop item, persist its ID to cookie, and refresh.
            </summary>
        </member>
        <member name="M:Sandbox.SpawnlistCollection.Uninstall(System.UInt64)">
            <summary>
            Uninstall a workshop-installed entry: remove from cookie, cloud list, and rebuild.
            </summary>
        </member>
        <member name="M:Sandbox.SpawnlistCollection.Delete(Sandbox.Storage.Entry)">
            <summary>
            Delete a locally editable spawnlist and rebuild.
            </summary>
        </member>
        <member name="T:Sandbox.SpawnlistItem">
            <summary>
            A spawnlist item -- lots of cleanup needed, docs, etc
            </summary>
        </member>
        <member name="E:Sandbox.SpawnlistData.SpawnlistCreated">
            <summary>
            Raised whenever a new spawnlist is created, so UI can refresh without needing a panel ancestor walk.
            </summary>
        </member>
        <member name="P:Sandbox.SpawnlistData.Name">
            <summary>
            The literal name chosen by the author. Only the initial fallback is localized.
            </summary>
        </member>
        <member name="M:Sandbox.SpawnlistData.PromptCreate(Sandbox.UI.Panel,System.Action,System.Action{Sandbox.Storage.Entry},Sandbox.SpawnlistItem,System.String)">
            <summary>
            Asks for a name in a window over the menu, then makes the spawnlist.
            </summary>
            <param name="initialItem">An item the new list starts with.</param>
            <param name="name">What the name box starts with.</param>
        </member>
        <member name="M:Sandbox.SpawnlistData.ItemCountText(System.Int32)">
            <summary>
            "1 item" or "N items", in the player's language.
            </summary>
        </member>
        <member name="P:Sandbox.SpawnlistResource.Icon">
            <summary>
            Material icon shown next to the list in the spawn menu sidebar.
            </summary>
        </member>
        <member name="P:Sandbox.SpawnlistResource.RequiredMount">
            <summary>
            Mount required to see this list in the spawn menu. Leave empty for no requirement.
            </summary>
        </member>
        <member name="P:Sandbox.SpawnlistResource.Parent">
            <summary>
            Nests this list under another one in the spawn menu tree. Leave empty for a top level list.
            </summary>
        </member>
        <member name="P:Sandbox.SpawnlistResource.Order">
            <summary>
            Lists are sorted by this, then by title.
            </summary>
        </member>
        <member name="P:Sandbox.SpawnlistResource.Entry.Ident">
            <summary>
            A raw spawn ident, for anything that isn't a local model or entity,
            e.g. <c>prop:facepunch.wooden_crate</c>. Used when no model or entity is set.
            </summary>
        </member>
        <member name="P:Sandbox.SpawnlistResource.Entry.Title">
            <summary>
            Item label, or the section heading for a title row.
            </summary>
        </member>
        <member name="P:Sandbox.SpawnlistResource.Entry.Icon">
            <summary>
            Optional thumbnail override. Defaults to the content's own thumbnail.
            </summary>
        </member>
        <member name="P:Sandbox.SpawnlistResource.DisplayName">
            <summary>
            The title in the player's language. Titles can be <c>#phrase</c> references.
            </summary>
        </member>
        <member name="M:Sandbox.SpawnlistResource.ToData">
            <summary>
            The resource in the shape the spawnlist view draws. Items get stable ids
            from their position so the view can tell when the resource changes.
            </summary>
        </member>
        <member name="M:Sandbox.SpawnlistResource.GetVisible">
            <summary>
            Every authored spawnlist the player should see, in display order.
            </summary>
        </member>
        <member name="T:Sandbox.SpawnlistsPage">
            <summary>
            Shared spawnlist support for spawn menu pages.
            </summary>
        </member>
        <member name="M:Sandbox.SpawnlistsPage.AddProceduralSpawnlists">
            <summary>Built-in generated lists, alongside the authored default lists.</summary>
        </member>
        <member name="M:Sandbox.SpawnlistsPage.RefreshList">
            <summary>Refresh after external changes (create, etc.).</summary>
        </member>
        <member name="T:Sandbox.SpawnMenuIconSize">
            <summary>
            How big tiles are in spawn menu grids.
            </summary>
        </member>
        <member name="F:Sandbox.SpawnMenuIconSize.Small">
            <summary>
            Compact tiles with an icon only.
            </summary>
        </member>
        <member name="F:Sandbox.SpawnMenuIconSize.Medium">
            <summary>
            Standard tiles with an icon and title.
            </summary>
        </member>
        <member name="F:Sandbox.SpawnMenuIconSize.Large">
            <summary>
            Large tiles with an icon and title.
            </summary>
        </member>
        <member name="P:Sandbox.SpawnMenuIconSizeExtensions.Current">
            <summary>
            The user's chosen tile size, persisted between sessions.
            </summary>
        </member>
        <member name="M:Sandbox.SpawnMenuIconSizeExtensions.ItemSize(Sandbox.SpawnMenuIconSize)">
            <summary>
            Cell size to give a <see cref="T:Sandbox.UI.VirtualGrid"/> for this tile size.
            </summary>
        </member>
        <member name="M:Sandbox.SpawnMenuIconSizeExtensions.CssClass(Sandbox.SpawnMenuIconSize)">
            <summary>
            CSS class to put on the grid so tiles can adapt their text to the size.
            </summary>
        </member>
        <member name="M:Sandbox.SpawnMenuIconSizeExtensions.Icon(Sandbox.SpawnMenuIconSize)">
            <summary>
            Material icon representing this size in the toolbar and its menu.
            </summary>
        </member>
        <member name="M:Sandbox.SpawnMenuIconSizeExtensions.OpenMenu(Sandbox.UI.Panel,System.Action{Sandbox.SpawnMenuIconSize})">
            <summary>
            Open the menu that picks a tile size, under the mouse.
            </summary>
        </member>
        <member name="P:Sandbox.IToolInfo.Hints">
            <summary>
            The key hints to show, in order.
            </summary>
        </member>
        <member name="T:Sandbox.ToolHint">
            <summary>
            What pressing <paramref name="Actions"/> together does.
            </summary>
        </member>
        <member name="M:Sandbox.ToolHint.#ctor(System.String,System.String[])">
            <summary>
            What pressing <paramref name="Actions"/> together does.
            </summary>
        </member>
        <member name="T:Sandbox.VehicleDebugSection">
            <summary>
            The vehicle tuning readout, painted into the HUD canvas: gear, speed, rpm, inputs and a per-wheel breakdown of
            suspension, slip and grip. Fed by <see cref="T:FourWheelVehicle"/> while <c>vehicle_debug</c> is on.
            </summary>
        </member>
        <member name="F:Sandbox.VehicleDebugSection.WheelReadout.Height">
            <summary>
            Wheel centre above its hard point, inches, and the most it goes either way.
            </summary>
        </member>
        <member name="F:Sandbox.VehicleDebugSection.WheelReadout.Sliding">
            <summary>
            Asking for more grip than the tyre has.
            </summary>
        </member>
        <member name="T:Sandbox.VitalsSection">
            <summary>
            Paints the health, armour and ammo HUD
            </summary>
        </member>
        <member name="P:Sandbox.VitalsSection.Settings">
            <summary>
            The component that owns the warning and flash settings
            </summary>
        </member>
        <member name="P:Sandbox.VitalsSection.BoxTop">
            <summary>
            Top edge of the health box on the canvas, so other HUD can sit above it. Zero until it has been painted.
            </summary>
        </member>
        <member name="M:Sandbox.VitalsSection.StatTop(Sandbox.Painter,System.String,System.Single,System.Single)">
            <summary>
            Where the title of a counter whose digits end at <paramref name="bottom"/> starts
            </summary>
        </member>
        <member name="M:Sandbox.VitalsSection.DrawStat(Sandbox.Painter,System.String,Sandbox.VitalsSection.DigitCounter,System.Int32,System.Int32,System.Single,System.Single,System.Single,System.Single,System.Single,System.Nullable{System.Single})">
            <summary>
            Paints a counter, and when <paramref name="boxBottom"/> is given a box around it. Returns how wide the counter is.
            </summary>
        </member>
        <member name="M:Sandbox.VitalsSection.DrawClipBar(Sandbox.Painter,Sandbox.Rect,System.Int32,System.Int32,System.Single)">
            <summary>
            One segment per round, capped at <see cref="F:Sandbox.VitalsSection.MaxClipSegments"/>. Past the cap each segment covers a share
            of the clip and fills by remaining fraction, rounded up so the last one stays lit until the clip is empty
            </summary>
        </member>
        <member name="M:Sandbox.VitalsSection.DrawShade(Sandbox.Painter,Vector2,System.Single)">
            <summary>
            Radial darkening centred on a screen corner (todo: make it optional?)
            </summary>
        </member>
        <member name="T:Sandbox.VitalsSection.DigitCounter">
            <summary>
            Digit slots for one counter, each with one of the background variants picked randomly per digit
            </summary>
        </member>
        <member name="M:Sandbox.VitalsSection.DigitCounter.Glyph(System.Int32)">
            <summary>
            The digit shown in slot <paramref name="i"/>, or null if the slot is blank
            </summary>
        </member>
        <member name="T:Sandbox.VitalsSection.IntText">
            <summary>
            Formats an int once per change instead of every frame
            </summary>
        </member>
        <member name="T:Sandbox.UIActionProperty">
            <summary>
            A button for a <see cref="T:Sandbox.UISheet"/> that is made while the game runs
            </summary>
        </member>
        <member name="P:Sandbox.UIActionProperty.Enabled">
            <summary>
            The button can be pressed while this says true. Always, when not set.
            </summary>
        </member>
        <member name="M:Sandbox.UIActionProperty.#ctor(System.String,System.String,System.Action,System.Int32,System.Boolean,System.Boolean)">
            <param name="title">What the button says, can be a localization token.</param>
            <param name="order">Where it goes among the other properties of the sheet.</param>
        </member>
        <member name="T:Sandbox.UIButton">
            <summary>
            UI button. A <see cref="T:Sandbox.UISheet"/> uses it for methods marked with [Button], and [EnabledIf] decides when they can be pressed.
            </summary>
        </member>
        <member name="P:Sandbox.UIButton.Method">
            <summary>
            The method this runs when pressed, set by a sheet. It takes the title and icon from [Button], or the name of the method.
            </summary>
        </member>
        <member name="M:Sandbox.UIButton.MakeIconOnly">
            <summary>
            Moves the text into the tooltip and leaves only the icon, square like any icon-only button.
            Clearing the text alone keeps the empty text column, which pushes the icon off centre.
            </summary>
        </member>
        <member name="T:Sandbox.UIColor">
            <summary>
            Property for a color swatch and hex value, clicking on it open a color picker
            </summary>
        </member>
        <member name="T:Sandbox.UIDropdown.Item">
            <summary>
            One entry of the list. The label can be a localization token, and is drawn in <paramref name="Font"/> when one is given.
            </summary>
        </member>
        <member name="M:Sandbox.UIDropdown.Item.#ctor(System.String,System.Object,System.String)">
            <summary>
            One entry of the list. The label can be a localization token, and is drawn in <paramref name="Font"/> when one is given.
            </summary>
        </member>
        <member name="M:Sandbox.UIDropdown.ForEnum``1">
            <summary>
            An item for each value of an enum, named by its [Title].
            </summary>
        </member>
        <member name="P:Sandbox.UIDropdown.ValueChanged">
            <summary>
            Called with the <see cref="P:Sandbox.UIDropdown.Item.Value"/> that was picked.
            </summary>
        </member>
        <member name="P:Sandbox.UIDropdown.Tokenize">
            <summary>
            Whether the labels may be localization tokens.
            </summary>
        </member>
        <member name="P:Sandbox.UIDropdown.OpenPicker">
            <summary>
            Opens a custom picker instead of the item list when provided.
            </summary>
        </member>
        <member name="P:Sandbox.UIDropdown.Value">
            <summary>
            The picked value, shown in the box.
            </summary>
        </member>
        <member name="T:Sandbox.UIDropdownList">
            <summary>
            The list under an open <see cref="T:Sandbox.UIDropdown"/>. It's a popup, so it lives above the menu and closes by itself when something else is pressed.
            </summary>
        </member>
        <member name="T:Sandbox.UIEnumControl">
            <summary>
            An enum property. Two options are shown side by side as a segmented control, anything more as a <see cref="T:Sandbox.UIDropdown"/>.
            </summary>
        </member>
        <member name="T:Sandbox.UIFontControl">
            <summary>
            A string property marked [FontName], picked from <see cref="T:GameFonts"/>. Each one is shown in its own font.
            </summary>
        </member>
        <member name="T:Sandbox.UIHintLabel">
            <summary>
            A label with a <see cref="T:Sandbox.UIHintPanel"/> for a tooltip: its own text as the title and a
            description. Without a description there's no tooltip.
            </summary>
        </member>
        <member name="P:Sandbox.UIHintLabel.Hint">
            <summary>
            What the tooltip says under the name. Can be a localization token or carry markup.
            </summary>
        </member>
        <member name="T:Sandbox.UIModal">
            <summary>
            A small window with a title bar and a <see cref="T:Sandbox.UISheet"/> of whatever object you give it.
            </summary>
        </member>
        <member name="P:Sandbox.UIModal.Body">
            <summary>
            What goes under the title bar.
            </summary>
        </member>
        <member name="P:Sandbox.UIModal.OnSubmit">
            <summary>
            Called when Enter is pressed in one of its text boxes.
            </summary>
        </member>
        <member name="P:Sandbox.UIModal.OnClosed">
            <summary>
            Called after it closed, by any of the ways.
            </summary>
        </member>
        <member name="M:Sandbox.UIModal.Show(Sandbox.UI.Panel,System.String,System.Object)">
            <summary>
            Opens a window over the menu the panel is in. Only one stays open, a new one replaces it.
            </summary>
        </member>
        <member name="M:Sandbox.UIModal.Prompt(Sandbox.UI.Panel,System.String,System.String,System.Action{System.String},System.String,System.String,System.String,System.String)">
            <summary>
            A window with a text box and two buttons, for asking a name
            </summary>
            <param name="title">The title bar, can be a localization token.</param>
            <param name="value">What the text box starts with.</param>
            <param name="onConfirm">Called with the name when it is confirmed.</param>
            <param name="placeholder">What the empty text box says.</param>
            <param name="confirmText">What the confirm button says.</param>
            <param name="confirmIcon">The icon of the confirm button.</param>
            <param name="message">A line above the text box, rich text like <see cref="M:Sandbox.UIModal.Confirm(Sandbox.UI.Panel,System.String,System.String,System.Action,System.String,System.String)"/>'s.</param>
        </member>
        <member name="M:Sandbox.UIModal.Confirm(Sandbox.UI.Panel,System.String,System.String,System.Action,System.String,System.String)">
            <summary>
            A confirmation window with buttons underneath
            </summary>
            <param name="title">The title bar, can be a localization token.</param>
            <param name="message">The question, rich text, so &lt;b&gt; works. Escape names in it with <see cref="M:Sandbox.UIModal.Escape(System.String)"/>.</param>
            <param name="onConfirm">Called when it is confirmed.</param>
            <param name="confirmText">What the confirm button says.</param>
            <param name="cancelText">What the cancel button says, no cancel button when null.</param>
        </member>
        <member name="M:Sandbox.UIModal.Escape(System.String)">
            <summary>
            Makes text safe to put in the rich message of <see cref="M:Sandbox.UIModal.Confirm(Sandbox.UI.Panel,System.String,System.String,System.Action,System.String,System.String)"/>
            </summary>
        </member>
        <member name="T:Sandbox.UIModalLayer">
            <summary>
            Centers a <see cref="T:Sandbox.UIModal"/> over the HUD when it isn't opened from the menu. Goes away with its last modal.
            </summary>
        </member>
        <member name="T:Sandbox.UIResourceGrid">
            <summary>
            A resource property that shows all available options in a grid
            </summary>
        </member>
        <member name="M:Sandbox.UIResourceGrid.FitCells">
            <summary>
            Make sure all cells fit in grid space properly regardless of screen resolution
            </summary>
        </member>
        <member name="T:Sandbox.UIResourceGrid.Cell">
            <summary>
            One pickable resource
            </summary>
        </member>
        <member name="T:Sandbox.UISeparator">
            <summary>
            A thin horizontal line between parts of a panel. A sheet makes one for <see cref="T:Sandbox.SeparatorAttribute"/>.
            </summary>
        </member>
        <member name="P:Sandbox.UISheet.Target">
            <summary>
            The object whose properties we show, or a list of already serialized properties.
            </summary>
        </member>
        <member name="P:Sandbox.UISheet.PropertyFilter">
            <summary>
            Decides which properties get a row. All of them when not set, <see cref="M:Sandbox.UISheet.PropertiesAndButtons(Sandbox.SerializedProperty)"/> is the usual choice.
            </summary>
        </member>
        <member name="M:Sandbox.UISheet.PropertiesAndButtons(Sandbox.SerializedProperty)">
            <summary>
            A filter for <see cref="P:Sandbox.UISheet.PropertyFilter"/>: members marked [Property] and methods marked [Button], without delegates.
            </summary>
        </member>
        <member name="M:Sandbox.UISheet.Rebuild">
            <summary>
            Throws the rows away and makes them again from the target.
            </summary>
        </member>
        <member name="T:Sandbox.UISheetGroup">
            <summary>
            A titled run of rows. A toggle group has a checkbox in its title that shows and hides the rows.
            </summary>
        </member>
        <member name="T:Sandbox.UISheetRow">
            <summary>
            One property, its name on the left and its control on the right, wide controls like the resource grid go under the name instead.
            A button has no name and takes the row, and the buttons that follow with [SameLine] share it.
            </summary>
        </member>
        <member name="M:Sandbox.UISheetRow.AddToRow(Sandbox.SerializedProperty)">
            <summary>
            Another property on the same row, after the ones already there.
            </summary>
        </member>
        <member name="M:Sandbox.UISheetRow.IsHidden(Sandbox.InspectorVisibilityAttribute[],Sandbox.SerializedObject)">
            <summary>
            Whether every one of the conditions says to hide.
            </summary>
        </member>
        <member name="M:Sandbox.UISheetRow.CreateControl(Sandbox.SerializedProperty,System.Boolean@)">
            <summary>
            Pick the control for a property. Anything we don't have a Sandbox one for gets the engine's.
            </summary>
        </member>
        <member name="T:Sandbox.SeparatorAttribute">
            <summary>
            Draws a thin line above this property or button in a <see cref="T:Sandbox.UISheet"/>.
            </summary>
        </member>
        <member name="T:Sandbox.SameLineAttribute">
            <summary>
            Puts this property or button in the same row as the one above it, buttons share the row evenly.
            </summary>
        </member>
        <member name="T:Sandbox.HeaderButtonAttribute">
            <summary>
            Puts this [Button] in the title of its group in a <see cref="T:Sandbox.UISheet"/>, as a square icon with its title as the tooltip.
            For things that act on the whole group, like resetting it.
            </summary>
        </member>
        <member name="T:Sandbox.HideLabelAttribute">
            <summary>
            Leaves out the name on the left of a property in a <see cref="T:Sandbox.UISheet"/>, its control takes the whole row.
            </summary>
        </member>
        <member name="T:Sandbox.ApplyOnReleaseAttribute">
            <summary>
            A slider for this property only sets it when you let go of it or finish typing, not on every change.
            </summary>
        </member>
        <member name="T:Sandbox.EnabledIfAttribute">
            <summary>
            A button or property in a <see cref="T:Sandbox.UISheet"/> only works while a property of the same object has this value, otherwise it shows greyed out.
            </summary>
        </member>
        <member name="T:Sandbox.UISlider">
            <summary>
            A number with a range
            </summary>
        </member>
        <member name="P:Sandbox.UISlider.Min">
            <summary>
            The left end of the bar. Set from the property's [Range] when there is one.
            </summary>
        </member>
        <member name="P:Sandbox.UISlider.Max">
            <summary>
            The right end of the bar. Set from the property's [Range] when there is one.
            </summary>
        </member>
        <member name="P:Sandbox.UISlider.Step">
            <summary>
            Values snap to this, and it's marked under the bar - coarsened to a round multiple when there
            would be too many marks. 0 for none, which marks tenths of the range instead.
            </summary>
        </member>
        <member name="P:Sandbox.UISlider.OnValueChanged">
            <summary>
            Called with the new value when the user changes it.
            </summary>
        </member>
        <member name="P:Sandbox.UISlider.Value">
            <summary>
            The number the slider shows. With a property it reads and writes that, without one it
            keeps the number itself - so the slider can be used anywhere
            </summary>
        </member>
        <member name="M:Sandbox.UISlider.SetFromUser(System.Single)">
            <summary>
            Sets the value from the user's input, so <see cref="P:Sandbox.UISlider.OnValueChanged"/> hears of it.
            </summary>
        </member>
        <member name="M:Sandbox.UISlider.TickInterval(System.Single)">
            <summary>
            The step, or a tenth of the range without one, grown by 2/5/10-style multiples until it
            marks at most <see cref="F:Sandbox.UISlider.MaxStepTicks"/> divisions.
            </summary>
        </member>
        <member name="T:Sandbox.UIVector">
            <summary>
            A Vector2, Vector3 or Vector4 property, a number box for each axis with the axis letter in front of it.
            </summary>
        </member>
        <member name="M:Sandbox.UIVector.Supports(System.Type)">
            <summary>
            Whether we have a control for this type.
            </summary>
        </member>
        <member name="T:Sandbox.UIVectorAxis">
            <summary>
            One axis of a <see cref="T:Sandbox.UIVector"/>.
            </summary>
        </member>
        <member name="P:Sandbox.Hud.Margin">
            <summary>
            Gap between the screen edges and the HUD in screen pixels, from the player's HUD margin
            </summary>
        </member>
        <member name="P:Sandbox.Hud.MarginLength">
            <summary>
            <see cref="P:Sandbox.Hud.Margin"/> for panel styles, which scale it to the panel themselves
            </summary>
        </member>
        <member name="F:Sandbox.Hud.StackGap">
            <summary>
            Space kept between the vitals and the HUD stacked above them (chat, notices, the voice list)
            </summary>
        </member>
        <member name="M:Sandbox.Hud.IsVisible(HudElement)">
            <summary>
            True if none of the given elements are hidden. HUD panels call this before drawing. The answer
            comes from every <see cref="T:IHudEvents"/> listener in the scene, asked once per frame.
            </summary>
        </member>
        <member name="T:Sandbox.WorkshopPager`1">
            <summary>
            Loads a workshop query one page at a time. Restarting it drops pages of the old query that are still on their way.
            </summary>
        </member>
        <member name="P:Sandbox.WorkshopPager`1.Started">
            <summary>
            Whether the first page has been asked for yet.
            </summary>
        </member>
        <member name="M:Sandbox.WorkshopPager`1.#ctor(System.Func{Sandbox.Storage.Query},System.Func{Sandbox.Storage.QueryItem,`0},System.Action)">
            <param name="createQuery">Builds the query for the first page.</param>
            <param name="select">Turns a result into what <see cref="P:Sandbox.WorkshopPager`1.Items"/> holds. Return null to skip it.</param>
            <param name="changed">Called when <see cref="P:Sandbox.WorkshopPager`1.Items"/> or <see cref="P:Sandbox.WorkshopPager`1.Loading"/> change.</param>
        </member>
        <member name="M:Sandbox.WorkshopPager`1.LoadMore">
            <summary>
            The next page, one at a time.
            </summary>
        </member>
        <member name="T:Sandbox.CloudSpawnList.Entry">
            <summary>
            A single tile in the grid, whether it came from disk or from the cloud.
            </summary>
        </member>
        <member name="M:Sandbox.CloudSpawnList.Entry.#ctor(System.String,System.String,System.Boolean,System.Boolean)">
            <summary>
            A single tile in the grid, whether it came from disk or from the cloud.
            </summary>
        </member>
        <member name="M:Sandbox.CloudSpawnList.LanguageChanged">
            <summary>
            Reapplies searches and sorting to the translated names of local entries.
            </summary>
        </member>
        <member name="P:Sandbox.CloudSpawnList.PackageType">
            <summary>
            Value of the "type:" term in the package search, e.g. "sent" or "model".
            </summary>
        </member>
        <member name="P:Sandbox.CloudSpawnList.PackageQuery">
            <summary>
            Extra terms appended to the package search.
            </summary>
        </member>
        <member name="P:Sandbox.CloudSpawnList.EmptyTitle">
            <summary>
            Title shown when nothing matched. Null uses the empty state's default.
            </summary>
        </member>
        <member name="M:Sandbox.CloudSpawnList.PackageIdent(Sandbox.Package)">
            <summary>
            Build the spawn ident for a cloud package.
            </summary>
        </member>
        <member name="M:Sandbox.CloudSpawnList.FindLocalEntries">
            <summary>
            Local entries shown ahead of cloud results in Popular mode, otherwise after them.
            Should respect <see cref="P:Sandbox.CloudSpawnList.Filter"/>.
            </summary>
        </member>
        <member name="M:Sandbox.ContextMenuHost.BuildMenuBar">
            <summary>
            The strip of settings along the top, like Garry's Mod's context menu bar. Its menus come from <see cref="T:IMenuBarEvent"/>.
            </summary>
        </member>
        <member name="P:Sandbox.DragHandler.Current">
            <summary>
            The data currently being dragged, or null.
            </summary>
        </member>
        <member name="P:Sandbox.DragHandler.IsDragging">
            <summary>
            True if something is actively being dragged.
            </summary>
        </member>
        <member name="M:Sandbox.DragHandler.StartDragging(Sandbox.DragData)">
            <summary>
            Start dragging with the given data.
            </summary>
        </member>
        <member name="M:Sandbox.DragHandler.StopDragging">
            <summary>
            Stop dragging and clear all state.
            </summary>
        </member>
        <member name="P:Sandbox.DresserEditor.Title">
            <summary>
            Localized title of the clothing inspector.
            </summary>
        </member>
        <member name="T:Sandbox.EffectsList.EffectsSource">
            <summary>
            Where the listed effects come from.
            </summary>
        </member>
        <member name="M:Sandbox.EffectsList.LanguageChanged">
            <summary>
            Sorts installed effects by their translated names after a language change.
            </summary>
        </member>
        <member name="P:Sandbox.FacePoseEditor.Title">
            <summary>
            Localized title of the face pose inspector.
            </summary>
        </member>
        <member name="P:Sandbox.GameObjectInspector.Title">
            <summary>
            Localized inspector title including any additional selected objects.
            </summary>
        </member>
        <member name="M:Sandbox.GameResourceControl.Rebuild">
            <summary>
            Refreshes the displayed resource type and current selection.
            </summary>
        </member>
        <member name="M:Sandbox.GameResourceControl.OnValueChanged">
            <summary>
            Updates the preview and display title when the selected resource changes.
            </summary>
        </member>
        <member name="F:Sandbox.HudLayer.DefaultTint">
            <summary>
            The HUD colour when nothing has set one, also what the HUD panels fall back to without a layer
            </summary>
        </member>
        <member name="P:Sandbox.HudLayer.Tint">
            <summary>
            Colour multiplied into every HUD element
            </summary>
        </member>
        <member name="P:Sandbox.HudLayer.CurrentTint">
            <summary>
            The colour the HUD paints with: the player's HUD colour if they picked one, otherwise <see cref="P:Sandbox.HudLayer.Tint"/>. Always opaque, see <see cref="P:Sandbox.HudLayer.Opacity"/>.
            </summary>
        </member>
        <member name="P:Sandbox.HudLayer.Opacity">
            <summary>
            How opaque the HUD and its glow are, the alpha of the player's HUD colour
            </summary>
        </member>
        <member name="P:Sandbox.HudLayer.DigitExponent">
            <summary>
            HDR color exponent for highlighted HUD elements like digits or selected hotbar slots
            </summary>
        </member>
        <member name="P:Sandbox.HudLayer.TextExponent">
            <summary>
            HDR color exponent for regular HUD text
            </summary>
        </member>
        <member name="P:Sandbox.HudLayer.DigitGain">
            <summary>
            HDR multipliers from <see cref="P:Sandbox.HudLayer.DigitExponent"/> and <see cref="P:Sandbox.HudLayer.TextExponent"/>
            </summary>
        </member>
        <member name="P:Sandbox.HudLayer.ScanlinePeriod">
            <summary>
            Scanline frequency in pixels
            </summary>
        </member>
        <member name="M:Sandbox.HudLayer.Find(Sandbox.Component,System.Boolean)">
            <summary>
            The scene's HUD layer. With <paramref name="create"/> it is added next to the screen panel <paramref name="from"/> lives under if there isn't one yet
            </summary>
        </member>
        <member name="M:Sandbox.HudLayer.FindSection``1(Sandbox.Component,``0)">
            <summary>
            A section of the scene's HUD layer. Hand back the previous result to skip the scene lookup while its canvas is still alive
            </summary>
        </member>
        <member name="T:Sandbox.InspectWindow.Corner">
            <summary>
            Which window of the inspect menu a tab goes in.
            </summary>
        </member>
        <member name="F:Sandbox.InspectWindow.Corner.TopLeft">
            <summary>
            Saves and effects, under the settings bar.
            </summary>
        </member>
        <member name="F:Sandbox.InspectWindow.Corner.BottomRight">
            <summary>
            The inspected object and the tool options, with the tabs under the page.
            </summary>
        </member>
        <member name="T:Sandbox.InspectWindow.Tab">
             <summary>
             Puts a panel in one of the inspect menu windows, under a tab of its own, can be implemented this way:
             <code>
             [InspectWindow.Tab, Title( "My Tab" ), Order( 300 )]
             public class MyTab : Panel { }
            
             [InspectWindow.Tab( InspectWindow.Corner.BottomRight ), Title( "My Options" ), Order( 300 )]
             public class MyOptions : Panel { }
             </code>
             Tabs are sorted by [Order], then by title. Without a corner they go in the window at the top left.
             The window is sized by the page, so give it a width of its own: it is measured at its own size to roll the window open.
             </summary>
        </member>
        <member name="T:Sandbox.InspectWindow.Tab`1">
            <summary>
            A tab that only shows while <typeparamref name="T"/> says so, like <see cref="T:Sandbox.SpawnMenuHost.HostOnly"/>.
            </summary>
        </member>
        <member name="P:Sandbox.InspectWindow.Placement">
            <summary>
            The tabs of this corner are the ones that go in this window.
            </summary>
        </member>
        <member name="M:Sandbox.InspectWindow.ScanTabs">
            <summary>
            Makes a panel for every tab type and drops the ones whose type is gone
            </summary>
        </member>
        <member name="P:Sandbox.Inventory.SelectionTimeout">
            <summary>
            Seconds after the last selection change before the menu closes on its own, keeping the current weapon
            </summary>
        </member>
        <member name="M:Sandbox.Inventory.HandleScrollInput">
            <summary>
            The scroll wheel steps the selection. Runs after the weapon's update, so a weapon that uses the wheel
            (physgun distance, wire tool ports) clears Input.MouseWheel first and nothing reaches the menu
            </summary>
        </member>
        <member name="M:Sandbox.Inventory.SelectBucket(System.Int32)">
            <summary>
            Pressing a bucket's key opens it on its first weapon (or the one after the held weapon), pressing it again steps through the bucket
            </summary>
        </member>
        <member name="M:Sandbox.Inventory.Step(System.Int32)">
            <summary>
            The wheel steps through every weapon across all buckets
            </summary>
        </member>
        <member name="M:Sandbox.LocalDupeIcon.AddLocalizedCategory``1(Sandbox.Modals.WorkshopPublishOptions,System.String,System.String)">
            <summary>
            Localize the modal label while keeping the workshop metadata key stable.
            </summary>
        </member>
        <member name="P:Sandbox.MountContent.Folder">
            <summary>
            Show the models in this folder and everything under it. Null shows the whole mount.
            </summary>
        </member>
        <member name="P:Sandbox.ResourcePickerButton.Thumb">
            <summary>
            Image url of the picked resource. The badge shows when it's empty.
            </summary>
        </member>
        <member name="P:Sandbox.ResourcePickerButton.Badge">
            <summary>
            Shown instead of the image, cut to three letters so it fits.
            </summary>
        </member>
        <member name="P:Sandbox.ResourcePickerButton.Empty">
            <summary>
            Greys the title out, for "none selected" and the like.
            </summary>
        </member>
        <member name="P:Sandbox.ResourceSelectControl.Extension">
            <summary>
            The extension being picked, from the asset type or straight from the attribute for types without one (materials).
            </summary>
        </member>
        <member name="M:Sandbox.ResourceSelectControl.Rebuild">
            <summary>
            Refreshes the resource type metadata and current selection.
            </summary>
        </member>
        <member name="M:Sandbox.ResourceSelectControl.OnValueChanged">
            <summary>
            Updates the preview and display title when the selected resource path changes.
            </summary>
        </member>
        <member name="P:Sandbox.ResourceSelectPopup.Title">
            <summary>
            Title bar text, "Surface Selection" or similar when not set.
            </summary>
        </member>
        <member name="M:Sandbox.ResourceSelectPopup.Open(Sandbox.UI.Panel,System.String,System.String,System.Action{System.String},System.Boolean,System.String)">
            <summary>
            Opens a picker over the menu <paramref name="source"/> is in.
            </summary>
        </member>
        <member name="P:Sandbox.ResourceSelectPopup.IconSize">
            <summary>
            Tile size, kept apart from the spawn menu's since these tiles also show a description.
            </summary>
        </member>
        <member name="P:Sandbox.ResourceSelectPopup.Search">
            <summary>
            What's typed in the search box. Local items are filtered right away, the workshop is asked once typing pauses.
            </summary>
        </member>
        <member name="M:Sandbox.SignalsOverlay.Show(Sandbox.SignalsOverlay.Entry)">
            <summary>
            Keep the overlay visible this frame — call every frame while a tool wants it up,
            optionally with a hover card to show. The overlay also shows itself while the
            inspect menu is open; either way it collects and draws the wires on its own.
            </summary>
        </member>
        <member name="M:Sandbox.SignalsOverlay.CollectConnectors(System.Collections.Generic.List{Sandbox.SignalsOverlay.Connector})">
            <summary>
            Find every wire around the camera: signal connections on outputs, and component
            links (references and presence) on their ManualLink stamps.
            </summary>
        </member>
        <member name="M:Sandbox.SignalsOverlay.TryGetScreenBounds(Sandbox.CameraComponent,Sandbox.GameObject,Sandbox.Rect@)">
            <summary>
            The screen-space box around the object's projected bounds corners, in pixels.
            False when any corner is behind the camera — the box would be meaningless.
            </summary>
        </member>
        <member name="M:Sandbox.SignalsOverlay.ClipToBounds(Sandbox.Rect,Vector2,Vector2)">
            <summary>
            Slide a point sitting inside the box along the line towards the outside point,
            stopping at the box edge.
            </summary>
        </member>
        <member name="P:Sandbox.SpawnlistView.Entry">
            <summary>
            A player's spawnlist, local or installed from the workshop.
            </summary>
        </member>
        <member name="P:Sandbox.SpawnlistView.Resource">
            <summary>
            An authored spawnlist that ships with the game. Always read-only.
            </summary>
        </member>
        <member name="P:Sandbox.SpawnMenuHost.IsOpen">
            <summary>
            Whether the menu is currently up (held or pinned), in any mode.
            </summary>
        </member>
        <member name="P:Sandbox.SpawnMenuHost.ModalLayer">
            <summary>
            Where <see cref="T:Sandbox.UIModal"/> windows go. They are inside the menu, so it stays up while one has focus.
            </summary>
        </member>
        <member name="M:Sandbox.SpawnMenuHost.Local#IPlayerEvents#OnMove(System.Boolean@)">
            <summary>
            Opening the menu with a controller uses the same stick input as movement, so block movement
            while the open button is held (mouse/keyboard players can move and open the menu at once).
            </summary>
        </member>
        <member name="P:Sandbox.SpawnMenuIcon.WantsDrag">
            <summary>
            We want to drag from this panel
            </summary>
        </member>
        <member name="M:Sandbox.SpawnPageLocal.LanguageChanged">
            <summary>
            Reapplies the active search to the translated prop names.
            </summary>
        </member>
        <member name="M:Sandbox.ToolsTab.HasSettings(ToolMode)">
            <summary>
            Whether the sheet would have a single row for this tool.
            </summary>
        </member>
        <member name="M:Sandbox.ToolsTab.GetGroups">
            <summary>
            Every tool under its group, both sorted by what the player reads.
            </summary>
        </member>
        <member name="F:Sandbox.UICardDescription.PauseTime">
            <summary>
            How long text pauses scrolling before continuing
            </summary>
        </member>
        <member name="F:Sandbox.UICardDescription.ScrollSpeed">
            <summary>
            How fast we're scrolling overflowing description text
            </summary>
        </member>
        <member name="F:Sandbox.UICardDescription.MaxHeight">
            <summary>
            Maximum height of description block, all text that overflows will be scrolled
            </summary>
        </member>
        <member name="T:Sandbox.UIGroupedList.ListItem">
            <summary>
            A selectable entry. The title can be a localization token.
            </summary>
        </member>
        <member name="M:Sandbox.UIGroupedList.ListItem.#ctor(System.String,System.Object,System.Boolean)">
            <summary>
            A selectable entry. The title can be a localization token.
            </summary>
        </member>
        <member name="T:Sandbox.UIGroupedList.ListGroup">
            <summary>
            A blue header and the entries under it.
            </summary>
        </member>
        <member name="M:Sandbox.UIGroupedList.ListGroup.#ctor(System.String,System.Collections.Generic.List{Sandbox.UIGroupedList.ListItem})">
            <summary>
            A blue header and the entries under it.
            </summary>
        </member>
        <member name="P:Sandbox.UIGroupedList.Selected">
            <summary>
            The value of the entry that's highlighted.
            </summary>
        </member>
        <member name="P:Sandbox.UIGroupedList.Revision">
            <summary>
            Bump this when the groups changed in a way their item count does not show (titles, order, values), to make the list build again.
            </summary>
        </member>
        <member name="M:Sandbox.UIGroupedList.VisibleGroups">
            <summary>
            The groups with only the entries that match the quick filter, and without the emptied ones.
            </summary>
        </member>
        <member name="P:Sandbox.UILoadingState.Text">
            <summary>
            What's being waited for, can be a localization token.
            </summary>
        </member>
        <member name="P:Sandbox.UISettingsPane.Revision">
            <summary>
            Bump this when the content changed in a way the title does not show, to make the pane build it again.
            </summary>
        </member>
        <member name="M:Sandbox.UndoHistoryPage.LanguageChanged">
            <summary>
            Reformats action titles and object counts without requesting the history again.
            </summary>
        </member>
        <member name="P:Sandbox.Vitals.WarningColor">
            <summary>
            Draws this color when ammo/health reach a critical level
            </summary>
        </member>
        <member name="P:Sandbox.Vitals.DamageFlashColor">
            <summary>
            The health readout flashes this color when health drops
            </summary>
        </member>
        <member name="T:DrivenProp">
            <summary>
            Put on an object by the host while a player drives it (see <see cref="P:Player.Driving"/>)
            </summary>
        </member>
        <member name="P:DrivenProp.Driver">
            <summary>
            Who's driving this?
            </summary>
        </member>
        <member name="M:DrivenProp.Begin(Sandbox.GameObject,Player)">
            <summary>
            Start driving this prop 
            </summary>
        </member>
        <member name="M:DrivenProp.End">
            <summary>
            Let go of the prop
            </summary>
        </member>
        <member name="M:DrivenProp.RemoveDriveTags(Sandbox.GameObject,System.Text.Json.Nodes.JsonObject)">
            <summary>
            Take the noclip tag we put on driven objects out of <paramref name="json"/>, <paramref name="root"/> serialized,
            so saves and dupes get them the way they were before they were driven.
            </summary>
        </member>
        <member name="T:ICarryEvent">
            <summary>
            Lets an object react to being picked up with use by <see cref="T:PlayerCarry"/>, or refuse it.
            Runs on the root of the object.
            </summary>
        </member>
        <member name="M:ICarryEvent.OnCarryGrab(PlayerCarryEvent)">
            <summary>
            Called when a player tries to pick this object up. Runs on the machine of the player picking it up,
            and again on the instance that simulates the object before it starts moving it for them.
            </summary>
        </member>
        <member name="M:ICarryEvent.OnCarryPickup(Player)">
            <summary>
            Called when a player starts carrying this object.
            Runs on the instance that simulates the object, the only one that can change its body.
            </summary>
        </member>
        <member name="M:ICarryEvent.OnCarryDrop(Player,System.Boolean)">
            <summary>
            Called when a player stops carrying this object, because it was let go, thrown or got out of reach.
            Runs on the instance that simulates the object, the only one that can change its body.
            </summary>
        </member>
        <member name="P:IPhysgunEvent.GrabEvent.Grabber">
            <summary>
            The connection attempting to grab this object.
            </summary>
        </member>
        <member name="P:IPhysgunEvent.GrabEvent.Cancelled">
            <summary>
            Set to true to cancel the grab.
            </summary>
        </member>
        <member name="M:IPhysgunEvent.OnPhysgunGrab(IPhysgunEvent.GrabEvent)">
            <summary>
            Called when a player attempts to grab this object with the physgun.
            Set <see cref="P:IPhysgunEvent.GrabEvent.Cancelled"/> to true to reject the grab.
            </summary>
        </member>
        <member name="M:IPhysgunEvent.OnPhysgunDrop">
            <summary>
            Called when a physgun stops moving this object, because it was let go, frozen or launched.
            Runs on the instance that simulates the object, the only one that can change its body.
            </summary>
        </member>
        <member name="P:IToolgunEvent.SelectEvent.User">
            <summary>
            The connection attempting to use a tool on this object.
            </summary>
        </member>
        <member name="P:IToolgunEvent.SelectEvent.Cancelled">
            <summary>
            Set to true to reject the toolgun selection.
            </summary>
        </member>
        <member name="M:IToolgunEvent.OnToolgunSelect(IToolgunEvent.SelectEvent)">
            <summary>
            Called when a player attempts to select this object with the toolgun.
            Set <see cref="P:IToolgunEvent.SelectEvent.Cancelled"/> to true to reject the selection.
            </summary>
        </member>
        <member name="T:ManualLink">
            <summary>
            A non-physics logical link between two GameObjects.
            Used by the Wire tool to group unconnected objects so the Duplicator
            treats them as part of the same contraption.
            </summary>
        </member>
        <member name="P:ManualLink.IsComponentWire">
            <summary>
            Wires whose output is the source component itself — reference and presence links.
            </summary>
        </member>
        <member name="M:ManualLink.SetWire(Sandbox.Component,System.String,Sandbox.Component,System.String)">
            <summary>
            Stamp the wire on both ends of the pair, so either side can resolve it from
            its own link children.
            </summary>
        </member>
        <member name="T:MorphState">
            <summary>
            Persists morph values on a GameObject so they survive over the network and dupes. 
            </summary>
        </member>
        <member name="P:MorphState.SerializedMorphs">
            <summary>
            Serialized morphs. Persisted for dupes/saves — not synced over the network.
            </summary>
        </member>
        <member name="M:MorphState.ApplyBatch(System.String)">
            <summary>
            Apply a partial morph batch on the host, then broadcast to all clients.
            </summary>
        </member>
        <member name="M:MorphState.ApplyPreset(System.String)">
            <summary>
            Apply a full morph preset on the host (resets all first), then broadcast to all clients.
            </summary>
        </member>
        <member name="M:MorphState.Capture(Sandbox.SkinnedModelRenderer)">
            <summary>
            Snapshot all current morph values from <paramref name="smr"/> into <see cref="P:MorphState.SerializedMorphs"/>.
            </summary>
        </member>
        <member name="M:MorphState.Apply">
            <summary>
            Apply the stored <see cref="P:MorphState.SerializedMorphs"/> to the first <see cref="T:Sandbox.SkinnedModelRenderer"/> we find.
            Called on spawn/dupe restore.
            </summary>
        </member>
        <member name="T:MountMetadata">
            <summary>
            Attached to mount-spawned props. This tries to show a graceful bounding box and hints the player what game it's from if they don't have the mount installed.
            </summary>
        </member>
        <member name="T:Ownable">
            <summary>
            Tracks which connection spawned this object
            </summary>
        </member>
        <member name="P:Ownable.Owner">
            <summary>
            I would fucking love to be able to Sync these..
            And it would just do this exact behaviour. Why not?
            </summary>
        </member>
        <member name="M:Ownable.Set(Sandbox.GameObject,Sandbox.Connection)">
            <summary>
            Sets a gameObject as owned by a connection. If the gameObject already has an Ownable component, it'll just update the owner.
            </summary>
            <param name="go"></param>
            <param name="owner"></param>
            <returns></returns>
        </member>
        <member name="T:PhysicalProperties">
            <summary>
            Persists physical properties (mass, gravity, health) across duplication and networking.
            Attach this to any GameObject to ensure these values survive serialization.
            </summary>
        </member>
        <member name="T:BanSystem">
            <summary>
            Holds a banlist, can ban users
            </summary>
        </member>
        <member name="M:BanSystem.Ban(Sandbox.Connection,System.String)">
            <summary>
            Bans a connected player and kicks them immediately
            </summary>
        </member>
        <member name="M:BanSystem.Ban(Sandbox.SteamId,System.String)">
            <summary>
            Bans a Steam ID by value. Use for pre-banning or banning players who are not currently connected.
            Display name falls back to the Steam ID string.
            </summary>
        </member>
        <member name="M:BanSystem.Unban(Sandbox.SteamId)">
            <summary>
            Removes the ban for the given Steam ID.
            </summary>
        </member>
        <member name="M:BanSystem.IsBanned(Sandbox.SteamId)">
            <summary>
            Returns true if the given Steam ID is currently banned
            </summary>
        </member>
        <member name="M:BanSystem.GetBannedList">
            <summary>
            Returns a read-only view of all active bans
            </summary>
        </member>
        <member name="M:BanSystem.RpcBanPlayer(Sandbox.Connection,System.String)">
            <summary>
            RPC to ban a connected player. Caller must be host or have admin permission.
            </summary>
        </member>
        <member name="M:BanSystem.BanCommand(System.String,System.String)">
            <summary>
            Bans a player by name or Steam ID. Optionally provide a reason.
            Usage: ban [name|steamid] [reason]
            </summary>
        </member>
        <member name="T:ClientInput">
            <summary>
            A configurable input action for contraptions driven from a seat. This contains no state:
            it reads the active driver's connection while <see cref="M:IPlayerControllable.OnControl"/>
            is running. Wired inputs are ordinary <see cref="T:SignalInputAttribute"/> handlers instead.
            </summary>
        </member>
        <member name="M:ClientInput.GetAnalog">
            <summary>
            How far the action's pushed, 0 to 1: a key's all the way, a gamepad's trigger or stick anything between (see
            <see cref="P:Player.ActionAmounts"/>).
            </summary>
        </member>
        <member name="T:ControlContext">
             <summary>
             Answers "which player caused this?" while entity code is running.
            
             When a signal input fires or a seat pushes key states, the system notes who did it here.
             If your code needs to blame someone — kill credit, undo — just read
             <see cref="P:ControlContext.Player"/>. It's null when nobody is responsible (e.g. map logic).
             </summary>
        </member>
        <member name="P:ControlContext.Player">
            <summary>
            The player who caused whatever is currently running, or null.
            </summary>
        </member>
        <member name="T:ControlContext.Scope">
            <summary>
            Restores whoever was responsible before when disposed, so nested pushes unwind cleanly.
            </summary>
        </member>
        <member name="M:ControlContext.Push(Player,Sandbox.Connection)">
            <summary>
            Mark a player as responsible for the code that runs until the scope is disposed:
            <code>using var scope = ControlContext.Push( player );</code>
            </summary>
        </member>
        <member name="T:ControlSystem">
            <summary>
            Lets players drive contraptions from a seat. Every tick, this finds who's sitting in each
            chair and calls <see cref="M:IPlayerControllable.OnControl"/> on the attached contraption.
            </summary>
        </member>
        <member name="T:ControlEvent">
            <summary>
            Data passed to <see cref="T:Global.IControlEvents"/>.
            </summary>
        </member>
        <member name="P:ControlEvent.Target">
            <summary>
            The seat they sat in, or the prop they drive.
            </summary>
        </member>
        <member name="T:Global">
            <summary>
            Allows listening to players taking control of things - sitting in seats, which drives whatever the seat is
            built into, and driving props. Use it for vehicle HUDs or tracking passengers. Runs on the host.
            </summary>
            <summary>
            Allows listening to and changing explosions. Implement this on a <see cref="T:Sandbox.Component"/> to make blasts bigger,
            keep them out of a safe zone, or react to them going off.
            </summary>
            <summary>
            Allows listening to and changing damage dealt to players and NPCs. Implement this on a <see cref="T:Sandbox.Component"/>
            to scale damage, add friendly fire rules, or react to hits.
            </summary>
            <summary>
            Allows listening to and stopping the deaths of players and NPCs. Implement this on a <see cref="T:Sandbox.Component"/>.
            </summary>
            <summary>
            Allows listening to and stopping admin actions - kicks, bans, server settings and map changes. Use it for
            audit logs or protecting admins from each other. All of these run on the host.
            </summary>
            <summary>
            Allows listening to players joining and leaving the server. Implement this on a <see cref="T:Sandbox.Component"/>.
            All of these run on the host.
            </summary>
            <summary>
            Events broadcasted to the entire scene for any player action.
            </summary>
            <summary>
            Allows listening to and stopping undos, for example to lock props during a round. Runs on the host.
            </summary>
            <summary>
            Allows listening to events related to the <see cref="T:Sandbox.SaveSystem"/>.
            Implement this on a <see cref="T:Sandbox.Component"/> to receive callbacks before and after saves and loads.
            </summary>
            <summary>
            Allows listening to spawn events across the scene.
            Implement this on a <see cref="T:Sandbox.Component"/> to receive callbacks before and after objects are spawned.
            </summary>
        </member>
        <member name="M:Global.IExplosionEvents.OnExplode(ExplosionEvent)">
            <summary>
            Called on the host before an explosion is spawned.
            </summary>
        </member>
        <member name="M:Global.IExplosionEvents.OnExploded(ExplosionEvent,Sandbox.GameObject)">
            <summary>
            Called on the host after the explosion has been spawned.
            </summary>
        </member>
        <member name="M:Global.IDamageEvents.OnDamaging(DamageEvent)">
            <summary>
            Called on the host before a player or NPC loses health.
            </summary>
        </member>
        <member name="M:Global.IDamageEvents.OnDamaged(DamageEvent)">
            <summary>
            Called on the host after a player or NPC has lost health, before they die if it killed them.
            </summary>
        </member>
        <member name="M:Global.IDeathEvents.OnDying(DeathEvent)">
            <summary>
            Called on the host when damage has taken a player or NPC below 1 health, before they die.
            </summary>
        </member>
        <member name="M:Global.IDeathEvents.OnDied(DeathEvent)">
            <summary>
            Called on the host after a player or NPC has died, the kill has been credited and their ragdoll made.
            </summary>
        </member>
        <member name="M:Global.IConnectionEvents.OnConnecting(ConnectingEvent)">
            <summary>
            Called when someone tries to join, before they load in. Use it for whitelists, passwords or reserved slots.
            Bans are checked separately.
            </summary>
        </member>
        <member name="M:Global.IConnectionEvents.OnPlayerJoined(PlayerData)">
            <summary>
            Called when someone has joined and their <see cref="T:PlayerData"/> exists, just before their first spawn.
            </summary>
        </member>
        <member name="M:Global.IConnectionEvents.OnPlayerLeft(PlayerData)">
            <summary>
            Called when someone has left, before their <see cref="T:PlayerData"/> is destroyed. Their player may already be gone.
            </summary>
        </member>
        <member name="M:Global.SetSaveData(System.String,System.String)">
            <summary>
            Store a string in the save, keyed by name - JSON serialize anything bigger. Write it in
            <see cref="M:Global.ISaveEvents.BeforeSave(System.String)"/> and read it back in <see cref="M:Global.ISaveEvents.AfterLoad(System.String)"/>. Host only.
            Prefix keys with your addon's name so they don't clash.
            </summary>
        </member>
        <member name="M:Global.GetSaveData(System.String,System.String)">
            <summary>
            Read a string stored with <see cref="M:Global.SetSaveData(System.String,System.String)"/>, or <paramref name="defaultValue"/> if there isn't one.
            </summary>
        </member>
        <member name="M:Global.ISaveEvents.BeforeSave(System.String)">
            <summary>
            Called before the scene state is captured for saving.
            Use this to prepare any transient state that needs to be persisted.
            </summary>
        </member>
        <member name="M:Global.ISaveEvents.AfterSave(System.String)">
            <summary>
            Called after the save file has been written to disk.
            </summary>
        </member>
        <member name="M:Global.ISaveEvents.BeforeLoad(System.String)">
            <summary>
            Called before a save file is loaded — the current scene is still active.
            Use this to clean up any state that won't survive the scene reload.
            </summary>
        </member>
        <member name="M:Global.ISaveEvents.AfterLoad(System.String)">
            <summary>
            Called after a save file has been loaded and the scene is fully restored.
            Use this to re-initialize any runtime state from the loaded data.
            </summary>
        </member>
        <member name="T:Global.ISpawnEvents.SpawnData">
            <summary>
            Data passed to <see cref="M:Global.ISpawnEvents.OnSpawn(Global.ISpawnEvents.SpawnData)"/>. Set <see cref="P:Global.ISpawnEvents.SpawnData.Cancelled"/> to true to prevent the spawn.
            </summary>
        </member>
        <member name="P:Global.ISpawnEvents.SpawnData.Spawner">
            <summary>
            The spawner that will create the object(s).
            </summary>
        </member>
        <member name="P:Global.ISpawnEvents.SpawnData.Transform">
            <summary>
            The world-space transform where the object will be placed.
            </summary>
        </member>
        <member name="P:Global.ISpawnEvents.SpawnData.Player">
            <summary>
            The connection of the player requesting the spawn.
            </summary>
        </member>
        <member name="P:Global.ISpawnEvents.SpawnData.Cancelled">
            <summary>
            Set to true to cancel the spawn.
            </summary>
        </member>
        <member name="T:Global.ISpawnEvents.PostSpawnData">
            <summary>
            Data passed to <see cref="M:Global.ISpawnEvents.OnPostSpawn(Global.ISpawnEvents.PostSpawnData)"/> after a successful spawn.
            </summary>
        </member>
        <member name="P:Global.ISpawnEvents.PostSpawnData.Objects">
            <summary>
            The GameObjects that were spawned.
            </summary>
        </member>
        <member name="M:Global.ISpawnEvents.OnSpawn(Global.ISpawnEvents.SpawnData)">
            <summary>
            Called before an object is spawned into the world.
            Set <see cref="P:Global.ISpawnEvents.SpawnData.Cancelled"/> to true to reject the spawn.
            </summary>
        </member>
        <member name="M:Global.ISpawnEvents.OnPostSpawn(Global.ISpawnEvents.PostSpawnData)">
            <summary>
            Called after an object has been successfully spawned into the world.
            </summary>
        </member>
        <member name="T:IPlayerControllable">
            <summary>
            A component that can be driven by the player occupying a linked seat.
            <see cref="M:IPlayerControllable.OnControl"/> runs once per fixed update with the player's input connection active.
            </summary>
        </member>
        <member name="T:SignalEvent">
            <summary>
            The raw value of a signal delivery. You rarely need this — declare inputs as plain
            <c>bool</c>, <c>float</c>, or parameterless methods and the system converts for you.
            </summary>
        </member>
        <member name="M:SignalEvent.#ctor(System.Single,System.Boolean,System.Boolean,System.Boolean,Player)">
            <summary>
            The raw value of a signal delivery. You rarely need this — declare inputs as plain
            <c>bool</c>, <c>float</c>, or parameterless methods and the system converts for you.
            </summary>
        </member>
        <member name="T:SignalInputAttribute">
            <summary>
            Makes a method or property wireable as an input. Works on: a parameterless method (fires
            once when the signal turns on), a method taking a <c>bool</c> or <c>float</c>, or a writable
            <c>bool</c>/<c>float</c> property.
            On a writable property of a Component type it becomes a component input instead: linking
            sets the property to the source component directly, and only components of that type
            (marked <see cref="T:SignalOutputAttribute"/> on their class) can be linked to it.
            The member's name is the wire's name — renaming it breaks saved contraptions.
            </summary>
        </member>
        <member name="P:SignalInputAttribute.Id">
            <summary>
            The stable port id. Defaults to the member name.
            </summary>
        </member>
        <member name="T:SignalOutputAttribute">
            <summary>
            Makes a <see cref="T:SignalOutput"/> property wireable as an output.
            The member's name is the wire's name — renaming it breaks saved contraptions.
            On a class it exposes the component itself as a linkable reference instead: players can
            wire it into any component input (<see cref="T:SignalInputAttribute"/> on a property of a
            matching type) and the input receives the component directly. Wired into a boolean
            input instead, it holds the input on for as long as the link exists.
            </summary>
        </member>
        <member name="T:SignalConnection">
            <summary>
            One wire: which component and which input it feeds into.
            </summary>
        </member>
        <member name="T:SignalOutput">
             <summary>
             An output port that players can wire to inputs on other entities. Call whichever
             <c>Emit</c> overload matches what you have — the receiving end converts as needed.
             State providers should emit every tick while active; this keeps continuous inputs push-driven.
             Only does anything on the host.
            
             Credit follows automatically: whoever last pressed or signaled this component is
             passed along with the emit. Pass an instigator explicitly only to override that.
             </summary>
        </member>
        <member name="M:SignalOutput.Emit(Sandbox.Component,Player)">
            <summary>
            Fire a one-shot pulse — "something happened once".
            </summary>
        </member>
        <member name="M:SignalOutput.Emit(Sandbox.Component,System.Boolean,Player)">
            <summary>
            Emit an on/off state.
            </summary>
        </member>
        <member name="M:SignalOutput.Emit(Sandbox.Component,System.Single,Player)">
            <summary>
            Emit a number. Values above 0.5 count as "on".
            </summary>
        </member>
        <member name="T:SignalInputBinding">
            <summary>
            What actually runs when a signal arrives at an input.
            </summary>
        </member>
        <member name="M:SignalInputBinding.#ctor(Sandbox.MethodDescription,Sandbox.PropertyDescription,SignalInputKind,System.Action{Sandbox.Component,SignalEvent})">
            <summary>
            What actually runs when a signal arrives at an input.
            </summary>
        </member>
        <member name="T:ISignalAdapter">
            <summary>
            Lets a custom property type act as a signal input. Just implement this anywhere —
            it's found automatically.
            </summary>
        </member>
        <member name="T:SignalPortDescription">
            <summary>
            The shared metadata exposed by both ends of a signal connection.
            </summary>
        </member>
        <member name="P:SignalPortDescription.ComponentType">
            <summary>
            Component ports: the component type this port provides or accepts. Null for signal ports.
            </summary>
        </member>
        <member name="T:SignalOutputDescription">
            <summary>
            An output port found on a component: its name and how to reach it.
            </summary>
        </member>
        <member name="T:SignalInputDescription">
            <summary>
            An input port found on a component: its name and how to reach it.
            </summary>
        </member>
        <member name="T:SignalPort">
            <summary>
            One input or output declared on a component type.
            </summary>
        </member>
        <member name="M:SignalPort.#ctor(System.String,System.String,System.String,System.String,System.Boolean,System.Int32)">
            <summary>
            One input or output declared on a component type.
            </summary>
        </member>
        <member name="P:SignalPort.Property">
            <summary>
            Outputs: the property holding the SignalOutput.
            </summary>
        </member>
        <member name="P:SignalPort.Binding">
            <summary>
            Inputs: what to run when a signal arrives.
            </summary>
        </member>
        <member name="P:SignalPort.ComponentType">
            <summary>
            Component ports: the component type this port provides or accepts.
            </summary>
        </member>
        <member name="T:SignalSystem">
            <summary>
            Delivers signals from outputs to the inputs they're wired to. Everything runs on the host;
            clients just see the results through normal networking. TypeLibrary owns member caching and
            hotload invalidation; this system resolves ports from its current descriptions when needed.
            </summary>
        </member>
        <member name="F:SignalSystem.ComponentOutputId">
            <summary>
            Port id of the synthetic output a class-level <see cref="T:SignalOutputAttribute"/> creates.
            Can't collide with member names — C# identifiers can't contain '$'.
            </summary>
        </member>
        <member name="M:SignalSystem.InstigatorFor(Sandbox.Component)">
            <summary>
            The player who last pressed or signaled this component, or null.
            </summary>
        </member>
        <member name="M:SignalSystem.GetOutputs(Sandbox.GameObject)">
            <summary>
            Every output under this object's root. Unsorted — UI that lists ports uses <see cref="M:SignalSystem.GetPorts(Sandbox.GameObject)"/>.
            </summary>
        </member>
        <member name="M:SignalSystem.AreCompatible(SignalOutputDescription,SignalInputDescription)">
            <summary>
            Any signal output can wire to any signal input. Component outputs wire to component
            inputs whose property type the component satisfies — or to boolean inputs, which they
            hold on for as long as the link exists.
            </summary>
        </member>
        <member name="M:SignalSystem.CreateLink(SignalOutputDescription,SignalInputDescription)">
            <summary>
            Create a logical object link and connect the selected signal ports in one host operation.
            </summary>
        </member>
        <member name="M:SignalSystem.StampWire(Sandbox.Component,System.String,Sandbox.Component,System.String)">
            <summary>
            Record the wire on the ManualLink pair that carries it, so destroying the link
            (undo, the wire tool's unlink) also disconnects the wire. Wires between objects
            joined some other way (welds, same root) have no pair — that's fine.
            </summary>
        </member>
        <member name="M:SignalSystem.DisconnectWire(ManualLink)">
            <summary>
            Disconnect the wire a dying ManualLink was carrying.
            </summary>
        </member>
        <member name="M:SignalSystem.SetComponentLinkInternal(Sandbox.Component,SignalPort,Sandbox.Component,SignalPort,System.Boolean,Player,ManualLink)">
            <summary>
            Component links set the input property to the source component directly — there is
            no connection list and nothing ever travels; the reference is the whole wire.
            Into a boolean input, the reference implicitly reads as a bool instead: on while
            anything is wired in, off when the last wire dies.
            </summary>
        </member>
        <member name="M:SignalSystem.FindPresenceWire(Sandbox.Component,System.String,Sandbox.Component,ManualLink)">
            <summary>
            Is there a stamped component wire into this input? Optionally from one specific
            source, optionally ignoring a link that's currently being destroyed.
            </summary>
        </member>
        <member name="M:SignalSystem.DestroyStampedWires(Sandbox.Component,System.String)">
            <summary>
            Destroy the stamped ManualLink pairs carrying wires into this input.
            </summary>
        </member>
        <member name="M:SignalSystem.GetContraptionOutputs(Sandbox.GameObject)">
            <summary>
            Every output on this object's contraption (anything joined by welds, joints or links).
            Tools and UI should use this so they all agree on what's wireable.
            </summary>
        </member>
        <member name="M:SignalSystem.GetContraptionInputs(Sandbox.GameObject)">
            <summary>
            Every input on this object's contraption.
            </summary>
        </member>
        <member name="T:DynamiteEntity">
            <summary>
            An explosive that can be activated by damage, player input, or a signal.
            </summary>
        </member>
        <member name="P:DynamiteEntity.Damage">
            <summary>
            The damage dealt by the explosion.
            </summary>
        </member>
        <member name="P:DynamiteEntity.Radius">
            <summary>
            The radius affected by the explosion.
            </summary>
        </member>
        <member name="P:DynamiteEntity.Force">
            <summary>
            The strength of the explosion's physical force.
            </summary>
        </member>
        <member name="P:DynamiteEntity.Activate">
            <summary>
            The input that detonates the explosive.
            </summary>
        </member>
        <member name="M:DynamiteEntity.Explode">
            <summary>
            Creates the explosion and removes this explosive.
            </summary>
        </member>
        <member name="M:DynamiteEntity.ActivateSignal">
            <summary>
            Detonates the explosive when its signal input is triggered.
            </summary>
        </member>
        <member name="M:DynamiteEntity.OnControl">
            <summary>
            Detonates the explosive when the owning player presses its activation input.
            </summary>
        </member>
        <member name="T:EmitMode">
            <summary>
            Whether the emitter fires while the input is held, or toggles on/off with a press.
            </summary>
        </member>
        <member name="F:EmitMode.Toggle">
            <summary>
            Press once to turn on, press again to turn off.
            </summary>
        </member>
        <member name="F:EmitMode.Hold">
            <summary>
            Emits only while the input is held down.
            </summary>
        </member>
        <member name="T:EmitterEntity">
            <summary>
            A world-placed SENT that spawns and controls a particle/VFX emitter.
            The emitter prefab is defined by a <see cref="T:ScriptedEmitter"/> resource.
            </summary>
        </member>
        <member name="P:EmitterEntity.Emitter">
            <summary>
            The emitter definition points to a prefab containing a particle system.
            </summary>
        </member>
        <member name="P:EmitterEntity.Mode">
            <summary>
            Whether this emitter toggles on/off with a press, or emits only while held.
            </summary>
        </member>
        <member name="P:EmitterEntity.ToggleInput">
            <summary>
            Used when <see cref="P:EmitterEntity.Mode"/> is <see cref="F:EmitMode.Toggle"/>.
            </summary>
        </member>
        <member name="P:EmitterEntity.HoldInput">
            <summary>
            Used when <see cref="P:EmitterEntity.Mode"/> is <see cref="F:EmitMode.Hold"/>.
            </summary>
        </member>
        <member name="P:EmitterEntity.IsEmitting">
            <summary>
            Whether the emitter is currently active. Synced to all clients.
            </summary>
        </member>
        <member name="P:EmitterEntity.ManualOn">
            <summary>
            When enabled, forces the emitter on regardless of input or mode.
            Can be set from the editor or wired up externally.
            </summary>
        </member>
        <member name="M:EmitterEntity.ToggleSignal">
            <summary>
            Toggles emission when a signal triggers in toggle mode.
            </summary>
        </member>
        <member name="M:EmitterEntity.HoldSignal(System.Boolean)">
            <summary>
            Updates emission from a signal in hold mode.
            </summary>
        </member>
        <member name="M:EmitterEntity.OnControl">
            <summary>
            Applies the owning player's emitter input for the current mode.
            </summary>
        </member>
        <member name="T:EntitySpawnerEntity">
            <summary>
            A world-placed SENT that spawns another SENT at its location.
            Can be triggered manually via player input or automatically on a timer.
            </summary>
        </member>
        <member name="P:EntitySpawnerEntity.Entity">
            <summary>
            The SENT to spawn.
            </summary>
        </member>
        <member name="P:EntitySpawnerEntity.SpawnInput">
            <summary>
            Input binding that triggers a manual spawn when the player uses this entity.
            </summary>
        </member>
        <member name="P:EntitySpawnerEntity.AutoSpawn">
            <summary>
            When enabled, spawns the entity automatically every <see cref="P:EntitySpawnerEntity.SpawnInterval"/> seconds.
            </summary>
        </member>
        <member name="P:EntitySpawnerEntity.SpawnInterval">
            <summary>
            Seconds between automatic spawns.
            </summary>
        </member>
        <member name="P:EntitySpawnerEntity.MaxEntities">
            <summary>
            Maximum number of entities spawned by this spawner allowed to exist at once.
            New spawns are suppressed until existing ones are destroyed.
            </summary>
        </member>
        <member name="M:EntitySpawnerEntity.SpawnSignal">
            <summary>
            Spawns an entity when the signal input is triggered.
            </summary>
        </member>
        <member name="M:EntitySpawnerEntity.OnControl">
            <summary>
            Spawns an entity when the owning player presses the spawn input.
            </summary>
        </member>
        <member name="T:PointLightEntity">
            <summary>
            A player-controlled point light.
            </summary>
        </member>
        <member name="P:PointLightEntity.On">
            <summary>
            Whether the light is switched on.
            </summary>
        </member>
        <member name="P:PointLightEntity.Shadows">
            <summary>
            Whether the light casts shadows.
            </summary>
        </member>
        <member name="P:PointLightEntity.Color">
            <summary>
            The color of the light.
            </summary>
        </member>
        <member name="P:PointLightEntity.Brightness">
            <summary>
            The brightness of the light.
            </summary>
        </member>
        <member name="P:PointLightEntity.Radius">
            <summary>
            The radius affected by the light.
            </summary>
        </member>
        <member name="P:PointLightEntity.Attenuation">
            <summary>
            How quickly the light fades with distance.
            </summary>
        </member>
        <member name="P:PointLightEntity.CastShadows">
            <summary>
            Whether the light's model casts shadows.
            </summary>
        </member>
        <member name="P:PointLightEntity.TurnOn">
            <summary>
            The input that switches the light on.
            </summary>
        </member>
        <member name="P:PointLightEntity.TurnOff">
            <summary>
            The input that switches the light off.
            </summary>
        </member>
        <member name="P:PointLightEntity.Toggle">
            <summary>
            The input that toggles the light.
            </summary>
        </member>
        <member name="P:PointLightEntity.OnGameObject">
            <summary>
            The object shown while the light is on.
            </summary>
        </member>
        <member name="P:PointLightEntity.OffGameObject">
            <summary>
            The object shown while the light is off.
            </summary>
        </member>
        <member name="M:PointLightEntity.ToggleSignal">
            <summary>
            Toggles the light when its signal input is triggered.
            </summary>
        </member>
        <member name="M:PointLightEntity.TurnOnSignal">
            <summary>
            Switches the light on when its signal input is triggered.
            </summary>
        </member>
        <member name="M:PointLightEntity.TurnOffSignal">
            <summary>
            Switches the light off when its signal input is triggered.
            </summary>
        </member>
        <member name="M:PointLightEntity.OnControl">
            <summary>
            Applies the owning player's light controls.
            </summary>
        </member>
        <member name="P:ScriptedEmitter.Prefab">
            <summary>
            The prefab containing the particle/VFX system to emit.
            </summary>
        </member>
        <member name="P:ScriptedEmitterModel.Prefab">
            <summary>
            The prefab containing the physical emitter body
            </summary>
        </member>
        <member name="P:ScriptedEntity.Category">
            <summary>
            Used to group this entity under a named category in the spawn menu (e.g. "Chair", "Weapon", "Npc", "World").
            Categories can be nested with <c>/</c>, such as <c>Weapon/Melee</c>.
            Leave blank to place it under "Other".
            </summary>
        </member>
        <member name="P:ScriptedEntity.IncludeCode">
            <summary>
            If this entity uses code then you should enable this so the code is included when publishing.
            </summary>
        </member>
        <member name="P:ScriptedEntity.Developer">
            <summary>
            If true, this entity only appears in the spawn menu when running in the editor.
            Use for test/debug entities that shouldn't ship to players.
            </summary>
        </member>
        <member name="T:SpotLightEntity">
            <summary>
            A player-controlled spotlight.
            </summary>
        </member>
        <member name="P:SpotLightEntity.On">
            <summary>
            Whether the light is switched on.
            </summary>
        </member>
        <member name="P:SpotLightEntity.Shadows">
            <summary>
            Whether the light casts shadows.
            </summary>
        </member>
        <member name="P:SpotLightEntity.Color">
            <summary>
            The color of the light.
            </summary>
        </member>
        <member name="P:SpotLightEntity.Brightness">
            <summary>
            The brightness of the light.
            </summary>
        </member>
        <member name="P:SpotLightEntity.Radius">
            <summary>
            The radius affected by the light.
            </summary>
        </member>
        <member name="P:SpotLightEntity.Angle">
            <summary>
            The outer angle of the spotlight cone.
            </summary>
        </member>
        <member name="P:SpotLightEntity.Attenuation">
            <summary>
            How quickly the light fades with distance.
            </summary>
        </member>
        <member name="P:SpotLightEntity.CastShadows">
            <summary>
            Whether the light's model casts shadows.
            </summary>
        </member>
        <member name="P:SpotLightEntity.TurnOn">
            <summary>
            The input that switches the light on.
            </summary>
        </member>
        <member name="P:SpotLightEntity.TurnOff">
            <summary>
            The input that switches the light off.
            </summary>
        </member>
        <member name="P:SpotLightEntity.Toggle">
            <summary>
            The input that toggles the light.
            </summary>
        </member>
        <member name="P:SpotLightEntity.OnGameObject">
            <summary>
            The object shown while the light is on.
            </summary>
        </member>
        <member name="P:SpotLightEntity.OffGameObject">
            <summary>
            The object shown while the light is off.
            </summary>
        </member>
        <member name="M:SpotLightEntity.ToggleSignal">
            <summary>
            Toggles the light when its signal input is triggered.
            </summary>
        </member>
        <member name="M:SpotLightEntity.TurnOnSignal">
            <summary>
            Switches the light on when its signal input is triggered.
            </summary>
        </member>
        <member name="M:SpotLightEntity.TurnOffSignal">
            <summary>
            Switches the light off when its signal input is triggered.
            </summary>
        </member>
        <member name="M:SpotLightEntity.OnControl">
            <summary>
            Applies the owning player's light controls.
            </summary>
        </member>
        <member name="T:TVEntity">
            <summary>
            A TV screen entity that displays the feed from a linked <see cref="T:CameraWeapon"/>.
            Use the Wire tool to wire a Camera's video feed to this TV's display input.
            </summary>
        </member>
        <member name="P:TVEntity.Display">
            <summary>
            The camera whose view is on the screen. A component input: only a Camera
            can be linked here, and linking just sets this reference.
            </summary>
        </member>
        <member name="P:TVEntity.Brightness">
            <summary>
            The brightness of the television screen.
            </summary>
        </member>
        <member name="P:TVEntity.On">
            <summary>
            Whether the television screen is switched on.
            </summary>
        </member>
        <member name="P:TVEntity.HasLinkedCamera">
            <summary>
            True when a linked camera is actively providing a render texture.
            </summary>
        </member>
        <member name="T:ThumbnailCamera">
            <summary>
            Put this in a prefab to frame its thumbnail - it's rendered from this object's position and
            rotation instead of auto-framing the whole prefab. Point it at what should be in shot, or turn on
            <see cref="P:ThumbnailCamera.FitToBounds"/> to just set the angle and have the prefab fill the frame.
            </summary>
        </member>
        <member name="P:ThumbnailCamera.FieldOfView">
            <summary>
            Keep it narrow and pull the camera back - a long lens flattens the perspective and looks
            more cinematic than a wide one up close.
            </summary>
        </member>
        <member name="P:ThumbnailCamera.GizmoDistance">
            <summary>
            How far ahead to draw the framing in the editor - just a guide, it doesn't affect the render.
            </summary>
        </member>
        <member name="P:ThumbnailCamera.FitToBounds">
            <summary>
            Ignore where the camera is placed - keep its angle, but move it so the prefab's models fill the
            frame. Good for things that should all sit the same in a grid, like weapons.
            </summary>
        </member>
        <member name="P:ThumbnailCamera.Padding">
            <summary>
            Space left around the prefab when fitting, as a fraction of its size.
            </summary>
        </member>
        <member name="P:ThumbnailCamera.Zoom">
            <summary>
            Push in past the fit - above 1 crops into the prefab, so long things can run off the edge.
            </summary>
        </member>
        <member name="P:ThumbnailCamera.Focus">
            <summary>
            Slide the framing toward the interesting end when zoomed in, as a fraction of the fitted frame -
            x toward the right, y up. Measured before any roll on the camera, so a tilted gun slides along
            its own length.
            </summary>
        </member>
        <member name="M:ThumbnailCamera.TryRender(Sandbox.PrefabFile,Sandbox.Bitmap)">
            <summary>
            Render <paramref name="prefab"/> to <paramref name="bitmap"/> through the thumbnail camera it
            contains. Returns false if it doesn't have one.
            </summary>
        </member>
        <member name="M:ThumbnailCamera.VerticalOffset(Sandbox.Bitmap)">
            <summary>
            How far below the middle of the image the middle of what's drawn is, in pixels - null if
            nothing was drawn. Halfway between the middle of its outline and its centre of mass: a rifle's
            thin barrel along the top shouldn't count as much as the body hanging under it, but its
            magazine shouldn't drag it off the top either.
            </summary>
        </member>
        <member name="M:ThumbnailCamera.AddLights(Rotation,BBox)">
            <summary>
            Studio lighting that follows the camera, so every thumbnail is lit the same way: a warm key
            from above-left, a soft fill from beside the camera, and a cool rim from behind to pick out
            the edges.
            The rim is a point light - a scene only takes one directional light, a second replaces the first.
            </summary>
        </member>
        <member name="M:ThumbnailCamera.FitPosition(BBox,Rotation,System.Single,System.Single,System.Single,Vector2)">
            <summary>
            Where to put a camera looking along <paramref name="rotation"/> so <paramref name="bounds"/>
            fills a square frame - measured from the box's outline as seen from that angle, so long thin
            things fill the frame as well as chunky ones. Then pushed in by <paramref name="zoom"/> and slid
            across by <paramref name="focus"/>.
            </summary>
        </member>
        <member name="T:ExplosionEvent">
            <summary>
            Data passed to <see cref="M:Global.IExplosionEvents.OnExplode(ExplosionEvent)"/>. Change the fields to reshape the blast,
            or set <see cref="P:ExplosionEvent.Cancelled"/> to true to stop it. A cancelled explosive is still used up.
            </summary>
        </member>
        <member name="P:ExplosionEvent.Source">
            <summary>
            The thing that's exploding - dynamite, a grenade, a rocket, or the grenade weapon when it cooks off in a hand.
            </summary>
        </member>
        <member name="P:ExplosionEvent.Attacker">
            <summary>
            The object credited with the damage.
            </summary>
        </member>
        <member name="P:ExplosionEvent.Prefab">
            <summary>
            The prefab spawned for the blast. It carries the effects, sound and <see cref="T:Sandbox.RadiusDamage"/>.
            </summary>
        </member>
        <member name="F:Explosion.DefaultPrefab">
            <summary>
            The explosion every explosive spawns unless a listener swaps it.
            </summary>
        </member>
        <member name="M:Explosion.Spawn(ExplosionEvent)">
            <summary>
            Fire <see cref="T:Global.IExplosionEvents"/>, then spawn and network the explosion. Host only.
            Returns null if a listener cancelled it or it couldn't be spawned.
            </summary>
        </member>
        <member name="T:CombatEvent">
            <summary>
            Who got hurt and by whom, shared by damage and death events for players and NPCs alike.
            Use <see cref="P:Target.IsPlayer"/>, <see cref="P:Target.IsNpc"/> and <see cref="M:Target.Get``1"/> to tell them apart.
            </summary>
        </member>
        <member name="P:CombatEvent.Victim">
            <summary>
            The player or NPC being hurt.
            </summary>
        </member>
        <member name="P:CombatEvent.Attacker">
            <summary>
            Who's blamed for the damage - the player behind it, like whoever threw the prop or drove the car,
            otherwise the attacker. Not valid for the world.
            </summary>
        </member>
        <member name="T:DamageEvent">
            <summary>
            Data passed to <see cref="T:Global.IDamageEvents"/>. In <see cref="M:Global.IDamageEvents.OnDamaging(DamageEvent)"/>,
            change <see cref="P:DamageEvent.Damage"/> or set <see cref="P:DamageEvent.Cancelled"/> to block it.
            </summary>
        </member>
        <member name="P:DamageEvent.Damage">
            <summary>
            The damage to deal, before the victim's own modifiers like headshots and armour.
            </summary>
        </member>
        <member name="P:DamageEvent.Cancelled">
            <summary>
            Set to true to block the damage. Can start out true, when PvP is off and another player is to blame - set it
            back to false to allow the hit.
            </summary>
        </member>
        <member name="P:DamageEvent.HealthLost">
            <summary>
            The health the victim actually lost, after headshots and armour. Only set in <see cref="M:Global.IDamageEvents.OnDamaged(DamageEvent)"/>.
            </summary>
        </member>
        <member name="T:DeathEvent">
            <summary>
            Data passed to <see cref="T:Global.IDeathEvents"/>. In <see cref="M:Global.IDeathEvents.OnDying(DeathEvent)"/>, set
            <see cref="P:DeathEvent.Cancelled"/> to true to keep the victim alive on 1 health (or more, if you heal them),
            or turn off <see cref="P:DeathEvent.CreateRagdoll"/>.
            </summary>
        </member>
        <member name="P:DeathEvent.CreateRagdoll">
            <summary>
            Whether to leave a ragdoll behind.
            </summary>
        </member>
        <member name="T:IKillSource">
            <summary>
            Implement on any component that can appear as an attacker in the kill feed.
            Examples: Player, Npc, explosive barrel, turret, whatever the fuck.
            </summary>
        </member>
        <member name="P:IKillSource.DisplayName">
            <summary>
            Display name
            </summary>
        </member>
        <member name="P:IKillSource.SteamId">
            <summary>
            Steam ID for the local "is-me" highlight. Defaults to 0 (not a player).
            </summary>
        </member>
        <member name="P:IKillSource.Tags">
            <summary>
            Entity-type tag passed as <c>attackerTags</c>.
            Return an empty string for plain player kills. Examples: "npc"
            </summary>
        </member>
        <member name="M:IKillSource.OnKill(Sandbox.GameObject)">
            <summary>
            Called on the host when this source kills something.
            Credit kills, update stats, etc. Default is no-op.
            </summary>
        </member>
        <member name="T:PhysicsHold">
            <summary>
            Moves a rigidbody towards a target transform through a control joint, the way the physgun holds things.
            Only the instance that simulates the body can move it, so run this there
            </summary>
        </member>
        <member name="P:PhysicsHold.IsHolding">
            <summary>
            True while there's a joint holding a body.
            </summary>
        </member>
        <member name="M:PhysicsHold.Hold(Sandbox.Rigidbody,Vector3,System.Single)">
            <summary>
            Starts holding <paramref name="body"/> by <paramref name="grabPoint"/>, in world space. Does nothing if we're already holding.
            Lower <paramref name="damping"/> follows the target more tightly, 1 is critically damped.
            </summary>
        </member>
        <member name="T:HoldRotation">
            <summary>
            Rotating a held object with the mouse and movement keys while use is held, snapping to 45 degrees when running.
            </summary>
        </member>
        <member name="T:DefaultTonemapping">
            <summary>
            Drives the game's default <see cref="T:Sandbox.Tonemapping"/> on the same GameObject (the system scene camera).
            The default is disabled whenever the loaded scene provides its own global tonemapping, i.e. an enabled
            <see cref="T:Sandbox.Tonemapping"/> that is on a camera or inside an infinite <see cref="T:Sandbox.PostProcessVolume"/>.
            </summary>
        </member>
        <member name="T:PostProcessGroup">
            <summary>
            Categories for browsing post-processing effects.
            </summary>
        </member>
        <member name="F:PostProcessGroup.Effects">
            <summary>
            Effects entries.
            </summary>
        </member>
        <member name="F:PostProcessGroup.Overlay">
            <summary>
            Overlay entries.
            </summary>
        </member>
        <member name="F:PostProcessGroup.Shaders">
            <summary>
            Shaders entries.
            </summary>
        </member>
        <member name="F:PostProcessGroup.Textures">
            <summary>
            Textures entries.
            </summary>
        </member>
        <member name="F:PostProcessGroup.Misc">
            <summary>
            Misc entries.
            </summary>
        </member>
        <member name="T:RagdollPush">
            <summary>
            How hard a ragdoll is thrown when a player or NPC dies, based on what killed them.
            </summary>
        </member>
        <member name="T:IResourcePreview">
            <summary>
            Implement on a <see cref="T:Sandbox.GameResource"/> to enable in-picker previewing.
            When the user clicks an item in the resource picker, <see cref="M:IResourcePreview.OnPreview"/> is called
            instead of immediately selecting it. A "Select" button confirms the choice.
            </summary>
        </member>
        <member name="M:IResourcePreview.OnPreview">
            <summary>
            Called when the user clicks this resource in the picker for preview.
            Use this to play a sound, show a visual, etc.
            </summary>
        </member>
        <member name="M:IResourcePreview.OnPreviewStop">
            <summary>
            Called when the preview should stop (another item previewed, picker closed, or resource selected).
            </summary>
        </member>
        <member name="T:SoundDefinition">
            <summary>
            A categorized sound resource for use on spawned entities (thrusters, hoverballs, emitters, etc.).
            The <see cref="P:SoundDefinition.Category"/> field allows the editor to filter definitions by type.
            </summary>
        </member>
        <member name="P:SoundDefinition.Title">
            <summary>
            Display name for this sound definition.
            </summary>
        </member>
        <member name="P:SoundDefinition.Description">
            <summary>
            Optional description of the sound.
            </summary>
        </member>
        <member name="P:SoundDefinition.Category">
            <summary>
            Category tag used for filtering in the resource picker (e.g. "thruster", "hoverball").
            </summary>
        </member>
        <member name="P:SoundDefinition.Sound">
            <summary>
            The underlying sound event to play.
            </summary>
        </member>
        <member name="M:SoundDefinition.Play(Vector3)">
            <summary>
            Plays the sound at the given world position. Returns default if no sound is set.
            </summary>
        </member>
        <member name="M:SoundDefinition.Play(Vector3,Sandbox.GameObject)">
            <summary>
            Plays the sound at the given world position, parented to a GameObject. Returns default if no sound is set.
            </summary>
        </member>
        <member name="T:Target">
            <summary>
            Someone or something on either end of damage - a player, an NPC, a prop, or nothing for the world.
            </summary>
        </member>
        <member name="M:Target.Get``1">
            <summary>
            Find a component on the object or its parents, like the <see cref="T:Player"/> or <see cref="T:Sandbox.Npcs.Npc"/> behind it.
            </summary>
        </member>
        <member name="T:UtilityPage">
            <summary>
            Base class for pages opened in the utility tab right panel.
            Decorate subclasses with [Icon], [Title], [Group], and [Order].
            </summary>
        </member>
        <member name="M:UtilityPage.IsPageVisible">
            <summary>
            Return false to hide this page from the utility menu.
            </summary>
        </member>
        <member name="P:BaseBulletWeapon.ShootForce">
            <summary>
            Physical kick applied to a standalone (unheld) gun when it fires.
            </summary>
        </member>
        <member name="P:BaseBulletWeapon.RagdollImpactScale">
            <summary>
            Ragdolls take the bullet as a velocity change rather than a raw impulse, so a torso shot moves the
            body as visibly as a hand shot moves the hand. The struck bone gains <c>Ballistics.Force * RagdollImpactScale</c>
            units/sec along the shot; every other bone gains <see cref="P:BaseBulletWeapon.RagdollBodyShare"/> of that.
            </summary>
        </member>
        <member name="P:BaseBulletWeapon.RagdollBodyShare">
            <summary>Fraction of the struck bone's velocity change given to the rest of the ragdoll.</summary>
        </member>
        <member name="M:BaseBulletWeapon.DoRecoil">
            <summary>
            The per-shot kick - eye punch and camera shake for a held gun, a physical shove for a
            standalone one.
            </summary>
        </member>
        <member name="M:BaseBulletWeapon.OnShootEffects(Sandbox.BaseCombatWeapon.ShotEffect)">
            <summary>
            Runs for every pellet on every peer - death ragdolls are local to each peer, so the push has to be
            applied wherever the body is simulated, not just on the host.
            </summary>
        </member>
        <member name="M:BaseBulletWeapon.EmitGunfireNoise(Sandbox.BaseCombatWeapon.ShotEffect)">
            <summary>
            Gunfire is loud - let NPCs hear a player shooting. NPC shooters announce their own bursts.
            </summary>
        </member>
        <member name="M:BaseBulletWeapon.BulletTrace(Ray,System.Single,System.Single)">
            <summary>
            Bullet trace for this gun - the sandbox's bullet collision rules, skipping player controller
            colliders (players are hit through their hitboxes).
            </summary>
        </member>
        <member name="P:BaseSandboxWeapon.RecoilPitch">
            <summary>Random pitch added to the aim per attack (min, max degrees).</summary>
        </member>
        <member name="P:BaseSandboxWeapon.RecoilYaw">
            <summary>Random yaw added to the aim per attack (min, max degrees).</summary>
        </member>
        <member name="P:BaseSandboxWeapon.PunchPitch">
            <summary>Random pitch of the first-person view punch per attack (min, max degrees).</summary>
        </member>
        <member name="P:BaseSandboxWeapon.PunchYaw">
            <summary>Random yaw of the first-person view punch per attack (min, max degrees).</summary>
        </member>
        <member name="P:BaseSandboxWeapon.PunchRoll">
            <summary>Random roll of the first-person view punch per attack (min, max degrees).</summary>
        </member>
        <member name="P:BaseSandboxWeapon.PunchFrequency">
            <summary>How many times the view punch oscillates before it lapses.</summary>
        </member>
        <member name="P:BaseSandboxWeapon.PunchDuration">
            <summary>How long the view punch lasts, in seconds.</summary>
        </member>
        <member name="P:BaseSandboxWeapon.ShakeAmplitude">
            <summary>First-person camera shake strength per attack, in world units. Zero for none.</summary>
        </member>
        <member name="P:BaseSandboxWeapon.ShakeFrequency">
            <summary>New shake offsets per second.</summary>
        </member>
        <member name="P:BaseSandboxWeapon.ShakeDuration">
            <summary>How long the shake takes to settle, in seconds.</summary>
        </member>
        <member name="M:BaseSandboxWeapon.KickView">
            <summary>
            Kicks the owner's aim, then punches and shakes their view if they're the local player in first person.
            Returns whether the view was kicked.
            </summary>
        </member>
        <member name="P:BaseSandboxWeapon.ReloadCancelWindow">
            <summary>
            How long into a reload pulling the trigger can still cancel it, in seconds. Past this the reload
            plays out. Zero keeps the whole reload cancellable.
            </summary>
        </member>
        <member name="P:BaseSandboxWeapon.ReloadCommitted">
            <summary>
            Is it too late in the current reload for a trigger pull to cancel it?
            </summary>
        </member>
        <member name="P:BaseSandboxWeapon.IsDropped">
            <summary>
            True while this weapon is loose in the world as a pickup rather than held. Host authoritative -
            the change callback toggles the pickup components (physics, the standalone model) on every peer.
            </summary>
        </member>
        <member name="M:BaseSandboxWeapon.CreateWorldModel(Sandbox.SkinnedModelRenderer)">
            <summary>
            Creates and attaches the world model to the given renderer's bone.
            Use this overload when the weapon is held by something other than a player (e.g. an NPC).
            </summary>
        </member>
        <member name="P:BaseSandboxWeapon.InventoryIconOverride">
            <summary>
            Used for overriding the display icon
            </summary>
        </member>
        <member name="P:BaseSandboxWeapon.WantsHideHud">
            <summary>
            If true the game should hide the hud when holding this weapon. Useful for cameras, or scopes.
            </summary>
        </member>
        <member name="P:BaseSandboxWeapon.HiddenHudElements">
            <summary>
            Which parts of the HUD <see cref="P:BaseSandboxWeapon.WantsHideHud"/> hides. Everything by default.
            </summary>
        </member>
        <member name="P:BaseSandboxWeapon.Owner">
            <summary>
            The owner of this carriable
            </summary>
        </member>
        <member name="P:BaseSandboxWeapon.IsTargetedAim">
            <summary>
            When true, seated aim uses the scene camera direction instead of the weapon's muzzle direction.
            Override in weapons that support player-directed aim (e.g. RPG tracked mode, Physgun aim mode).
            </summary>
        </member>
        <member name="P:BaseSandboxWeapon.NpcAimTarget">
            <summary>
            What an NPC holding this weapon is shooting at. While set, shots go from the muzzle to the
            target's chest instead of along the barrel, which follows the animation and drifts high.
            </summary>
        </member>
        <member name="P:BaseSandboxWeapon.UnheldAimRay">
            <summary>
            Controlled from a seat with targeted aim fires where the camera looks; an NPC fires at its
            <see cref="P:BaseSandboxWeapon.NpcAimTarget"/>; otherwise the engine's muzzle-based unheld aim applies.
            </summary>
        </member>
        <member name="M:BaseSandboxWeapon.GetChestPosition(Sandbox.GameObject)">
            <summary>
            Roughly chest height - most of the way from the feet up to the eyes, so it follows crouching.
            </summary>
        </member>
        <member name="P:BaseSandboxWeapon.AimIgnoreRoot">
            <summary>
            The root GameObject to ignore when tracing from AimRay.
            </summary>
        </member>
        <member name="P:BaseSandboxWeapon.Attacker">
            <summary>
            Who gets credit for this weapon's damage (the engine's <see cref="P:Sandbox.BaseCombatWeapon.Attacker"/>).
            The owning player if held, the seated player if controlled from a contraption seat, otherwise
            the nearest kill source or the weapon itself.
            </summary>
        </member>
        <member name="M:BaseSandboxWeapon.OnAdded(Sandbox.BaseInventoryComponent)">
            <summary>
            Runs on the host when added to an inventory. The engine base seeds the magazines and the
            shared reserve pool - only when they've never been filled, so a dropped gun keeps its rounds
            through a pickup.
            </summary>
        </member>
        <member name="P:BaseSandboxWeapon.ShootInput">
            <summary>
            The input that fires the primary attack when this weapon is controlled via a seat.
            </summary>
        </member>
        <member name="P:BaseSandboxWeapon.SecondaryInput">
            <summary>
            The input that fires the secondary attack when this weapon is controlled via a seat.
            </summary>
        </member>
        <member name="M:BaseSandboxWeapon.OnCanPickup(Sandbox.BaseInventoryComponent)">
            <summary>Weapons wired into a contraption stay put - no pickup prompt, no Touch pickup.</summary>
        </member>
        <member name="M:BaseSandboxWeapon.OnCanSwitchTo">
            <summary>Stays put away while the owner sits with their weapons holstered (see <see cref="P:PlayerInventory.IsSeatHolstered"/>).</summary>
        </member>
        <member name="M:BaseSandboxWeapon.CanControl(Player)">
            <summary>A seated player can only control this while not holding a weapon of their own.</summary>
        </member>
        <member name="M:BaseSandboxWeapon.ShootSignal(SignalEvent)">
            <summary>
            Dispatches a primary action from a connected signal.
            </summary>
        </member>
        <member name="M:BaseSandboxWeapon.SecondarySignal(SignalEvent)">
            <summary>
            Dispatches a secondary action from a connected signal.
            </summary>
        </member>
        <member name="M:BaseSandboxWeapon.OnCameraSetup(Player,Sandbox.CameraComponent)">
            <summary>
            Called when setting up the camera - use this to apply effects on the camera based on this carriable
            </summary>
            <param name="player"></param>
            <param name="camera"></param>
        </member>
        <member name="M:BaseSandboxWeapon.OnCameraMove(Player,Angles@)">
            <summary>
            Can directly influence the player's eye angles here
            </summary>
            <param name="player"></param>
            <param name="angles"></param>
        </member>
        <member name="M:BaseSandboxWeapon.LookAtCursor(Rotation)">
            <summary>
            Turns the view model toward the mouse cursor while the inspect menu is open, and back when it closes.
            </summary>
        </member>
        <member name="M:BaseSandboxWeapon.DropIntoWorld(Vector3,Vector3,Sandbox.Connection)">
            <summary>
            Drops this weapon into the world as a pickup - the same live object, so it keeps its state
            (ammo, tool modes). Unparents it, drops network ownership, enables the dropped components and
            tags it cleanable. Host only.
            </summary>
        </member>
        <member name="M:BaseSandboxWeapon.OnDrop">
            <summary>
            The engine inventory is dropping this - throw the live object out in front of the dropper.
            </summary>
        </member>
        <member name="M:BaseSandboxWeapon.EnableIfDroppedAsync">
            <summary>
            The engine disables a holstered weapon on every peer. Dropping the held weapon holsters it first and then enables
            it again on the host, but clients only ever see the end state ("enabled", the same as before), so their copy of a
            dropped weapon stayed disabled and invisible
            </summary>
        </member>
        <member name="M:BaseSandboxWeapon.IsInUse">
            <summary>
            Is this item currently being used? When true, prevents auto-switching away on item pickup etc.
            </summary>
        </member>
        <member name="M:BaseSandboxWeapon.OnJump">
            <summary>
            The player carrying us just jumped. Forwards to the view model so its anim graph can react.
            </summary>
        </member>
        <member name="T:IronSightsWeapon">
            <summary>
            A weapon that can aim down sights
            </summary>
        </member>
        <member name="P:IronSightsWeapon.IronSightsFireScale">
            <summary>
            Lowers the amount of recoil / visual noise when aiming
            </summary>
        </member>
        <member name="P:IronSightsWeapon.AimFovScale">
            <summary>
            Multiplier for the player's FOV while aiming in first person. 1 disables zoom.
            </summary>
        </member>
        <member name="P:IronSightsWeapon.AimFovTransitionTime">
            <summary>
            Seconds to blend between normal and aimed FOV. 0 switches instantly.
            </summary>
        </member>
        <member name="M:IronSightsWeapon.DrawHud(Sandbox.Painter,Vector2)">
            <summary>
            Draws the crosshair while the weapon is not aiming down sights.
            </summary>
        </member>
        <member name="P:IronSightsWeapon.CurrentSpread">
            <summary>
            Aiming down sights narrows the spread cone.
            </summary>
        </member>
        <member name="P:MeleeWeapon.SwingDelay">
            <summary>
            Cooldown after a hit connects.
            </summary>
        </member>
        <member name="P:MeleeWeapon.MissSwingDelay">
            <summary>
            Cooldown after a swing misses.
            </summary>
        </member>
        <member name="P:MeleeWeapon.Damage">
            <summary>
            Damage dealt per hit.
            </summary>
        </member>
        <member name="P:MeleeWeapon.Range">
            <summary>
            Reach of the swing trace.
            </summary>
        </member>
        <member name="P:MeleeWeapon.SwingRadius">
            <summary>
            Radius of the swing trace sphere.
            </summary>
        </member>
        <member name="P:MeleeWeapon.SwingForce">
            <summary>
            Physics impulse magnitude applied to hit objects.
            </summary>
        </member>
        <member name="M:MeleeWeapon.PrimaryAttack">
            <summary>
            The swing. Runs once on the owning client - our trace decides what we hit, the engine claims it
            to the host, and the host applies the damage.
            </summary>
        </member>
        <member name="M:MeleeWeapon.DrawCrosshair(Sandbox.Painter,Vector2)">
            <summary>
            Draws the aiming dot with the current attack availability.
            </summary>
        </member>
        <member name="T:ProjectileEntity">
            <summary>
            A projectile. It explodes when it hits something.
            </summary>
        </member>
        <member name="M:ProjectileEntity.NotifyHit(Sandbox.Component.IDamageable,Vector3)">
            <summary>
            Tell the instigator their projectile hit, so they can do things like show a hitmarker
            </summary>
        </member>
        <member name="M:ProjectileEntity.Explode(System.Single,System.Single,System.Single)">
            <summary>
            Spawns the medium explosion here, credited to the <see cref="P:ProjectileEntity.Instigator"/>, and destroys the
            projectile. Host only - the explosion is network spawned.
            </summary>
        </member>
        <member name="M:ProjectileEntity.UpdateDirection(Vector3,System.Single)">
            <summary>
            Updates the current direction of the projectile
            </summary>
            <param name="direction"></param>
            <param name="speed"></param>
        </member>
        <member name="T:ViewModel.Throwable">
            <summary>
            Throwable type
            </summary>
        </member>
        <member name="P:ViewModel.IsThrowable">
            <summary>
            Is this a throwable?
            </summary>
        </member>
        <member name="P:ViewModel.ThrowableType">
            <summary>
            The throwable type
            </summary>
        </member>
        <member name="T:ViewModel.ReloadSoundEntry">
            <summary>
            A sound to play at a specific time during reload.
            </summary>
        </member>
        <member name="P:ViewModel.ReloadSoundEntry.Time">
            <summary>
            Seconds after reload starts to play this sound.
            </summary>
        </member>
        <member name="P:ViewModel.ReloadSoundEntry.Sound">
            <summary>
            The sound to play.
            </summary>
        </member>
        <member name="P:ViewModel.ReloadSoundEvents">
            <summary>
            Timed sound events to play during reload.
            </summary>
        </member>
        <member name="P:ViewModel.IncrementalReloadSoundEvents">
            <summary>
            Timed sound events to play during each incremental reload cycle.
            </summary>
        </member>
        <member name="P:ViewModel.IncrementalReloadStartSounds">
            <summary>
            Timed sound events played when starting an incremental reload sequence.
            </summary>
        </member>
        <member name="P:ViewModel.IncrementalReloadFinishSounds">
            <summary>
            Timed sound events played when finishing an incremental reload sequence.
            </summary>
        </member>
        <member name="P:ViewModel.IsIncremental">
            <summary>
            Turns on incremental reloading parameters.
            </summary>
        </member>
        <member name="P:ViewModel.AnimationSpeed">
            <summary>
            Animation speed in general.
            </summary>
        </member>
        <member name="P:ViewModel.IncrementalAnimationSpeed">
            <summary>
            Animation speed for incremental reload sections.
            </summary>
        </member>
        <member name="P:ViewModel.InertiaScale">
            <summary>
            How much inertia should this weapon have?
            </summary>
        </member>
        <member name="P:ViewModel.MaxInertia">
            <summary>
            Limit the inertia to avoid extreme swaying at lower framerate.
            </summary>
        </member>
        <member name="P:ViewModel.LookInertia">
            <summary>
            Swing the viewmodel around based on the player's look direction, with a springy lag. This is purely cosmetic and does not affect the actual camera.
            </summary>
        </member>
        <member name="P:ViewModel.LookInertiaFrequency">
            <summary>
            Spring stiffness - how quickly it pulls back towards your actual look direction.
            </summary>
        </member>
        <member name="P:ViewModel.LookInertiaDamping">
            <summary>
            Spring damping. 1 settles with no overshoot, below 1 wobbles before settling - lower
            for a springier, bouncier feel.
            </summary>
        </member>
        <member name="P:ViewModel.LookInertiaPivotDistance">
            <summary>
            How far out in front of the eye the gun pivots from. Larger values make the same angle
            lag produce a bigger visible swing, since the gun is swinging on a longer arm.
            </summary>
        </member>
        <member name="P:ViewModel.LookInertiaAmount">
            <summary>
            Overall strength of the effect, applied after the spring - 0 is off, 1 is the spring's
            natural lag, above 1 exaggerates it. Use this to dial the whole thing up or down without
            touching how snappy or bouncy it feels (that's Frequency/Damping).
            </summary>
        </member>
        <member name="P:ViewModel.ADSInertiaScale">
            <summary>
            Further multiplies <see cref="P:ViewModel.LookInertiaAmount"/> while aiming down sights (on weapons
            with an <see cref="T:IronSightsWeapon"/>), so the gun holds steadier while aiming - below 1
            calms the sway down, above 1 makes it worse.
            </summary>
        </member>
        <member name="M:ViewModel.UpdateCameraBone(Sandbox.CameraView@)">
            <summary>
            Called by the weapon while the camera composes - feeds the aim inertia and lets the
            animation's camera bone drive the view (reload sway and kicks authored in the anim).
            This mutates the real camera view, not the viewmodel - the viewmodel itself is placed
            separately from the pre-bone snapshot, see <see cref="M:ViewModel.Place(Sandbox.CameraView@)"/>.
            </summary>
        </member>
        <member name="M:ViewModel.Place(Sandbox.CameraView@)">
            <summary>
            Place the view model - called by the weapon's <c>PlaceViewModel</c> with the pre-bone view,
            so the camera bone moves the camera around the gun rather than dragging the gun with it.
            </summary>
        </member>
        <member name="M:ViewModel.FollowCameraEffects(Sandbox.CameraComponent,Sandbox.CameraView@)">
            <summary>
            Follow the render-only camera shake after placement, without feeding it into look inertia.
            Use the final camera view as the pivot to preserve the camera bone and procedural bob offsets.
            </summary>
        </member>
        <member name="M:ViewModel.OnReloadStart">
            <summary>
            Called when starting to reload a weapon.
            </summary>
        </member>
        <member name="M:ViewModel.OnIncrementalReload">
            <summary>
            Called when incrementally reloading a weapon.
            </summary>
        </member>
        <member name="T:GameManager">
            <summary>
            Drives the scene's gravity from server settings
            </summary>
            <summary>
            Shakes nearby cameras when a physics prop strikes static world geometry.
            Listening at scene level also covers map props, duplicates and restored saves.
            </summary>
        </member>
        <member name="M:GameManager.IContextMenuEvent#PopulateContextMenu(IContextMenuEvent.Event)">
            <summary>
            The built-in Inspector right-click options: Ignite/Extinguish, Delete and Break.
            Addons add their own by implementing <see cref="T:IContextMenuEvent"/> the same way.
            </summary>
        </member>
        <member name="M:GameManager.DeleteInspectedObject(Sandbox.GameObject)">
            <summary>
            Delete an object from the Inspector context menu.
            </summary>
        </member>
        <member name="M:GameManager.BuildAxisLockMenu(Sandbox.UI.Menu,Sandbox.GameObject)">
            <summary>
            Axis lock menu
            </summary>
        </member>
        <member name="M:GameManager.SetAxisLocks(Sandbox.GameObject,System.Boolean,System.Boolean,System.Boolean)">
            <summary>
            Set the object's rotation locks from the Inspector context menu
            </summary>
        </member>
        <member name="M:GameManager.IsAxisLocked(Sandbox.GameObject,System.String)">
            <summary>
            Is this rotation axis locked on the object's physics bodies?
            </summary>
        </member>
        <member name="F:GameManager.NoPropCollisionsTag">
            <summary>
            Tags that turn off a prop's collisions with everything but the world, or with the world.
            Their rules live in ProjectSettings/Collision.config.
            </summary>
        </member>
        <member name="M:GameManager.BuildCollisionsMenu(Sandbox.UI.Menu,Sandbox.GameObject)">
            <summary>
            Collisions menu
            </summary>
        </member>
        <member name="M:GameManager.SetCollisions(Sandbox.GameObject,System.Boolean,System.Boolean)">
            <summary>
            Turn the object's prop and world collisions on or off from the Inspector context menu
            </summary>
        </member>
        <member name="M:GameManager.BreakInspectedProp(Sandbox.Prop)">
            <summary>
            Break (gib) a prop from the Inspector context menu.
            </summary>
        </member>
        <member name="M:GameManager.IgniteInspectedObject(Sandbox.GameObject)">
            <summary>
            Set an object on fire from the Inspector context menu. The engine's FireDamage component
            damages every IDamageable under the root until it breaks. Objects that can't break (unbreakable
            props, non-damageable entities) just keep burning.
            </summary>
        </member>
        <member name="M:GameManager.ExtinguishInspectedObject(Sandbox.GameObject)">
            <summary>
            Put out a burning object from the Inspector context menu. Removes every fire effect
            (anything carrying a FireDamage) under the root; descendant destruction is networked.
            </summary>
        </member>
        <member name="M:GameManager.IsOnFire(Sandbox.GameObject)">
            <summary>
            Is this object currently burning? Works on clients too, since the fire prefab is replicated
            as a child of the root. Deliberately not Prop.IsOnFire: that flag is never cleared.
            </summary>
        </member>
        <member name="M:GameManager.IMenuBarEvent#PopulateMenuBar(IMenuBarEvent.Event)">
            <summary>
            The built-in menus on the inspect menu's settings bar: Client, NPCs and Server.
            Addons add their own by implementing <see cref="T:IMenuBarEvent"/> the same way.
            </summary>
        </member>
        <member name="M:GameManager.Spawn(System.String,System.String,System.Boolean)">
            <summary>
            Spawn from a string identifier (e.g. "prop:path", "entity:path", "dupe.local:id", "dupe.workshop:id").
            Optional metadata string is passed through to the spawner for type-specific use (e.g. mount bounds/title).
            </summary>
        </member>
        <member name="M:GameManager.Kick(Sandbox.Connection,System.String)">
            <summary>
            Kicks a connected player with an optional reason.
            </summary>
        </member>
        <member name="M:GameManager.RpcKickPlayer(Sandbox.Connection,System.String)">
            <summary>
            RPC to kick a player. Caller must be host or have admin permission.
            </summary>
        </member>
        <member name="M:GameManager.KickCommand(System.String,System.String)">
            <summary>
            Kicks a player by name or Steam ID. Optionally provide a reason.
            Usage: kick [name|steamid] [reason]
            </summary>
        </member>
        <member name="M:GameManager.SetConVar(System.String,System.Boolean)">
            <summary>
            Sets a replicated convar through the host. Only works for admins.
            </summary>
        </member>
        <member name="M:GameManager.NotifyLocalized(System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
            <summary>
            Broadcasts a phrase reference and data so each player formats the message locally.
            </summary>
        </member>
        <member name="M:GameManager.Sandbox#Component#INetworkListener#OnDisconnected(Sandbox.Connection)">
            <summary>
            Called when someone leaves the server. This will only be called for the host.
            </summary>
        </member>
        <member name="M:GameManager.SpawnPlayer(Sandbox.Connection,System.Boolean)">
            <summary>
            Spawns a player for this connection if they don't already have one. Host only.
            Fires <see cref="M:Global.IPlayerEvents.OnPlayerRespawning(PlayerRespawnEvent)"/> first, so listeners can move or
            cancel the spawn. Pass <paramref name="force"/> to skip that event - for addons that cancelled
            the normal flow and now want the player in the world. Returns the new player, or null if the
            connection already has one or a listener cancelled.
            </summary>
        </member>
        <member name="M:GameManager.SpawnPlayer(PlayerData,System.Boolean)">
            <inheritdoc cref="M:GameManager.SpawnPlayer(Sandbox.Connection,System.Boolean)"/>
        </member>
        <member name="M:GameManager.Respawn(Sandbox.Connection)">
            <summary>
            Forcefully respawns a player, whether they're dead or alive. Host only. Removes their current
            player object and any observer without a death, then spawns a fresh one without consulting
            <see cref="M:Global.IPlayerEvents.OnPlayerRespawning(PlayerRespawnEvent)"/>. This is the entry point for addons
            that run their own round flow: cancel the normal respawn, then call this when it's time.
            </summary>
        </member>
        <member name="M:GameManager.DestroyObservers(Sandbox.Connection)">
            <summary>
            Clean up any lingering death observers for this connection.
            </summary>
        </member>
        <member name="M:GameManager.RequestRespawn">
            <summary>
            Called by the client (via PlayerObserver) when they want to respawn. If a listener cancels the
            respawn the observer is kept, so the player stays spectating until an addon calls
            <see cref = "M:GameManager.Respawn(Sandbox.Connection)"/> or the next request goes through.
            </summary>
        </member>
        <member name="F:GameManager.PlayerHull">
            <summary>Approximate standing-player hull, used for spawn clearance and floor settling.</summary>
        </member>
        <member name="F:GameManager._lastSpawnPosition">
            <summary>The last position we spawned a player at, so we can avoid reusing it.</summary>
        </member>
        <member name="M:GameManager.FindSpawnLocation">
            <summary>
            Find a place to respawn: a floor-settled spawn point nobody is standing on, avoiding the
            last one used.
            </summary>
        </member>
        <member name="M:GameManager.OnDeath(Player,Sandbox.DamageInfo)">
            <summary>
            Called on the host when a played is killed
            </summary>
        </member>
        <member name="M:GameManager.OnNpcDeath(Sandbox.Npcs.Npc,Sandbox.DamageInfo)">
            <summary>
            Called on the host when an NPC is killed. Credits the attacker and adds a kill feed entry.
            </summary>
        </member>
        <member name="M:GameManager.ChangeProperty(Sandbox.Component,System.String,System.Object)">
            <summary>
            Change a property, remotely
            </summary>
        </member>
        <member name="M:GameManager.ApplyMorphBatch(Sandbox.SkinnedModelRenderer,System.String)">
            <summary>
            Apply a debounced batch of morph changes to a <see cref = "T:Sandbox.SkinnedModelRenderer"/>,
            replicated to all clients. Only the morphs present in the batch are modified.
            </summary>
        </member>
        <member name="M:GameManager.ApplyFacePosePreset(Sandbox.SkinnedModelRenderer,System.String)">
            <summary>
            Apply a full morph preset (as json), and captures with <see cref = "T:MorphState"/> which replicates changes to other clients
            </summary>
        </member>
        <member name="M:GameManager.ChangeWholeMaterialOverride(Sandbox.ModelRenderer,System.String)">
            <summary>
            Set the material that replaces every slot on a renderer, or clear it with a null/empty path.
            </summary>
        </member>
        <member name="F:WaterVolume.Objects">
            <summary>
            Roots of objects currently in the water.
            Handy for playing sounds only once per object, even if it has multiple colliders (like ragdolls)
            </summary>
        </member>
        <member name="T:GamePreferences">
            <summary>
            What the local player's HUD shows and how it looks, edited from the HUD tab of the inspect menu
            </summary>
            <summary>
            What the local player sees of physguns, edited from the Physgun tab of the inspect menu
            </summary>
            <summary>
            The local user's preferences in Deathmatch
            </summary>
        </member>
        <member name="P:GamePreferences.DrawHud">
            <summary>
            This controls visibility of all HUD sections, such as health, ammo, hotbar...
            </summary>
        </member>
        <member name="P:GamePreferences.HudGlow">
            <summary>
            Intensity of glow on HUD elements
            </summary>
        </member>
        <member name="P:GamePreferences.HudScale">
            <summary>
            Controls how large your HUD on screen will be
            </summary>
        </member>
        <member name="P:GamePreferences.HudMargin">
            <summary>
            Spacing between HUD elements and screen borders
            </summary>
        </member>
        <member name="P:GamePreferences.DrawToolInfo">
            <summary>
            Tool panel shows current tool name, its description, and available key hints
            </summary>
        </member>
        <member name="P:GamePreferences.DrawNotices">
            <summary>
            Draw notifications on the right side of screen
            </summary>
        </member>
        <member name="P:GamePreferences.DrawInteractionHints">
            <summary>
            These ones show up when you aim at interactable stuff, like chairs, NPCs and other entity things
            </summary>
        </member>
        <member name="P:GamePreferences.DrawVoices">
            <summary>
            Draws the list of who is talking
            </summary>
        </member>
        <member name="P:GamePreferences.DrawNameplates">
            <summary>
            Nameplates show up above player models, so you know who's standing in front of you 
            </summary>
        </member>
        <member name="P:GamePreferences.DrawOwnerLabel">
            <summary>
            This shows up in inspect menu when you aim at the prop, it tells you who spawned this prop/entity/whatever...
            </summary>
        </member>
        <member name="P:GamePreferences.ToggleMenus">
            <summary>
            When disabled, you need to hold the key to keep spawnlist/inspect menus open.
            When enabled, you just need to press the key once to open it, and then press it again to close the menu.
            </summary>
        </member>
        <member name="P:GamePreferences.PhysgunBeams">
            <summary>
            Display physgun beam cast from you and other players
            </summary>
        </member>
        <member name="P:GamePreferences.PhysgunOutline">
            <summary>
            Draw outlines on props when they are being held by physgun 
            </summary>
        </member>
        <member name="P:GamePreferences.PhysgunFreezeEffect">
            <summary>
            Show effect when prop is freezed
            </summary>
        </member>
        <member name="P:GamePreferences.PhysgunUnfreezeEffect">
            <summary>
            Show effect when prop is unfreezed
            </summary>
        </member>
        <member name="P:GamePreferences.OutlineObscuredOpacity">
            <summary>
            Opacity of the outline when it's showing a prop behind some geometry
            </summary>
        </member>
        <member name="P:GamePreferences.PhysgunColor">
            <summary>
            Colour of your physgun's beam, its effects, its glow and the selection outline, as text. Empty for <see cref = "F:Physgun.DefaultBeamColor"/>.
            Your player syncs it so everyone else sees your physgun in it, see <see cref = "P:Player.PhysgunColor"/>.
            </summary>
        </member>
        <member name="P:GamePreferences.PhysgunPullColor">
            <summary>
            Colour your physgun glows while it gravity pulls, as text. Empty for <see cref = "F:Physgun.DefaultPullColor"/>.
            </summary>
        </member>
        <member name="P:GamePreferences.AutoSwitch">
            <summary>
            Enables automatic switching to better weapons on item pickup
            </summary>
        </member>
        <member name="P:GamePreferences.ViewBobbing">
            <summary>
            Enables movement bob, weapon inertia and animation-driven camera motion.
            </summary>
        </member>
        <member name="P:GamePreferences.ViewTilt">
            <summary>
            Strength of the camera tilt when moving sideways
            </summary>
        </member>
        <member name="P:GamePreferences.Screenshake">
            <summary>
            Intensity of your camera's screenshake
            </summary>
        </member>
        <member name="M:GamePreferences.ColorText(Color)">
            <summary>
            A colour preference as text. Plain invariant numbers rather than hex, so HDR brightness above 1 survives.
            </summary>
        </member>
        <member name="M:GamePreferences.ParseColor(System.String)">
            <summary>
            A colour preference, null when it's empty for the default or can't be read. Hex from older saves reads too.
            </summary>
        </member>
        <member name="T:AdminActionEvent">
            <summary>
            Data passed to <see cref="T:Global.IAdminEvents"/>. In <see cref="M:Global.IAdminEvents.OnAdminAction(AdminActionEvent)"/>, set
            <see cref="P:AdminActionEvent.Cancelled"/> to true to stop it, or change <see cref="P:AdminActionEvent.Value"/> to change a reason or map.
            </summary>
        </member>
        <member name="P:AdminActionEvent.Caller">
            <summary>
            Who did it - the admin who sent it, or the host itself for its own menus and console.
            </summary>
        </member>
        <member name="P:AdminActionEvent.SteamId">
            <summary>
            The player kicked, banned or unbanned. They might not be connected.
            </summary>
        </member>
        <member name="P:AdminActionEvent.Setting">
            <summary>
            The setting changed, for <see cref="F:AdminAction.ChangeSetting"/>.
            </summary>
        </member>
        <member name="P:AdminActionEvent.Value">
            <summary>
            The kick or ban reason, the map, or the setting's new value (which can't be changed here).
            </summary>
        </member>
        <member name="M:AdminActionEvent.Run">
            <summary>
            Fire <see cref="M:Global.IAdminEvents.OnAdminAction(AdminActionEvent)"/>, returns false if a listener cancelled it.
            </summary>
        </member>
        <member name="T:ConnectingEvent">
            <summary>
            Data passed to <see cref="M:Global.IConnectionEvents.OnConnecting(ConnectingEvent)"/>. Set <see cref="P:ConnectingEvent.Cancelled"/> to true to turn
            the connection away, with <see cref="P:ConnectingEvent.Reason"/> shown to them.
            </summary>
        </member>
        <member name="T:LimitsSystem">
            <summary>
            Enforces configurable limits on spawning and tool usage.
            Maintains a per-player tracked object list populated from post-events.
            Limit checks iterate only the player's objects, not the entire scene.
            </summary>
        </member>
        <member name="F:LimitsSystem._tracked">
            <summary>
            Per-player tracked objects keyed by SteamId.
            </summary>
        </member>
        <member name="F:LimitsSystem._allTracked">
            <summary>
            Fast lookup to check if a GameObject is already tracked by any player.
            </summary>
        </member>
        <member name="M:LimitsSystem.IsExceeded(System.Int32,System.Int32)">
            <summary>
            Returns true if the given count meets or exceeds the limit.
            A limit of -1 means unlimited (never exceeded). A limit of 0 means none allowed (always exceeded).
            </summary>
        </member>
        <member name="M:LimitsSystem.Count(System.Int64,System.Func{Sandbox.GameObject,System.Boolean})">
            <summary>
            Count tracked objects for a player, pruning destroyed ones. Applies an optional filter.
            </summary>
        </member>
        <member name="M:LimitsSystem.CheckToolLimit``2(IToolActionEvents.ActionData,System.Int32)">
            <summary>
            Check a per-player tool limit. Returns true if the tool type matched. Every action these tools send to the host places one.
            </summary>
        </member>
        <member name="T:PermissionAttribute">
            <summary>
            Marks a const string as a permission, so it's sent to clients and listed for admins.
            </summary>
        </member>
        <member name="T:Permissions">
            <summary>
            Permission checks that work on clients too. Only the host can ask the engine,
            so it sends each player the declared permissions they have when they join.
            </summary>
        </member>
        <member name="F:Permissions.Admin">
            <summary>
            Admins count as having every permission.
            </summary>
        </member>
        <member name="M:Permissions.Allows(Sandbox.Connection,System.Boolean,System.String)">
            <summary>
            True if the setting is on for everyone, or if this player has the permission.
            </summary>
        </member>
        <member name="P:Permissions.All">
            <summary>
            Every permission declared in the gamemode and in addons.
            </summary>
        </member>
        <member name="M:Permissions.Refresh(Sandbox.Connection)">
            <summary>
            Sends a player their current permissions. Host only.
            </summary>
        </member>
        <member name="T:PropImpactCameraEffect">
            <summary>
            A sharp impact jolt followed by a fast, fading rumble.
            Angular motion makes the hit visible against distant scenery as well as nearby props.
            </summary>
        </member>
        <member name="T:ServerSettings">
            <summary>
            Server-controlled settings replicated to all clients.
            </summary>
        </member>
        <member name="T:ServerSettings.SectionAttribute">
            <summary>
            Puts a server setting under a heading on its page.
            </summary>
        </member>
        <member name="M:ServerSettings.SectionAttribute.#ctor(System.String)">
            <summary>
            Puts a server setting under a heading on its page.
            </summary>
        </member>
        <member name="P:ServerSettings.Setting.Title">
            <summary>
            Uses the phrase server.name if there is one, otherwise the [Title].
            </summary>
        </member>
        <member name="P:ServerSettings.Groups">
            <summary>
            One page per group, Gameplay first and Other last.
            </summary>
        </member>
        <member name="M:ServerSettings.Set(System.String,System.Object)">
            <summary>
            Changes a replicated convar through the host. Only works for admins.
            </summary>
        </member>
        <member name="T:ServerSettings.EnumRow`1">
            <summary>
            Rows are made with a generic call, so enums get one of these for their type.
            </summary>
        </member>
        <member name="P:ServerSettings.DeveloperEntities">
            <summary>
            When enabled, developer entities are visible in the spawn menu for all players.
            Always on in the editor regardless of this value.
            </summary>
        </member>
        <member name="P:ServerSettings.ReEquipLast">
            <summary>
            On respawn, players get back the weapons they were carrying instead of the starter items.
            </summary>
        </member>
        <member name="P:ServerSettings.AllowGodMode">
            <summary>
            Players with the GodMode permission can use it even when this is off.
            </summary>
        </member>
        <member name="P:ServerSettings.AllowPvp">
            <summary>
            See DamageBlame for how damage is traced back to a player.
            </summary>
        </member>
        <member name="P:ServerSettings.AllowNoclip">
            <summary>
            Players with the Noclip permission can use it even when this is off.
            </summary>
        </member>
        <member name="P:ServerSettings.KeepPlayerCorpses">
            <summary>
            Player ragdolls stay until a cleanup instead of despawning.
            </summary>
        </member>
        <member name="P:ServerSettings.KeepNpcCorpses">
            <summary>
            NPC ragdolls stay until a cleanup instead of despawning.
            </summary>
        </member>
        <member name="P:ServerSettings.ShowDeveloperEntities">
            <summary>
            Returns true if developer entities should be shown.
            </summary>
        </member>
        <member name="T:AmmoPickup">
            <summary>
            A pickup that gives the player reserve ammo for a matching weapon.
            </summary>
        </member>
        <member name="P:AmmoPickup.AmmoType">
            <summary>
            The ammo resource this pickup gives ammo for.
            When set, ammo is added directly to the player's shared pool for that resource.
            </summary>
        </member>
        <member name="P:AmmoPickup.AmmoAmount">
            <summary>
            The quantity of ammo to give.
            </summary>
        </member>
        <member name="T:BasePickup">
            <summary>
            A weapon, or weapons, or ammo, that can be picked up
            </summary>
        </member>
        <member name="P:BasePickup.Collider">
            <summary>
            The pickup's collider, it is required
            </summary>
        </member>
        <member name="P:BasePickup.PickupSound">
            <summary>
            The sound to play when picking up this item
            </summary>
        </member>
        <member name="M:BasePickup.CanPickup(Player,PlayerInventory)">
            <summary>
            Check if the player can pick up this object
            </summary>
        </member>
        <member name="M:BasePickup.OnPickup(Player,PlayerInventory)">
            <summary>
            Give the player the effect of this pickup
            </summary>
            <returns>Should this object be consumed, eg on successful pickup</returns>
        </member>
        <member name="M:BasePickup.Sandbox#Component#ITriggerListener#OnTriggerEnter(Sandbox.GameObject)">
            <summary>
            Called when a gameobject enters the trigger.
            </summary>
        </member>
        <member name="M:BasePickup.Sandbox#Component#ICollisionListener#OnCollisionStart(Sandbox.Collision)">
            <summary>
            Called when a gameobject enters the trigger.
            </summary>
        </member>
        <member name="T:HealthPickup">
            <summary>
            A pickup that gives the player some health.
            </summary>
        </member>
        <member name="P:HealthPickup.HealthGive">
            <summary>
            How much health to give to the player
            </summary>
        </member>
        <member name="P:BaseToggle.OnStateChanged">
            <summary>
            The toggle state has changed
            </summary>
        </member>
        <member name="M:BaseToggle.StateHasChanged(System.Boolean)">
            <summary>
            The toggle state has changed
            </summary>
        </member>
        <member name="T:FuncMover">
            <summary>
            Moves and Rotates an Object.
            </summary>
        </member>
        <member name="P:TriggerTeleport.Include">
            <summary>
            If not empty, the target must have one of these tags
            </summary>
        </member>
        <member name="P:TriggerTeleport.Exclude">
            <summary>
            If not empty, the target must not have one of these tags
            </summary>
        </member>
        <member name="T:MetadataAttribute">
            <summary>
            A reusable property attribute that stores a string tag for resource picker filtering.
            The editor can read this attribute to filter GameResource assets by matching metadata.
            </summary>
        </member>
        <member name="T:IDamageBlame">
            <summary>
            Put this on something that acts for a player, like a vehicle for its driver, so its damage counts as theirs.
            </summary>
        </member>
        <member name="P:IDamageBlame.Player">
            <summary>
            Return null if nobody is responsible right now.
            </summary>
        </member>
        <member name="T:DamageBlame">
            <summary>
            Finds the player behind a piece of damage, like the shooter, the driver or whoever threw the prop.
            Null for the world, NPCs and unowned props.
            </summary>
        </member>
        <member name="F:DamageBlame.ThrowMemory">
            <summary>
            How long a prop still counts as thrown after it's let go.
            </summary>
        </member>
        <member name="M:DamageBlame.Blame(Sandbox.GameObject,Player)">
            <summary>
            Call every tick while a player holds or throws something, on the machine that simulates it.
            </summary>
        </member>
        <member name="P:NoclipMoveMode.SpeedScale">
            <summary>
            Scales <see cref = "P:NoclipMoveMode.RunSpeed"/> and <see cref = "P:NoclipMoveMode.WalkSpeed"/>. Read on the owner, who moves their own player.
            </summary>
        </member>
        <member name="P:NoclipMoveMode.EnableCollision">
            <summary>
            If true, the player will still collide with the world and other players. This probably
            means that the noclip mode is named wrong. But it's cool. It just becomes a fly around mode.
            </summary>
        </member>
        <member name="T:Player">
            <summary>
            Drive mode, control props with various modes
            </summary>
            <summary>
            Holds player information like health
            </summary>
        </member>
        <member name="M:Player.KillSelf(Sandbox.Connection)">
            <summary>
            Kill yourself
            </summary>
        </member>
        <member name="M:Player.ChangeMap(System.String)">
            <summary>
            Switch to another map
            </summary>
        </member>
        <member name="M:Player.RunUndo(Sandbox.Connection)">
            <summary>
            Undo the last action for the calling player
            </summary>
        </member>
        <member name="P:Player.Driving">
            <summary>
            The object we're driving, set by the host
            </summary>
        </member>
        <member name="P:Player.WantsDrivePhysics">
            <summary>
            Whether this player wants physics on what they drive, when the server leaves it up to them.
            </summary>
        </member>
        <member name="P:Player.DrivesWithPhysics">
            <summary>
            Whether what this player drives has physics right now
            </summary>
        </member>
        <member name="P:Player.DrivePosition">
            <summary>
            Flying, where we want <see cref = "P:Player.DriveTarget"/> to be. We fly it on our machine, the host moves it there.
            </summary>
        </member>
        <member name="P:Player.DriveRotation">
            <summary>
            Flying, how we want <see cref = "P:Player.DriveTarget"/> turned. With physics, what the host turns it towards.
            </summary>
        </member>
        <member name="P:Player.DriveWish">
            <summary>
            With physics, how fast we want <see cref = "P:Player.DriveTarget"/> to go along the ground.
            </summary>
        </member>
        <member name="P:Player.DriveFlying">
            <summary>
            Whether we're sending where to fly <see cref = "P:Player.DriveTarget"/> or which way to push it, so the host doesn't use one for the other while it hears about a switch.
            </summary>
        </member>
        <member name="P:Player.DriveHandsOff">
            <summary>
            With physics, whether we've let go of the controls and left <see cref = "P:Player.DriveTarget"/> to physics.
            </summary>
        </member>
        <member name="P:Player.DriveTarget">
            <summary>
            The object the drive values are for, so the host doesn't move it anywhere before we've said.
            </summary>
        </member>
        <member name="F:Player._driveWasHeld">
            <summary>
            Owner only, whether someone else had hold of what we're driving last frame.
            </summary>
        </member>
        <member name="F:Player._driveCameraPivot">
            <summary>
            Owner only, where the drive camera orbited last frame, so we can keep orbiting there if what we drive is destroyed.
            </summary>
        </member>
        <member name="F:Player._driveHold">
            <summary>
            Owner only, when we give the player back after what they drove was destroyed, or null if it wasn't.
            </summary>
        </member>
        <member name="P:Player.IsDriveHolding">
            <summary>
            Whether what we drove was just destroyed and the drive camera still orbits where it was before giving the player back.
            </summary>
        </member>
        <member name="F:Player._driveHintsHidden">
            <summary>
            Owner only, whether the driving panel is hidden. Kept between drives.
            </summary>
        </member>
        <member name="P:Player.DriveInfo">
            <summary>
            The tool panel's title and key hints while we're driving, or null if we aren't or hid the panel.
            </summary>
        </member>
        <member name="M:Player.GetDriveHints">
            <summary>
            The controls that do something right now. Only getting out and hiding the panel while someone else holds it.
            </summary>
        </member>
        <member name="M:Player.ControlDriveHold">
            <summary>
            What we drove was destroyed, keep the player still while the camera keeps orbiting where it was.
            </summary>
        </member>
        <member name="M:Player.ControlDriveCamera">
            <summary>
            Look around and zoom the drive camera
            </summary>
        </member>
        <member name="M:Player.ControlDriveFlying(System.Single)">
            <summary>
            Fly it where the camera looks. We work out where it goes, the host puts it there.
            </summary>
        </member>
        <member name="P:Player.PhysgunColor">
            <summary>
            The physgun colour this player picked, as text, empty for the weapon's own. Their own client keeps it
            up to date from their preferences, so everyone draws their physgun in it.
            </summary>
        </member>
        <member name="P:Player.PhysgunPullColor">
            <summary>
            The colour this player's physgun glows while gravity pulling, like <see cref = "P:Player.PhysgunColor"/>
            </summary>
        </member>
        <member name="M:Player.FindForConnection(Sandbox.Connection)">
            <summary>
            Find a player for this connection
            </summary>
        </member>
        <member name="M:Player.For(System.Guid)">
            <summary>
            Get player from a connection id
            </summary>
        </member>
        <member name="P:Player.Undo">
            <summary>
            Access the undo system for this player
            </summary>
        </member>
        <member name="P:Player.HiddenHud">
            <summary>
            The HUD elements the player wants hidden right now: everything in freecam, otherwise whatever the held weapon hides
            </summary>
        </member>
        <member name="P:Player.WantsHideHud">
            <summary>
            True if the player wants any of the HUD not to draw right now
            </summary>
        </member>
        <member name="P:Player.InteractionHint">
            <summary>
            What pressing use would do to the thing the player is looking at, or null if there's nothing to show.
            The HUD shows it below the crosshair
            </summary>
        </member>
        <member name="M:Player.IHudEvents#OnHudVisibility(HudElement@)">
            <summary>
            Feeds <see cref="P:Player.HiddenHud"/> into the HUD visibility event, so the camera weapon and freecam
            hide the HUD through the same path addons use. Panels ask through <see cref="M:Sandbox.Hud.IsVisible(HudElement)"/>.
            </summary>
        </member>
        <member name="P:Player.IsNoclipping">
            <summary>
            Whether this player is currently noclipping. Synced so proxies can animate correctly.
            </summary>
        </member>
        <member name="P:Player.ActionAmounts">
            <summary>
            How far each action is pushed, 0 to 1, when it's on a gamepad's trigger or stick rather than a key. What the
            player drives from a seat runs on the host, which only gets whether actions are down, so they sync this with it.
            See <see cref = "M:ClientInput.GetAnalog"/>.
            </summary>
        </member>
        <member name="P:Player.SpawnProtection">
            <summary>Seconds of invulnerability after spawning, to stop spawn-killing. 0 disables it.</summary>
        </member>
        <member name="F:Player._timeSinceSpawned">
            <summary>
            Time since this player last spawned. Drives <see cref="P:Player.IsSpawnProtected"/>.
            </summary>
        </member>
        <member name="P:Player.IsSpawnProtected">
            <summary>
            True while the player is briefly invulnerable just after spawning, per the
            <c>sandbox.spawnprotection</c> convar.
            </summary>
        </member>
        <member name="M:Player.CopyBoneScalesToRagdoll(Sandbox.GameObject)">
            <summary>
            Try to inherit transforms from the player onto its new ragdoll
            </summary>
            <param name="ragdoll"></param>
        </member>
        <member name="M:Player.NotifyDeath(PlayerDiedParams)">
            <summary>
            Broadcasts death to other players
            </summary>
        </member>
        <member name="M:Player.Kill(Sandbox.DamageInfo@,System.Boolean)">
            <summary>
            Called on the host when a player dies
            </summary>
        </member>
        <member name="M:Player.PressSeatedGamepad">
            <summary>
            Seated, a gamepad's triggers are forward and backward and its left stick steers: the same actions as the keys, so
            whatever we're driving needs nothing new - plus how far each is pushed, in <see cref="P:Player.ActionAmounts"/>.
            </summary>
        </member>
        <member name="M:Player.PressAnalog(System.String,System.Single,System.Single)">
            <summary>
            Press an action from an analog input past its deadzone, and note how far. A key on it counts as all the way.
            </summary>
        </member>
        <member name="M:Player.ToggleNoclip">
            <summary>
            Runs on the owning client, since it simulates movement.
            </summary>
        </member>
        <member name="M:Player.GetExplosionKnockback(Sandbox.DamageInfo@)">
            <summary>
            Launch velocity for a living player caught in a blast: away from the blast origin and upward,
            stronger the closer they were.
            </summary>
        </member>
        <member name="M:Player.ApplyKnockback(Vector3)">
            <summary>
            Movement is simulated by the owner, so the velocity change has to happen there.
            </summary>
        </member>
        <member name="T:DrivePhysicsMode">
            <summary>
            Whether props have physics while they're driven, see <see cref="P:Player.DrivePhysics"/>.
            </summary>
        </member>
        <member name="F:DrivePhysicsMode.Disabled">
            <summary>
            Props are all forced to be in noclip
            </summary>
        </member>
        <member name="F:DrivePhysicsMode.PerPlayer">
            <summary>
            Players can control if they want to use physics
            </summary>
        </member>
        <member name="F:DrivePhysicsMode.Forced">
            <summary>
            Physics are always enabled, cannot be disabled
            </summary>
        </member>
        <member name="T:PlayerCarry">
            <summary>
            Lets the player pick up light physics objects.
            </summary>
        </member>
        <member name="P:PlayerCarry.AllowCarry">
            <summary>
            When disabled, nobody can pick things up with use.
            </summary>
        </member>
        <member name="P:PlayerCarry.MaxMass">
            <summary>
            The heaviest object players can pick up
            </summary>
        </member>
        <member name="P:PlayerCarry.ThrowSpeed">
            <summary>
            How fast prop will fly once you throw it out of hands
            </summary>
        </member>
        <member name="P:PlayerCarry.HoldDistance">
            <summary>
            How far in front of the eyes the near side of a carried object is held
            </summary>
        </member>
        <member name="P:PlayerCarry.BreakDistance">
            <summary>
            We let go once the object gets this far from where we're holding it, like when it's pushed against a wall
            </summary>
        </member>
        <member name="P:PlayerCarry.Held">
            <summary>
            The object we're carrying
            </summary>
        </member>
        <member name="F:PlayerCarry._targetOffset">
            <summary>
            The <see cref="P:PlayerCarry._grabOffset"/> we're turning towards, at most <see cref="F:PlayerCarry.MaxAngular"/> degrees a second.
            </summary>
        </member>
        <member name="F:PlayerCarry._turnScale">
            <summary>
            Scales how fast we can turn what we're holding. Starts at nothing on pickup and builds up over half a second.
            </summary>
        </member>
        <member name="F:PlayerCarry.AlignCosine">
            <summary>
            An axis of what we pick up within 30 degrees of one of ours lines up with it.
            </summary>
        </member>
        <member name="F:PlayerCarry.UseTapTime">
            <summary>
            Releasing use within this long of pressing it drops what we're holding, holding it longer rotates.
            </summary>
        </member>
        <member name="F:PlayerCarry._weaponBeforeCarry">
            <summary>
            What we had out before picking something up, to take it back out when we let go.
            </summary>
        </member>
        <member name="F:PlayerCarry.HolsterTimeout">
            <summary>
            How long a client waits for the host to put away <see cref="F:PlayerCarry._weaponBeforeCarry"/> before taking it as refused.
            </summary>
        </member>
        <member name="F:PlayerCarry._simulated">
            <summary>
            The object our joint is moving, so we can tell it when we let go.
            </summary>
        </member>
        <member name="F:PlayerCarry.MaxReach">
            <summary>
            Simulating instance only, clamp the target the holder sends to this far from their eyes
            </summary>
        </member>
        <member name="M:PlayerCarry.OnControl">
            <summary>
            Called by the <see cref="P:PlayerCarry.Player"/> on their own machine every frame, before the weapon gets input.
            </summary>
        </member>
        <member name="P:PlayerCarry.HoldFrame">
            <summary>
            What we carry turns with our yaw but not our pitch.
            </summary>
        </member>
        <member name="M:PlayerCarry.FindTarget">
            <summary>
            The body we're looking at within reach, if any.
            </summary>
        </member>
        <member name="M:PlayerCarry.CanCarry(Sandbox.Rigidbody)">
            <summary>
            Whether we're allowed to pick up <paramref name="body"/>. Asks the object and any listeners through a <see cref="T:PlayerCarryEvent"/>.
            </summary>
        </member>
        <member name="M:PlayerCarry.TryPickup(Sandbox.Rigidbody)">
            <summary>
            Picks up <paramref name="body"/> if we're allowed to (owner only)
            </summary>
        </member>
        <member name="M:PlayerCarry.AlignRotation(Rotation,System.Single)">
            <summary>
            Lines up any axis of <paramref name="rotation"/> within acos( <paramref name="cosine"/> ) of a frame axis with it,
            up first, so things are picked up straight.
            </summary>
        </member>
        <member name="M:PlayerCarry.SquareUp(Vector3[],System.Int32)">
            <summary>
            Rebuilds the other two axes square to <paramref name="fixedAxis"/>, keeping them as close to where they were as we can.
            </summary>
        </member>
        <member name="M:PlayerCarry.TurnToTarget">
            <summary>
            Turns what we're holding towards <see cref="F:PlayerCarry._targetOffset"/>, slowly at first after pickup.
            </summary>
        </member>
        <member name="M:PlayerCarry.Drop">
            <summary>
            Lets go of what we're carrying where it is (owner only)
            </summary>
        </member>
        <member name="M:PlayerCarry.Holster">
            <summary>
            Puts away the active weapon, carrying takes both hands. False if it couldn't be put away.
            </summary>
        </member>
        <member name="M:PlayerCarry.Unholster">
            <summary>
            Takes back out the weapon we put away to pick something up, unless something else has come out since.
            </summary>
        </member>
        <member name="M:PlayerCarry.Throw">
            <summary>
            Throws what we're carrying where we're looking (owner only)
            </summary>
        </member>
        <member name="M:PlayerCarry.IsInReach(Sandbox.Rigidbody)">
            <summary>
            Whether the holder can see <paramref name="body"/> within use reach, with some slack for where we see their eyes.
            </summary>
        </member>
        <member name="T:PlayerDamageIndicators">
            <summary>
            Displays fading HUD indicators pointing toward recent damage sources.
            </summary>
        </member>
        <member name="P:PlayerDamageIndicators.RadialDamageIcon">
            <summary>
            Texture drawn around the crosshair to indicate the direction of incoming damage.
            </summary>
        </member>
        <member name="M:PlayerDamageIndicators.UpdateRadialIndicators">
            <summary>
            Draws each active damage indicator and removes indicators whose lifetime has elapsed.
            </summary>
        </member>
        <member name="T:PlayerData">
            <summary>
            Holds persistent player information like deaths, kills
            </summary>
        </member>
        <member name="P:PlayerData.Permissions">
            <summary>
            Sent by the host. Check with Permissions.Has instead, it also counts admins.
            </summary>
        </member>
        <member name="P:PlayerData.IsMe">
            <summary>
            Is this player data me?
            </summary>
        </member>
        <member name="P:PlayerData.All">
            <summary>
            Data for all players
            </summary>
        </member>
        <member name="M:PlayerData.For(Sandbox.Connection)">
            <summary>
            Get player data for a player
            </summary>
        </member>
        <member name="M:PlayerData.AddStat(System.String,System.Int32)">
            <summary>
            Called on the host, calls a RPC on the player and adds a stat
            </summary>
        </member>
        <member name="T:PlayerPickupEvent">
            <summary>
            Data passed to pickup events. Set <see cref="P:PlayerPickupEvent.Cancelled"/> to true to prevent the pickup.
            </summary>
        </member>
        <member name="T:PlayerDropEvent">
            <summary>
            Data passed to drop events. Set <see cref="P:PlayerDropEvent.Cancelled"/> to true to prevent the drop.
            </summary>
        </member>
        <member name="T:PlayerCarryEvent">
            <summary>
            Fired from player's client when they try to pick up an object, and again on the instance that simulates it before it's moved for them. Set <see cref="P:PlayerCarryEvent.Cancelled"/> to true to refuse, or change <see cref="P:PlayerCarryEvent.MaxMass"/> to let them lift more or less. See <see cref="T:PlayerCarry"/>.
            </summary>
        </member>
        <member name="T:PlayerSwitchWeaponEvent">
            <summary>
            Data passed to switch weapon events. Set <see cref="P:PlayerSwitchWeaponEvent.Cancelled"/> to true to prevent the switch.
            </summary>
        </member>
        <member name="T:PlayerRemoveWeaponEvent">
            <summary>
            Data passed to remove weapon events. Set <see cref="P:PlayerRemoveWeaponEvent.Cancelled"/> to true to prevent the removal.
            </summary>
        </member>
        <member name="T:PlayerMoveSlotEvent">
            <summary>
            Data passed to slot move events. Set <see cref="P:PlayerMoveSlotEvent.Cancelled"/> to true to prevent the move.
            </summary>
        </member>
        <member name="T:PlayerSeatHolsterEvent">
            <summary>
            Fired on the host when a player sits in a seat, before their weapon is put away. 
            Set <see cref="P:PlayerSeatHolsterEvent.Cancelled"/> to true to let them keep weapons out in it.
            </summary>
        </member>
        <member name="T:PlayerFlashlightEvent">
            <summary>
            Fired on the player's own machine when they press the flashlight key, before the flashlight toggles. Set
            <see cref="P:PlayerFlashlightEvent.Cancelled"/> to true to keep the key for yourself - a vehicle uses it for its headlights.
            </summary>
        </member>
        <member name="T:PlayerDamageEvent">
            <summary>
            Pre-damage event. Fired before damage is applied. Listeners can modify <see cref="P:PlayerDamageEvent.Damage"/>
            or set <see cref="P:PlayerDamageEvent.Cancelled"/> to block damage entirely.
            </summary>
        </member>
        <member name="P:PlayerDamageEvent.BlamedPlayer">
            <summary>
            The player behind the damage, can be the victim. Null for the world and NPCs.
            </summary>
        </member>
        <member name="T:PlayerRespawnEvent">
            <summary>
            Pre-respawn event. Fired on the host before the player is spawned. Listeners can modify
            <see cref="P:PlayerRespawnEvent.SpawnLocation"/> to control where the player appears, or set <see cref="P:PlayerRespawnEvent.Cancelled"/>
            to stop the spawn entirely - for example an addon running its own round loop that wants dead
            players to wait. A player cancelled after death stays in the observer state; spawn them later
            with <see cref="M:GameManager.Respawn(Sandbox.Connection)"/>, which skips this event. This also fires for the first
            spawn on join, so a listener that cancels there is responsible for giving that connection
            something to look at.
            </summary>
        </member>
        <member name="T:PlayerLoadoutEvent">
            <summary>
            Fired on the host before a player is given their starter weapons, on spawning without a saved hotbar to restore.
            Edit <see cref="P:PlayerLoadoutEvent.Items"/> to change what they get, or set <see cref="P:PlayerLoadoutEvent.Cancelled"/> to true to give nothing.
            </summary>
        </member>
        <member name="P:PlayerLoadoutEvent.Items">
            <summary>
            The weapon prefabs to give, in order. Starts as the player prefab's starting items.
            </summary>
        </member>
        <member name="T:PlayerKillEvent">
            <summary>
            Fired when a player kills another player or NPC.
            </summary>
        </member>
        <member name="T:Local">
            <summary>
            Events fired only to the Player's own GameObject hierarchy, except <see cref="M:Local.IPlayerEvents.OnMove(System.Boolean@)"/> and the
            camera events, which go to the whole scene on the machine controlling the local player so UI can listen too.
            </summary>
        </member>
        <member name="M:Local.IPlayerEvents.OnCameraMove(Angles@)">
            <summary>
            Called on the local player's machine as they look around, sent to the whole scene.
            </summary>
        </member>
        <member name="M:Local.IPlayerEvents.OnCameraSetup(Sandbox.CameraComponent)">
            <summary>
            Called on the local player's machine while their camera is set up, sent to the whole scene.
            </summary>
        </member>
        <member name="M:Local.IPlayerEvents.OnCameraPostSetup(Sandbox.CameraComponent)">
            <summary>
            Called on the local player's machine after their camera is set up, sent to the whole scene.
            </summary>
        </member>
        <member name="M:Local.IPlayerEvents.OnMove(System.Boolean@)">
            <summary>
            Called every tick on the local player's machine before movement input is applied, sent to the whole scene.
            Set <paramref name="allowMovement"/> to false to prevent the player from moving with WASD this tick
            (e.g. while spinning a physgun-held object).
            </summary>
        </member>
        <member name="T:PlayerFallDamage">
            <summary>
            Apply fall damage to the player
            </summary>
        </member>
        <member name="P:PlayerFallDamage.RealisticFallDamage">
            <summary>
            Off is the Garry's Mod style, a flat <see cref = "P:PlayerFallDamage.FixedDamage"/> for any fall past the safe speed.
            </summary>
        </member>
        <member name="P:PlayerFallDamage.FatalFallSpeed">
            <summary>
            Fatal fall speed, you will die if you fall at or above this speed
            </summary>
        </member>
        <member name="P:PlayerFallDamage.MaxSafeFallSpeed">
            <summary>
            Maximum safe fall speed, you won't take damage at or below this speed
            </summary>
        </member>
        <member name="P:PlayerFallDamage.DamageMultiplier">
            <summary>
            Multiply damage amount by this much
            </summary>
        </member>
        <member name="P:PlayerFallDamage.FixedDamage">
            <summary>
            Damage taken from any unsafe fall when realistic fall damage is off
            </summary>
        </member>
        <member name="P:PlayerFallDamage.FallSound">
            <summary>
            Fall damage sound
            </summary>
        </member>
        <member name="P:PlayerFlashlight.FillLight">
            <summary>
            Optional point light placed in front of the player, softly lighting what's right around them.
            </summary>
        </member>
        <member name="P:PlayerFlashlight.FillDistance">
            <summary>
            How far in front of the eyes the fill light sits. Pulled back if something is in the way.
            </summary>
        </member>
        <member name="M:PlayerFlashlight.IsKeyTaken">
            <summary>
            Ask whether anything else wants the flashlight key right now, like the headlights of a car we're driving.
            </summary>
        </member>
        <member name="T:PlayerGib">
            <summary>
            Describes a player gib.
            </summary>
        </member>
        <member name="M:PlayerInventory.GiveAmmo(Sandbox.BaseAmmoResource,System.Int32)">
            <summary>Give reserve ammo and report the amount actually accepted to its owner.</summary>
        </member>
        <member name="P:PlayerInventory.IsSeatHolstered">
            <summary>
            True while the player sits in a seat with their weapons put away. While seated, player cannot switch weapons.
            You can use <see cref = "T:PlayerSeatHolsterEvent"/> to cancel holstering and keep weapons equipped while seated.
            </summary>
        </member>
        <member name="P:PlayerInventory.Weapons">
            <summary>
            All weapons currently in the inventory, ordered by slot. Narrowing shim over engine Items.
            </summary>
        </member>
        <member name="P:PlayerInventory.ActiveWeapon">
            <summary>
            The currently active weapon. Narrowing shim over the engine's <see cref="P:Sandbox.BaseInventoryComponent.ActiveItem"/>.
            </summary>
        </member>
        <member name="M:PlayerInventory.GetSlot(System.Int32)">
            <summary>
            Returns the weapon in the given slot, or null if the slot is empty.
            </summary>
        </member>
        <member name="M:PlayerInventory.FindExistingWeapon(BaseSandboxWeapon)">
            <summary>
            A weapon of the same class we already carry, if any. Duplicate handling itself is the
            engine's (a duplicate donates its magazine to the reserve, see BaseCombatWeapon.OnAdding) - this
            just finds the weapon the donation lands on, for the pickup notices.
            </summary>
        </member>
        <member name="M:PlayerInventory.SetToolMode(System.String)">
            <summary>
            Activates the named tool mode, giving and equipping the toolgun first if the player doesn't have one.
            </summary>
        </member>
        <member name="M:PlayerInventory.PickupWorldItem(Sandbox.BaseInventoryItem)">
            <summary>
            Engine Touch pickup lands here (see <see cref="P:Sandbox.BaseInventoryComponent.PickupMode"/>). Routes into
            <see cref="M:PlayerInventory.Take(BaseSandboxWeapon,System.Boolean)"/>, so duplicates donate their ammo and the pickup notices fire. Contraption-
            wired weapons refuse themselves (see <see cref="T:BaseSandboxWeapon"/>'s OnCanPickup).
            </summary>
        </member>
        <member name="M:PlayerInventory.OnAdding(Sandbox.BaseInventoryItem,System.Int32)">
            <summary>
            Fires the cancellable pickup events before the engine adds an item.
            </summary>
        </member>
        <member name="M:PlayerInventory.Drop(BaseSandboxWeapon)">
            <summary>
            Drops the given weapon from the inventory. The engine holsters it, the weapon throws itself
            into the world (see <see cref="M:BaseSandboxWeapon.OnDrop"/>) and we switch to the best remaining
            weapon. The cancellable drop event fires from <see cref="M:PlayerInventory.OnDropping(Sandbox.BaseInventoryItem)"/>.
            </summary>
        </member>
        <member name="M:PlayerInventory.ShouldAutoswitchTo(BaseSandboxWeapon,System.Boolean)">
            <summary>
            Whether picking up <paramref name="item"/> should switch to it. <paramref name="given"/> means it was handed over explicitly
            (spawn menu, give): that still honours AutoSwitch and a weapon in use, but skips the value comparison.
            </summary>
        </member>
        <member name="M:PlayerInventory.GetBestWeapon">
            <summary>
            The weapon the inventory would auto-switch to. The engine's <see cref="M:Sandbox.BaseInventoryComponent.GetBestItem"/>
            handles the Value ordering and the avoid-empty-guns fallback.
            </summary>
        </member>
        <member name="M:PlayerInventory.CanSwitchTo(BaseSandboxWeapon)">
            <summary>
            Asks whether this player may switch to <paramref name="weapon"/> (null means holster). Checks the
            weapon's own <see cref="M:Sandbox.BaseInventoryItem.CanSwitchTo"/>, then fires the cancellable
            switch event on the player and scene-wide, so addons can refuse. Runs wherever it's called - the
            hotbar uses it client-side to filter, <see cref="M:PlayerInventory.SwitchWeapon(BaseSandboxWeapon,System.Boolean)"/> uses it as the gate. Voluntary
            switches are therefore vetoed on the initiating client; the engine's host path isn't hookable.
            </summary>
        </member>
        <member name="M:PlayerInventory.SwitchWeapon(BaseSandboxWeapon,System.Boolean)">
            <summary>
            Switches to the given weapon after asking <see cref="M:PlayerInventory.CanSwitchTo(BaseSandboxWeapon)"/>. Wraps the engine inventory's
            <see cref="M:Sandbox.BaseInventoryComponent.Switch(Sandbox.BaseInventoryItem,System.Boolean)"/>, which handles host-routing and the outgoing weapon's
            holster veto. Forced switches (death, drop, removal) don't come through here and can't be vetoed.
            </summary>
        </member>
        <member name="M:PlayerInventory.DropActiveWeapon">
            <summary>
            Called by the owning client to drop their currently held weapon.
            </summary>
        </member>
        <member name="M:PlayerInventory.Remove(BaseSandboxWeapon)">
            <summary>
            Removes a weapon from the inventory and destroys it without dropping it into the world. The
            engine holsters it, destroys it and switches to the best remaining weapon. The cancellable
            remove event fires from <see cref="M:PlayerInventory.OnRemoving(Sandbox.BaseInventoryItem)"/>.
            </summary>
        </member>
        <member name="T:PlayerLoadout">
            <summary>
            Remembers the weapons a player carries and, when the server has Re-equip Last on
            (<see cref="P:ServerSettings.ReEquipLast"/>), gives them back on respawn instead of the starter items.
            Lives on the Player GameObject alongside PlayerInventory.
            Listens to inventory events to auto-save, and handles all loadout RPCs directly.
            </summary>
        </member>
        <member name="T:PlayerLoadout.LoadoutEntry">
            <summary>
            One entry in a serialized loadout: the prefab resource path.
            </summary>
        </member>
        <member name="M:PlayerLoadout.GetSpawnLoadout">
            <summary>
            The saved hotbar to restore on spawn, or null for the starter items. Read on the owning client,
            where the hotbar is stored; the replicated server setting decides whether it's used.
            </summary>
        </member>
        <member name="M:PlayerLoadout.ReplaceLoadoutAsync(System.String)">
            <summary>
            Clears the current inventory, waits a frame, then gives the loadout from JSON and equips the best weapon.
            A layout that gives back nothing falls back to the starter items.
            </summary>
        </member>
        <member name="T:PlayerObserver">
            <summary>
            Dead players become these. They try to observe their last corpse. 
            </summary>
        </member>
        <member name="T:PlayerStats">
            <summary>
            Record stats for the local player
            </summary>
        </member>
        <member name="T:UndoEvent">
            <summary>
            Data passed to <see cref="T:Global.IUndoEvents"/>. In <see cref="M:Global.IUndoEvents.OnUndo(UndoEvent)"/>, set
            <see cref="P:UndoEvent.Cancelled"/> to true to keep the entry and its objects.
            </summary>
        </member>
        <member name="P:UndoEvent.Client">
            <summary>
            The client whose undo history this is.
            </summary>
        </member>
        <member name="P:UndoEvent.Name">
            <summary>
            The action's title, possibly a phrase like "#undo.spawn".
            </summary>
        </member>
        <member name="P:UndoEvent.Objects">
            <summary>
            The objects the undo removes.
            </summary>
        </member>
        <member name="P:UndoSystem.HistoryItem.NameTokens">
            <summary>
            Named parameters for the action title, resolved by the player viewing the history.
            </summary>
        </member>
        <member name="E:UndoSystem.HistoryUpdated">
            <summary>
            Raised on the requesting client when the host sends the latest undo history.
            </summary>
        </member>
        <member name="M:UndoSystem.For(System.Int64)">
            <summary>
            Get the undo stack for a specific SteamId
            </summary>
        </member>
        <member name="M:UndoSystem.RemovePlayer(System.Int64)">
            <summary>
            Call this when a player disconnects to prevent memory leaks!
            </summary>
        </member>
        <member name="M:UndoSystem.Remove(Sandbox.GameObject)">
            <summary>
            Remove a GameObject from all player undo stacks.
            </summary>
        </member>
        <member name="M:UndoSystem.RequestHistory">
            <summary>
            Ask the host for the local player's current undo history.
            </summary>
        </member>
        <member name="M:UndoSystem.UndoEntry(System.Guid)">
            <summary>
            Undo one specific history entry. The caller can only address their own stack.
            </summary>
        </member>
        <member name="T:UndoSystem.PlayerStack">
            <summary>
            Per-player undo stack
            </summary>
        </member>
        <member name="M:UndoSystem.PlayerStack.Create">
            <summary>
            Create a new undo entry
            </summary>
        </member>
        <member name="M:UndoSystem.PlayerStack.Contains(UndoSystem.Entry)">
            <summary>
            Is this entry still in the history? False once it has been undone, evicted, or pruned.
            </summary>
        </member>
        <member name="M:UndoSystem.PlayerStack.Undo">
            <summary>
            Run the undo
            </summary>
        </member>
        <member name="M:UndoSystem.PlayerStack.Undo(System.Guid)">
            <summary>
            Run and remove one specific entry from this player's history.
            </summary>
        </member>
        <member name="M:UndoSystem.PlayerStack.GetHistory">
            <summary>
            Return newest-first history, pruning entries whose objects no longer exist.
            </summary>
        </member>
        <member name="M:UndoSystem.PlayerStack.Remove(Sandbox.GameObject)">
            <summary>
            Remove a GameObject from all entries in this stack.
            </summary>
        </member>
        <member name="T:UndoSystem.Entry">
            <summary>
            An undo entry
            </summary>
        </member>
        <member name="P:UndoSystem.Entry.Name">
            <summary>
            The action title, optionally a hash-prefixed phrase resolved by the receiving player.
            </summary>
        </member>
        <member name="P:UndoSystem.Entry.NameTokens">
            <summary>
            Named parameters for a localized action title. Keep phrase references unresolved here.
            </summary>
        </member>
        <member name="M:UndoSystem.Entry.Add(Sandbox.GameObject)">
            <summary>
            Add a GameObject that should be destroyed when the undo is undone
            </summary>
        </member>
        <member name="M:UndoSystem.Entry.Add(System.Collections.Generic.IEnumerable{Sandbox.GameObject})">
            <summary>
            Add a collection of GameObjects that should be destroyed when the undo is undone.
            The owner is sent their updated history, so add everything in one call.
            </summary>
        </member>
        <member name="M:UndoSystem.Entry.Remove(Sandbox.GameObject)">
            <summary>
            Remove a GameObject from this entry so it will no longer be destroyed on undo.
            </summary>
        </member>
        <member name="M:UndoSystem.Entry.AllowUndo">
            <summary>
            Ask <see cref="M:Global.IUndoEvents.OnUndo(UndoEvent)"/> listeners whether this can be undone. Entries with nothing
            left to remove are always allowed, they're just skipped.
            </summary>
        </member>
        <member name="M:UndoSystem.Entry.Run(System.Boolean)">
            <summary>
            Run this undo
            </summary>
        </member>
        <member name="M:UndoSystem.Entry.UndoNotice(System.String,System.String)">
            <summary>
            Displays the undone action using the receiving player's language.
            </summary>
        </member>
        <member name="T:BuilderSpawner">
            <summary>Builder payloads use the standard placement, undo, drag and spawn event pipeline.</summary>
        </member>
        <member name="T:CloudLoadTracker">
            <summary>
            Tracks how many spawner payloads are loading on behalf of the local player, so the
            <see cref="T:Sandbox.CloudLoadRing"/> shows on the client who asked for the spawn - not whoever happens
            to be doing the loading (usually the host). Call <see cref="M:CloudLoadTracker.Track(System.Threading.Tasks.Task{System.Boolean},Sandbox.Connection)"/> with the requesting connection.
            </summary>
        </member>
        <member name="P:CloudLoadTracker.IsLoading">
            <summary>
            True while any spawner requested by the local player is still loading its payload.
            </summary>
        </member>
        <member name="M:CloudLoadTracker.Track(System.Threading.Tasks.Task{System.Boolean},Sandbox.Connection)">
            <summary>
            Show the loading ring for <paramref name="owner"/> until <paramref name="loading"/> completes.
            A null owner means the local connection.
            </summary>
        </member>
        <member name="T:DuplicatorSpawner">
            <summary>
            Payload for spawning a duplicator contraption.
            </summary>
        </member>
        <member name="M:DuplicatorSpawner.#ctor(System.String,System.String)">
            <summary>
            Create a duplicator spawner from a storage or workshop ident.
            Resolution and package installation happen asynchronously via <see cref="P:ISpawner.Loading"/>.
            </summary>
        </member>
        <member name="M:DuplicatorSpawner.FromJson(System.String,System.String,System.String)">
            <summary>
            Create from raw dupe JSON (e.g. from a storage entry). No icon.
            </summary>
        </member>
        <member name="M:DuplicatorSpawner.FromData(System.String)">
            <summary>
            Creates a duplicator spawner from the serialized data string. This is what gets synced to clients, so it includes the icon and raw JSON.
            </summary>
            <param name="data"></param>
            <returns></returns>
        </member>
        <member name="M:DuplicatorSpawner.DrawPreview(Transform,Sandbox.Material)">
            <summary>
            Draws the duplication ghost, using a separate blueprint material for models that have not loaded yet.
            </summary>
        </member>
        <member name="T:EntitySpawner">
            <summary>
            Payload for spawning a scripted entity prefab.
            </summary>
        </member>
        <member name="M:EntitySpawner.#ctor(ScriptedEntity)">
            <summary>
            Wrap an entity that's already loaded.
            </summary>
        </member>
        <member name="M:EntitySpawner.GetYawCorrection">
            <summary>
            Get a yaw correction so the longest horizontal axis of the bounds aligns with forward.
            </summary>
        </member>
        <member name="M:ISpawnerExtensions.Create(System.String,System.String,System.String,System.String)">
            <inheritdoc cref="M:ISpawnerExtensions.&lt;G&gt;$F5275EE18425D354D1CC4D7200FBC4D4.Create(System.String,System.String,System.String,System.String)"/>
        </member>
        <member name="M:ISpawnerExtensions.ResolveMetadata(System.String,System.String)">
            <inheritdoc cref="M:ISpawnerExtensions.&lt;G&gt;$F5275EE18425D354D1CC4D7200FBC4D4.ResolveMetadata(System.String,System.String)"/>
        </member>
        <member name="M:ISpawnerExtensions.&lt;G&gt;$F5275EE18425D354D1CC4D7200FBC4D4.Create(System.String,System.String,System.String,System.String)">
            <summary>
            Create an <see cref="T:ISpawner"/> from its type, path, and optional metadata.
            The spawner may still be loading — await <see cref="P:ISpawner.Loading"/> before use.
            </summary>
        </member>
        <member name="M:ISpawnerExtensions.&lt;G&gt;$F5275EE18425D354D1CC4D7200FBC4D4.ResolveMetadata(System.String,System.String)">
            <summary>
            Resolve any metadata the host might not be able to work out itself (e.g. mount bounds and title).
            Call this on the requesting client before a spawn RPC. Returns null if there's nothing to pass.
            </summary>
        </member>
        <member name="T:ISpawner">
            <summary>
            Describes something that can be spawned into the world
            Implementations handle their own preview rendering and spawn logic.
            </summary>
        </member>
        <member name="P:ISpawner.DisplayName">
            <summary>
            Display name shown in the HUD while holding this payload.
            </summary>
        </member>
        <member name="P:ISpawner.FullIdent">
            <summary>
            A full ident if it's a sbox.game thing
            </summary>
        </member>
        <member name="P:ISpawner.Icon">
            <summary>
            Icon path for this payload, used for inventory display via <c>thumb:path</c>.
            </summary>
        </member>
        <member name="P:ISpawner.Bounds">
            <summary>
            The local-space bounds of the thing being spawned, used to offset placement so it sits on surfaces.
            </summary>
        </member>
        <member name="P:ISpawner.IsReady">
            <summary>
            Whether all required resources (packages, models, etc.) are loaded and ready to place.
            </summary>
        </member>
        <member name="P:ISpawner.Loading">
            <summary>
            A task that completes with true when loading succeeds, or false if it fails.
            </summary>
        </member>
        <member name="P:ISpawner.Data">
            <summary>
            The raw data needed to reconstruct this spawner (e.g. a cloud ident, or JSON).
            </summary>
        </member>
        <member name="P:ISpawner.Metadata">
            <summary>
            Extra data resolved on the requesting client that the host might not be able to work out itself
            (e.g. bounds and game title of mounted content). Passed alongside <see cref="P:ISpawner.Data"/> when networking.
            </summary>
        </member>
        <member name="P:ISpawner.Prefab">
            <summary>
            The unspawned prefab GameObject, if available. Allows inspecting components before spawning.
            Returns null for spawners that don't use prefabs (e.g. props, duplicator).
            </summary>
        </member>
        <member name="M:ISpawner.PopulateContextMenu(Sandbox.UI.Menu,System.String)">
            <summary>
            Populate a right-click context menu with spawner-specific options.
            Override in spawner implementations to add custom menu items.
            </summary>
        </member>
        <member name="M:ISpawner.DrawPreview(Transform,Sandbox.Material)">
            <summary>
            Draw a ghost preview at the given world transform.
            </summary>
        </member>
        <member name="M:ISpawner.Spawn(Transform,Player)">
            <summary>
            Actually spawn the thing at the given transform. Called on the host.
            Returns the root GameObject(s) that were spawned so they can be added to undo.
            </summary>
        </member>
        <member name="T:MountSpawner">
            <summary>
            Like <see cref="T:PropSpawner"/>, but attaches <see cref="T:MountMetadata"/> to the spawned object
            so clients without the mount installed can show a fallback cube and install prompt.
            </summary>
        </member>
        <member name="T:MountSpawner.MountInfo">
            <summary>
            What the requesting client resolved locally, so a host without the mount still spawns
            it with the right size and game title.
            </summary>
        </member>
        <member name="M:MountSpawner.MountInfo.#ctor(System.String,Vector3,Vector3)">
            <summary>
            What the requesting client resolved locally, so a host without the mount still spawns
            it with the right size and game title.
            </summary>
        </member>
        <member name="P:MountSpawner.HasModel">
            <summary>
            True if the mounted model loaded locally.
            </summary>
        </member>
        <member name="P:MountSpawner.Metadata">
            <summary>
            What we know about this mount (title and bounds), serialized to pass through spawn RPCs.
            </summary>
        </member>
        <member name="M:MountSpawner.ResolveMetadata(System.String)">
            <summary>
            Resolve mount metadata on this machine, before asking the host to spawn it.
            </summary>
        </member>
        <member name="T:PropSpawner">
            <summary>
            Payload for spawning a prop model from a cloud ident.
            </summary>
        </member>
        <member name="T:IContextMenuEvent">
            <summary>
            Lets scene components and systems add actions to an object's right-click menu.
            Options are collected with a sort order (lower is higher in the menu), then the Inspector builds the menu.
            </summary>
        </member>
        <member name="P:IContextMenuEvent.Event.Target">
            <summary>
            The network root of the object that was right-clicked.
            </summary>
        </member>
        <member name="P:IContextMenuEvent.Event.Options">
            <summary>
            Options collected so far, sorted by order. Stable, so options sharing an order keep insertion order.
            </summary>
        </member>
        <member name="M:IContextMenuEvent.Event.AddOption(System.String,System.String,System.Action,System.Int32,System.Boolean)">
            <summary>
            Add an option. A disabled one is shown greyed out and can't be picked.
            </summary>
        </member>
        <member name="M:IContextMenuEvent.Event.Populate(Sandbox.UI.Menu)">
            <summary>
            Build the collected options into a menu.
            </summary>
        </member>
        <member name="T:IMenuBarEvent">
            <summary>
            Lets scene components and systems add menus to the strip of settings along the top of the inspect menu,
            like Garry's Mod's context menu bar. Menus are found by title, so several listeners can add to the same one.
            The built-ins use the order 100 (Client), 200 (NPCs) and 300 (Server); the default of 0 lands before them.
            </summary>
        </member>
        <member name="P:IMenuBarEvent.Event.Menus">
            <summary>
            Menus collected so far, sorted by order. Stable, so menus sharing an order keep insertion order.
            </summary>
        </member>
        <member name="M:IMenuBarEvent.Event.GetOrAddMenu(System.String,System.Int32)">
            <summary>
            Get the menu with this title, or add one. The order only counts when the menu is added.
            </summary>
        </member>
        <member name="M:IMenuBarEvent.Event.AddToggle(Sandbox.UI.Menu,System.String,System.Func{System.Boolean},System.Action{System.Boolean})">
            <summary>
            Add a checkable row that reads and writes a setting. Its check mark is refreshed every time the menu opens.
            </summary>
        </member>
        <member name="M:IMenuBarEvent.Event.AddServerToggle(Sandbox.UI.Menu,System.String,System.Func{System.Boolean},System.Action{System.Boolean})">
            <summary>
            A toggle only admins can change, greyed out for everyone else.
            </summary>
        </member>
        <member name="T:InspectCursor">
            <summary>
            The mouse cursor while the inspect menu is open
            </summary>
        </member>
        <member name="F:InspectCursor.DragThreshold">
            <summary>
            How far the mouse has to move with the button held before a click turns into a prop drag
            </summary>
        </member>
        <member name="T:HudElement">
            <summary>
            The pieces of the HUD that can be hidden independently. Flags, so a listener can hide several at
            once; <see cref="F:HudElement.All"/> hides everything, which is what the camera weapon and freecam do.
            </summary>
        </member>
        <member name="F:HudElement.Vitals">
            <summary>
            Health and armour.
            </summary>
        </member>
        <member name="F:HudElement.Ammo">
            <summary>
            The active weapon's clip and reserve.
            </summary>
        </member>
        <member name="F:HudElement.Inventory">
            <summary>
            The weapon hotbar.
            </summary>
        </member>
        <member name="F:HudElement.KillFeed">
            <summary>
            The kill feed.
            </summary>
        </member>
        <member name="F:HudElement.Scoreboard">
            <summary>
            The scoreboard (held on the Score bind).
            </summary>
        </member>
        <member name="F:HudElement.ToolInfo">
            <summary>
            The active tool's name, description and action hints.
            </summary>
        </member>
        <member name="F:HudElement.Crosshair">
            <summary>
            The weapon's crosshair and the cloud-loading ring around it. Use prompts are <see cref="F:HudElement.InteractionHints"/>.
            </summary>
        </member>
        <member name="F:HudElement.Nameplates">
            <summary>
            Name and avatar floating over other players.
            </summary>
        </member>
        <member name="F:HudElement.OwnerLabel">
            <summary>
            The "Owned by" label for the object you're looking at.
            </summary>
        </member>
        <member name="F:HudElement.Notices">
            <summary>
            Toast notices in the corner.
            </summary>
        </member>
        <member name="F:HudElement.Voices">
            <summary>
            Who is talking.
            </summary>
        </member>
        <member name="F:HudElement.AmmoPickups">
            <summary>
            Recent ammo pickups above the ammo counter.
            </summary>
        </member>
        <member name="F:HudElement.Chat">
            <summary>
            The chat box and the recent messages.
            </summary>
        </member>
        <member name="F:HudElement.InteractionHints">
            <summary>
            The use key prompt for what you're looking at.
            </summary>
        </member>
        <member name="T:IHudEvents">
            <summary>
            Lets any component in the scene hide parts of the HUD. Asked once a frame by <see cref="T:Sandbox.Hud"/>
            whenever a HUD panel wants to know if it may draw. Implement this on an addon component and add
            the elements you want off screen: <c>hidden |= HudElement.Inventory | HudElement.Ammo</c> during a
            build phase, or <c>hidden = HudElement.All</c> for a cutscene. Anything nobody hides stays visible.
            <see cref="P:Player.WantsHideHud"/> (the camera weapon, freecam) hides everything through this same event.
            </summary>
        </member>
        <member name="T:IKillIcon">
            <summary>
            This component has a kill icon that can be used in the killfeed, or somewhere else.
            </summary>
        </member>
        <member name="T:DupesPage">
            <summary>
            This component has a kill icon that can be used in the killfeed, or somewhere else.
            </summary>
        </member>
        <member name="F:DupeCategory.Vehicle">
            <summary>
            Vehicle duplication category.
            </summary>
        </member>
        <member name="F:DupeCategory.Robot">
            <summary>
            Robot duplication category.
            </summary>
        </member>
        <member name="F:DupeCategory.Plane">
            <summary>
            Plane duplication category.
            </summary>
        </member>
        <member name="F:DupeCategory.Pose">
            <summary>
            Pose duplication category.
            </summary>
        </member>
        <member name="F:DupeCategory.Weapon">
            <summary>
            Weapon duplication category.
            </summary>
        </member>
        <member name="F:DupeCategory.Art">
            <summary>
            Art duplication category.
            </summary>
        </member>
        <member name="F:DupeCategory.Scene">
            <summary>
            Scene duplication category.
            </summary>
        </member>
        <member name="F:DupeCategory.Game">
            <summary>
            Game duplication category.
            </summary>
        </member>
        <member name="F:DupeCategory.Spaceship">
            <summary>
            Spaceship duplication category.
            </summary>
        </member>
        <member name="F:DupeCategory.Machine">
            <summary>
            Machine duplication category.
            </summary>
        </member>
        <member name="F:DupeCategory.Toys">
            <summary>
            Toys duplication category.
            </summary>
        </member>
        <member name="F:DupeCategory.Trap">
            <summary>
            Trap duplication category.
            </summary>
        </member>
        <member name="F:DupeCategory.Boat">
            <summary>
            Boat duplication category.
            </summary>
        </member>
        <member name="F:DupeCategory.Other">
            <summary>
            Other duplication category.
            </summary>
        </member>
        <member name="F:DupeMovement.Static">
            <summary>
            Static movement classification.
            </summary>
        </member>
        <member name="F:DupeMovement.Wheeled">
            <summary>
            Wheeled movement classification.
            </summary>
        </member>
        <member name="F:DupeMovement.Flying">
            <summary>
            Flying movement classification.
            </summary>
        </member>
        <member name="F:DupeMovement.Walking">
            <summary>
            Walking movement classification.
            </summary>
        </member>
        <member name="F:DupeMovement.Water">
            <summary>
            Water movement classification.
            </summary>
        </member>
        <member name="F:DupeMovement.Tracked">
            <summary>
            Tracked movement classification.
            </summary>
        </member>
        <member name="T:EntityPage">
            <summary>
            This component has a kill icon that can be used in the killfeed, or somewhere else.
            </summary>
        </member>
        <member name="M:EntityPage.CategoryTitle(System.String)">
            <summary>
            Translate known category labels without changing their resource or search identifiers.
            </summary>
        </member>
        <member name="T:MountsPage">
            <summary>
            This component has a kill icon that can be used in the killfeed, or somewhere else.
            </summary>
        </member>
        <member name="M:MountsPage.FolderOptions(System.String,Sandbox.Mounting.ResourceFolder)">
            <summary>
            The folders under this one that have models somewhere inside, each opening onto its own.
            </summary>
        </member>
        <member name="T:LocalProps">
            <summary>
            Hardcoded models that ship with the game and aren't available on the workshop.
            Add new entries here — they'll appear automatically in the Local props section.
            </summary>
        </member>
        <member name="T:LocalProps.Entry">
            <summary>
            A bundled model with a category identifier and optional localized title.
            </summary>
        </member>
        <member name="M:LocalProps.Entry.#ctor(System.String,System.String,System.String)">
            <summary>
            A bundled model with a category identifier and optional localized title.
            </summary>
        </member>
        <member name="P:LocalProps.Entry.DisplayName">
            <summary>
            Derives a display name from the filename: strips the extension,
            replaces underscores with spaces, and title-cases each word.
            </summary>
        </member>
        <member name="T:PropsPage">
            <summary>
            This component has a kill icon that can be used in the killfeed, or somewhere else.
            </summary>
        </member>
        <member name="T:ICookieSource">
            <summary>
            We want to save the properties of this instance as cookies.
            </summary>
        </member>
        <member name="P:ICookieSource.CookiePrefix">
            <summary>
            Prefix to put before the names of any cookies, without a trailing period.
            For example: <c>"tool.balloon"</c>
            </summary>
        </member>
        <member name="T:CookieSourceExtensions">
            <summary>
            Extension methods for <see cref="T:ICookieSource"/>.
            </summary>
        </member>
        <member name="M:CookieSourceExtensions.SaveCookies(ICookieSource)">
            <inheritdoc cref="M:CookieSourceExtensions.&lt;G&gt;$50404B163C2297A5D1FD7B9E14FA962D.SaveCookies"/>
        </member>
        <member name="M:CookieSourceExtensions.LoadCookies(ICookieSource)">
            <inheritdoc cref="M:CookieSourceExtensions.&lt;G&gt;$50404B163C2297A5D1FD7B9E14FA962D.LoadCookies"/>
        </member>
        <member name="M:CookieSourceExtensions.&lt;G&gt;$50404B163C2297A5D1FD7B9E14FA962D.SaveCookies">
            <summary>
            Saves any instance properties with a <see cref="T:Sandbox.PropertyAttribute"/>, excluding any
            with <see cref="T:System.Text.Json.Serialization.JsonIgnoreAttribute"/>, into <see cref="P:Sandbox.Game.Cookies"/>.
            </summary>
        </member>
        <member name="M:CookieSourceExtensions.&lt;G&gt;$50404B163C2297A5D1FD7B9E14FA962D.LoadCookies">
            <summary>
            Loads any instance properties with a <see cref="T:Sandbox.PropertyAttribute"/>, excluding any
            with <see cref="T:System.Text.Json.Serialization.JsonIgnoreAttribute"/>, from <see cref="P:Sandbox.Game.Cookies"/>.
            </summary>
        </member>
        <member name="T:FreezeEffect">
            <summary>
            The burst of particles on something being frozen or unfrozen, by the physgun or while driving it.
            </summary>
        </member>
        <member name="M:FreezeEffect.Play(Sandbox.GameObject,System.Boolean,System.Collections.Generic.IEnumerable{Sandbox.GameObject})">
            <summary>
            Play the freeze or unfreeze effect on <paramref name="target"/>, here only. Callers broadcast it themselves.
            </summary>
        </member>
        <member name="T:HighlightStyle">
            <summary>
            How an object highlight looks: its outline colour, the colour where something closer hides it, and its width.
            </summary>
        </member>
        <member name="M:HighlightStyle.#ctor(Color,Color,System.Single)">
            <summary>
            How an object highlight looks: its outline colour, the colour where something closer hides it, and its width.
            </summary>
        </member>
        <member name="P:HighlightStyle.Selected">
            <summary>
            Something we're acting on - held by the physgun, frozen, or selected in the inspector. In the local player's physgun colour.
            </summary>
        </member>
        <member name="P:HighlightStyle.Hovered">
            <summary>
            Something under the inspector's cursor
            </summary>
        </member>
        <member name="M:HighlightStyle.WithPreferences(HighlightStyle)">
            <summary>
            The local player's outline width and how much of an outline shows through what's in front of it
            </summary>
        </member>
        <member name="P:ObjectHighlight.Material">
            <summary>
            The opacity-aware highlight material every sandbox outline draws with.
            </summary>
        </member>
        <member name="M:ObjectHighlight.Create(Sandbox.GameObject)">
            <summary>
            Add a hidden outline to <paramref name="host"/>, to point at things later with <see cref="M:ObjectHighlight.Show(Sandbox.HighlightOutline,Sandbox.GameObject,HighlightStyle)"/>.
            </summary>
        </member>
        <member name="M:ObjectHighlight.Show(Sandbox.HighlightOutline,Sandbox.GameObject,HighlightStyle)">
            <summary>
            Outline <paramref name="target"/>, or hide the outline if it's not valid.
            </summary>
        </member>
        <member name="M:ObjectHighlight.Show(Sandbox.HighlightOutline,System.Collections.Generic.IEnumerable{Sandbox.GameObject},HighlightStyle)">
            <summary>
            Outline <paramref name="targets"/>, or hide the outline if there are none.
            </summary>
        </member>
        <member name="M:ObjectHighlight.Hide(Sandbox.HighlightOutline)">
            <summary>
            Stop outlining anything.
            </summary>
        </member>
        <member name="M:ObjectHighlight.Flash(Sandbox.GameObject,HighlightStyle,System.Single,System.Single)">
            <summary>
            Briefly flash an outline around <paramref name="target"/>, fading in to <paramref name="brightness"/> times
            the style's colour and back out over <paramref name="duration"/> seconds.
            </summary>
        </member>
        <member name="M:ObjectHighlight.GetTarget(Sandbox.GameObject)">
            <summary>
            What to outline for <paramref name="go"/>: the whole ragdoll for one of its bones, otherwise itself.
            </summary>
        </member>
        <member name="T:OutlineFlash">
            <summary>
            A short-lived outline that fades in, peaks at boosted brightness and fades back out. Start one with <see cref="M:ObjectHighlight.Flash(Sandbox.GameObject,HighlightStyle,System.Single,System.Single)"/>.
            </summary>
        </member>
        <member name="P:OutlineFlash.Brightness">
            <summary>
            Color multiplier at the peak of the flash effect
            </summary>
        </member>
        <member name="T:GameFonts">
            <summary>
            Fonts that can be picked by a player. Font must be added either from engine or project "fonts" folder, then put its name here.
            </summary>
        </member>
        <member name="T:LocalData">
            <summary>
            Quick data folder file storage, good for saving local data
            </summary>
        </member>
        <member name="M:LocalData.Set``1(System.String,``0)">
            <summary>
            Serialize <paramref name="value"/> and write it to <c>{key}.json</c> under <see cref="P:Sandbox.FileSystem.Data"/>.
            The directory hierarchy is created automatically.
            </summary>
        </member>
        <member name="M:LocalData.Get``1(System.String,``0)">
            <summary>
            Read and deserialize the value stored at <paramref name="key"/>.
            Returns <paramref name="fallback"/> if the file doesn't exist or deserialization fails.
            </summary>
        </member>
        <member name="M:LocalData.Has(System.String)">
            <summary>
            Returns true if a value has been stored at <paramref name="key"/>.
            </summary>
        </member>
        <member name="M:LocalData.Delete(System.String)">
            <summary>
            Delete the value stored at <paramref name="key"/>. No-op if it doesn't exist.
            </summary>
        </member>
        <member name="T:LocalizedText">
            <summary>
            Resolves phrase references at the point of display, including data received from the host.
            Plain text such as workshop titles and player names is kept as supplied.
            </summary>
        </member>
        <member name="M:LocalizedText.Resolve(System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
            <summary>
            Resolves a hash-prefixed phrase and its named parameters using the local player's language.
            Parameter values can themselves be hash-prefixed phrase references.
            </summary>
        </member>
        <member name="M:LocalizedText.Literal(System.String)">
            <summary>
            Escapes user-supplied parameter text so a leading hash cannot become a phrase reference.
            </summary>
        </member>
        <member name="M:LocalizedText.InputTitle(Sandbox.InputAction)">
            <summary>
            Localizes an input title inside the game while keeping the input configuration readable
            by the engine's settings menu, which does not load this game's phrase catalogs.
            </summary>
        </member>
        <member name="M:LocalizedText.InputGroup(System.String)">
            <summary>
            Localizes the display name of an input group without changing its identifier.
            </summary>
        </member>
        <member name="M:LocalizedText.ResourceTypeName(Sandbox.AssetTypeAttribute,System.String)">
            <summary>
            Returns a phrase reference for built-in resource types while preserving custom type names.
            Editor asset metadata remains readable outside the game's localization context.
            </summary>
        </member>
        <member name="M:LocalizedText.ResourceTypeName(System.String,System.String)">
            <summary>
            The same by extension, for types without an asset type like materials.
            </summary>
        </member>
        <member name="T:PackageSortMode">
            <summary>
            A typed sort mode for finding packages.
            </summary>
        </member>
        <member name="F:PackageSortMode.Popular">
            <summary>
            Popular entries.
            </summary>
        </member>
        <member name="F:PackageSortMode.Newest">
            <summary>
            Newest entries.
            </summary>
        </member>
        <member name="F:PackageSortMode.Trending">
            <summary>
            Trending entries.
            </summary>
        </member>
        <member name="F:PackageSortMode.Random">
            <summary>
            Random entries.
            </summary>
        </member>
        <member name="M:PackageSortModeExtensions.ToIdentifier(PackageSortMode)">
            <summary>
            Returns the API supported string equivalent of this sort mode.
            </summary>
        </member>
        <member name="M:PackageSortModeExtensions.Icon(PackageSortMode)">
            <summary>
            Material icon representing this sort mode in menus.
            </summary>
        </member>
        <member name="T:SelfCollisionSound">
            <summary>
            Only play the collision sound from this object's surface - not both the impacting surface and this surface.
            </summary>
        </member>
        <member name="T:SpawnPlacement">
            <summary>
            Pure queries for placing things in the world: drop a position to the floor, test whether a
            spot is occupied, and pick a spawn position from one or more candidates. Never moves anything.
            </summary>
        </member>
        <member name="M:SpawnPlacement.DropToFloor(Vector3,BBox,System.Single,Sandbox.GameObject)">
            <summary>
            Settle <paramref name="position"/> onto the first solid (non-trigger) surface within
            <paramref name="maxDrop"/> below it. Returns it unchanged if nothing solid is below.
            </summary>
        </member>
        <member name="M:SpawnPlacement.IsPositionClear(Vector3,BBox,Sandbox.GameObject)">
            <summary>
            True if nothing solid (excluding the static world and triggers) overlaps the hull at
            <paramref name="position"/> — i.e. no player, prop or NPC is already standing there.
            </summary>
        </member>
        <member name="M:SpawnPlacement.FindSpawnPosition(System.Collections.Generic.IEnumerable{Transform},BBox,System.Boolean,System.Single,System.Nullable{Vector3})">
            <summary>
            Pick a spawn position from one or more seed transforms: settle to the floor (unless
            <paramref name="dropToFloor"/> is false), make sure nothing is standing there, and scan
            outward up to <paramref name="scanRadius"/> for a clear spot. Prefers spots away from
            <paramref name="avoid"/>. Best-effort if nothing is clear.
            </summary>
        </member>
        <member name="M:SpawnPlacement.Candidates(Vector3,System.Single)">
            <summary>
            Candidate positions for a seed: the seed itself, then concentric rings of offsets when
            scanning is enabled.
            </summary>
        </member>
        <member name="T:WorkshopSortMode">
            <summary>
            A friendly sort mode for Storage/Workshop queries, wrapping <see cref="T:Sandbox.Storage.SortOrder"/>.
            </summary>
        </member>
        <member name="M:WorkshopSortModeExtensions.ToSortOrder(WorkshopSortMode)">
            <summary>
            Converts to the underlying <see cref="T:Sandbox.Storage.SortOrder"/> value.
            </summary>
        </member>
        <member name="T:FourWheelVehicle">
            <summary>
            The tuning readout: everything the vehicle is doing, painted into the HUD by <see cref="T:Sandbox.VehicleDebugSection"/>.
            Turn it on for the vehicle you're driving with <c>vehicle_debug 1</c>, or for one vehicle with its Draw Debug
            property. Host only, since only the host simulates.
            </summary>
            <summary>
            The driver's keys, turned into throttle, brake, steering, boost and handbrake controls.
            </summary>
            <summary>
            The drivetrain: engine, gearbox, brakes, handbrake, steering, power slides and boost, turned into torque and
            steering for the wheels (FourWheelVehicle.Wheels.cs), plus the pushes on the body - extra gravity and the power
            slide. The maths is in meters and Newtons, converted where it touches the engine (inches).
            </summary>
             <summary>
             The driver's hands on the steering wheel, by IK. Put the hand targets under the <c>steering_wheel</c> bone's object
             so they turn with it (<see cref="M:FourWheelVehicle.PoseRig"/> poses it before we read them), each oriented the way the hand should
             grip. While the horn's held (<see cref="P:VehicleSounds.HornDown"/>) the right hand moves off the wheel onto
             <see cref="P:FourWheelVehicle.HornHand"/> and opens flat.
            
             The seated pose sits too far back to reach a turned wheel, and the body's aim only bends the neck, so the whole body
             model tilts forward about the hips (<see cref="P:FourWheelVehicle.DriverTilt"/>) before it's animated - the IK then solves from there.
             Foot targets (under the pedal bones, say) keep the legs from swinging down through the floor with it.
            
             Runs on everyone, from the synced steering and horn, on whoever's in <see cref="P:FourWheelVehicle.Seat"/>.
             </summary>
             <summary>
             Posing the model, a <see cref="T:Sandbox.SkinnedModelRenderer"/>. Every machine poses its own from wherever it has the body:
             Wheel travel follows the host suspension state, interpolated between updates.
            
             The bones, where {c} is fl, fr, rl or rr:
             <list type="bullet">
             <item><c>wheel_{c}</c> - the knuckle, where the arm meets it (at the front, on the steering axis). It moves up and
             down with the suspension. The arm and shock are skinned from the body to this, so they follow.</item>
             <item><c>wheel_{c}_steer</c> - a child of the knuckle where it is, that turns to steer: the front axle. Without
             one, a front knuckle steers itself.</item>
             <item><c>wheel_{c}_spin</c> - a child of those at the tyre's centre, which is where the suspension holds the
             wheel. It rolls about whichever of its axes runs closest to the axle.</item>
             <item><c>steering_wheel</c> - turns about <see cref="P:FourWheelVehicle.SteeringWheelAxis"/>.</item>
             <item><c>pedal_gas</c>, <c>pedal_brake</c>, <c>pedal_clutch</c> - on their hinges, pushed forward
             <see cref="P:FourWheelVehicle.PedalTravel"/> - only for the driver, from their own feet (see <see cref="M:FourWheelVehicle.UpdatePedals"/>).</item>
             </list>
             Any other bone rides on its parent.
             </summary>
             <summary>
             The wheels. They aren't bodies: each finds the ground below where it rests, and everything a wheel does - spring,
             damper, anti-roll bar, drive, brake and grip - is a push on the body where it meets the ground.
            
             The maths is in meters and Newtons. Lengths and velocities come in as inches and are converted, forces are Newtons
             until they become impulses on the body.
             </summary>
            <summary>
            A drivable four wheel vehicle. It goes on the vehicle body, a normal rigidbody that still collides, tumbles and
            can be picked up.
            <list type="bullet">
            <item>This file - the seat, the engine starting and stopping, what's synced to everyone</item>
            <item>FourWheelVehicle.Driver.cs - the driver's keys into throttle, brake, steering, boost and handbrake</item>
            <item>FourWheelVehicle.Drivetrain.cs - engine, gearbox, brakes, steering, power slides and boost</item>
            <item>FourWheelVehicle.Wheels.cs - the wheels: suspension, anti-roll bars, drive and grip</item>
            <item>FourWheelVehicle.Rig.cs - posing the model: wheels, suspension and steering wheel</item>
            </list>
            The wheels aren't bodies: each finds the ground below it and pushes the body where they meet. Where they are and
            what they look like comes from the model's bones.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.UpdateDebugHud(System.Boolean)">
            <summary>
            Fill the HUD's vehicle readout, or hide it if this vehicle was showing it.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.WheelDebug(FourWheelVehicle.Wheel)">
            <summary>
            Slip the way tyre models think of it: how much faster the tread turns than the ground goes past under it
            (ratio) and how far the contact patch's travel is from where the wheel points (angle). The wheels
            always turn at the body's speed, so the ratio only shows locked wheels and the car turning about itself.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.SpeedThrottleAsBrake">
            <summary>
            Slower than this (in/s) the car counts as stopped, and the throttle drives rather than brakes.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.BrakeRate">
            <summary>
            How fast the brake comes on, per second. Twice as fast braking with forward while rolling back.
            </summary>
        </member>
        <member name="F:FourWheelVehicle._freeRevving">
            <summary>
            Throttle held with the handbrake on: revving the engine in neutral.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.DriverInput.Forward">
            <summary>
            The pedals, 0 to 1. Keys are all or nothing, a gamepad's triggers anything between.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.DriverInput.Steering">
            <summary>
            Where to steer, -1 full left to 1 full right. Keys are full lock, a gamepad's stick anything between.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.IsBoosting">
            <summary>
            The boost is burning.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.IsBoostRecovering">
            <summary>
            Recharging from a boost, so another can't start yet.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.SteeringRest(System.Single,System.Single)">
            <summary>
            Let go of the steering: it returns to centre, slower the faster we're going.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.SteeringTurn(System.Single,System.Single,System.Boolean,System.Boolean,System.Single)">
            <summary>
            Steering towards where the driver's steering (full lock on the keys), slower the faster we're going - but snapping
            back through the centre when changing direction or easing off, quicker on the brakes and while boosting.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.ThrottleOpposingForceEpsilon">
            <summary>
            Rolling the wrong way faster than this (in/s) with the throttle down locks the wheels, so you can hold the car
            on a hill and pull away.
            </summary>
        </member>
        <member name="F:FourWheelVehicle._braking">
            <summary>
            The wheel torques are brakes, not drive.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.GravityLength">
            <summary>
            Gravity in meters per second squared - what the tuning's multiples of gravity are of.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.GravityScale">
            <summary>
            Scale on the scene's gravity that gives us <see cref="P:FourWheelVehicle.Gravity"/>.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.UpdateDrivetrain(System.Single,VehicleControlParams)">
            <summary>
            Run the drivetrain for a tick with the driver's controls.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.BodySpeed">
            <summary>
            Speed along the body's forward axis, in/s, over the last tick (see <see cref="M:FourWheelVehicle.MeasuredVelocity(Vector3)"/>).
            </summary>
        </member>
        <member name="M:FourWheelVehicle.SteeringCone(System.Single)">
            <summary>
            The most the front wheels can turn at a speed (mph), in degrees: less the faster the car goes.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.SetSteeringAngle(System.Single)">
            <summary>
            Point both front wheels at the angle. Positive is to the right, in radians.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.UpdatePowerslide(VehicleControlParams,System.Boolean,System.Single)">
            <summary>
            On the handbrake at speed the tyres swap for slippier ones, and steering into it pushes the nose and tail apart.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.UpdateSkidding(System.Boolean)">
            <summary>
            Wheels on the ground, and how fast the fastest sliding one goes - or the car's speed, sliding on the handbrake.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.UpdateGearbox(System.Single)">
            <summary>
            The automatic gearbox: the engine rpm from how fast the wheels turn, shifting up (only while accelerating)
            and down at the tuning's rpms.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.CalcEngine(System.Single,System.Single,System.Single,System.Boolean)">
            <summary>
            The wheels' torques, in Newton meters, from the throttle [-1, 1] or the brake [0, 1].
            </summary>
        </member>
        <member name="M:FourWheelVehicle.OnDriverExit">
            <summary>
            The driver got out: normal tyres back on, and the handbrake.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.SimulateBodyForces(System.Single)">
            <summary>
            Pushes on the body itself: extra gravity, and the power slide pushing the nose and tail sideways, two meters
            either side of the centre of mass. Both scale with the body's mass alone, without the wheels.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.HornHand">
            <summary>
            Where the right hand goes to press the horn.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.HornHandTime">
            <summary>
            How long the right hand takes to move between the wheel and the horn, seconds.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.HornHoldType">
            <summary>
            The animgraph hold type that shapes the right hand on the horn (<c>holdtype</c>), and its hand pose
            (<c>holdtype_pose_hand</c>) - tune these for the open palm. Empty leaves the hand as it is.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.LeftFoot">
            <summary>
            Optional foot targets. With the body tilted, the legs swing down too - these hold the feet where they belong.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.DriverTilt">
            <summary>
            How far the driver's whole body tilts forward towards the wheel, degrees, about <see cref="P:FourWheelVehicle.TiltPivot"/>.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.MaxSway">
            <summary>
            Most the driver sways to the side in a turn, degrees, thrown to the outside of it.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.SwayFullAcceleration">
            <summary>
            Cornering (sideways acceleration, in/s²) that sways the driver all the way. The tuning's gravity is 600.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.SwayStiffness">
            <summary>
            The sway's a spring: how stiffly it follows the cornering, and how quickly it stops wobbling.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.TiltPivot">
            <summary>
            What the body tilts about. Empty, it's the driver's pelvis, so they stay sat on the seat.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.UpdateDriverHands">
            <summary>
            After <see cref="M:FourWheelVehicle.PoseRig"/>, so the targets on the steering wheel are where it is this frame.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.SetDriverIk(Sandbox.SkinnedModelRenderer)">
            <summary>
            The hand and foot IK targets. <see cref="M:Sandbox.SkinnedModelRenderer.SetIk(System.String,Transform)"/> takes them relative to the body as it is
            when it's called, so this has to come after the tilt or the targets get carried forward with it.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.PelvisPivot(Sandbox.GameObject,Transform)">
            <summary>
            Where the driver's pelvis is with the body upright - so it stays on the seat while the body tilts over it.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.ApplyHornHandPose(Sandbox.SkinnedModelRenderer)">
            <summary>
            Shape the right hand for the horn with the animgraph's hold type, right hand only - the arm's on IK, so only the
            fingers take it. <see cref="T:Player"/> puts the hold type back to none every update while there's no weapon out,
            so this is set from the late pose step each frame it's wanted and simply stops when it isn't.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.ReleaseHands">
            <summary>
            Give the last driver their hands, feet, fingers and posture back.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.ImpactDamageScale">
            <summary>
            Multiplies crash damage to the driver. Zero disables impact damage.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.MaxSafeImpactSpeed">
            <summary>Closing speed in inches per second below which impacts are harmless.</summary>
        </member>
        <member name="P:FourWheelVehicle.FatalImpactSpeed">
            <summary>Closing speed that deals 100 damage at a scale of one.</summary>
        </member>
        <member name="E:FourWheelVehicle.Impacted">
            <summary>
            The vehicle hit something, on the host: closing speed in in/s and where. From the body's physics collisions and
            from the tyres blocking against obstacles (<see cref="M:FourWheelVehicle.ResolveWheelObstacle(FourWheelVehicle.Wheel,Sandbox.SceneTraceResult,System.Single,System.Single)"/>), which aren't physics collisions.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.PedalTravel">
            <summary>
            How far the pedals swing on their hinges when they're pushed all the way, degrees.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.ClutchShiftTime">
            <summary>
            How long the clutch is in for a gear change, seconds.
            </summary>
        </member>
        <member name="F:FourWheelVehicle._wheelsRig">
            <summary>
            The rig the wheels were set up from.
            </summary>
        </member>
        <member name="F:FourWheelVehicle._travel">
            <summary>
            How far each wheel centre sits below its hard point as posed last frame, inches, and how fast that's shrinking -
            the wheel being pushed up into the body - in/s. Where it is in the world, for sounds.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.SuspensionSpeed(System.Int32)">
            <summary>
            How fast a wheel is being pushed up into the body, in/s (negative while it drops away). From the posed wheels,
            so it's the same on every machine - a landing or a bump hits hard.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.WheelPosition(System.Int32)">
            <summary>
            Where a wheel's centre is in the world, as posed.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.GetRig">
            <summary>
            The model's rig, or null if there's no model or it doesn't have the wheel bones.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.PoseRig">
            <summary>
            Put the wheels where the ground is, steer and roll them, and turn the steering wheel.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.UpdatePedals">
            <summary>
            The driver's feet, on their own machine - it's their input, and nobody else can see the pedals. Gas and brake are
            what they're pressing, split the way the car splits it (the throttle brakes when it's against the way we're going).
            The clutch goes in for a gear change, lifting off the gas, and is held in at a standstill until we pull away.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.LocalAmount(ClientInput,Player)">
            <summary>
            How far the local driver's pressing an input, 0 to 1 - a gamepad's trigger part way (<see cref="P:Player.ActionAmounts"/>).
            </summary>
        </member>
        <member name="M:FourWheelVehicle.PushPedal(FourWheelVehicle.Rig,System.Int32,System.Single)">
            <summary>
            Swing a pedal forward on its hinge, which runs across the car.
            </summary>
        </member>
        <member name="T:FourWheelVehicle.Rig">
            <summary>
            A model's bones, where they rest in body space, and their pose this frame.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.Rig.Order">
            <summary>
            Every bone, parents before their children.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.Rig._moved">
            <summary>
            How each bone has been moved this frame, in its own rest frame.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.Rig.HardPoint(System.Int32)">
            <summary>
            Where the suspension holds the wheel: the tyre's centre at rest.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.Rig.Axle(System.Int32)">
            <summary>
            The axle a wheel rolls about at rest, pointing left: the spin bone's axis closest to the car's left, so it
            doesn't matter which way the bone was built.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.Rig.Move(System.Int32,Vector3,Rotation)">
            <summary>
            Move a bone by an offset and turn it about itself, both in body space as it sits at rest. Its children go
            with it.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.Rig.Pose(System.Int32)">
            <summary>
            A bone's pose in body space this frame: riding on its parent as it did at rest, then moved. Call it in
            <see cref="F:FourWheelVehicle.Rig.Order"/>, so the parent's is ready.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.Wheel.HardPoint">
            <summary>
            Where the wheel centre rests in body space. The suspension runs straight down the body from here.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.Wheel.SteerAngle">
            <summary>
            Steering angle, radians, positive to the right.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.Wheel.Torque">
            <summary>
            Drive or brake torque, Newton meters.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.Wheel.Locked">
            <summary>
            Held still by the handbrake.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.Wheel.TyreFriction">
            <summary>
            Friction of the tyre the wheel has on (normal, braking or power slide).
            </summary>
        </member>
        <member name="F:FourWheelVehicle.Wheel.GroundDistance">
            <summary>
            How far below the hard point's radius-above the ground is, inches: the wheel centre sits at
            <c>HardPoint + down * (GroundDistance - Radius)</c>. Spring length plus radius in the air.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.Wheel.Load">
            <summary>
            What the wheel is pushing the body up with, Newtons.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.Wheel.AngularVelocity">
            <summary>
            Rolling speed, radians a second.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.Wheel.Top">
            <summary>
            The hard point and the suspension's direction in the world this tick.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.Wheel.Contact">
            <summary>
            Where the tyre touches the ground, or would at full extension.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.Wheel.SlopeFactor">
            <summary>
            The spring pushes harder on a slope, to hold the car up as well as into it.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.Wheel.ProjectedAxle">
            <summary>
            The axle and the way the wheel rolls, both flat on the ground.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.Wheel.AtGripLimit">
            <summary>
            Whether the grip forces hit the friction limit, and how fast the tyre slides over the ground once they
            have (in/s) - for the skid sound and the debug readout.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.Wheel.AxleBody">
            <summary>
            The axle in body space, steered: straight it points left.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.AddWheelMass">
            <summary>
            The car carries its wheels' mass, and their inertia as point masses at the hard points - without it, it's light
            and far too easy to spin. The wheels' weight goes straight to the ground at the contact patches
            (<see cref="M:FourWheelVehicle.SimulateSpring(FourWheelVehicle.Wheel,System.Single)"/>), so the springs still only hold the body up.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.Simulate(System.Single)">
            <summary>
            The wheels' pushes on the body for this tick.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.FindGround(FourWheelVehicle.Wheel,Transform)">
            <summary>
            Find the ground under the wheel (<see cref="M:FourWheelVehicle.WheelSweep(Vector3,Vector3,Vector3,System.Single,System.Single,System.Single,System.Single,System.Single)"/>) and lay the axle flat on it.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.WheelContact.Distance">
            <summary>
            See <see cref="F:FourWheelVehicle.Wheel.GroundDistance"/>.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.WheelSweep(Vector3,Vector3,Vector3,System.Single,System.Single,System.Single,System.Single,System.Single)">
            <summary>
            Where the ground is under a wheel: a sweep of the wheel's own shape, a cylinder as wide as the tyre around its
            axle, from a radius above the hard point down to the spring's full length. It meets a step's edge on the front
            of the tyre, and the slant of that contact is what lifts the wheel up onto it.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.Ground(Sandbox.SceneTrace)">
            <summary>
            What a wheel stands on: anything but this vehicle and players.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.SimulateStabilizer(FourWheelVehicle.Wheel,FourWheelVehicle.Wheel,VehicleAxleParams)">
            <summary>
            An anti-roll bar: the more one wheel of an axle is compressed than the other, the harder it pushes them back level.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.SimulateSpring(FourWheelVehicle.Wheel,System.Single)">
            <summary>
            The spring and damper, pushing the body up off the ground, plus the wheel's own weight on it.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.BodyGravity">
            <summary>
            Gravity the physics applies to the body over a tick (the extra gravity is ours, a push like any other).
            </summary>
        </member>
        <member name="M:FourWheelVehicle.MeasuredVelocity(Vector3)">
            <summary>
            How the body moved at a point over the last tick. The velocity we read is where the last tick ended, and the
            physics adds gravity across its substeps, so a car sitting still reads as sinking (or rolling downhill) at half
            a tick's gravity - 6 in/s at 50 Hz. Taken as it is, the dampers hold the car up instead of the springs, and a
            car held on a hill never reads as stopped.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.PredictedVelocity(Vector3)">
            <summary>
            How the body will move at a point over the next tick if nothing but gravity acts. What a brake or a locked
            wheel has to cancel to hold the car still - including on a hill.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.SimulateGrip(System.Single)">
            <summary>
            The tyres' grip. First the sideways forces that would stop each axle sliding, then each wheel's share of those
            and its drive or brake force, cut down to what its load and friction can hold.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.SidewaysForces(System.Single)">
            <summary>
            The sideways force at the middle of each axle that takes its sideways speed away this tick (a little more, to
            settle quicker), solved for both axles at once since pushing one also turns the body under the other.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.ApplyLockedWheelGrip(FourWheelVehicle.Wheel,System.Single,System.Single,System.Single@)">
             <summary>
             A locked wheel slides with plain friction against wherever its contact patch is going - which includes the
             patch swinging round as the car yaws, so a handbrake turn doesn't spin away.
            
             Each locked wheel stops its patch exactly, for the car's real inertia at that point, and the next one works from
             the car's motion after it. Pushed all at once from the same motion, the pushes below the centre of mass roll
             the car under the other wheels, and a parked car rocks and creeps sideways.
             </summary>
        </member>
        <member name="M:FourWheelVehicle.TrackImpulse(Vector3,Vector3)">
            <summary>
            Carry an impulse we've just pushed the body with (kg in/s, at a point) into this tick's idea of how it's moving.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.PushAt(FourWheelVehicle.Wheel,Vector3)">
            <summary>
            Push the body at the wheel's contact, an impulse in Newton seconds - and push back on whatever it's standing on.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.InverseMass(Vector3,Vector3,Vector3,Vector3)">
            <summary>
            How much a push at point A along direction A changes the body's speed at point B along direction B, per kg m/s -
            the inverse mass the body has between those two.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.Seat">
            <summary>
            The driver's seat. Whoever sits here drives.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.SteeringWheelAxis">
            <summary>
            Local axis of the steering column, pointing at the driver.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.SteeringWheelAngle">
            <summary>
            How far the steering wheel turns at full lock, in degrees.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.Gravity">
            <summary>
            The gravity the tuning is for, in inches per second squared. The vehicle falls at this rather than the scene's
            gravity. Zero uses the scene's gravity.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.WheelObstacleCollisions">
            <summary>
            Let tyres block against walls and other obstacles in addition to supporting the suspension.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.SteerAngle">
            <summary>
            Front wheel steering angle in degrees, positive to the right.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.WheelsLocked">
            <summary>
            The handbrake has the wheels locked.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.SoundRpm">
            <summary>
            Engine speed for sound: the gearbox's, or the free revving engine's while revving in neutral.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.ThrottleDown">
            <summary>
            The driver is accelerating (not braking, not on the handbrake).
            </summary>
        </member>
        <member name="P:FourWheelVehicle.SkidSpeed">
            <summary>
            Fastest a wheel is sliding over the ground, in/s.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.Speed">
            <summary>
            Forward speed, in/s, negative backwards.
            </summary>
        </member>
        <member name="P:FourWheelVehicle.SpeedMph">
            <summary>
            Speed in miles per hour, either way.
            </summary>
        </member>
        <member name="F:FourWheelVehicle.FreeRevRiseRate">
            <summary>
            How fast the engine revs up and runs down in neutral, rpm a second.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.InitCarSystem">
            <summary>
            Set up the body and the wheels from the tuning.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.IPlayerControllable#OnControl">
            <summary>
            Driven from the seat by <see cref="T:ControlSystem"/>, before our fixed update, with the driver's input active.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.ParkedAsleep">
            <summary>
            A parked car that has settled goes to sleep, rather than being held up by its wheels every tick - that never
            quite comes to rest, it jitters on the spot. Anything that wakes the body (a hit, the physgun, a driver getting
            in) brings the wheels back.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.PublishState">
            <summary>
            Sync what everyone else needs: the steering and wheel visuals, and the engine state for sounds.
            </summary>
        </member>
        <member name="M:FourWheelVehicle.UpdateDriver">
            <summary>
            The engine starts and stops as people get in and out of the seat. Getting out puts the handbrake on.
            </summary>
        </member>
        <member name="T:VehicleDriverPoseSystem">
            <summary>
            Tilts drivers forward over their wheels and sets their IK (<see cref="M:FourWheelVehicle.ApplyDriverPose"/>) once every component has
            updated - the player controller places the body in its update, so ours has to land after it - and before the bones
            are animated, so the IK solves from the tilted body.
            </summary>
        </member>
        <member name="T:VehicleCamera">
            <summary>
            A chase camera for whoever's driving, in third person. It sits behind the car and swings round after it, a little
            late - more so in a slide, where it looks the way the car's going. It hangs back as the car accelerates and closes
            in under braking, the field of view opens up with speed and boost, it shakes a little when it's going fast, and it
            settles after jumps. The mouse orbits it and it stays where you put it, until you've been driving a while without
            touching the mouse - then it eases back behind the car.
            </summary>
        </member>
        <member name="P:VehicleCamera.Distance">
            <summary>
            How far behind the car the camera sits, inches.
            </summary>
        </member>
        <member name="P:VehicleCamera.Height">
            <summary>
            How far above the car's origin the camera sits, inches.
            </summary>
        </member>
        <member name="P:VehicleCamera.LookHeight">
            <summary>
            The point the camera looks at: this far above the car's origin, inches...
            </summary>
        </member>
        <member name="P:VehicleCamera.LookAhead">
            <summary>
            ...and this far ahead of it.
            </summary>
        </member>
        <member name="P:VehicleCamera.FollowRate">
            <summary>
            How quickly the camera swings round behind the car - higher is tighter.
            </summary>
        </member>
        <member name="P:VehicleCamera.SlideFollow">
            <summary>
            How far towards the way the car's actually going the camera looks in a slide, 0 to 1.
            </summary>
        </member>
        <member name="P:VehicleCamera.SlopeFollow">
            <summary>
            How much of the car's pitch on a slope the camera takes, 0 to 1.
            </summary>
        </member>
        <member name="P:VehicleCamera.AccelerationLag">
            <summary>
            Inches the camera hangs back per inch per second squared of acceleration (closes in under braking).
            </summary>
        </member>
        <member name="P:VehicleCamera.SpeedDistance">
            <summary>
            Inches further back at top speed.
            </summary>
        </member>
        <member name="P:VehicleCamera.SpeedFov">
            <summary>
            Degrees of field of view added at top speed, and on top of that while boosting.
            </summary>
        </member>
        <member name="P:VehicleCamera.BoostFov">
            <inheritdoc cref="P:VehicleCamera.SpeedFov"/>
        </member>
        <member name="P:VehicleCamera.SpeedShake">
            <summary>
            How much the camera shakes at top speed, inches.
            </summary>
        </member>
        <member name="P:VehicleCamera.LookResetDelay">
            <summary>
            Seconds of driving without touching the mouse before the camera eases back behind the car.
            </summary>
        </member>
        <member name="P:VehicleCamera.LookResetSpeed">
            <summary>
            Miles per hour the car has to be doing for the camera to ease back behind it. Slower, it stays where you put it.
            </summary>
        </member>
        <member name="M:VehicleCamera.IsDriving">
            <summary>
            The local player is in the driver's seat, looking from behind.
            </summary>
        </member>
        <member name="M:VehicleCamera.Snap(Transform,System.Single)">
            <summary>
            Straight behind the car, no lag - getting in, or switching to third person.
            </summary>
        </member>
        <member name="M:VehicleCamera.Spring(System.Single@,System.Single@,System.Single,System.Single,System.Single,System.Single)">
            <summary>
            A critically damped spring towards a target moving at a given speed, responding at about the given rate.
            </summary>
        </member>
        <member name="T:VehicleLights">
             <summary>
             A vehicle's headlights (the low beams) and its light bar (the high beams), which comes on as well as them.
            
             The driver taps the flashlight key to switch the headlights on and off, and holds it to switch between low and
             high beam. While they're driving the key is ours: we cancel the player's own flashlight through
             <see cref="M:Global.IPlayerEvents.OnPlayerFlashlight(PlayerFlashlightEvent)"/>.
             </summary>
        </member>
        <member name="P:VehicleLights.HoldTime">
            <summary>
            How long the key has to be held to switch beams, seconds. A shorter press switches the lights on or off.
            </summary>
        </member>
        <member name="P:VehicleLights.WarmUpTime">
            <summary>
            How long the bulbs take to come up to full brightness or go out, seconds.
            </summary>
        </member>
        <member name="P:VehicleLights.HighBeams">
            <summary>
            The light bar. It comes on as well as the low beams.
            </summary>
        </member>
        <member name="M:VehicleLights.IPlayerControllable#OnControl">
            <summary>
            Tap to switch the lights, hold to switch beams. Runs on the host, from the driver's seat.
            </summary>
        </member>
        <member name="M:VehicleLights.Global#IPlayerEvents#OnPlayerFlashlight(PlayerFlashlightEvent)">
            <summary>
            The driver's flashlight key works the headlights instead.
            </summary>
        </member>
        <member name="T:VehicleMath">
            <summary>
            Small maths helpers for the vehicle code.
            </summary>
        </member>
        <member name="M:VehicleMath.Approach(System.Single,System.Single,System.Single)">
            <summary>
            Move <paramref name="value"/> towards <paramref name="target"/> by at most <paramref name="speed"/>.
            </summary>
        </member>
        <member name="M:VehicleMath.RemapValClamped(System.Single,System.Single,System.Single,System.Single,System.Single)">
            <summary>
            Map <paramref name="val"/> from [a, b] to [c, d], clamped to the range.
            </summary>
        </member>
        <member name="M:VehicleMath.Sign(System.Single)">
            <summary>
            Zero counts as positive.
            </summary>
        </member>
        <member name="T:VehicleBodyParams">
            <summary>
            How the body handles. Values are in the units they're tuned in (mph, inches, kg, multiples of body mass) and
            converted where the physics uses them.
            </summary>
        </member>
        <member name="P:VehicleBodyParams.MassCenterOverride">
            <summary>
            Local centre of mass. Zero uses the model's.
            </summary>
        </member>
        <member name="P:VehicleBodyParams.MassOverride">
            <summary>
            Body mass in kg, without the wheels. Zero uses the model's.
            </summary>
        </member>
        <member name="P:VehicleBodyParams.AddGravity">
            <summary>
            Extra gravity pushed on the body, as a fraction of normal gravity.
            </summary>
        </member>
        <member name="P:VehicleBodyParams.MaxAngularVelocity">
            <summary>
            Degrees per second. The body's angular velocity is clamped to this.
            </summary>
        </member>
        <member name="P:VehicleEngineParams.MaxSpeed">
            <summary>
            Miles per hour.
            </summary>
        </member>
        <member name="P:VehicleEngineParams.MaxReverseSpeed">
            <summary>
            Miles per hour.
            </summary>
        </member>
        <member name="P:VehicleEngineParams.AutobrakeSpeedGain">
            <summary>
            Speed gain allowed over <see cref="P:VehicleEngineParams.MaxSpeed"/> while coasting before the brakes go on.
            </summary>
        </member>
        <member name="P:VehicleEngineParams.AutobrakeSpeedFactor">
            <summary>
            The auto brake is this times the speed gain.
            </summary>
        </member>
        <member name="P:VehicleEngineParams.BoostForce">
            <summary>
            How much boost multiplies the engine's torque.
            </summary>
        </member>
        <member name="P:VehicleEngineParams.BoostDelay">
            <summary>
            Seconds after the boost ends before it can be used again.
            </summary>
        </member>
        <member name="P:VehicleEngineParams.BoostMaxSpeed">
            <summary>
            Miles per hour.
            </summary>
        </member>
        <member name="P:VehicleEngineParams.BoostLowSpeedFactor">
            <summary>
            How much of the boost you get from a standstill, rising to all of it at <see cref="P:VehicleEngineParams.MaxSpeed"/>.
            </summary>
        </member>
        <member name="P:VehicleSteeringParams.DegreesSlow">
            <summary>
            Steering cone at zero to slow speed.
            </summary>
        </member>
        <member name="P:VehicleSteeringParams.DegreesFast">
            <summary>
            Steering cone at fast speed to max speed.
            </summary>
        </member>
        <member name="P:VehicleSteeringParams.DegreesBoost">
            <summary>
            Steering cone at max boost speed (blends toward this after max speed).
            </summary>
        </member>
        <member name="P:VehicleSteeringParams.SteeringExponent">
            <summary>
            Steering is linear, then raised to this power to be slower at the beginning of the curve.
            </summary>
        </member>
        <member name="P:VehicleSteeringParams.SpeedSlow">
            <summary>
            Miles per hour.
            </summary>
        </member>
        <member name="P:VehicleSteeringParams.SpeedFast">
            <summary>
            Miles per hour.
            </summary>
        </member>
        <member name="P:VehicleSteeringParams.PowerSlideAccel">
            <summary>
            Inches per second squared, pushing the nose and tail apart while power sliding.
            </summary>
        </member>
        <member name="P:VehicleAxleParams.WheelRadius">
            <summary>
            Inches.
            </summary>
        </member>
        <member name="P:VehicleAxleParams.TyreWidth">
            <summary>
            Inches. The width of the cylinder swept for the ground.
            </summary>
        </member>
        <member name="P:VehicleAxleParams.WheelMass">
            <summary>
            Kilograms. Carried by the car, but standing on the ground rather than on the springs.
            </summary>
        </member>
        <member name="P:VehicleAxleParams.Friction">
            <summary>
            Tyre friction, times the ground's.
            </summary>
        </member>
        <member name="P:VehicleAxleParams.BrakeFriction">
            <summary>
            Tyre friction while handbrake sliding.
            </summary>
        </member>
        <member name="P:VehicleAxleParams.SkidFriction">
            <summary>
            Tyre friction while power sliding.
            </summary>
        </member>
        <member name="P:VehicleAxleParams.RollingResistance">
            <summary>
            Drag on a rolling wheel, as a fraction of the load on it.
            </summary>
        </member>
        <member name="P:VehicleAxleParams.SpringAdditionalLength">
            <summary>
            How far below its rest position the wheel hangs with the spring relaxed, in inches.
            </summary>
        </member>
        <member name="P:VehicleAxleParams.MaximumCompression">
            <summary>Maximum wheel travel above rest, in inches.</summary>
        </member>
        <member name="P:VehicleAxleParams.SpringConstant">
            <summary>
            Multiple of body mass, Newtons per meter.
            </summary>
        </member>
        <member name="P:VehicleAxleParams.SpringDamping">
            <summary>
            Multiple of body mass, damping while the spring relaxes.
            </summary>
        </member>
        <member name="P:VehicleAxleParams.StabilizerConstant">
            <summary>
            Multiple of body mass, anti-roll bar stiffness between this axle's wheels.
            </summary>
        </member>
        <member name="P:VehicleAxleParams.SpringDampingCompression">
            <summary>
            Multiple of body mass, damping while the spring compresses.
            </summary>
        </member>
        <member name="T:VehicleControlParams">
            <summary>
            What the driver's asking for.
            </summary>
        </member>
        <member name="T:VehicleOperatingParams">
            <summary>
            What the vehicle's doing.
            </summary>
        </member>
        <member name="F:VehicleOperatingParams.Speed">
            <summary>
            Inches per second along the body's forward axis.
            </summary>
        </member>
        <member name="F:VehicleOperatingParams.SteeringAngle">
            <summary>
            Degrees.
            </summary>
        </member>
        <member name="T:VehicleSoundState">
            <summary>
            What the engine's doing, as far as its sound goes. Each state plays its own recording.
            </summary>
        </member>
        <member name="T:VehicleSoundGear">
            <summary>
            A band of speed (as a fraction of top speed) one gear sound covers.
            </summary>
        </member>
        <member name="T:VehicleStateSound">
            <summary>
            The recording for a sound state.
            </summary>
        </member>
        <member name="P:VehicleStateSound.Sound">
            <summary>
            Recording for this state. Left empty, the state is silent.
            </summary>
        </member>
        <member name="P:VehicleStateSound.MinTime">
            <summary>
            Seconds to stay in this state before moving on.
            </summary>
        </member>
        <member name="T:VehicleCrashSound">
            <summary>
            An impact sound for the body hitting something. The hardest one a hit reaches plays.
            </summary>
        </member>
        <member name="P:VehicleCrashSound.MinSpeed">
            <summary>
            How hard the body has to hit, in/s along the contact normal.
            </summary>
        </member>
        <member name="P:VehicleCrashSound.DropsToIdle">
            <summary>
            Knock the engine sound back to idle, as if the driver lifted off.
            </summary>
        </member>
        <member name="T:VehicleSounds">
             <summary>
             Engine, gear, skid and crash sounds for a <see cref="T:FourWheelVehicle"/>: one recording per sound state, chosen
             from the throttle and how fast the car is going. And the exhaust backfires - a crackle when you lift off from high
             revs, pops against the rev limiter and on hard upshifts - with a flame out of the pipe.
            
             Runs on everyone from the engine state the host syncs on the vehicle.
             </summary>
        </member>
        <member name="P:VehicleSounds.Exhaust">
            <summary>
            Where the exhaust comes out, pointing out of the pipe. Backfire flames come from here.
            </summary>
        </member>
        <member name="P:VehicleSounds.BackfireEffect">
            <summary>
            Spawned at the exhaust on each backfire.
            </summary>
        </member>
        <member name="P:VehicleSounds.CrackleRate">
            <summary>
            Most backfires a second in the crackle after lifting off.
            </summary>
        </member>
        <member name="P:VehicleSounds.CrackleRevs">
            <summary>
            Revs the crackle starts from, as a fraction of max rpm.
            </summary>
        </member>
        <member name="P:VehicleSounds.LimiterRate">
            <summary>
            Backfires a second against the rev limiter.
            </summary>
        </member>
        <member name="P:VehicleSounds.ShiftPops">
            <summary>
            Pop on upshifts with the throttle down.
            </summary>
        </member>
        <member name="P:VehicleSounds.Gears">
            <summary>
            As the vehicle speeds up it moves through these, each with its own gear sound.
            </summary>
        </member>
        <member name="P:VehicleSounds.ImpactCooldown">
            <summary>
            Seconds after an impact sound before another one that isn't harder can play - several shapes and substeps
            report the same hit.
            </summary>
        </member>
        <member name="P:VehicleSounds.SkidSound">
            <summary>
            Looped while skidding.
            </summary>
        </member>
        <member name="P:VehicleSounds.SuspensionSound">
            <summary>
            Played at a wheel when it's shoved up into the body - landing, bumps, kerbs.
            </summary>
        </member>
        <member name="P:VehicleSounds.SuspensionMinSpeed">
            <summary>
            How fast a wheel has to be pushed up (in/s, in the model's own scale) to make a sound, and how fast for full
            volume. Read from the posed wheels, which ease towards the host's suspension, so it peaks lower than the real
            spring - about 30x the jump in travel.
            </summary>
        </member>
        <member name="P:VehicleSounds.SuspensionCooldown">
            <summary>
            Seconds before the same wheel can clunk again.
            </summary>
        </member>
        <member name="P:VehicleSounds.HornSound">
            <summary>
            Sounds while the driver holds <see cref="P:VehicleSounds.Horn"/>, until they let go or it runs out.
            </summary>
        </member>
        <member name="P:VehicleSounds.HornFadeTime">
            <summary>
            How long the horn takes to fade out when let go early, seconds.
            </summary>
        </member>
        <member name="P:VehicleSounds.HornDown">
            <summary>
            The driver's holding the horn.
            </summary>
        </member>
        <member name="M:VehicleSounds.IPlayerControllable#OnControl">
            <summary>
            The horn key. Runs on the host, from the driver's seat.
            </summary>
        </member>
        <member name="M:VehicleSounds.SoundUpdate(System.Boolean)">
            <summary>
            Move through the sound gears with the speed and pick the state - the throttle, reverse, boost and speed come
            from the host.
            </summary>
        </member>
        <member name="M:VehicleSounds.HookImpacts">
            <summary>
            Listen for the vehicle's impacts (<see cref="E:FourWheelVehicle.Impacted"/>) - the body's collisions and the tyres
            blocking against walls - following <see cref="P:VehicleSounds.Vehicle"/> if it's swapped.
            </summary>
        </member>
        <member name="M:VehicleSounds.OnVehicleImpact(System.Single,Vector3)">
            <summary>
            On the host: keep the hardest hit this tick, played from <see cref="M:VehicleSounds.OnFixedUpdate"/>.
            </summary>
        </member>
        <member name="M:VehicleSounds.ImpactTier(System.Single)">
            <summary>
            The hardest of <see cref="P:VehicleSounds.CrashSounds"/> this speed reaches, whatever order they're listed in. -1 for none.
            </summary>
        </member>
        <member name="M:VehicleSounds.UpdateSkid">
            <summary>
            The skid sound. We have to slide at least 15% of our speed at higher speeds to make it, otherwise it plays
            too often.
            </summary>
        </member>
        <member name="M:VehicleSounds.UpdateSuspension">
            <summary>
            A clunk when a wheel is shoved up into the body hard enough, louder the harder. Engine or not - a car dropped
            off the physgun lands just the same. Only the hardest hit each frame plays, so four wheels landing together
            don't stack up into one loud one.
            </summary>
        </member>
        <member name="M:VehicleSounds.PlayLoopingSound(Sandbox.SoundEvent)">
            <summary>
            Fade out the old state's sound and start the new one.
            </summary>
        </member>
        <member name="M:VehicleSounds.UpdateBackfires">
            <summary>
            The exhaust backfiring. Unburnt fuel lights in the hot pipe: for a moment after lifting off from high revs
            (it builds up under hard throttle and dies away over about a second), against the rev limiter, and on hard
            upshifts. Each one pops and shoots a flame out of the exhaust.
            </summary>
        </member>
        <member name="T:CameraWeapon">
            <summary>
            A camera weapon that can be held by a player and renders to a render target texture, which can be displayed on a TV.
            </summary>
        </member>
        <member name="F:CameraWeapon._cameraResolution">
            <summary>
            The RT camera's resolution 
            </summary>
        </member>
        <member name="P:CameraWeapon.RenderTexture">
            <summary>
            The render target texture produced by this camera. Read by <see cref="T:TVEntity"/>.
            </summary>
        </member>
        <member name="M:CameraWeapon.OnCameraSetup(Player,Sandbox.CameraComponent)">
            <summary>
            We want to control the camera fov when held by a player.
            </summary>
        </member>
        <member name="M:CameraWeapon.DrawHud(Sandbox.Painter,Vector2)">
            <summary>
            Keeps the camera view clear of weapon HUD elements.
            </summary>
        </member>
        <member name="M:Colt1911Weapon.DrawCrosshair(Sandbox.Painter,Vector2)">
            <summary>
            Draws the outlined aiming dot with the current firing status.
            </summary>
        </member>
        <member name="M:GlockWeapon.DrawCrosshair(Sandbox.Painter,Vector2)">
            <summary>
            Draws the outlined aiming dot with the current firing status.
            </summary>
        </member>
        <member name="T:HandGrenadeWeapon">
            <summary>
            A throwable grenade weapon
            Cooks while held — explodes in hand if held too long
            </summary>
        </member>
        <member name="P:HandGrenadeWeapon.PinPullSound">
            <summary>
            Sound played when the pin is pulled and cooking starts.
            </summary>
        </member>
        <member name="P:HandGrenadeWeapon.DeploySound">
            <summary>
            Sound played when deploying the next grenade after a throw.
            </summary>
        </member>
        <member name="P:HandGrenadeWeapon.Lifetime">
            <summary>
            Fuse time in seconds — grenade explodes after this, whether thrown or not.
            </summary>
        </member>
        <member name="P:HandGrenadeWeapon.Radius">
            <summary>
            Explosion damage radius.
            </summary>
        </member>
        <member name="P:HandGrenadeWeapon.MaxDamage">
            <summary>
            Maximum damage at the center.
            </summary>
        </member>
        <member name="P:HandGrenadeWeapon.Force">
            <summary>
            Physics force scale for the explosion.
            </summary>
        </member>
        <member name="M:HandGrenadeWeapon.DrawCrosshair(Sandbox.Painter,Vector2)">
            <summary>
            Draws the aiming dot with the current grenade availability.
            </summary>
        </member>
        <member name="T:TimedExplosive">
            <summary>
            Explodes after a set time. Spawns an explosion prefab with configurable radius, damage, and force.
            </summary>
        </member>
        <member name="P:TimedExplosive.Attacker">
            <summary>Who gets credit/blame for the explosion (the thrower). Host-side only. Falls back to the explosion itself.</summary>
        </member>
        <member name="T:M4a1Weapon">
            <summary>
            M4 assault rifle.
            </summary>
        </member>
        <member name="M:M4a1Weapon.DrawCrosshair(Sandbox.Painter,Vector2)">
            <summary>
            Draws the crosshair arms at the current spread and firing status.
            </summary>
        </member>
        <member name="T:ImpactGrenade">
            <summary>
            A 40mm launcher round - flies on a ballistic arc, nose along its velocity, and explodes on the
            first thing it touches. Shooting it mid-flight sets it off too.
            </summary>
        </member>
        <member name="P:ImpactGrenade.Lifetime">
            <summary>Seconds before a round that never hit anything is removed.</summary>
        </member>
        <member name="P:Mp5Weapon.GrenadePrefab">
            <summary>
            The round the launcher fires - needs an <see cref="T:ImpactGrenade"/>.
            </summary>
        </member>
        <member name="P:Mp5Weapon.GrenadeSpeed">
            <summary>
            Launch speed of the grenade.
            </summary>
        </member>
        <member name="P:Mp5Weapon.StartingGrenades">
            <summary>
            Reserve grenades granted on first pickup - reloads top the launcher's magazine up from these.
            </summary>
        </member>
        <member name="M:Mp5Weapon.LaunchGrenade(Vector3,Vector3)">
            <summary>
            Spawns and launches the grenade with the host's permission.
            </summary>
        </member>
        <member name="M:Mp5Weapon.DrawCrosshair(Sandbox.Painter,Vector2)">
            <summary>
            Draws the crosshair arms at the current spread and firing status.
            </summary>
        </member>
        <member name="P:PhygunViewmodel.GravTint">
            <summary>
            How bright the glow is, while pulling and not. The colour itself comes from the holder's physgun colours, see <see cref="M:Physgun.Tint(Color,Color,Color)"/>.
            </summary>
        </member>
        <member name="P:PhygunViewmodel.GravGlowScale">
            <summary>
            Strength of the glow particles and tip sprites in grav (yellow) mode relative to phys (blue).
            Yellow at full strength saturates into flat, hard-edged blooming discs.
            </summary>
        </member>
        <member name="P:PhygunWorldmodel.GravTint">
            <summary>
            How bright the glow is, while pulling and not. The colour itself comes from the holder's physgun colours, see <see cref="M:Physgun.Tint(Color,Color,Color)"/>.
            </summary>
        </member>
        <member name="P:Physgun.ExtendInput">
            <summary>
            Input for increasing the distance to the grabbed object.
            </summary>
        </member>
        <member name="P:Physgun.RetractInput">
            <summary>
            Input for decreasing the distance to the grabbed object.
            </summary>
        </member>
        <member name="P:Physgun.BeamFrequency">
            <summary>
            Spring frequency of the beam's middle point. Higher values follow the physgun aim more tightly.
            </summary>
        </member>
        <member name="P:Physgun.BeamDamping">
            <summary>
            Damping ratio of the beam's middle point. Below 1 overshoots, lower values wobble.
            </summary>
        </member>
        <member name="P:Physgun.BeamMaxSway">
            <summary>
            How far, in degrees, the beam's middle point may swing away from the aim direction when the camera moves fast.
            </summary>
        </member>
        <member name="F:Physgun.DefaultBeamColor">
            <summary>
            The physgun's colours when the holder hasn't picked any, what an empty <see cref="P:GamePreferences.PhysgunColor"/> stands for
            </summary>
        </member>
        <member name="P:Physgun.BeamColor">
            <summary>
            The holder's colour for the beam, its effects, the glow and the outline - the only place they get their colour from
            </summary>
        </member>
        <member name="P:Physgun.PullColor">
            <summary>
            The holder's colour for the glow while gravity pulling
            </summary>
        </member>
        <member name="M:Physgun.Tint(Color,Color,Color)">
            <summary>
            A part of the physgun in exactly <paramref name="color"/>. The colour the part has in its prefab only says how bright
            it glows: it stays that bright to the eye in <paramref name="reference"/>, the default, and brighter or darker colours
            scale every part alike.
            </summary>
        </member>
        <member name="M:Physgun.Tint(Color,Color)">
            <summary>
            <see cref="M:Physgun.Tint(Color,Color,Color)"/> for a part in the beam colour
            </summary>
        </member>
        <member name="M:Physgun.FitToScreen(Color)">
            <summary>
            A physgun colour for the screen and crosshair, which show it as it is: HDR ones are brought down to fit
            </summary>
        </member>
        <member name="M:Physgun.UpdateHighlight(Sandbox.GameObject)">
            <summary>
            Outlines the object held by the beam, visible only to player holding the physgun
            </summary>
        </member>
        <member name="M:Physgun.HideBeam">
            <summary>
            Takes the beam and its end effects off screen, leaving the outline alone
            </summary>
        </member>
        <member name="M:Physgun.DrawScreenContent(Sandbox.Rect,Sandbox.Painter)">
            <summary>
            Draws the power meter and channel labels on the viewmodel screen.
            </summary>
        </member>
        <member name="M:Physgun.DrawHud(Sandbox.Painter,Vector2)">
            <summary>
            Draws a targeting dot when the physgun is not holding an object.
            </summary>
        </member>
        <member name="P:Physgun.PullConeAngle">
            <summary>
            Half-angle, in degrees, of the cone player aim has to stay within to keep pulling a locked object.
            </summary>
        </member>
        <member name="P:Physgun.PullConeFullStrengthAngle">
            <summary>
            Within this many degrees of the object the pull runs at full strength, fading out towards <see cref="P:Physgun.PullConeAngle"/>.
            </summary>
        </member>
        <member name="P:Physgun.PullConeApexDistance">
            <summary>
            How far in front of player aim the cone's apex is placed when we lock onto an object.
            </summary>
        </member>
        <member name="M:Physgun.UpdatePullLock(Physgun.GrabState,Physgun.GrabState,Transform)">
            <summary>
            Once a gravity pull finds an object it locks onto it, and keeps pulling while our aim stays within
            a cone from an apex in front of us to the object. The apex follows our position.
            </summary>
        </member>
        <member name="M:Physgun.GetPullStrength(Physgun.GrabState,Transform)">
            <summary>
            How strongly we pull, from 1 when aiming at the object down to 0 at the edge of the cone.
            </summary>
        </member>
        <member name="M:Physgun.ApplyPullForce(Physgun.GrabState)">
            <summary>
            Pulls the locked object along the cone, towards its apex.
            </summary>
        </member>
        <member name="M:Physgun.FindPullTarget(Transform,Sandbox.SceneTraceResult)">
            <summary>
            When the aim ray misses, look for something to pull near it.
            </summary>
        </member>
        <member name="M:Physgun.GetRagdoll(Sandbox.Rigidbody)">
            <summary>
            The ragdoll a body is part of, if it's one of its bodies.
            </summary>
        </member>
        <member name="M:Physgun.GetRagdollRoot(Sandbox.Rigidbody)">
            <summary>
            The root body of the ragdoll this body is part of, the same one that drives the ragdoll's transform.
            </summary>
        </member>
        <member name="M:Physgun.FindClosestPoint(Sandbox.Rigidbody,Vector3)">
            <summary>
            The closest point on an object, counting every body of a ragdoll and not just the one we hold.
            </summary>
        </member>
        <member name="F:Physgun.HoldSoundFarDistance">
            <summary>
            The gravity hold loop plays at <see cref="F:Physgun.HoldSoundFarPitch"/> when the object is this far away or further.
            </summary>
        </member>
        <member name="F:Physgun.HoldSoundNearDistance">
            <summary>
            The gravity hold loop plays at full pitch when the object is this close or closer.
            </summary>
        </member>
        <member name="P:Physgun.GrabState.PullApex">
            <summary>
            Gravity pulls only: the pull cone's apex, as a world-space offset from the aim position.
            </summary>
        </member>
        <member name="P:Physgun.GrabState.PullStrength">
            <summary>
            Gravity pulls only: how strongly the object is pulled, depending on how well we aim at it.
            </summary>
        </member>
        <member name="P:Physgun.GrabState.BodyPoint">
            <summary>
            <see cref="P:Physgun.GrabState.EndPoint"/> on the physics body. On a proxy the body chases the latest network transform
            while the object is drawn interpolated, so measure the body against this, not the drawn point.
            </summary>
        </member>
        <member name="P:Physgun.PullForce">
            <summary>
            The force applied to pull objects to us.
            </summary>
        </member>
        <member name="P:Physgun.LaunchForce">
            <summary>
            The force applied when launching grabbed objects.
            </summary>
        </member>
        <member name="P:Physgun.PullDistance">
            <summary>
            The distance at which we'll grab an object when pulling it towards us.
            </summary>
        </member>
        <member name="P:Physgun.KeyboardMoveSpeed">
            <summary>
            How quickly W/S moves a held object while rotate mode is active.
            </summary>
        </member>
        <member name="M:Physgun.ExtendSignal(System.Single)">
            <summary>
            Increases the grab distance using a connected signal.
            </summary>
        </member>
        <member name="M:Physgun.RetractSignal(System.Single)">
            <summary>
            Decreases the grab distance using a connected signal.
            </summary>
        </member>
        <member name="F:Physgun._held">
            <summary>
            The object our joint is moving
            </summary>
        </member>
        <member name="M:Physgun.DropHeld">
            <summary>
            Tells the object we were moving that we let go of it
            </summary>
        </member>
        <member name="M:Physgun.GetProxyHoldTarget">
            <summary>
            The holder's target once the interpolated one is all for what they hold, until then where we grabbed it.
            </summary>
        </member>
        <member name="P:Physgun.HoldFrame">
            <summary>
            The frame <see cref="P:Physgun.GrabState.GrabOffset"/> is relative to: the full aim rotation for gravity
            holds, only the stabilized yaw for beam grabs.
            </summary>
        </member>
        <member name="P:Physgun.CanAim">
            <summary>
            When true, the physgun aims where the seated player's camera looks.
            </summary>
        </member>
        <member name="M:Physgun.AllowsGrab(Sandbox.GameObject)">
            <summary>
            Ask the object if it allows being grabbed (anything can reject via IPhysgunEvent)
            </summary>
        </member>
        <member name="M:Physgun.IsGrabbing(Sandbox.GameObject)">
            <summary>
            Is this physgun holding <paramref name="root"/> or pulling it in? The grab is synced, so this works everywhere.
            </summary>
        </member>
        <member name="M:Physgun.CanMoveFor(Physgun.GrabState@)">
            <summary>
            The holder picks what to grab on their machine, so check it again here before moving it for them.
            </summary>
        </member>
        <member name="T:PhysgunEffectColor">
            <summary>
            Colours a physgun effect (the beam end and the grab ball) in exactly the holder's colour. The prefab's own colours only
            say how bright each part is: particle gradients are turned grey and glowing materials neutral, so nothing else tints them.
            Remembers what the prefab set up, so it can be applied every frame.
            </summary>
        </member>
        <member name="M:PhysgunEffectColor.Apply(Sandbox.GameObject,Color)">
            <summary>
            Colour <paramref name="effect"/> and everything under it in <paramref name="color"/>
            </summary>
        </member>
        <member name="M:PhysgunEffectColor.Neutralize(Sandbox.ModelRenderer)">
            <summary>
            Swaps a glowing material for a copy without its self-illum tint, which goes into the model's original tint instead so it stays as bright
            </summary>
        </member>
        <member name="M:RevolverWeapon.DrawCrosshair(Sandbox.Painter,Vector2)">
            <summary>
            Draws the outlined aiming dot with the current firing status.
            </summary>
        </member>
        <member name="T:RpgProjectile">
            <summary>
            An RPG projectile. It supports either being fired in a set direction, or continuously updated with an end target.
            </summary>
        </member>
        <member name="M:RpgProjectile.UpdateWithTarget(Vector3,System.Single)">
            <summary>
            This is meant to be called continuously, updates the target, rotates slowly to it and moves at a set speed.
            </summary>
            <param name = "target"></param>
            <param name = "speed"></param>
        </member>
        <member name="P:RpgWeapon.IsTrackedAim">
            <summary>
            When enabled, fired rockets will continuously track toward the player's crosshair.
            Toggle with right-click (player) or SecondaryInput (standalone/seat).
            </summary>
        </member>
        <member name="P:RpgWeapon.IsGuiding">
            <summary>
            Whether a live rocket is currently being guided toward the crosshair.
            </summary>
        </member>
        <member name="M:RpgWeapon.OnPrimaryDown">
            <summary>
            Standalone / seat control — uses SecondaryInput to toggle tracking.
            </summary>
        </member>
        <member name="M:RpgWeapon.GetAimTarget">
            <summary>
            Traces from AimRay and returns the world-space point the player is looking at.
            </summary>
        </member>
        <member name="M:RpgWeapon.CheckThrowPosition(Player,Vector3,Vector3)">
            <summary>
            Muzzle flash + launch sound. Plays for the shooter (predicted) and, via the host relay, everyone else.
            </summary>
        </member>
        <member name="M:RpgWeapon.CreateProjectile(Vector3,Vector3,System.Single)">
            <summary>
            Creates the projectile with the host's permission
            </summary>
        </member>
        <member name="M:RpgWeapon.DrawCrosshair(Sandbox.Painter,Vector2)">
            <summary>
            Draws a diamond for guided aim or a square for an unguided rocket.
            </summary>
        </member>
        <member name="M:ScreenWeapon.PlayToolEffects(Transform)">
            <summary>Play the shared tool beam (including its sound), impact and viewmodel animation.</summary>
        </member>
        <member name="F:ScreenWeapon.TransitionDuration">
            <summary>
            How long a screen transition lasts after <see cref="M:ScreenWeapon.StartScreenTransition"/>
            </summary>
        </member>
        <member name="F:ScreenWeapon.TransitionIntensity">
            <summary>
            How bright the screen flares at the start of a transition, fading back to 1
            </summary>
        </member>
        <member name="M:ScreenWeapon.StartScreenTransition">
            <summary>
            Starts a transition on the screen, drawn by <see cref="M:ScreenWeapon.DrawScreenContent(Sandbox.Rect,Sandbox.Painter)"/> using <see cref="P:ScreenWeapon.TransitionProgress"/>
            </summary>
        </member>
        <member name="P:ScreenWeapon.InScreenTransition">
            <summary>
            A transition from <see cref="M:ScreenWeapon.StartScreenTransition"/> is still running
            </summary>
        </member>
        <member name="P:ScreenWeapon.TransitionProgress">
            <summary>
            How far through the current transition the screen is, 0 to 1
            </summary>
        </member>
        <member name="P:ScreenWeapon.ScreenMaterialName">
            <summary>
            Override to match a different model's screen material.
            </summary>
        </member>
        <member name="P:ScreenWeapon.ScreenMaterialPath">
            <summary>
            Override to use a different screen material
            </summary>
        </member>
        <member name="P:ScreenWeapon.ScreenTextureSize">
            <summary>
            Size of the screen texture. The toolgun's dot matrix shader draws one dot per pixel.
            </summary>
        </member>
        <member name="P:ScreenWeapon.ScreenRefreshInterval">
            <summary>
            Minimum time in seconds between screen redraws
            </summary>
        </member>
        <member name="M:ScreenWeapon.SpinCoil">
            <summary>
            Add energy to the coil spin (e.g. on fire).
            </summary>
        </member>
        <member name="M:ScreenWeapon.ApplyCoilSpin">
            <summary>
            Smoothly decays the coil spin and applies it to the viewmodel's "coil" object.
            </summary>
        </member>
        <member name="M:ScreenWeapon.UpdateJoystick(Angles)">
            <summary>
            Updates joystick_x and joystick_y on the viewmodel based on a per-frame look delta.
            </summary>
        </member>
        <member name="M:ScreenWeapon.UpdateViewmodelScreen">
            <summary>
            Updates the viewmodel screen render target and redraws it.
            </summary>
        </member>
        <member name="M:ScreenWeapon.DrawScreenContent(Sandbox.Rect,Sandbox.Painter)">
            <summary>
            Override this to draw custom content onto the viewmodel screen.
            </summary>
        </member>
        <member name="M:ShotgunWeapon.DrawCrosshair(Sandbox.Painter,Vector2)">
            <summary>
            Draws a smooth spread ring and aiming dot with the current firing status.
            </summary>
        </member>
        <member name="T:SniperViewModel">
            <summary>
            Sniper viewmodel helper. Moves the weapon down during scope transitions.
            </summary>
        </member>
        <member name="M:SniperWeapon.ModifyCamera(Sandbox.CameraComponent,Sandbox.CameraView@)">
            <summary>
            Scoped zoom goes through the engine's camera modifier chain - one owner for the FOV, no
            fighting the player's preference FOV write.
            </summary>
        </member>
        <member name="M:SniperWeapon.DrawHud(Sandbox.Painter,Vector2)">
            <summary>
            Updates the scope overlay while scoped, otherwise draws the targeting dot.
            </summary>
        </member>
        <member name="M:SniperWeapon.DrawCrosshair(Sandbox.Painter,Vector2)">
            <summary>
            Draws an outlined targeting dot showing whether the weapon can fire.
            </summary>
        </member>
        <member name="M:SniperWeapon.UpdateScopeOverlay">
            <summary>
            Updates the scope's blur from mouse movement and player velocity.
            </summary>
        </member>
        <member name="T:IResizeConstraint">
            <summary>Limits the world scale the resizer tool can apply to an object.</summary>
        </member>
        <member name="T:IToolActionEvents">
            <summary>
            Allows listening to tool actions across the scene.
            Implement this on a <see cref="T:Sandbox.Component"/> to receive callbacks before and after any tool action fires.
            Use this to enforce limits (e.g. max balloons, max constraints) or react to tool usage.
            Runs on the host, from the RPC that carries the action out, so a cancel can't be skipped by the client.
            Actions that never reach the host, like cycling a tool's local settings, don't fire it.
            </summary>
        </member>
        <member name="T:IToolActionEvents.ActionData">
            <summary>
            Data passed to <see cref="M:IToolActionEvents.OnToolAction(IToolActionEvents.ActionData)"/>. Set <see cref="P:IToolActionEvents.ActionData.Cancelled"/> to true to prevent the action.
            </summary>
        </member>
        <member name="P:IToolActionEvents.ActionData.Tool">
            <summary>
            The tool mode that is about to execute.
            Check <c>e.Tool is BalloonTool</c>, <c>e.Tool is WeldTool</c>, etc. for tool-specific logic.
            </summary>
        </member>
        <member name="P:IToolActionEvents.ActionData.Input">
            <summary>
            Which input triggered this action.
            </summary>
        </member>
        <member name="P:IToolActionEvents.ActionData.Player">
            <summary>
            The connection of the player performing the action.
            </summary>
        </member>
        <member name="P:IToolActionEvents.ActionData.Cancelled">
            <summary>
            Set to true to cancel the action.
            </summary>
        </member>
        <member name="T:IToolActionEvents.PostActionData">
            <summary>
            Data passed to <see cref="M:IToolActionEvents.OnPostToolAction(IToolActionEvents.PostActionData)"/> after a successful action.
            </summary>
        </member>
        <member name="P:IToolActionEvents.PostActionData.Tool">
            <summary>
            The tool mode that executed the action.
            </summary>
        </member>
        <member name="P:IToolActionEvents.PostActionData.Input">
            <summary>
            Which input triggered this action.
            </summary>
        </member>
        <member name="P:IToolActionEvents.PostActionData.Player">
            <summary>
            The connection of the player who performed the action.
            </summary>
        </member>
        <member name="P:IToolActionEvents.PostActionData.CreatedObjects">
            <summary>
            GameObjects created by this action, if any.
            </summary>
        </member>
        <member name="M:IToolActionEvents.OnToolAction(IToolActionEvents.ActionData)">
            <summary>
            Called before a tool action executes.
            Set <see cref="P:IToolActionEvents.ActionData.Cancelled"/> to true to reject the action.
            </summary>
        </member>
        <member name="M:IToolActionEvents.OnPostToolAction(IToolActionEvents.PostActionData)">
            <summary>
            Called after a tool action has executed successfully.
            </summary>
        </member>
        <member name="P:BaseConstraintToolMode.Configuration">
            <summary>
            What <see cref="M:BaseConstraintToolMode.WriteConstraintConfiguration"/> sent with the constraint, on the host while <see cref="M:BaseConstraintToolMode.CreateConstraint(ToolMode.SelectionPoint,ToolMode.SelectionPoint)"/> runs.
            </summary>
        </member>
        <member name="M:BaseConstraintToolMode.FindConstraints(Sandbox.GameObject,Sandbox.GameObject)">
            <summary>
            Lets tools define what constraints should be removed when removing constraints from a game object.
            </summary>
            <param name="linked"></param>
            <param name="target"></param>
            <returns></returns>
        </member>
        <member name="M:BaseConstraintToolMode.WriteConstraintConfiguration">
            <summary>
            Settings for the entity the constraint carries, sent to the host with it, see <see cref="M:ToolMode.WriteConfiguration``1"/>.
            </summary>
        </member>
        <member name="M:BaseConstraintToolMode.OnConstraintSubmitted(ToolMode.SelectionPoint,ToolMode.SelectionPoint)">
            <summary>
            Called on the owning client after a valid constraint creation was submitted to the host.
            Follow-up RPCs are ordered after the constraint creation RPC.
            </summary>
        </member>
        <member name="T:ButtonMode">
            <summary>
            Determines whether the button is active only briefly when pressed, or alternates
            between on and off for each press.
            </summary>
        </member>
        <member name="T:CloudDecals">
            <summary>
            Cloud decals that ship with the game. Each ident must be a string literal inside
            <see cref="M:Sandbox.Cloud.Asset(System.String)"/> so the code generator picks it up as a package
            dependency, which mounts it and makes it show up in the decal tool's resource grid.
            </summary>
        </member>
        <member name="F:DecalTool.ScaleSpeed">
            <summary>
            How fast we're scaling this decal depending on player's mouse input
            </summary>
        </member>
        <member name="P:DecalTool.Attenuation">
            <summary>
            Multiplies the decal's own attenuation angle, lower fades less at grazing angles.
            </summary>
        </member>
        <member name="P:DecalTool.ApplyRandomRotation">
            <summary>
            If enabled, each decal will be applied with random rotation
            </summary>
        </member>
        <member name="P:DecalTool.ReloadAction">
            <summary>
            The rotation hint is pointless when random rotation is enabled, hide it if true
            </summary>
        </member>
        <member name="P:DecalTool.ReloadSecondaryAction">
            <summary>
            Reload and secondary held together scale the decal
            </summary>
        </member>
        <member name="F:DecalTool._sprayId">
            <summary>
            Owner-side id of the current spray
            </summary>
        </member>
        <member name="F:DecalTool._sprayUndo">
            <summary>
            Host-side undo entry for the spray identified by <see cref="F:DecalTool._hostSprayId"/>.
            </summary>
        </member>
        <member name="F:DecalTool._preview">
            <summary>
            Local client preview of the selected decal where the player is looking
            </summary>
        </member>
        <member name="M:DecalTool.SpawnDecal(ToolMode.SelectionPoint,Sandbox.DecalDefinition,Color,System.Single,System.Single,System.Single,System.Int32)">
            <summary>
            Spawn a decal on the host. A non-zero <paramref name = "sprayId"/> groups the decal with
            every other decal sent with the same id into a single undo entry.
            The settings come with the call, since only the owner has their current values.
            </summary>
        </member>
        <member name="M:DecalTool.GetUndoEntry(System.Int32)">
            <summary>
            The spray has no explicit end, the entry is created lazily with its first decal, so it is registered no matter how painting stops. 
            A new spray id, or the entry leaving the history (undone mid-spray, evicted, stack cleared), starts a new entry
            </summary>
        </member>
        <member name="T:DuplicationData">
            <summary>
            Holds a bunch of GameObject json, a bounding box, and some preview models for a
            duplication. This is what gets serialized to a string and stored in the Duplicator tool.
            The objects and the bounds are created in selection space. Where the user right clicked to 
            select is 0,0,0, and the player's view yaw is the rotation identity.
            </summary>
        </member>
        <member name="P:DuplicationData.Objects">
            <summary>
            An array of JsonObject objects, which are serialzed GameObjects
            </summary>
        </member>
        <member name="P:DuplicationData.Bounds">
            <summary>
            The bounds are used to work out where to place the duplication, so it
            doesn't clip through the floor.
            </summary>
        </member>
        <member name="T:DuplicationData.PreviewModel">
            <summary>
            Describes where to draw a model for the preview
            </summary>
        </member>
        <member name="M:DuplicationData.PreviewModel.#ctor(Sandbox.Model,Transform,Transform[],BBox)">
            <summary>
            Describes where to draw a model for the preview
            </summary>
        </member>
        <member name="P:DuplicationData.PreviewModels">
            <summary>
            A list of preview models to help visualze where the duplication will be placed
            </summary>
        </member>
        <member name="P:DuplicationData.Packages">
            <summary>
            Packages used in this
            </summary>
        </member>
        <member name="M:DuplicationData.CreateFromObjects(System.Collections.Generic.IEnumerable{Sandbox.GameObject},Transform)">
            <summary>
            Create DuplicationData from a bunch of objects.
            center is the transform to use as the origin for the duplication.
            The rotation of center should be the player's view yaw when they made the selection.
            </summary>
        </member>
        <member name="M:DuplicatorTool.RenderIconToBitmap(System.String,Sandbox.Bitmap)">
            <summary>
            Render duplicator Json to a bitmap
            </summary>
        </member>
        <member name="P:DuplicatorTool.CopiedJson">
            <summary>
            When we right click, to "copy" something, we create a Duplication object
            and serialize it to Json and store it here.
            </summary>
        </member>
        <member name="P:DuplicatorTool.AlignToSurface">
            <summary>
            While held, the duplication's up axis follows the surface normal instead of world up
            </summary>
        </member>
        <member name="P:DuplicatorTool.ReloadAction">
            <summary>
            Shows the rotation hint while a duplication is available to place.
            </summary>
        </member>
        <member name="M:DuplicatorTool.OnControl">
            <summary>
            Handles copying, placing, and rotating the duplication while reload is held.
            </summary>
        </member>
        <member name="M:DuplicatorTool.Save">
            <summary>
            Save the current dupe to storage.
            </summary>
        </member>
        <member name="P:LinkedGameObjectBuilder.RejectPlayers">
            <summary>
            Reject players and any objects with players as descendants. This is used for the duplicator to avoid accidentally duping the player and all their attachments.
            </summary>
        </member>
        <member name="M:LinkedGameObjectBuilder.Add(Sandbox.GameObject)">
            <summary>
            Adds a GameObject. Won't find connections.
            </summary>
        </member>
        <member name="M:LinkedGameObjectBuilder.AddConnected(Sandbox.GameObject)">
            <summary>
            Add a GameObject with all connected GameObjects
            </summary>
        </member>
        <member name="P:EmitterTool.BaseDef">
            <summary>
            The physical emitter body to spawn (model + physics).
            </summary>
        </member>
        <member name="P:EmitterTool.EffectDef">
            <summary>
            The particle/VFX effect the emitter will produce.
            </summary>
        </member>
        <member name="M:GravityTool.ResolveTarget(Sandbox.GameObject)">
            <summary>
            Check if we're hitting an object with model physics or regular rigidbody prop
            </summary>
        </member>
        <member name="P:HoverballEntity.TargetZ">
            <summary>
            The world Z position the hoverball is trying to maintain.
            </summary>
        </member>
        <member name="P:HoverballEntity.Speed">
            <summary>
            How fast the target height changes when inputs are held.
            </summary>
        </member>
        <member name="P:HoverballEntity.AirResistance">
            <summary>
            Horizontal air resistance applied while hovering. Also increases vertical damping.
            </summary>
        </member>
        <member name="P:HoverballEntity.IsEnabled">
            <summary>
            Is the hoverball on?
            </summary>
        </member>
        <member name="P:HoverballEntity.Up">
            <summary>
            While held, raises the hover target.
            </summary>
        </member>
        <member name="P:HoverballEntity.Down">
            <summary>
            While held, lowers the hover target.
            </summary>
        </member>
        <member name="P:HoverballEntity.Toggle">
            <summary>
            Toggles the hoverball on/off
            </summary>
        </member>
        <member name="T:BallSocketPairEntity">
            <summary>
            A pair of ball sockets, we try to align the balls towards eachother.
            </summary>
        </member>
        <member name="T:BaseLengthConstraintTool">
            <summary>
            Shared geometry for two-point length-changing constraints (Hydraulic, Muscle, Winch):
            a shaft between two capped anchors, driven by a <see cref="T:Sandbox.SliderJoint"/>.
            </summary>
        </member>
        <member name="T:LengthConstraintEntity">
            <summary>
            A length-changing constraint: a SliderJoint whose length is puppeted between MinLength
            and MaxLength by player input, wires, or an idle animation loop. Hydraulic, Muscle and
            Winch are the same component with different presentation and defaults - <see cref="P:LengthConstraintEntity.Kind"/>
            just picks which one this instance is, for undo names, tool info and wiring titles.
            </summary>
        </member>
        <member name="P:LengthConstraintEntity.Activate">
            <summary>
            While the input is active we'll extend towards full length
            </summary>
        </member>
        <member name="P:LengthConstraintEntity.Position">
            <summary>
            Emits the current 0-1 extension whenever it changes. Wire it into a gauge, a
            dependent mechanism, or another length constraint's Push/Pull to gang two rams together.
            </summary>
        </member>
        <member name="P:MaterialTool.MaterialPath">
            <summary>
            The material to apply, a local path or a workshop package ident.
            </summary>
        </member>
        <member name="T:MotorEntity">
            <summary>
            Drives a <see cref="T:Sandbox.HingeJoint"/> at a continuous angular velocity — a spinning axle,
            turntable, or wheel that isn't a ground-contact wheel.
            </summary>
        </member>
        <member name="P:MotorEntity.StartActive">
            <summary>
            Spins on its own as soon as it's created, without needing a driver or a wire signal.
            </summary>
        </member>
        <member name="P:MotorEntity.Forward">
            <summary>
            While held, spins forward regardless of <see cref="P:MotorEntity.Reversed"/> or <see cref="P:MotorEntity.StartActive"/>.
            </summary>
        </member>
        <member name="P:MotorEntity.Reverse">
            <summary>
            While held, spins backward regardless of <see cref="P:MotorEntity.Reversed"/> or <see cref="P:MotorEntity.StartActive"/>.
            </summary>
        </member>
        <member name="P:MotorEntity.AngleOutput">
            <summary>
            Emits the joint's current angle, normalized so a full turn is 1.0 — wire it into a
            gauge, or into another motor's Forward/Reverse to sync two axles.
            </summary>
        </member>
        <member name="P:MotorTool.FlipAxis">
            <summary>
            The spin axis is the surface normal where you make the first selection - this flips it
            180 degrees, which is only useful in combination with <see cref = "P:MotorTool.Reversed"/> and a limit range.
            </summary>
        </member>
        <member name="T:SpawnerTool">
            <summary>
            Previews and places objects into the world.
            Accepts any <see cref="T:ISpawner"/> to define what to spawn.
            The spawn menu (or any other system) sets the payload, and this mode handles
            aiming, previewing, and placement.
            </summary>
        </member>
        <member name="P:SpawnerTool.SpawnerData">
            <summary>
            Synced payload descriptor. When this changes on any client,
            <see cref = "M:SpawnerTool.OnPayloadDataChanged"/> reconstructs the <see cref = "T:ISpawner"/> locally.
            </summary>
        </member>
        <member name="P:SpawnerTool.Spawner">
            <summary>
            The local spawner, built from <see cref="P:SpawnerTool.SpawnerData"/>.
            </summary>
        </member>
        <member name="F:SpawnerTool._isRotating">
            <summary>
            True while the player is holding reload to rotate the preview.
            </summary>
        </member>
        <member name="F:SpawnerTool._rotationOffset">
            <summary>
            Accumulated rotation offset applied to the spawn preview.
            </summary>
        </member>
        <member name="P:SpawnerTool.UseSnapGrid">
            <summary>
            Hold snap to steer the aim onto the grid, so placement lands on grid points.
            </summary>
        </member>
        <member name="M:SpawnerTool.SetSpawner(ISpawner)">
            <summary>
            Set what this mode should spawn. Host only, syncs to all clients via <see cref="P:SpawnerTool.SpawnerData"/>.
            </summary>
        </member>
        <member name="M:SpawnerTool.ClearPayload">
            <summary>
            Clear the current payload, returning to an idle state.
            </summary>
        </member>
        <member name="M:SpawnerTool.OnPayloadDataChanged">
            <summary>
            Called on every client when <see cref="P:SpawnerTool.SpawnerData"/> changes.
            Reconstructs the <see cref="T:ISpawner"/> locally so each client can render the preview.
            </summary>
        </member>
        <member name="M:SpawnerTool.SerializeSpawner(ISpawner)">
            <summary>
            Serialize a spawner for networking, including its <see cref="P:ISpawner.Metadata"/>
            so clients build it the same as the host, even if they're missing its content.
            </summary>
        </member>
        <member name="M:SpawnerTool.DeserializeSpawner(System.String)">
            <summary>
            Reconstruct an <see cref="T:ISpawner"/> from <see cref="M:SpawnerTool.SerializeSpawner(ISpawner)"/>
            </summary>
        </member>
        <member name="M:SpawnerTool.OnControl">
            <summary>
            Handles placing, clearing, and rotating the preview while reload is held.
            </summary>
        </member>
        <member name="T:StackDirection">
            <summary>
            Direction to stack objects in.
            </summary>
        </member>
        <member name="T:StackAlignMode">
            <summary>
            How to interpret the stack direction axis.
            </summary>
        </member>
        <member name="F:StackAlignMode.World">
            <summary>
            Stack along world-space axes regardless of object orientation.
            </summary>
        </member>
        <member name="F:StackAlignMode.Object">
            <summary>
            Stack along the target object's local axes.
            </summary>
        </member>
        <member name="P:StackerTool.StackCount">
            <summary>
            Number of copies to create.
            </summary>
        </member>
        <member name="P:StackerTool.AngleOffsetX">
            <summary>
            Rotation offset (degrees) around the first perpendicular axis of the stack direction.
            For Up/Down stacking this rotates around the right axis.
            </summary>
        </member>
        <member name="P:StackerTool.AngleOffsetY">
            <summary>
            Rotation offset (degrees) around the second perpendicular axis of the stack direction.
            For Up/Down stacking this rotates around the forward axis.
            </summary>
        </member>
        <member name="P:StackerTool.PositionOffset">
            <summary>
            Extra gap (in units) between each stacked copy.
            </summary>
        </member>
        <member name="P:StackerTool.Direction">
            <summary>
            Which direction to stack in.
            </summary>
        </member>
        <member name="P:StackerTool.AlignMode">
            <summary>
            Whether to align the stack axis to the world or the target object.
            </summary>
        </member>
        <member name="P:StackerTool.FreezeAll">
            <summary>
            When true, stacked copies will be frozen (motion disabled).
            </summary>
        </member>
        <member name="M:StackerTool.ResolveRoot(Sandbox.GameObject)">
            <summary>
            Resolve to the networked root object so we clone the full prop, not a child collider.
            </summary>
        </member>
        <member name="M:StackerTool.CycleDirection">
            <summary>
            Cycle through stack directions on reload.
            </summary>
        </member>
        <member name="M:StackerTool.CycleAlignment">
            <summary>
            Toggle between world and object alignment.
            </summary>
        </member>
        <member name="M:StackerTool.IsValidTarget(ToolMode.SelectionPoint)">
            <summary>
            Check if the aimed-at object is a valid stacking target.
            </summary>
        </member>
        <member name="M:StackerTool.GetLocalDirection(StackDirection)">
            <summary>
            Get the local-space direction vector for the configured <see cref="P:StackerTool.Direction"/>.
            </summary>
        </member>
        <member name="M:StackerTool.GetPerpendicularAxes(StackDirection)">
            <summary>
            Get the two perpendicular axes for a given stack direction.
            X and Y angle offsets rotate around these respectively.
            </summary>
        </member>
        <member name="M:StackerTool.GetStepRotation">
            <summary>
            Build the per-step rotation from the X/Y angle offsets around the
            two axes perpendicular to the stack direction.
            </summary>
        </member>
        <member name="M:StackerTool.GetStackExtent(Sandbox.GameObject,Vector3)">
            <summary>
            Compute how far apart copies should be along the stack axis by projecting
            the object's oriented bounding box corners onto the actual world-space axis.
            </summary>
        </member>
        <member name="M:StackerTool.ComputeStackTransforms(Sandbox.GameObject)">
            <summary>
            Compute the world transforms for all stacked copies using iterative placement.
            Each copy is positioned relative to the previous one, so angle offsets
            produce correct arcs and circles rather than spirals.
            </summary>
        </member>
        <member name="M:StackerTool.DrawStackPreview(Sandbox.GameObject,Transform[])">
            <summary>
            Render ghost previews of each stacked copy.
            </summary>
        </member>
        <member name="M:StackerTool.SpawnStack(Sandbox.GameObject)">
            <summary>
            Server-side spawn: recomputes transforms from synced properties to prevent
            clients from sending arbitrary placement data.
            </summary>
        </member>
        <member name="T:HighlightedRenderers">
            <summary>
            Which renderers an outline effect is drawing around, and in what colour. Worked out once a frame, the first time someone asks,
            for things that can't be outlined by the effect and draw the highlight themselves, like <see cref="T:TextEntity"/>.
            </summary>
        </member>
        <member name="M:HighlightedRenderers.TryGet(Sandbox.Renderer,Color@)">
            <summary>
            The colour of the first active outline drawing around <paramref name="renderer"/>, if any is.
            </summary>
        </member>
        <member name="T:TextEntity">
            <summary>
            Text placed in the world
            </summary>
        </member>
        <member name="F:TextEntity.Thickness">
            <summary>
            How thick the box we trace and grab against is.
            </summary>
        </member>
        <member name="P:TextEntity.Size">
            <summary>
            Height of the font in world units.
            </summary>
        </member>
        <member name="P:TextEntity.Falls">
            <summary>
            Whether the text falls. Only when it collides, so there's something to land on.
            </summary>
        </member>
        <member name="P:TextEntity.Style">
            <summary>
            The look of the text, from its properties
            </summary>
        </member>
        <member name="F:TextEntity._text">
            <summary>
            What we show, never empty. Text with nothing in it couldn't be seen or picked again, so an edit that erases it all keeps the last text.
            </summary>
        </member>
        <member name="M:TextEntity.OnEnabled">
            <summary>
            Builds the text as soon as we're on, the same frame as the renderer, so we avoid seeing engine placeholder text 
            </summary>
        </member>
        <member name="M:TextEntity.SettingsHash">
            <summary>
            Changes with any of the settings, so a frame where none did costs a hash rather than a new <see cref="P:TextEntity.Style"/>.
            </summary>
        </member>
        <member name="M:TextEntity.FindHighlight">
            <summary>
            The colour of an outline effect drawing around us, like the inspector's selection or the physgun's hold.
            Those only draw around models, so we draw the highlight into the text ourselves.
            </summary>
        </member>
        <member name="F:TextTool.SurfaceOffset">
            <summary>
            Offset from the surface to avoid collision clashing
            </summary>
        </member>
        <member name="M:TextTool.GetPlacement(ToolMode.SelectionPoint)">
            <summary>
            Where the text goes for a point on a surface. It faces out of the surface and stands upright on walls,
            on floors and ceilings its top points the way we're looking so it reads the right way round.
            </summary>
        </member>
        <member name="F:TextTool.PreviewOpacityStep">
            <summary>
            Every text style is a cached text block, so the pulse moves in steps rather than making a new one each frame
            </summary>
        </member>
        <member name="F:TextTool._preview">
            <summary>
            Local client preview of the text where the player is looking
            </summary>
        </member>
        <member name="M:TextTool.SpawnText(Transform,System.String,System.String,System.Boolean,System.Boolean)">
            <summary>
            Spawn the text on the host. The settings come with the call, the look as a <see cref = "T:WorldTextStyle"/>, since only the owner has their current values.
            </summary>
        </member>
        <member name="T:WorldTextStyle">
            <summary>
            How a placed text looks, everything apart from what it says. The text tool and <see cref="T:TextEntity"/> both show these
            as properties of their own, this carries them from one to the other and turns them into what the renderer draws.
            Lengths are world units, like the font size.
            </summary>
        </member>
        <member name="F:WorldTextStyle.RenderScale">
            <summary>
            The text is laid out this many times bigger than it shows and scaled down, so small sizes keep their shape.
            </summary>
        </member>
        <member name="M:WorldTextStyle.Clamped">
            <summary>
            This style kept within the limits, for values that came from someone else. Numbers that aren't numbers go back to the defaults.
            </summary>
        </member>
        <member name="M:WorldTextStyle.ClampText(System.String)">
            <summary>
            The text cut down to <see cref="F:WorldTextStyle.MaxLength"/>.
            </summary>
        </member>
        <member name="M:WorldTextStyle.Faded(System.Single)">
            <summary>
            This style see-through by <paramref name="opacity"/>, its outline and shadow too.
            </summary>
        </member>
        <member name="M:WorldTextStyle.CreateScope(System.String,System.Nullable{Color},System.Single)">
            <summary>
            What the renderer draws for <paramref name="text"/> in this style. A highlight is drawn as an outline around
            everything else, for when an outline effect wants to draw around the text but can't since it isn't a model.
            </summary>
        </member>
        <member name="M:WorldTextStyle.Measure(System.String)">
            <summary>
            The size in world units of the text drawn in this style, effects included.
            </summary>
        </member>
        <member name="M:WorldTextStyle.Estimate(System.String)">
            <summary>
            We can't get exact size by <see cref="M:WorldTextStyle.Measure(System.String)"/> when we're from dedicated server, so fuck it and just try using approximate colliders instead.
            </summary>
        </member>
        <member name="M:WorldTextStyle.Apply(Sandbox.TextRenderer,Sandbox.TextRendering.Scope)">
            <summary>
            Puts the text on a renderer in this style, at its size in the world.
            </summary>
        </member>
        <member name="T:PropellerEntity">
            <summary>
            Attach to a thruster GameObject to spin a target model based on thrust output.
            The model spins around its local up axis proportional to ThrustAmount.
            </summary>
        </member>
        <member name="P:PropellerEntity.Target">
            <summary>
            The model renderer to spin.
            </summary>
        </member>
        <member name="P:PropellerEntity.SpinSpeed">
            <summary>
            Spin speed in full rotations per second at maximum thrust.
            </summary>
        </member>
        <member name="P:ThrusterEntity.Activate">
            <summary>
            While this input is active we'll apply thrust
            </summary>
        </member>
        <member name="P:ThrusterEntity.Reverse">
            <summary>
            While this input is active we'll apply thrust in the opposite direction
            </summary>
        </member>
        <member name="P:ThrusterEntity._defaultSound">
            <summary>
            The fallback sound for all thrusters.
            </summary>
        </member>
        <member name="P:ThrusterEntity.ThrusterSound">
            <summary>
            Looping sound played while the thruster is active.
            </summary>
        </member>
        <member name="P:ThrusterEntity.ThrustAmount">
            <summary>
            Current thrust output, -1 to 1. Updated every control frame.
            </summary>
        </member>
        <member name="M:WeldTool.SnapSelectionPoint(ToolMode.SelectionPoint)">
            <summary>
            Overrides a SelectionPoint's local position to the nearest snap grid corner
            </summary>
        </member>
        <member name="M:WeldTool.RotateStage">
            <summary>
            Stage 2: mouse controls rotation, shift snaps to 15° grid, attack1 confirms, attack2 cancels.
            </summary>
        </member>
        <member name="M:WeldTool.TryEnterRotateStage">
            <summary>
            Intercept the Stage 1 click to enter rotation stage instead of finalizing.
            </summary>
        </member>
        <member name="M:WeldTool.UpdateRotationInput">
            <summary>
            Accumulate mouse yaw into rotation, with optional shift-to-snap.
            </summary>
        </member>
        <member name="M:WeldTool.DrawEasyModePreview(Transform)">
            <summary>
            Draw a ghost preview of the source object and all its connected objects at the given placement.
            </summary>
        </member>
        <member name="M:WheelOverlay.DrawDirection(Vector3,Vector3,Vector3,System.Single,System.Boolean)">
            <summary>
            Draws a spinning direction arrow overlay on a wheel face.
            </summary>
            <param name="position">Center of the wheel.</param>
            <param name="spinAxis">The wheel's spin axis (points outward from the wheel face).</param>
            <param name="stableUp">A stable up reference that doesn't rotate with the wheel.</param>
            <param name="radius">Visual radius of the overlay.</param>
            <param name="reversed">Whether the spin direction is reversed.</param>
        </member>
        <member name="T:SnapGrid">
            <summary>
            Manages a world-space snap grid overlay projected onto a surface plane.
            </summary>
        </member>
        <member name="P:SnapGrid.GridSize">
            <summary>
            Fallback half-extent used when the hovered object has no usable bounds.
            </summary>
        </member>
        <member name="P:SnapGrid.LastSnapWorldPos">
            <summary>
            The snapped world-space position of the highlighted corner
            </summary>
        </member>
        <member name="M:SnapGrid.ComputeSnap(Vector3,Vector3,Vector3,System.Single,Vector3)">
            <summary>
            Returns the nearest grid corner index (cx, cy) and its world-space position,
            given the face plane in world space and the aim world position.
            </summary>
        </member>
        <member name="M:SnapGrid.Update(Sandbox.SceneWorld,Sandbox.GameObject,Vector3,Vector3)">
            <summary>
            Updates the collision-based snap target and render-mesh overlay.
            After calling, read <see cref="P:SnapGrid.LastSnapWorldPos"/> for a snapped position
            </summary>
        </member>
        <member name="M:SnapGrid.Hide">
            <summary>
            Hide the overlay
            </summary>
        </member>
        <member name="M:SnapGrid.GetObjectOBB(Sandbox.GameObject)">
            <summary>
            Returns the OBB (oriented bounding box) of <paramref name="go"/> in world space.
            Prefers model-local bounds (tight, rotation-aware) over collider world AABB.
            </summary>
        </member>
        <member name="M:SnapGrid.ProjectOntoPlane(Vector3,Vector3,Vector3)">
            <summary>
            Projects <paramref name="point"/> onto the plane defined by <paramref name="planePoint"/> and <paramref name="normal"/>.
            </summary>
        </member>
        <member name="M:SnapGrid.ProjectedHalfExtents(Vector3,Rotation,Vector3,Vector3)">
            <summary>
            Returns the half-extents of an OBB projected along <paramref name="right"/> and <paramref name="up"/>.
            Uses the OBB support function, which correctly handles rotated objects.
            </summary>
        </member>
        <member name="M:SnapGrid.Destroy">
            <summary>
            Destroys the underlying scene object.
            </summary>
        </member>
        <member name="T:ToolInput">
            <summary>
            Identifies which toolgun input slot an action is bound to.
            </summary>
        </member>
        <member name="T:InputMode">
            <summary>
            How the input is sampled each frame.
            </summary>
        </member>
        <member name="F:InputMode.Pressed">
            <summary>
            Fires once when the button is first pressed.
            </summary>
        </member>
        <member name="F:InputMode.Down">
            <summary>
            Fires every frame while the button is held.
            </summary>
        </member>
        <member name="T:ToolActionEntry">
            <summary>
            A registered tool action. Stores the input binding, a dynamic display-name lambda,
            the callback to invoke, and the input sampling mode.
            </summary>
        </member>
        <member name="M:ToolActionEntry.#ctor(ToolInput,System.Func{System.String},System.Action,InputMode)">
            <summary>
            A registered tool action. Stores the input binding, a dynamic display-name lambda,
            the callback to invoke, and the input sampling mode.
            </summary>
        </member>
        <member name="P:ToolActionEntry.InputAction">
            <summary>
            The engine input action string for this <see cref="T:ToolInput"/>.
            </summary>
        </member>
        <member name="M:ToolMode.WriteConfiguration``1">
            <summary>
            This tool's <see cref="T:Sandbox.PropertyAttribute"/> settings that share a name and type with <typeparamref name="T"/>'s <see cref="T:Sandbox.ClientEditableAttribute"/> properties,
            as JSON for a spawn RPC, since only the owner has their current values. See <see cref="M:ToolMode.ApplyConfiguration(Sandbox.Component,System.String)"/>.
            </summary>
        </member>
        <member name="M:ToolMode.ApplyConfiguration(Sandbox.Component,System.String)">
            <summary>
            Host side of <see cref="M:ToolMode.WriteConfiguration``1"/>: sets the settings on a newly placed entity, only ever its
            <see cref="T:Sandbox.ClientEditableAttribute"/> properties, the same ones its context menu can change.
            </summary>
        </member>
        <member name="T:ToolMode.SelectionPoint">
            <summary>
            A point in the world selected by the current player's toolgun. We try to keep this as minimal as possible
            while catering for as much as possible.
            </summary>
        </member>
        <member name="M:ToolMode.SelectionPoint.IsValid">
            <summary>
            Returns true if GameObject is valid - which means we hit something
            </summary>
        </member>
        <member name="M:ToolMode.SelectionPoint.WorldPosition">
            <summary>
            Returns the position of the hit - in the world space. This is the transformed position of the LocalTransform relative to the GameObject.
            </summary>
            <returns></returns>
        </member>
        <member name="M:ToolMode.SelectionPoint.WorldTransform">
            <summary>
            Returns the transform of the hit
            </summary>
            <returns></returns>
        </member>
        <member name="P:ToolMode.SelectionPoint.IsWorld">
            <summary>
            Returns true if this object is a part of the static map
            </summary>
        </member>
        <member name="P:ToolMode.SelectionPoint.IsPlayer">
            <summary>
            Returns true if this object is a player
            </summary>
        </member>
        <member name="M:ToolMode.TraceFromRay(Ray,System.Single,Sandbox.GameObject)">
            <summary>
            Get a SelectionPoint along a ray.
            </summary>
        </member>
        <member name="M:ToolMode.TraceSelect">
            <summary>
            Get a SelectionPoint from the tool gun owner's eyes.
            </summary>
        </member>
        <member name="M:ToolMode.GetEasyModePlacement(ToolMode.SelectionPoint,ToolMode.SelectionPoint)">
            <summary>
            Given a clicked point on a, and a clicked point on b, return a transform that places the objects so the points are touching
            </summary>
        </member>
        <member name="M:ToolMode.ApplyPhysicsProperties(Sandbox.GameObject)">
            <summary>
            Helper to apply physics properties from a model to a GameObject's <see cref="T:Sandbox.Rigidbody"/>
            </summary>
            <param name="go"></param>
        </member>
        <member name="P:ToolMode.UseSnapGrid">
            <summary>
            When true (default), a SnapGrid overlay is shown on the hovered object surface.
            Override to return false to opt out.
            </summary>
        </member>
        <member name="P:ToolMode.SnapAction">
            <summary>
            Label for the snap hint, shown whenever this tool uses the snap grid.
            </summary>
        </member>
        <member name="P:ToolMode.SnapGrid">
            <summary>
            The active snap grid, updated every frame in <see cref="M:ToolMode.OnControl"/>.
            Null when snap grid is disabled or the tool is inactive.
            </summary>
        </member>
        <member name="F:ToolMode._snapFreeAim">
            <summary>
            While snapping, the unsnapped aim driven by the mouse. The grid is traced from this,
            and the real camera is steered onto the resulting snap point.
            </summary>
        </member>
        <member name="F:ToolMode._hasSnapTarget">
            <summary>
            True when the snap grid was updated from a valid surface this frame.
            </summary>
        </member>
        <member name="M:ToolMode.OnCameraMove(Player,Angles@)">
            <summary>
            While hovering an object, hold alt key to keep the camera aim snapped to the grid
            </summary>
        </member>
        <member name="M:ToolMode.TraceSnapGrid">
            <summary>
            The ray the snap grid is traced from, free aim while snapping, otherwise the eyes.
            </summary>
        </member>
        <member name="M:ToolMode.ShouldDisplaySnapGrid(Sandbox.GameObject)">
            <summary>
            Override to control which objects show the snap grid. Excludes player geometry by default.
            </summary>
        </member>
        <member name="P:ToolMode.IsValidState">
            <summary>
            The mode should set this true or false in OnControl to indicate if the current state is valid for performing actions.
            </summary>
        </member>
        <member name="P:ToolMode.AbsorbMouseInput">
            <summary>
            When true, the toolgun will absorb mouse input so the camera doesn't move.
            The mode can then read <see cref="P:Sandbox.Input.AnalogLook"/> to use the mouse for rotation etc.
            </summary>
        </member>
        <member name="P:ToolMode.Name">
            <summary>
            Display name for the tool, defaults to the TypeDescription title.
            </summary>
        </member>
        <member name="P:ToolMode.Description">
            <summary>
            Description of what this tool does.
            </summary>
        </member>
        <member name="P:ToolMode.PrimaryAction">
            <summary>
            Label for the primary action (attack1), or null if none.
            Auto-populated from registered <see cref="T:ToolActionEntry"/> when not overridden.
            </summary>
        </member>
        <member name="P:ToolMode.SecondaryAction">
            <summary>
            Label for the secondary action (attack2), or null if none.
            Auto-populated from registered <see cref="T:ToolActionEntry"/> when not overridden.
            </summary>
        </member>
        <member name="P:ToolMode.ReloadAction">
            <summary>
            Label for the reload action, or null if none.
            Auto-populated from registered <see cref="T:ToolActionEntry"/> when not overridden.
            </summary>
        </member>
        <member name="P:ToolMode.ReloadSecondaryAction">
            <summary>
            Label for reload and secondary held together, or null if none.
            </summary>
        </member>
        <member name="P:ToolMode.TraceIgnoreTags">
            <summary>
            Tags that TraceSelect will ignore. Override per-tool to filter out specific objects.
            Defaults to "player" so tools cannot target players.
            </summary>
        </member>
        <member name="P:ToolMode.TraceHitboxes">
            <summary>
            When true, TraceSelect will also hit hitboxes.
            </summary>
        </member>
        <member name="P:ToolMode.TypeDescription">
            <summary>
            Reflection info for this tool's type. Lazy so it's valid before the component starts.
            </summary>
        </member>
        <member name="M:ToolMode.RegisterAction(ToolInput,System.Func{System.String},System.Action,InputMode)">
            <summary>
            Register a tool action that will be dispatched automatically by the base <see cref="M:ToolMode.OnControl"/>.
            The display name is a lambda so it can vary with tool state (e.g. stage-dependent hints).
            </summary>
        </member>
        <member name="M:ToolMode.Track(Sandbox.GameObject[])">
            <summary>
            Track a GameObject created by this tool action on the host. These are passed through
            to <see cref="P:IToolActionEvents.PostActionData.CreatedObjects"/> when the post-event fires.
            </summary>
        </member>
        <member name="M:ToolMode.GetActionName(ToolInput)">
            <summary>
            Returns the display name for the first registered action matching <paramref name="input"/>, or null.
            </summary>
        </member>
        <member name="M:ToolMode.FireToolAction(ToolInput)">
            <summary>
            Fire <see cref="M:IToolActionEvents.OnToolAction(IToolActionEvents.ActionData)"/> at the top of the host RPC that carries out an action,
            so listeners can refuse it where it counts. Returns true if the action should proceed, false if cancelled.
            </summary>
        </member>
        <member name="M:ToolMode.FirePostToolAction(ToolInput)">
            <summary>
            Fire <see cref="M:IToolActionEvents.OnPostToolAction(IToolActionEvents.PostActionData)"/> at the end of the host RPC once the action has succeeded.
            Passes a snapshot of tracked objects, then clears the list.
            </summary>
        </member>
        <member name="M:ToolMode.DispatchActions">
            <summary>
            Check registered actions and invoke any whose input condition is met this frame.
            The host RPCs the callbacks call fire the <see cref="T:IToolActionEvents"/> pre/post events.
            </summary>
        </member>
        <member name="M:ToolMode.DrawScreen(Sandbox.Rect,Sandbox.Painter)">
            <summary>
            Scrolls the tool name across the viewmodel screen's dot matrix in <see cref="P:Toolgun.ScreenColor"/>.
            </summary>
        </member>
        <member name="M:ToolMode.DrawHud(Sandbox.Painter,Vector2)">
            <summary>
            Draws a crosshair showing whether the current tool action is valid.
            </summary>
        </member>
        <member name="M:ToolMode.CheckContraptionStats(Sandbox.GameObject)">
            <summary>
            Called on the host after placing an entity or constraint. Fires an RPC to the owning
            client so it can walk the contraption graph and record achievement stats locally.
            </summary>
        </member>
        <member name="T:HiddenToolMode">
            <summary>
            Not shown in the tool list, seperate from <see cref="T:Sandbox.HideAttribute"/> because that's a much more general thing.
            </summary>
        </member>
        <member name="P:Toolgun.ScreenColor">
            <summary>
            Colour of the tool name and swipe edge on the viewmodel screen, independent of the HUD tint.
            Goes past 1 for HDR glow.
            </summary>
        </member>
        <member name="F:Toolgun._screenTarget">
            <summary>
            The mode the screen is switching to, and the one it showed before
            </summary>
        </member>
        <member name="M:Toolgun.DrawScreenContent(Sandbox.Rect,Sandbox.Painter)">
            <summary>
            Draws the current tool mode on the viewmodel screen. A new mode swipes in from the left over the old one,
            along a glowing, ragged edge that jumps about as it goes.
            </summary>
        </member>
        <member name="M:Toolgun.Hash(System.Int32,System.Int32)">
            <summary>
            Cheap repeatable 0-1 noise for the swipe edge
            </summary>
        </member>
        <member name="M:Toolgun.DrawHud(Sandbox.Painter,Vector2)">
            <summary>
            Draws the active tool mode's HUD, its crosshair.
            </summary>
        </member>
        <member name="M:Toolgun.RandomToolCommand">
            <summary>
            Switches the local player's toolgun to a random tool other than the current one.
            </summary>
        </member>
        <member name="P:Facepunch.UI.Voices.ListHeight">
            <summary>
            How tall the list is on screen in screen pixels, zero when nobody is shown. The notices stack above it.
            </summary>
        </member>
        <member name="M:Facepunch.UI.Voices.GetActivity(Sandbox.Voice)">
            <summary>
            How much someone is talking, 0 to 1. Never quite zero while they are in the list, so a quiet moment still looks lit.
            </summary>
        </member>
    </members>
</doc>
