Show / Hide Table of Contents

Class ExplosionTileFlood

This class exists to facilitate the iterative neighbor-finding / flooding algorithm used by explosions in Content.Server.Explosion.EntitySystems.ExplosionSystem.GetExplosionTiles(Robust.Shared.Map.MapCoordinates,System.String,System.Single,System.Single,System.Single). This is the base class for ExplosionSpaceTileFlood and ExplosionGridTileFlood, each of which contains additional code fro logic specific to grids or space.

Inheritance
System.Object
ExplosionTileFlood
ExplosionGridTileFlood
ExplosionSpaceTileFlood
Namespace: Content.Server.Explosion.EntitySystems
Assembly: Content.Server.dll
Syntax
public abstract class ExplosionTileFlood : object
Remarks

The class stores information about the tiles that the explosion has currently reached, and provides functions to perform a neighbor-finding iteration to expand the explosion area. It also has some functionality that allows tiles to move between grids/space.

Fields

| Improve this Doc View Source

BlockedTileLists

Declaration
protected Dictionary<int, List<Vector2i>> BlockedTileLists
Field Value
Type Description
Dictionary<System.Int32, List<Vector2i>>
| Improve this Doc View Source

EnteredBlockedTiles

Declaration
protected UniqueVector2iSet EnteredBlockedTiles
Field Value
Type Description
UniqueVector2iSet
| Improve this Doc View Source

FreedTileLists

Declaration
protected Dictionary<int, HashSet<Vector2i>> FreedTileLists
Field Value
Type Description
Dictionary<System.Int32, HashSet<Vector2i>>
| Improve this Doc View Source

NewBlockedTiles

Declaration
protected List<Vector2i> NewBlockedTiles
Field Value
Type Description
List<Vector2i>
| Improve this Doc View Source

NewFreedTiles

Declaration
protected HashSet<Vector2i> NewFreedTiles
Field Value
Type Description
HashSet<Vector2i>
| Improve this Doc View Source

NewTiles

Declaration
protected List<Vector2i> NewTiles
Field Value
Type Description
List<Vector2i>
| Improve this Doc View Source

ProcessedTiles

Declaration
protected UniqueVector2iSet ProcessedTiles
Field Value
Type Description
UniqueVector2iSet
| Improve this Doc View Source

TileLists

Declaration
public Dictionary<int, List<Vector2i>> TileLists
Field Value
Type Description
Dictionary<System.Int32, List<Vector2i>>
| Improve this Doc View Source

UnenteredBlockedTiles

Declaration
protected UniqueVector2iSet UnenteredBlockedTiles
Field Value
Type Description
UniqueVector2iSet

Methods

| Improve this Doc View Source

AddNewDiagonalTiles(Int32, IEnumerable<Vector2i>, Boolean)

Declaration
protected void AddNewDiagonalTiles(int iteration, IEnumerable<Vector2i> tiles, bool ignoreLocalBlocker = false)
Parameters
Type Name Description
System.Int32 iteration
IEnumerable<Vector2i> tiles
System.Boolean ignoreLocalBlocker
| Improve this Doc View Source

CleanUp()

Merge all tile lists into a single output tile list.

Declaration
public void CleanUp()
| Improve this Doc View Source

GetUnblockedDirectionOrAll(Vector2i)

Declaration
protected abstract AtmosDirection GetUnblockedDirectionOrAll(Vector2i tile)
Parameters
Type Name Description
Vector2i tile
Returns
Type Description
AtmosDirection
| Improve this Doc View Source

InitTile(Vector2i)

Declaration
public abstract void InitTile(Vector2i initialTile)
Parameters
Type Name Description
Vector2i initialTile
| Improve this Doc View Source

ProcessNewTile(Int32, Vector2i, AtmosDirection)

Declaration
protected abstract void ProcessNewTile(int iteration, Vector2i tile, AtmosDirection entryDirections)
Parameters
Type Name Description
System.Int32 iteration
Vector2i tile
AtmosDirection entryDirections
  • Improve this Doc
  • View Source
☀
☾
In This Article
Back to top
Generated by DocFX
☀
☾