public NpcMoveToRandomPlace( INpcMoveUseCase moveUseCase, INpcParamUseCase paramUseCase, ITilemapPassabilityUseCase tilemapPassabilityUseCase, ITilemapUseCase tilemapUseCase) { _moveUseCase = moveUseCase; _paramUseCase = paramUseCase; _tilemapPassabilityUseCase = tilemapPassabilityUseCase; _tilemapUseCase = tilemapUseCase; _aimList = new Stack <Vector2Int>(); }
void Inject( INpcAiUseCase aiUseCase, INpcMoveUseCase moveUseCase, INpcParamUseCase paramUseCase, INpcRegistry registry, List <INpcActionUseCase> actions ) { _aiUseCase = aiUseCase; _moveUseCase = moveUseCase; _paramUseCase = paramUseCase; _registry = registry; _actionUseCases = actions.ToDictionary(a => a.TargetPattern); }