public VisibilityUpdater(ITilePresenter tilePresenter, IEntityPresenter entityPresenter, IFovCalculator fovCalculator, IGrid grid) { _grid = grid; _fovCalculator = fovCalculator; _tilePresenter = tilePresenter; _entityPresenter = entityPresenter; }
private IEnumerable <Entity> GetEntities(IEntityPresenter item) { if (LinkGuid == Guid.Empty) { yield return(item?.Entity); } else { EntityTypeLink link = item.Entity?.Type.Links.Find(LinkGuid); if (link == null) { yield break; } if (link.Link.Type.IsToOne()) { yield return(item.Entity.GetLink <Entity>(LinkGuid)); } else { foreach (LinkEntity linkedEntity in item.Entity.GetLinks(LinkGuid)) { yield return(linkedEntity.SecondEntity); } } } }
public VisibilityUpdater(ITilePresenter tilePresenter, IEntityPresenter entityPresenter, IFovCalculator fovCalculator, IGrid grid, IOsnowaContextManager contextManager) { _grid = grid; _fovCalculator = fovCalculator; _tilePresenter = tilePresenter; _entityPresenter = entityPresenter; _contextManager = contextManager; }
public TileVisibilityUpdater(IGridInfoProvider gridInfoProvider, IFovCalculator fovCalculator, ITilePresenter tilePresenter, IEntityPresenter entityPresenter, IEntityDetector entityDetector) { _fovCalculator = fovCalculator; _tilePresenter = tilePresenter; _entityPresenter = entityPresenter; _entityDetector = entityDetector; _gridInfoProvider = gridInfoProvider; }
public EntityRemover(IGameContext gameContext, IEntityPresenter entityPresenter) { _gameContext = gameContext; _entityPresenter = entityPresenter; }