<?xml version="1.0"?>
<doc>
    <assembly>
        <name>package.wurstsoftware.koth</name>
    </assembly>
    <members>
        <member name="T:KOTH.GameMode">
            <summary>
            Handles the main game loop, using components that listen to state change
            events to handle game logic.
            </summary>
        </member>
        <member name="M:KOTH.GameMode.GetAll(Sandbox.SceneFile)">
            <summary>
            Gets all game modes referenced by a scene.
            </summary>
        </member>
        <member name="M:KOTH.GameMode.Get``1(System.Boolean)">
            <summary>
            Gets the given component from within the game mode's object hierarchy, or null if not found / enabled.
            </summary>
        </member>
        <member name="T:KOTH.GameUtils">
            <summary>
            A list of game utilities that'll help us achieve common goals with less code... I guess?
            </summary>
        </member>
        <member name="P:KOTH.GameUtils.AllPlayers">
            <summary>
            All players in the game (includes disconnected players before expiration).
            </summary>
        </member>
        <member name="M:KOTH.GameUtils.GetPlayers(KOTH.Team)">
            <summary>
            Get all players on a team.
            </summary>
        </member>
        <member name="P:KOTH.GameUtils.PlayerPawns">
            <summary>
            Every <see cref="T:KOTH.PlayerPawn"/> currently in the world.
            </summary>
        </member>
        <member name="M:KOTH.GameUtils.GetPlayerPawns(KOTH.Team)">
            <summary>
            Every <see cref="T:KOTH.PlayerPawn"/> currently in the world, on the given team.
            </summary>
        </member>
        <member name="M:KOTH.GameUtils.GetSpawnPoints(KOTH.Team,System.String[])">
            <summary>
            Get all spawn point transforms for the given team.
            </summary>
        </member>
        <member name="M:KOTH.GameUtils.GetRandomSpawnPoint(KOTH.Team,System.String[])">
            <summary>
            Pick a random spawn point for the given team.
            </summary>
        </member>
        <member name="P:KOTH.GameUtils.Teams">
            <summary>
            Helper list of the two teams.
            </summary>
        </member>
        <member name="M:KOTH.GameUtils.GetPlayerFromComponent(Sandbox.Component)">
            <summary>
            Get a player from a component that belongs to a player or their descendants.
            </summary>
        </member>
        <member name="M:KOTH.GameUtils.GetPawn(Sandbox.Component)">
            <summary>
            Get a player from a component that belongs to a player or their descendants.
            </summary>
        </member>
        <member name="M:KOTH.GameUtils.ReturnToMainMenu">
            <summary>
            Returns the invoking client to the main menu
            </summary>
        </member>
        <member name="M:KOTH.GameUtils.LogPlayers">
            <summary>
            Log all known player states to the console.
            </summary>
        </member>
        <member name="T:KOTH.UI.IScore">
            <summary>
            Plop this on something you're using <see cref="T:KOTH.UI.ScoreAttribute"/> for. We could codegen this attribute on components that use it to save this hassle.
            </summary>
        </member>
        <member name="M:KOTH.UI.IScore.Find(KOTH.PlayerState)">
            <summary>
            Looks for a bunch of score attributes from components on a <see cref="T:KOTH.PlayerState"/>, and returns a formatted, sorted list of values.
            </summary>
            <param name="playerState"></param>
            <returns></returns>
        </member>
        <member name="T:KOTH.UI.PlayerScore">
            <summary>
            Handles all the player score values.
            </summary>
        </member>
        <member name="M:KOTH.UI.OptionSelect.Open">
            <summary>
            Open the dropdown.
            </summary>
        </member>
        <member name="T:KOTH.UI.ColorSlider">
            <summary>
            A relatively simple color slider panel. thank you Alex for your instagib code from 2021
            </summary>
        </member>
        <member name="P:KOTH.UI.XHair.Inventory">
            <summary>
            The player's inventory
            </summary>
        </member>
        <member name="P:KOTH.UI.XHair.Player">
            The player
        </member>
        <member name="P:KOTH.UI.ProgressBar.Value">
            <summary>
            0 to 100
            </summary>
        </member>
        <member name="P:KOTH.UI.MapCallouts.Player">
            The player
        </member>
        <member name="P:KOTH.UI.Ammo.Inventory">
            <summary>
            The player's inventory
            </summary>
        </member>
        <member name="P:KOTH.UI.Ammo.Player">
            The player
        </member>
        <member name="F:KOTH.UI.Marker.IsOffScreen">
            <summary>
            Are we off screen?
            </summary>
        </member>
        <member name="F:KOTH.UI.Marker.IsBehind">
            <summary>
            Is this marker entirely behind the screen?
            </summary>
        </member>
        <member name="P:KOTH.UI.EquipmentRow.Slot">
            <summary>
             The equipment's slot
            </summary>
        </member>
        <member name="P:KOTH.UI.EquipmentRow.Equipment">
            <summary>
            The player's equipment.
            </summary>
        </member>
        <member name="T:KOTH.PlayRadioOnKill">
            <summary>
            Handles certain events and plays radio sounds.
            </summary>
        </member>
        <member name="T:KOTH.PlaySound">
            <summary>
            Play a sound at the start of this state.
            </summary>
        </member>
        <member name="T:KOTH.PlayRadio">
            <summary>
            Play a radio message at the start of this state.
            </summary>
        </member>
        <member name="F:KOTH.RadioSound.RoundStarted">
            <summary>
            When the round starts.
            </summary>
        </member>
        <member name="F:KOTH.RadioSound.RoundWon">
            <summary>
            When the team has won.
            </summary>
        </member>
        <member name="F:KOTH.RadioSound.RoundLost">
            <summary>
            When the team has lost.
            </summary>
        </member>
        <member name="F:KOTH.RadioSound.BombPlanted">
            <summary>
            When the bomb has been planted.
            </summary>
        </member>
        <member name="F:KOTH.RadioSound.BombDefused">
            <summary>
            When the bomb has been defused.
            </summary>
        </member>
        <member name="F:KOTH.RadioSound.ThrownGrenade">
            <summary>
            When someone has thrown a grenade.
            </summary>
        </member>
        <member name="F:KOTH.RadioSound.TwoEnemiesLeft">
            <summary>
            When someone dies, and there's 2 people left.
            </summary>
        </member>
        <member name="F:KOTH.RadioSound.OneEnemyLeft">
            <summary>
            When someone dies, and there's 1 person left.
            </summary>
        </member>
        <member name="F:KOTH.RadioSound.TeammateDies">
            <summary>
            When a teammate dies.
            </summary>
        </member>
        <member name="M:KOTH.RadioSounds.Play(KOTH.Team,KOTH.RadioSound)">
            <summary>
            Called on the host to broadcast radio sounds to people
            </summary>
            <param name="team"></param>
            <param name="snd"></param>
        </member>
        <member name="F:KOTH.RadioSounds.TimeSinceRadio">
            <summary>
            Locally controlled, spam control.
            </summary>
        </member>
        <member name="F:KOTH.RadioSounds.RadioSpamDelay">
            <summary>
            How frequently can we spam the radio?
            </summary>
        </member>
        <member name="M:KOTH.RadioSounds.Play(KOTH.Team,System.String,System.String)">
            <summary>
            Send a radio sound to all players on the specified team
            </summary>
            <param name="team"></param>
            <param name="category"></param>
            <param name="sound"></param>
        </member>
        <member name="T:KOTH.BetweenRoundCleanupEvent">
            <summary>
            Called on the host to clean up objects that shouldn't persist between rounds.
            </summary>
        </member>
        <member name="T:KOTH.BetweenRoundCleanup">
            <summary>
            Dispatches a <see cref="T:KOTH.BetweenRoundCleanupEvent"/> when entering this state.
            </summary>
        </member>
        <member name="T:KOTH.TeamEarlyWinCondition">
            <summary>
            Transition to the given state when one team's score reaches the given value.
            </summary>
        </member>
        <member name="P:KOTH.TeamEarlyWinCondition.TargetScore">
            <summary>
            Transition when either team reaches this score.
            </summary>
        </member>
        <member name="P:KOTH.TeamEarlyWinCondition.TerroristVictoryState">
            <summary>
            Transition to this state when <see cref="F:KOTH.Team.Terrorist"/> reaches the target score.
            </summary>
        </member>
        <member name="P:KOTH.TeamEarlyWinCondition.CounterTerroristVictoryState">
            <summary>
            Transition to this state when <see cref="F:KOTH.Team.CounterTerrorist"/> reaches the target score.
            </summary>
        </member>
        <member name="T:KOTH.FreezePlayers">
            <summary>
            Keep players frozen while this state is active.
            </summary>
        </member>
        <member name="P:KOTH.HudOptions.FullAvatarDisplayPlayerLimit">
            <summary>
            How many players can we display on the round display until we substitute them for a general head-count?
            </summary>
        </member>
        <member name="T:KOTH.KillGameOnEnd">
            <summary>
            Show a warning message when entering this state, then throw everyone back to the menu when this state ends.
            </summary>
        </member>
        <member name="T:KOTH.PlayerAutoRespawner">
            <summary>
            Respawn players after a delay.
            </summary>
        </member>
        <member name="P:KOTH.PlayerRagdollBehavior.DestroyTime">
            <summary>
            If set to 0, the player ragdoll will only remove after round changes.
            </summary>
        </member>
        <member name="P:KOTH.RandomSpawnAssigner.SpawnTags">
            <summary>
            Use spawns that include at least one of these tags.
            </summary>
        </member>
        <member name="P:KOTH.RandomSpawnAssigner.MinEnemyDistance">
            <summary>
            Avoid spawning within this radius of an enemy player.
            </summary>
        </member>
        <member name="P:KOTH.RandomSpawnAssigner.SkipLineOfSightTestDistance">
            <summary>
            Assume an enemy player is out of line-of-sight if at least this far away.
            </summary>
        </member>
        <member name="T:KOTH.RespawnPlayers">
            <summary>
            Respawn all players at the start of this state.
            </summary>
        </member>
        <member name="P:KOTH.RespawnPlayers.ForceNew">
            <summary>
            If true, reset alive players as if they'd died.
            </summary>
        </member>
        <member name="T:KOTH.EnableRetakesScoring">
            <summary>
            Give each player a <see cref="T:KOTH.RetakesScoring"/> component.
            </summary>
        </member>
        <member name="T:KOTH.RetakesScoring">
            <summary>
            Per-player win tracker for retakes.
            </summary>
        </member>
        <member name="P:KOTH.RetakesScoring.Wins">
            <summary>
            How many rounds has this player been on the winning team.
            </summary>
        </member>
        <member name="T:KOTH.IncreaseRetakesWins">
            <summary>
            Give points to all players on the winning team.
            </summary>
        </member>
        <member name="P:KOTH.IncreaseRetakesWins.Team">
            <summary>
            Which team won?
            </summary>
        </member>
        <member name="T:KOTH.IncrementTeamScore">
            <summary>
            Increment a team's score when entering this state.
            </summary>
        </member>
        <member name="T:KOTH.RoundCounterResetEvent">
            <summary>
            Event dispatched on the host when <see cref="T:KOTH.RoundCounter"/> should be reset.
            </summary>
        </member>
        <member name="T:KOTH.RoundCounterIncrementedEvent">
            <summary>
            Event dispatched on the host when <see cref="T:KOTH.RoundCounter"/> should be incremented.
            </summary>
        </member>
        <member name="T:KOTH.RoundCounter">
            <summary>
            Keep track of how many rounds have been played.
            </summary>
        </member>
        <member name="P:KOTH.RoundCounter.Round">
            <summary>
            Current round number, starting at 1.
            </summary>
        </member>
        <member name="T:KOTH.ResetRoundCounter">
            <summary>
            Resets <see cref="T:KOTH.RoundCounter"/> when this state is entered.
            </summary>
        </member>
        <member name="T:KOTH.IncrementRoundCounter">
            <summary>
            Increments <see cref="T:KOTH.RoundCounter"/> when this state is entered.
            </summary>
        </member>
        <member name="T:KOTH.RoundLimit">
            <summary>
            Transition to a given state after a given number of rounds. Requires a <see cref="T:KOTH.RoundCounter"/>.
            </summary>
        </member>
        <member name="T:KOTH.ScoreFormat">
            <summary>
            Lets us change the scoring format per-gamemode.
            </summary>
        </member>
        <member name="P:KOTH.ScoreFormat.Format">
            <summary>
            The scoring format. https://learn.microsoft.com/en-us/dotnet/standard/base-types/standard-numeric-format-strings
            </summary>
        </member>
        <member name="T:KOTH.SpawnProtectionStartEvent">
            <summary>
            Dispatched on the host when a player starts being spawn protected.
            </summary>
        </member>
        <member name="M:KOTH.SpawnProtectionStartEvent.#ctor(KOTH.PlayerPawn)">
            <summary>
            Dispatched on the host when a player starts being spawn protected.
            </summary>
        </member>
        <member name="T:KOTH.SpawnProtectionEndEvent">
            <summary>
            Dispatched on the host when a player stops being spawn protected.
            </summary>
        </member>
        <member name="M:KOTH.SpawnProtectionEndEvent.#ctor(KOTH.PlayerPawn)">
            <summary>
            Dispatched on the host when a player stops being spawn protected.
            </summary>
        </member>
        <member name="T:KOTH.SpawnProtection">
            <summary>
            Makes respawned players invulnerable for a given duration, or until they move / shoot.
            </summary>
        </member>
        <member name="T:KOTH.StartMapVotingOnEnd">
            <summary>
            Show a warning message when entering this state, then throw everyone back to the menu when this state ends.
            </summary>
        </member>
        <member name="T:KOTH.ShowCountDown">
            <summary>
            Shows a countdown based on the duration of the current state.
            </summary>
        </member>
        <member name="T:KOTH.ShowToast">
            <summary>
            Shows a toast in the middle of the screen for the duration of this state.
            </summary>
        </member>
        <member name="T:KOTH.ShowStatusIcon">
            <summary>
            Display a special icon in the game status display.
            </summary>
        </member>
        <member name="P:KOTH.ShowStatusIcon.IconPath">
            <summary>
            Path to the icon image to show.
            </summary>
        </member>
        <member name="T:KOTH.SwapTeams">
            <summary>
            Swap teams when entering this state.
            </summary>
        </member>
        <member name="F:KOTH.AutoBalanceMode.None">
            <summary>
            Don't auto-balance.
            </summary>
        </member>
        <member name="F:KOTH.AutoBalanceMode.Random">
            <summary>
            Pick random players to move.
            </summary>
        </member>
        <member name="F:KOTH.AutoBalanceMode.LowestScorers">
            <summary>
            Prefer to move players with the lowest scores.
            </summary>
        </member>
        <member name="F:KOTH.AutoBalanceMode.LowestScorersLastRound">
            <summary>
            Prefer to move players with the lowest scores from just the last round.
            </summary>
        </member>
        <member name="T:KOTH.TeamAssigner">
            <summary>
            Split players into two balanced teams. If <see cref="!:AllowLateJoiners"/> is true,
            new players will be assigned as soon as they join. Otherwise, teams will only be
            assigned when this game state is entered.
            </summary>
        </member>
        <member name="P:KOTH.TeamAssigner.TargetRatio">
            <summary>
            Target number of Ts per CT.
            </summary>
        </member>
        <member name="P:KOTH.TeamAssigner.AutoBalanceMode">
            <summary>
            What sort of auto-balancing should we apply when entering this state.
            </summary>
        </member>
        <member name="T:KOTH.TeamEliminated">
            <summary>
            Transition to another state if one team is eliminated.
            </summary>
        </member>
        <member name="P:KOTH.TeamEliminated.TerroristsEliminatedState">
            <summary>
            Transition to this state when all <see cref="F:KOTH.Team.Terrorist"/> players are eliminated.
            </summary>
        </member>
        <member name="P:KOTH.TeamEliminated.CounterTerroristsEliminatedState">
            <summary>
            Transition to this state when all <see cref="F:KOTH.Team.CounterTerrorist"/> players are eliminated.
            </summary>
        </member>
        <member name="P:KOTH.TeamEliminated.BothTeamsEliminatedState">
            <summary>
            Transition to this state when all players are eliminated simultaneously.
            </summary>
        </member>
        <member name="T:KOTH.TeamScoring">
            <summary>
            Keeps track of a score for each team.
            </summary>
        </member>
        <member name="P:KOTH.TeamScoring.ScoreFormat">
            <summary>
            You can define a scoring format for the scores, say you want to format in currency.
            </summary>
        </member>
        <member name="T:KOTH.CompareTeamScores">
            <summary>
            Transitions to specified states if one team's score is higher than the other's.
            </summary>
        </member>
        <member name="P:KOTH.CompareTeamScores.MinMargin">
            <summary>
            Minimum difference between scores to trigger a transition.
            </summary>
        </member>
        <member name="T:KOTH.TeamSpawnAssigner">
            <summary>
            Use team-specific spawn points.
            </summary>
        </member>
        <member name="P:KOTH.TeamSpawnAssigner.SpawnTags">
            <summary>
            Use spawns that include at least one of these tags.
            </summary>
        </member>
        <member name="T:KOTH.WaitForPlayers">
            <summary>
            Skip to the next state if enough players are connected.
            </summary>
        </member>
        <member name="P:KOTH.WaitForPlayers.MinPlayerCount">
            <summary>
            Only start the game if there are at least this many players.
            </summary>
        </member>
        <member name="P:KOTH.WaitForPlayers.SkipPlayerCount">
            <summary>
            Immediately start the game if this number of players are connected.
            </summary>
        </member>
        <member name="T:KOTH.IVoiceFilter">
            <summary>
            One in a scene, used by <see cref="T:KOTH.PlayerVoiceComponent"/> to dictate rules around who can broadcast their voices to who.
            </summary>
        </member>
        <member name="M:KOTH.IVoiceFilter.GetExcludeFilter">
            <summary>
            Should we exclude this potential listener from hearing our voice?
            </summary>
            <returns></returns>
        </member>
        <member name="P:KOTH.PartyMember.Renderer">
            <summary>
            The model renderer.
            </summary>
        </member>
        <member name="P:KOTH.Pawn.playerState">
            <summary>
            The player state ID
            </summary>
        </member>
        <member name="P:KOTH.Pawn.PlayerState">
            <summary>
            This pawn's PlayerState
            </summary>
        </member>
        <member name="P:KOTH.Pawn.SpawnPosition">
            <summary>
            The position this player last spawned at.
            </summary>
        </member>
        <member name="P:KOTH.Pawn.SpawnRotation">
            <summary>
            The rotation this player last spawned at.
            </summary>
        </member>
        <member name="P:KOTH.Pawn.SpawnPointTags">
            <summary>
            The tags of the last spawn point of this pawn.
            </summary>
        </member>
        <member name="P:KOTH.Pawn.Team">
            <summary>
            What team does this pawn belong to?
            </summary>
        </member>
        <member name="P:KOTH.Pawn.IsPossessed">
            <summary>
            Are we possessing this pawn right now? (Clientside)
            </summary>
        </member>
        <member name="P:KOTH.Pawn.IsLocallyControlled">
            <summary>
            Is this pawn locally controlled by us?
            </summary>
        </member>
        <member name="P:KOTH.Pawn.DisplayName">
            <summary>
            What's our name?
            </summary>
        </member>
        <member name="P:KOTH.Pawn.EyeAngles">
            <summary>
            What's the pawn's eye angles?
            </summary>
        </member>
        <member name="P:KOTH.Pawn.Camera">
            <summary>
            The pawn's camera. Has to have one.
            </summary>
        </member>
        <member name="P:KOTH.Pawn.SteamId">
            <summary>
            Who's the owner?
            </summary>
        </member>
        <member name="M:KOTH.Pawn.Possess">
            <summary>
            Possess the pawn.
            </summary>
        </member>
        <member name="M:KOTH.Pawn.DePossess">
            <summary>
            De possesses the pawn.
            </summary>
        </member>
        <member name="M:KOTH.AnimationHelper.WithLook(Vector3,System.Single,System.Single,System.Single)">
            <summary>
            Have the player look at this point in the world
            </summary>
        </member>
        <member name="P:KOTH.AnimationHelper.MoveStyle">
            <summary>
            We can force the model to walk or run, or let it decide based on the speed.
            </summary>
        </member>
        <member name="M:KOTH.HumanOutfitter.UpdateFromTeam(KOTH.Team)">
            <summary>
            Called to wear an outfit based off a team.
            </summary>
            <param name="team"></param>
        </member>
        <member name="T:KOTH.PlayerFootsteps">
            <summary>
            Produces footstep sounds for the player.
            </summary>
        </member>
        <member name="T:KOTH.PlayerId">
            <summary>
            Grants a unique Id to each player, generated on host and synced.
            When a player disconnects that Id is returned to the pool and can be issued to new players. Issues an Id globally and per-team.
            </summary>
        </member>
        <member name="P:KOTH.PlayerId.UniqueId">
            <summary>
            Unique Id of this player in the game. New players will occupy vacant ids.
            </summary>
        </member>
        <member name="P:KOTH.PlayerId.TeamUniqueId">
            <summary>
            Unique Id of this player within their team. New players will occupy vacant ids.
            </summary>
        </member>
        <member name="P:KOTH.PlayerInventory.Equipment">
            <summary>
            What equipment do we have right now?
            </summary>
        </member>
        <member name="P:KOTH.PlayerInventory.WeaponGameObject">
            <summary>
            A <see cref="T:Sandbox.GameObject"/> that will hold all of our equipment.
            </summary>
        </member>
        <member name="P:KOTH.PlayerInventory.CanUnequipCurrentWeapon">
            <summary>
            Can we unequip the current weapon so we have no equipment out?
            </summary>
        </member>
        <member name="P:KOTH.PlayerInventory.HasDefuseKit">
            <summary>
            Does this player have a defuse kit?
            </summary>
        </member>
        <member name="P:KOTH.PlayerInventory.Current">
            <summary>
            Gets the player's current weapon.
            </summary>
        </member>
        <member name="M:KOTH.PlayerInventory.Drop(KOTH.Equipment,System.Boolean)">
            <summary>
            Try to drop the given held equipment item.
            </summary>
            <param name="weapon">Item to drop.</param>
            <param name="forceRemove">If we can't drop, remove it from the inventory anyway.</param>
        </member>
        <member name="M:KOTH.PlayerInventory.Remove(EquipmentResource)">
            <summary>
            Removes the given weapon (by its resource data) and destroys it.
            </summary>
        </member>
        <member name="M:KOTH.PlayerLoadout.SetFrom(KOTH.PlayerPawn)">
            <summary>
            Clears the player's loadout equipment.
            </summary>
        </member>
        <member name="T:KOTH.PlayerMarker">
            <summary>
            A component that handles the state of the player's marker on the minimap and the HUD.
            </summary>
        </member>
        <member name="P:KOTH.PlayerMarker.Player">
            <summary>
            The player.
            </summary>
        </member>
        <member name="P:KOTH.PlayerMarker.IsAlive">
            <summary>
            An accessor to see if the player is alive or not.
            </summary>
        </member>
        <member name="P:KOTH.PlayerMarker.KOTH#IMarkerObject#MarkerPanelTypeOverride">
            <summary>
            Defines a custom marker panel type to instantiate. Might remove this later.
            </summary>
        </member>
        <member name="P:KOTH.PlayerMarker.KOTH#IMarkerObject#MarkerPosition">
            <summary>
            Where is the marker?
            </summary>
        </member>
        <member name="P:KOTH.PlayerMarker.KOTH#IMinimapIcon#IconPath">
            <summary>
            What type of icon are we using on the minimap?
            </summary>
        </member>
        <member name="P:KOTH.PlayerMarker.KOTH#IDirectionalMinimapIcon#EnableDirectional">
            <summary>
            Is this a directional icon?
            </summary>
        </member>
        <member name="P:KOTH.PlayerMarker.KOTH#IDirectionalMinimapIcon#Direction">
            <summary>
            What direction should we be facing? Surely this could be a float?
            </summary>
        </member>
        <member name="P:KOTH.PlayerMarker.KOTH#ICustomMinimapIcon#CustomStyle">
            <summary>
            Defines a custom css style for this minimap icon.
            </summary>
        </member>
        <member name="P:KOTH.PlayerMarker.KOTH#IMinimapElement#WorldPosition">
            <summary>
            The minimap element's position in the world.
            </summary>
        </member>
        <member name="P:KOTH.PlayerMarker.IsEnemy">
            <summary>
            Is this player an enemy of the viewer?
            </summary>
        </member>
        <member name="P:KOTH.PlayerMarker.IsMissing">
            <summary>
            Did we spot this player recently?
            </summary>
        </member>
        <member name="M:KOTH.PlayerMarker.KOTH#IMinimapElement#IsVisible(KOTH.Pawn)">
            <summary>
            Should we render this element at all?
            </summary>
            <param name="viewer"></param>
            <returns></returns>
        </member>
        <member name="T:KOTH.ITeam">
            <summary>
            A component that has a team on it.
            </summary>
        </member>
        <member name="M:KOTH.TeamExtensions.GetTeam(Sandbox.GameObject)">
            <summary>
            Accessor to get the team of someone/something.
            </summary>
            <param name="gameObject"></param>
            <returns></returns>
        </member>
        <member name="M:KOTH.TeamExtensions.IsFriendly(KOTH.Team,KOTH.Team)">
            <summary>
            Are we friendly with this other team?
            </summary>
            <param name="teamOne"></param>
            <param name="teamTwo"></param>
            <returns></returns>
        </member>
        <member name="M:KOTH.TeamExtensions.IsFriendly(Sandbox.GameObject,Sandbox.GameObject)">
            <summary>
            Are these two GameObjects friends with eachother?
            </summary>
            <param name="self"></param>
            <param name="other"></param>
            <returns></returns>
        </member>
        <member name="M:KOTH.TeamExtensions.IsFriendly(KOTH.PlayerPawn,KOTH.PlayerPawn)">
            <summary>
            Are these two <see cref="T:KOTH.PlayerPawn"/>s friends with each other?
            </summary>
        </member>
        <member name="M:KOTH.TeamExtensions.IsFriendly(KOTH.PlayerState,KOTH.PlayerState)">
            <summary>
            Are these two <see cref="T:KOTH.PlayerState"/>s friends with each other?
            </summary>
        </member>
        <member name="P:KOTH.CameraController.Camera">
            <summary>
            A reference to the camera component we're going to be doing stuff with.
            </summary>
        </member>
        <member name="P:KOTH.CameraController.DefaultPlayerCameraPrefab">
            <summary>
            The default player camera prefab.
            </summary>
        </member>
        <member name="P:KOTH.CameraController.AimRay">
            <summary>
            Constructs a ray using the camera's GameObject
            </summary>
        </member>
        <member name="M:KOTH.CameraController.UpdateFromEyes(System.Single)">
            <summary>
            Updates the camera's position, from player code
            </summary>
            <param name="eyeHeight"></param>
        </member>
        <member name="P:KOTH.CharacterController.Bounciness">
            <summary>
            When jumping into walls, should we bounce off or just stop dead?
            </summary>
        </member>
        <member name="M:KOTH.CharacterController.Accelerate(Vector3)">
            <summary>
            Add acceleration to the current velocity. 
            No need to scale by time delta - it will be done inside.
            </summary>
        </member>
        <member name="M:KOTH.CharacterController.ApplyFriction(System.Single,System.Single)">
            <summary>
            Apply an amount of friction to the current velocity.
            No need to scale by time delta - it will be done inside.
            </summary>
        </member>
        <member name="M:KOTH.CharacterController.TraceDirection(Vector3)">
            <summary>
            Trace the controller's current position to the specified delta
            </summary>
        </member>
        <member name="M:KOTH.CharacterController.Punch(Vector3@)">
            <summary>
            Disconnect from ground and punch our velocity. This is useful if you want the player to jump or something.
            </summary>
        </member>
        <member name="M:KOTH.CharacterController.Move">
            <summary>
            Move a character, with this velocity
            </summary>
        </member>
        <member name="M:KOTH.CharacterController.MoveTo(Vector3,System.Boolean)">
            <summary>
            Move from our current position to this target position, but using tracing an sliding.
            This is good for different control modes like ladders and stuff.
            </summary>
        </member>
        <member name="P:KOTH.SpectateController.DisplayName">
            <summary>
            What are we called?
            </summary>
        </member>
        <member name="P:KOTH.MountPoint.Mounted">
            <summary>
            What's currently mounted?
            </summary>
        </member>
        <member name="P:KOTH.PlayerPawn.BotFollowHostInput">
            <summary>
            Development: should bots follow the player's input?
            </summary>
        </member>
        <member name="P:KOTH.PlayerPawn.HeadshotEffect">
            <summary>
            What effect should we spawn when a player gets headshot?
            </summary>
        </member>
        <member name="P:KOTH.PlayerPawn.HeadshotWithHelmetEffect">
            <summary>
            What effect should we spawn when a player gets headshot while wearing a helmet?
            </summary>
        </member>
        <member name="P:KOTH.PlayerPawn.BloodEffect">
            <summary>
            What effect should we spawn when we hit a player?
            </summary>
        </member>
        <member name="P:KOTH.PlayerPawn.HeadshotSound">
            <summary>
            What sound should we play when a player gets headshot?
            </summary>
        </member>
        <member name="P:KOTH.PlayerPawn.HeadshotWithHelmetSound">
            <summary>
            What sound should we play when a player gets headshot?
            </summary>
        </member>
        <member name="P:KOTH.PlayerPawn.BloodImpactSound">
            <summary>
            What sound should we play when we hit a player?
            </summary>
        </member>
        <member name="P:KOTH.PlayerPawn.IsUsing">
            <summary>
            Is the player holding use?
            </summary>
        </member>
        <member name="P:KOTH.PlayerPawn.UseDistance">
            <summary>
            How far can we use stuff?
            </summary>
        </member>
        <member name="P:KOTH.PlayerPawn.LastUsedObject">
            <summary>
            Which object did the player last press use on?
            </summary>
        </member>
        <member name="P:KOTH.PlayerPawn.CurrentEquipment">
            <summary>
            What Weapon are we using?
            </summary>
        </member>
        <member name="P:KOTH.PlayerPawn.Spread">
            <summary>
            How inaccurate are things like gunshots?
            </summary>
        </member>
        <member name="P:KOTH.PlayerPawn.Zones">
            <summary>
            Which <see cref="T:Zone"/>s is the player currently standing in.
            </summary>
        </member>
        <member name="M:KOTH.PlayerPawn.UpdateZones">
            <summary>
            Update which <see cref="T:Zone"/>s the player is standing in.
            </summary>
        </member>
        <member name="P:KOTH.IPingReceiver.Position">
            <summary>
            The position of the ping marker (on the minimap AND the screen)
            </summary>
        </member>
        <member name="P:KOTH.IPingReceiver.Icon">
            <summary>
            Should we override the icon on the minimap and screen?
            </summary>
        </member>
        <member name="P:KOTH.IPingReceiver.Text">
            <summary>
            Should we override the icon on the minimap and screen?
            </summary>
        </member>
        <member name="P:KOTH.IPingReceiver.Color">
            <summary>
            What should the colour be?
            </summary>
        </member>
        <member name="M:KOTH.IPingReceiver.OnPing">
            <summary>
            Called when we start pinging something
            </summary>
        </member>
        <member name="M:KOTH.IPingReceiver.OnPingCancel">
            <summary>
            Called when this ping gets cancelled by another
            </summary>
        </member>
        <member name="M:KOTH.IPingReceiver.ShouldShow">
            <summary>
            Should this show?
            </summary>
            <returns></returns>
        </member>
        <member name="T:KOTH.PlayerPingComponent">
            <summary>
            A simple component that handles pinging for the player.
            </summary>
        </member>
        <member name="P:KOTH.PlayerPingComponent.Player">
            <summary>
            The player
            </summary>
        </member>
        <member name="P:KOTH.PlayerPingComponent.PingDistance">
            <summary>
            How far can we ping?
            </summary>
        </member>
        <member name="P:KOTH.PlayerPingComponent.Lifetime">
            <summary>
            How long do we exist for?
            </summary>
        </member>
        <member name="P:KOTH.PlayerPingComponent.WorldPing">
            <summary>
            Store a reference to the last ping this player placed.
            </summary>
        </member>
        <member name="M:KOTH.PlayerPingComponent.Ping(Vector3,Sandbox.Component)">
            <summary>
            Sends a ping to people on the server, can only be called by the owner of this player.
            This gets networked to people on the same team.
            </summary>
            <param name="position"></param>
            <param name="target"></param>
        </member>
        <member name="M:KOTH.PlayerPingComponent.CanPing">
            <summary>
            Can we ping?
            </summary>
            <returns></returns>
        </member>
        <member name="M:KOTH.PlayerPingComponent.GetTrace">
            <summary>
            Trace for the ping
            </summary>
            <returns></returns>
        </member>
        <member name="T:KOTH.PlayerPingReceiver">
            <summary>
            Behavior that makes a ping follow a player until they're no longer visible.
            </summary>
        </member>
        <member name="P:KOTH.PlayerState.BotId">
            <summary>
            Unique ID of this Bot
            </summary>
        </member>
        <member name="P:KOTH.PlayerState.IsBot">
            <summary>
            Is this a bot?
            </summary>
        </member>
        <member name="P:KOTH.PlayerState.TimeSinceDisconnected">
            <summary>
            How long has it been since this player has d/c'd
            </summary>
        </member>
        <member name="P:KOTH.PlayerState.DisconnectCleanupTime">
            <summary>
            How long does it take to clean up a player once they disconnect?
            </summary>
        </member>
        <member name="P:KOTH.PlayerState.RespawnState">
            <summary>
            Are we ready to respawn?
            </summary>
        </member>
        <member name="M:KOTH.PlayerState.OnTeamPropertyChanged(KOTH.Team,KOTH.Team)">
            <summary>
            Called when <see cref="P:KOTH.PlayerState.Team"/> changes across the network.
            </summary>
        </member>
        <member name="P:KOTH.MapVoteSystem.Options">
            <summary>
            Our networked list of voting options.
            </summary>
        </member>
        <member name="P:KOTH.MapVoteSystem.Votes">
            <summary>
            Our networked list of votes.
            </summary>
        </member>
        <member name="P:KOTH.MapVoteSystem.TimeUntilDecidedWinner">
            <summary>
            How long until we decide who won?
            </summary>
        </member>
        <member name="P:KOTH.MapVoteSystem.TimeUntilTransfer">
            <summary>
            How long until we move server?
            </summary>
        </member>
        <member name="P:KOTH.MapVoteSystem.WinningOption">
            <summary>
            Which option is the winner?
            </summary>
        </member>
        <member name="P:KOTH.MapVoteSystem.MapVoteOverlay">
            <summary>
            An instance of the map vote overlay UI
            </summary>
        </member>
        <member name="P:KOTH.MapVoteSystem.ScreenPanel">
            <summary>
            The screen panel which draws our UI
            </summary>
        </member>
        <member name="M:KOTH.MapVoteSystem.FromNetworked(System.Collections.Generic.IEnumerable{KOTH.MapVoteSystem.NetworkedOption})">
            <summary>
            Converts a list of networked options to readable ones
            </summary>
            <param name="networked"></param>
            <returns></returns>
        </member>
        <member name="M:KOTH.MapVoteSystem.ToNetworked(System.Collections.Generic.IEnumerable{KOTH.MapVoteSystem.Option})">
            <summary>
            Converts a list of normal options to networked ones
            </summary>
            <param name="normal"></param>
            <returns></returns>
        </member>
        <member name="M:KOTH.MapVoteSystem.GetWinningOption">
            <summary>
            What's our current winning option?
            TODO: provide sorted options instead so other systems can take winner, or take a draw 
            </summary>
            <returns></returns>
        </member>
        <member name="M:KOTH.MapVoteSystem.Create(KOTH.GameModeInfo,KOTH.MapDefinition,System.Int32)">
            <summary>
            Start a vote. This'll make a component on the server and 
            </summary>
            <param name="currentMode"></param>
            <param name="currentMap"></param>
            <param name="count"></param>
            <returns></returns>
        </member>
        <member name="M:KOTH.MapVoteSystem.Dev_CreateMapVote">
            <summary>
            TODO: remove me
            </summary>
        </member>
        <member name="M:KOTH.MapVoteSystem.RpcVote(System.Int32)">
            <summary>
            RPCs a vote, targeted to the host, so it's not exposed to any public API.
            </summary>
            <param name="index"></param>
        </member>
        <member name="M:KOTH.MapVoteSystem.Vote(System.Int32)">
            <summary>
            Sends a vote to the host.
            </summary>
            <param name="index"></param>
        </member>
        <member name="T:KOTH.MapVoteSystem.NetworkedVote">
            <summary>
            A networked vote.
            </summary>
        </member>
        <member name="P:KOTH.MapVoteSystem.NetworkedVote.VoterId">
            <summary>
            The player's SteamId
            </summary>
        </member>
        <member name="P:KOTH.MapVoteSystem.NetworkedVote.Option">
            <summary>
            Which option are we voting for? (Mapped to the list)
            </summary>
        </member>
        <member name="T:KOTH.MapVoteSystem.Option">
            <summary>
            A voting option that has real data.
            </summary>
        </member>
        <member name="P:KOTH.MapVoteSystem.Option.Mode">
            <summary>
            What mode are we playing?
            </summary>
        </member>
        <member name="P:KOTH.MapVoteSystem.Option.Map">
            <summary>
            What map?
            </summary>
        </member>
        <member name="M:KOTH.MapVoteSystem.Option.AsNetworked">
            <summary>
            Converts this to a networkable <see cref="T:KOTH.MapVoteSystem.NetworkedOption"/>
            </summary>
            <returns></returns>
        </member>
        <member name="T:KOTH.MapVoteSystem.NetworkedOption">
            <summary>
            A networkable variant of <see cref="T:KOTH.MapVoteSystem.Option"/>, since it only passes through strings.
            </summary>
        </member>
        <member name="P:KOTH.MapVoteSystem.NetworkedOption.MapResource">
            <summary>
            The full resource path of the map.
            </summary>
        </member>
        <member name="P:KOTH.MapVoteSystem.NetworkedOption.ModeResource">
            <summary>
            The full resource path of the gamemode.
            </summary>
        </member>
        <member name="M:KOTH.MapVoteSystem.NetworkedOption.AsNormal">
            <summary>
            Convert this to a readable <see cref="T:KOTH.MapVoteSystem.Option"/>
            </summary>
            <returns></returns>
        </member>
        <member name="P:KOTH.IMarkerObject.GameObject">
            <summary>
            Raw access to the marker object's <see cref="P:KOTH.IMarkerObject.GameObject"/>
            </summary>
        </member>
        <member name="P:KOTH.IMarkerObject.MarkerPosition">
            <summary>
            Where is this marker?
            </summary>
        </member>
        <member name="P:KOTH.IMarkerObject.MarkerPanelTypeOverride">
            <summary>
            Are we overriding the type here?
            </summary>
        </member>
        <member name="P:KOTH.IMarkerObject.MarkerIcon">
            <summary>
            What icon does this marker have?
            </summary>
        </member>
        <member name="P:KOTH.IMarkerObject.MarkerStyles">
            <summary>
            What styles should we apply to the marker?
            </summary>
        </member>
        <member name="P:KOTH.IMarkerObject.DisplayText">
            <summary>
            What text should we show?
            </summary>
        </member>
        <member name="P:KOTH.IMarkerObject.MarkerMaxDistance">
            <summary>
            How far can we see this marker?
            </summary>
        </member>
        <member name="P:KOTH.IMarkerObject.IconSize">
            <summary>
            How big's the marker?
            </summary>
        </member>
        <member name="P:KOTH.IMarkerObject.ShowChevron">
            <summary>
            Should we show a chevron when we're off-screen?
            </summary>
        </member>
        <member name="M:KOTH.IMarkerObject.ShouldShow">
            <summary>
            Should we even show this marker?
            </summary>
            <returns></returns>
        </member>
        <member name="P:KOTH.IMarkerObject.InputHint">
            <summary>
            Input hint?
            </summary>
        </member>
        <member name="P:KOTH.IMarkerObject.LookOpacity">
            <summary>
            Should we dim the marker when looking at it?
            </summary>
        </member>
        <member name="T:KOTH.Lobby">
            <summary>
            This purely exists as a wrappe for a real lobby, so we can display fake lobbies in the UI.
            </summary>
        </member>
        <member name="F:KOTH.Lobby._lobby">
            <summary>
            A reference to our internal lobby type.
            </summary>
        </member>
        <member name="M:KOTH.GameObjectExtensions.PlaySound(Sandbox.GameObject,Sandbox.SoundEvent,System.Boolean)">
            <summary>
            Creates a GameObject that plays a sound.
            </summary>
            <param name="self"></param>
            <param name="sndEvent"></param>
            <param name="follow"></param>
        </member>
        <member name="M:KOTH.GameObjectExtensions.PlaySound(Sandbox.GameObject,System.String,System.Boolean)">
            <inheritdoc cref="M:KOTH.GameObjectExtensions.PlaySound(Sandbox.GameObject,Sandbox.SoundEvent,System.Boolean)"/>
        </member>
        <member name="M:KOTH.GameObjectExtensions.DestroyAsync(Sandbox.GameObject,System.Single)">
            <summary>
            Creates a <see cref="T:KOTH.TimedDestroyComponent"/> which will deferred delete the <see cref="T:Sandbox.GameObject"/>.
            </summary>
            <param name="self"></param>
            <param name="seconds"></param>
        </member>
        <member name="T:KOTH.GlobalComponent">
            <summary>
            A component that registers itself as a global.
            </summary>
        </member>
        <member name="T:KOTH.GlobalGameNamespace">
            <summary>
            It's nice to be able to access a global anywhere.
            </summary>
        </member>
        <member name="M:KOTH.GlobalGameNamespace.GetGlobal``1">
            <summary>
            Fetch a global.
            </summary>
        </member>
        <!-- Badly formed XML comment ignored for member "T:KOTH.GlobalSystem" -->
        <member name="P:KOTH.GlobalSystem.Globals">
            <summary>
            A maintained list of all the globals.
            </summary>
        </member>
        <member name="P:KOTH.GlobalSystem.GlobalsGameObject">
            <summary>
            The gameobject we're hosting all the globals on.
            </summary>
        </member>
        <member name="M:KOTH.GlobalSystem.Register(KOTH.GlobalComponent)">
            <summary>
            Register an instance of a global component to be cached.
            </summary>
            <param name="inst"></param>
        </member>
        <member name="M:KOTH.GlobalSystem.Create``1">
            <summary>
            Creates a global since it doesn't exist in the scene.
            </summary>
            <typeparam name="T"></typeparam>
            <returns></returns>
        </member>
        <member name="M:KOTH.GlobalSystem.Get``1">
            <summary>
            Tries to grab a global, if it exists. If it doesn't, we'll make one.
            </summary>
            <typeparam name="T"></typeparam>
            <returns></returns>
        </member>
        <member name="T:KOTH.NetworkUtils">
            <summary>
            Some network utils, mainly RPC filters.
            </summary>
        </member>
        <member name="M:KOTH.NetworkUtils.RpcMyTeam">
            <summary>
            Makes a RPC filter based on your team.
            </summary>
            <returns></returns>
        </member>
        <member name="M:KOTH.NetworkUtils.RpcTeam(KOTH.Team)">
            <summary>
            Makes a RPC filter to a specific team.
            </summary>
            <param name="team"></param>
            <returns></returns>
        </member>
        <member name="T:KOTH.SoundEmitter">
            <summary>
            A simple component that plays a sound.
            </summary>
        </member>
        <member name="P:KOTH.SoundEmitter.SoundEvent">
            <summary>
            How long until we destroy the GameObject.
            </summary>
        </member>
        <member name="P:KOTH.SoundEmitter.Follow">
            <summary>
            Should we follow the current GameObject?
            </summary>
        </member>
        <member name="P:KOTH.SoundEmitter.DestroyOnFinish">
            <summary>
            Should the GameObject be destroyed when the sound has finished?
            </summary>
        </member>
        <member name="T:KOTH.TagBinder">
            <summary>
            A utility component that lets you have tags update based on conditions,
            similarly to how we have Panel.BindClass
            </summary>
        </member>
        <member name="F:KOTH.TagBinder.binds">
            <summary>
            A cache of binds.
            </summary>
        </member>
        <member name="M:KOTH.TagBinder.HasExistingBind(System.String)">
            <summary>
            Do we have a bind already?
            </summary>
            <param name="tag"></param>
            <returns></returns>
        </member>
        <member name="M:KOTH.TagBinder.BindTag(System.String,System.Func{System.Boolean})">
            <summary>
            Bind a tag to a specific condition. Must not exist.
            </summary>
            <param name="tag"></param>
            <param name="predicate"></param>
            <returns></returns>
        </member>
        <member name="T:KOTH.TimedDestroyComponent">
            <summary>
            A simple component that destroys its GameObject.
            </summary>
        </member>
        <member name="P:KOTH.TimedDestroyComponent.Time">
            <summary>
            How long until we destroy the GameObject.
            </summary>
        </member>
        <member name="P:KOTH.TimedDestroyComponent.TimeUntilDestroy">
            <summary>
            The real time until we destroy the GameObject.
            </summary>
        </member>
        <member name="T:KOTH.ValidOrNullAttribute">
            <summary>
            For properties that contain an <see cref="T:Sandbox.IValid"/>, wrap the getter to return null if
            the stored value isn't valid.
            </summary>
        </member>
        <member name="T:KOTH.AmmoComponent">
            <summary>
            An ammo container. It holds ammo for a weapon.
            </summary>
        </member>
        <member name="P:KOTH.AmmoComponent.Ammo">
            <summary>
            How much ammo are we holding?
            </summary>
        </member>
        <member name="P:KOTH.AmmoComponent.HasAmmo">
            <summary>
            Do we have any ammo?
            </summary>
        </member>
        <member name="P:KOTH.AmmoComponent.IsFull">
            <summary>
            Is this container full?
            </summary>
        </member>
        <member name="T:KOTH.EquipmentComponent">
            <summary>
            A weapon component. This can be anything that controls a weapon. Aiming, recoil, sway, shooting..
            </summary>
        </member>
        <member name="P:KOTH.EquipmentComponent.Equipment">
            <summary>
            The weapon.
            </summary>
        </member>
        <member name="P:KOTH.EquipmentComponent.Player">
            <summary>
            The player.
            </summary>
        </member>
        <member name="T:KOTH.EquipmentResourcePropertyAttribute">
            <summary>
            Show this property in the equipment resource editor.
            </summary>
        </member>
        <member name="P:KOTH.ShootWeaponComponent.WeaponRay">
            <summary>
            Accessor for the aim ray.
            </summary>
        </member>
        <member name="P:KOTH.ShootWeaponComponent.TimeSinceShoot">
            <summary>
            How long since we shot?
            </summary>
        </member>
        <member name="P:KOTH.ShootWeaponComponent.Effector">
            <summary>
            Fetches the desired model renderer that we'll focus effects on like trail effects, muzzle flashes, etc.
            </summary>
        </member>
        <member name="F:KOTH.ShootWeaponComponent.BloodImpactSound">
            <summary>
            Store a reference to the blood impact sound so we don't have to grab it every time.
            </summary>
        </member>
        <member name="M:KOTH.ShootWeaponComponent.DoShootEffects">
            <summary>
            Play any particle effects such as muzzle flashes.
            </summary>
        </member>
        <member name="M:KOTH.ShootWeaponComponent.Shoot">
            <summary>
            Shoot the gun!
            </summary>
        </member>
        <member name="M:KOTH.ShootWeaponComponent.IsNearby(Vector3)">
            <summary>
            Are we nearby a position? Used for FX
            </summary>
            <param name="position"></param>
            <returns></returns>
        </member>
        <member name="M:KOTH.ShootWeaponComponent.DoTracer(Vector3,Vector3,System.Single,System.Int32)">
            <summary>
            Makes some tracers using legacy particle effects.
            </summary>
        </member>
        <member name="M:KOTH.ShootWeaponComponent.GetShootTrace">
            <summary>
            Runs a trace with all the data we have supplied it, and returns the result
            </summary>
            <returns></returns>
        </member>
        <member name="T:KOTH.InputWeaponComponent">
            <summary>
            A weapon component that reacts to input actions.
            </summary>
        </member>
        <member name="P:KOTH.InputWeaponComponent.InputActions">
            <summary>
            What input action are we going to listen for?
            </summary>
        </member>
        <member name="P:KOTH.InputWeaponComponent.RequiresAllInputActions">
            <summary>
            Should we perform the action when ALL input actions match, or any?
            </summary>
        </member>
        <member name="P:KOTH.InputWeaponComponent.OnInputAction">
            <summary>
            ActionGraphs action so you can do stuff with visual scripting.
            </summary>
        </member>
        <member name="M:KOTH.InputWeaponComponent.OnInput">
            <summary>
            Called when the input method succeeds.
            </summary>
        </member>
        <member name="M:KOTH.InputWeaponComponent.OnInputUp">
            <summary>
            When the button is up
            </summary>
        </member>
        <member name="M:KOTH.InputWeaponComponent.OnInputDown">
            <summary>
            When the button is down
            </summary>
        </member>
        <member name="P:KOTH.DroppedEquipment.KOTH#IMarkerObject#MarkerPosition">
            <summary>
            Where is the marker?
            </summary>
        </member>
        <member name="P:KOTH.DroppedEquipment.KOTH#IMarkerObject#DisplayText">
            <summary>
            What text?
            </summary>
        </member>
        <member name="T:KOTH.Equipment">
            <summary>
            An equipment component.
            </summary>
        </member>
        <member name="P:KOTH.Equipment.Resource">
            <summary>
            A reference to the equipment's <see cref="T:EquipmentResource"/>.
            </summary>
        </member>
        <member name="P:KOTH.Equipment.TagBinder">
            <summary>
            A tag binder for this equipment.
            </summary>
        </member>
        <member name="M:KOTH.Equipment.BindTag(System.String,System.Func{System.Boolean})">
            <summary>
            Shorthand to bind a tag.
            </summary>
            <param name="tag"></param>
            <param name="predicate"></param>
        </member>
        <member name="P:KOTH.Equipment.ModelRenderer">
            <summary>
            A reference to the equipment's model renderer.
            </summary>
        </member>
        <member name="P:KOTH.Equipment.HoldType">
            <summary>
            The default holdtype for this equipment.
            </summary>
        </member>
        <member name="P:KOTH.Equipment.Handedness">
            <summary>
            The default holdtype for this equipment.
            </summary>
        </member>
        <member name="P:KOTH.Equipment.DeploySound">
            <summary>
            What sound should we play when taking this gun out?
            </summary>
        </member>
        <member name="P:KOTH.Equipment.SpeedPenalty">
            <summary>
            How slower do we walk with this equipment out?
            </summary>
        </member>
        <member name="P:KOTH.Equipment.MountedPrefab">
            <summary>
            What prefab should we spawn as the mounted version of this piece of equipment?
            </summary>
        </member>
        <member name="P:KOTH.Equipment.UseCrosshair">
            <summary>
            Should we enable the crosshair?
            </summary>
        </member>
        <member name="F:KOTH.Equipment.owner">
            <summary>
            Cached version of the owner once we fetch it.
            </summary>
        </member>
        <member name="P:KOTH.Equipment.Owner">
            <summary>
            Who owns this gun?
            </summary>
        </member>
        <member name="P:KOTH.Equipment.OwnerId">
            <summary>
            The Guid of the owner's <see cref = "T:KOTH.PlayerPawn"/>
            </summary>
        </member>
        <member name="P:KOTH.Equipment.IsDeployed">
            <summary>
            Is this equipment currently deployed by the player?
            </summary>
        </member>
        <member name="M:KOTH.Equipment.UpdateRenderMode(System.Boolean)">
            <summary>
            Updates the render mode, if we're locally controlling a player, we want to hide the world model.
            </summary>
        </member>
        <member name="M:KOTH.Equipment.Deploy">
            <summary>
            Deploy this equipment.
            </summary>
        </member>
        <member name="M:KOTH.Equipment.Holster">
            <summary>
            Holster this equipment.
            </summary>
        </member>
        <member name="M:KOTH.Equipment.GetHoldType">
            <summary>
            Allow equipment to override holdtypes at any notice.
            </summary>
            <returns></returns>
        </member>
        <member name="T:KOTH.IDroppedWeaponState">
            <summary>
            Interface for components on weapons that persist when dropped.
            </summary>
        </member>
        <member name="T:KOTH.IDroppedWeaponState`1">
            <summary>
            Interface for components on weapons that persist when dropped.
            Default implementation will create a copy of this component on the dropped weapon, then copy it back on pickup.
            </summary>
        </member>
        <member name="P:KOTH.RecoilPattern.UseLoopPoints">
            <summary>
            Should we be using loop points?
            </summary>
        </member>
        <member name="P:KOTH.RecoilPattern.LoopStart">
            <summary>
            Which point index is our loop point start?
            </summary>
        </member>
        <member name="P:KOTH.RecoilPattern.LoopEnd">
            <summary>
            Which point index is our loop point start?
            </summary>
        </member>
        <member name="P:KOTH.RecoilPattern.IsLooping">
            <summary>
            Are we looping right now?
            </summary>
        </member>
        <member name="M:KOTH.RecoilPattern.GetPoint(System.Int32@)">
            <summary>
            Tries to get a point, and will wrap around if the index falls over.
            </summary>
            <param name="index"></param>
            <returns></returns>
        </member>
        <member name="T:KOTH.ViewModel">
            <summary>
            A weapon's viewmodel. It's responsibility is to listen to events from a weapon.
            It should only exist on the client for the currently possessed pawn.
            </summary>
        </member>
        <member name="P:KOTH.ViewModel.Equipment">
            <summary>
            A reference to the <see cref="P:KOTH.ViewModel.Equipment"/> we want to listen to.
            </summary>
        </member>
        <member name="P:KOTH.ViewModel.Arms">
            <summary>
            A reference to the viewmodel's arms.
            </summary>
        </member>
        <member name="P:KOTH.ViewModel.IsThrowable">
            <summary>
            Is this a throwable?
            </summary>
        </member>
        <member name="P:KOTH.ViewModel.Owner">
            <summary>
            Looks up the tree to find the player controller.
            </summary>
        </member>
        <member name="P:KOTH.ViewModel.PlayDeployEffects">
            <summary>
            Should we play deploy effects?
            </summary>
        </member>
        <member name="P:KOTH.Door.AnimationCurve">
            <summary>
            Animation curve to use, X is the time between 0-1 and Y is how much the door is open to its target angle from 0-1.
            </summary>
        </member>
        <member name="P:KOTH.Door.OpenSound">
            <summary>
            Sound to play when a door is opened.
            </summary>
        </member>
        <member name="P:KOTH.Door.OpenFinishedSound">
            <summary>
            Sound to play when a door is fully opened.
            </summary>
        </member>
        <member name="P:KOTH.Door.CloseSound">
            <summary>
            Sound to play when a door is closed.
            </summary>
        </member>
        <member name="P:KOTH.Door.CloseFinishedSound">
            <summary>
            Sound to play when a door has finished closing.
            </summary>
        </member>
        <member name="P:KOTH.Door.Pivot">
            <summary>
            Optional pivot point, origin will be used if not specified.
            </summary>
        </member>
        <member name="P:KOTH.Door.TargetAngle">
            <summary>
            How far should the door rotate.
            </summary>
        </member>
        <member name="P:KOTH.Door.OpenTime">
            <summary>
            How long in seconds should it take to open this door.
            </summary>
        </member>
        <member name="P:KOTH.Door.OpenAwayFromPlayer">
            <summary>
            Open away from the person who uses this door.
            </summary>
        </member>
        <member name="T:KOTH.Spottable">
            <summary>
            Tracks whether something has been seen by the enemy team.
            </summary>
        </member>
        <member name="P:KOTH.Spottable.Team">
            <summary>
            The team this belongs to.
            Any players that aren't of this team will be able to spot this.
            </summary>
        </member>
        <member name="P:KOTH.Spottable.Static">
            <summary>
            As the position doesn't move, it'll always be spotted after it's seen once.
            </summary>
        </member>
        <member name="T:KOTH.Spotter">
            <summary>
            Controlls the spotting behaviour of a player.
            </summary>
        </member>
        <member name="T:KOTH.WorldPingComponent">
            <summary>
            This is spawned clientside when a ping happens.
            </summary>
        </member>
        <member name="P:KOTH.WorldPingComponent.Owner">
            <summary>
            Who's the owner?
            </summary>
        </member>
        <member name="P:KOTH.WorldPingComponent.Receiver">
            <summary>
            
            </summary>
        </member>
        <member name="P:KOTH.WorldPingComponent.Target">
            <summary>
            Are we pinging a world object that might move?
            </summary>
        </member>
        <member name="M:KOTH.WorldPingComponent.Trigger(System.Single)">
            <summary>
            Triggers the ping to tear off in X seconds.
            </summary>
            <param name="lifetime"></param>
        </member>
        <member name="T:PlayerConnectedEvent">
            <summary>
            Called on the host when a new player joins, before NetworkSpawn is called.
            </summary>
        </member>
        <member name="M:PlayerConnectedEvent.#ctor(KOTH.PlayerState)">
            <summary>
            Called on the host when a new player joins, before NetworkSpawn is called.
            </summary>
        </member>
        <member name="T:PlayerSpawnedEvent">
            <summary>
            Called on the host when a player (re)spawns.
            </summary>
        </member>
        <member name="M:PlayerSpawnedEvent.#ctor(KOTH.PlayerPawn)">
            <summary>
            Called on the host when a player (re)spawns.
            </summary>
        </member>
        <member name="T:TeamAssignedEvent">
            <summary>
            Called on the host when a player is assigned to a team.
            </summary>
        </member>
        <member name="M:TeamAssignedEvent.#ctor(KOTH.PlayerState,KOTH.Team)">
            <summary>
            Called on the host when a player is assigned to a team.
            </summary>
        </member>
        <member name="T:ResetScoresEvent">
            <summary>
            Called on the host when all scores should be reset.
            </summary>
        </member>
        <member name="T:TeamsSwappedEvent">
            <summary>
            Called on the host when both teams swap.
            </summary>
        </member>
        <member name="T:ResetScores">
            <summary>
            Dispatches a <see cref="T:ResetScoresEvent"/> when this state is entered.
            </summary>
        </member>
        <member name="T:DestroyBetweenRounds">
            <summary>
            Destroy this object when a <see cref="T:KOTH.BetweenRoundCleanupEvent"/> is dispatched.
            </summary>
        </member>
        <member name="M:Vector2Extensions.Angle(Vector2,Vector2)">
            <summary>
            Gets the angle (in degrees) between two Vector2s
            </summary>
            <param name="a"></param>
            <param name="b"></param>
            <returns></returns>
        </member>
        <member name="T:EquipmentSlot">
            <summary>
            What slot is this equipment for?
            </summary>
        </member>
        <member name="F:EquipmentSlot.Primary">
            <summary>
            Non-pistol guns.
            </summary>
        </member>
        <member name="F:EquipmentSlot.Secondary">
            <summary>
            Pistols.
            </summary>
        </member>
        <member name="F:EquipmentSlot.Melee">
            <summary>
            Knives etc.
            </summary>
        </member>
        <member name="F:EquipmentSlot.Utility">
            <summary>
            Grenades etc.
            </summary>
        </member>
        <member name="F:EquipmentSlot.Special">
            <summary>
            C4 etc.
            </summary>
        </member>
        <member name="T:EquipmentResource">
            <summary>
            A resource definition for a piece of equipment. This could be a weapon, or a deployable, or a gadget, or a grenade.. Anything really.
            </summary>
        </member>
        <member name="P:EquipmentResource.Team">
            <summary>
            If set, only this team can buy the equipment.
            </summary>
        </member>
        <member name="P:EquipmentResource.CanOtherTeamPickUp">
            <summary>
            If false, only <see cref="P:EquipmentResource.Team"/> can pick up this equipment.
            </summary>
        </member>
        <member name="P:EquipmentResource.DropOnDisconnect">
            <summary>
            If true, owner will drop this equipment if they disconnect.
            </summary>
        </member>
        <member name="P:EquipmentResource.Icon">
            <summary>
            The equipment's icon
            </summary>
        </member>
        <member name="P:EquipmentResource.IsPurchasable">
            <summary>
            Is this equipment shown in the buy menu
            </summary>
        </member>
        <member name="P:EquipmentResource.Price">
            <summary>
            How much is this equipment to buy in the buy menu?
            </summary>
        </member>
        <member name="P:EquipmentResource.KillReward">
            <summary>
            How much money do you get per kill with this equipment?
            </summary>
        </member>
        <member name="P:EquipmentResource.MainPrefab">
            <summary>
            The prefab to create and attach to the player when spawning it in.
            </summary>
        </member>
        <member name="P:EquipmentResource.ViewModelPrefab">
            <summary>
            The prefab to create when making a viewmodel for this equipment.
            </summary>
        </member>
        <member name="T:TeamSpawnPoint">
            <summary>
            A team spawn point.
            </summary>
        </member>
        <member name="P:TeamSpawnPoint.Team">
            <summary>
            What team is this for?
            </summary>
        </member>
        <member name="T:Zone">
            <summary>
            A region of the map with some specific gameplay purpose.
            The extents of the zone are defined by <see cref="T:Sandbox.BoxCollider"/>s attached to this object.
            </summary>
        </member>
        <member name="P:Zone.DisplayName">
            <summary>
            Optional name to show in the HUD.
            </summary>
        </member>
        <member name="M:Zone.GetAt(Vector3)">
            <summary>
            Returns all zones that contain the given position.
            </summary>
        </member>
        <member name="M:InputHint.UpdateTexture">
            <summary>
            Checks the current button and updates the glyph.
            </summary>
        </member>
        <member name="P:Sandbox.UI.CustomSlider.Max">
            <summary>
            The right side of the slider.
            </summary>
        </member>
        <member name="P:Sandbox.UI.CustomSlider.Min">
            <summary>
            The left side of the slider.
            </summary>
        </member>
        <member name="P:Sandbox.UI.CustomSlider.Step">
            <summary>
            If set to 1, value will be rounded to 1's
            If set to 10, value will be rounded to 10's
            If set to 0.1, value will be rounded to 0.1's
            </summary>
        </member>
        <member name="P:Sandbox.UI.CustomSlider.ShowRange">
            <summary>
            Show the range values above the slider
            </summary>
        </member>
        <member name="P:Sandbox.UI.CustomSlider.ShowValueTooltip">
            <summary>
            When changing the value show the tooltip
            </summary>
        </member>
        <member name="P:Sandbox.UI.CustomSlider.ShowTextEntry">
            <summary>
            When changing the value show the tooltip
            </summary>
        </member>
        <member name="P:Sandbox.UI.CustomSlider.NumberFormat">
            <summary>
            How to display numbers in this control
            </summary>
        </member>
        <member name="M:Sandbox.UI.CustomSlider.ScreenPosToValue(Vector2)">
            <summary>
            Convert a screen position to a value. The value is clamped, but not snapped.
            </summary>
        </member>
        <member name="M:Sandbox.UI.CustomSlider.OnMouseMove(Sandbox.UI.MousePanelEvent)">
            <summary>
            If we move the mouse while we're being pressed then set the value
            </summary>
        </member>
        <member name="M:Sandbox.UI.CustomSlider.OnMouseDown(Sandbox.UI.MousePanelEvent)">
            <summary>
            On mouse press jump to that position
            </summary>
        </member>
    </members>
</doc>
