Computes and renders the streets
Adds all connections from the given entity, assumes that the entity has a route cache component. Affects all emitters
Computes if the street data within a given chunk changed and thus the chunk needs to get redrawn
Override, do not call this directly, use startDraw()
Returns the street flags at the given street space point. Does not check the coordinates!
Returns if there is a street at the given street space point. Street Space is Tile Space * 2, since every tile is split into two street parts.
Internal method to create a new empty street grid
optional context for memory tracking
Internal game load handler
Internal structure destroyed handler
Internal structure placed handler
Internal helper to place a street between two points
Helper method to already place streets before actually computing the network. This is used during initialization, since the order is: Place all buildings -> Recompute streets. So before all buildings are placed, no street data would be available at all. However, because we are computing streets during that time already, we incrementally build up the streets already with this method, so the street path finder has data to use
Recomputes the street network
Redraws a street chunk
Updates the streets in case they needs a recompute