public DockingBase(IChannelManager channelManager, ICentralBank centralBank, IRobotTemplateRelations robotTemplateRelations, DockingBaseHelper dockingBaseHelper)
 {
     ChannelManager          = channelManager;
     _centralBank            = centralBank;
     _robotTemplateRelations = robotTemplateRelations;
     _dockingBaseHelper      = dockingBaseHelper;
 }
Exemplo n.º 2
0
 public DirectPresence(IZone zone, PresenceConfiguration configuration,
                       IRobotTemplateRelations robotTemplateRelations,
                       FlockConfigurationBuilder.Factory flockConfigurationBuilderFactory) : base(zone, configuration)
 {
     _robotTemplateRelations           = robotTemplateRelations;
     _flockConfigurationBuilderFactory = flockConfigurationBuilderFactory;
 }
Exemplo n.º 3
0
 public Outpost(IEntityServices entityServices,
                ICorporationManager corporationManager,
                IChannelManager channelManager,
                ILootService lootService,
                ICentralBank centralBank,
                IRobotTemplateRelations robotTemplateRelations,
                DockingBaseHelper dockingBaseHelper) : base(channelManager, centralBank, robotTemplateRelations, dockingBaseHelper)
 {
     _entityServices     = entityServices;
     _corporationManager = corporationManager;
     _lootService        = lootService;
 }
        public static RobotTemplate GetRelatedTemplateOrDefault(this IRobotTemplateRelations relations, int definition)
        {
            var template = relations.GetRelatedTemplate(definition);

            if (template != null)
            {
                return(template);
            }

            Logger.Warning("robot template was not found for definition: " + definition + ", falling back to starter_master.");
            //fallback to arkhe
            return(relations.EquippedDefault);
        }
        public GetEntityDefaults(IExtensionReader extensionReader, IEntityDefaultReader entityDefaultReader, IRobotTemplateRelations robotTemplateRelations)
        {
            var cachedEntityDefaultsInfo = entityDefaultReader.GetAll().ToDictionary("d", ed => InfoBuilder.Build(extensionReader, robotTemplateRelations, ed));

            _message = Message.Builder.SetCommand(Commands.GetEntityDefaults).WithData(cachedEntityDefaultsInfo).Build();
        }
            public static Dictionary <string, object> Build(IExtensionReader extensionReader, IRobotTemplateRelations robotTemplateRelations, EntityDefault ed)
            {
                var info = ed.ToDictionary();

                try
                {
                    Entity entity = null;

                    var robotTemplate = robotTemplateRelations.GetRelatedTemplate(ed);
                    if (robotTemplate != null)
                    {
                        entity = robotTemplate.Build();
                    }

                    if (entity == null)
                    {
                        entity = Entity.Factory.CreateWithRandomEID(ed);
                    }

                    var item = entity as Item;
                    item?.Initialize();

                    var builder = new InfoBuilder(extensionReader, info);
                    entity.AcceptVisitor(builder);
                }
                catch (Exception ex)
                {
                    Logger.Error($"troubled definition: {ed.Definition}  {ex.Message}");
                    Logger.Error($"{ex}\n{ex.Message}\n{ex.Source}\n{ex.InnerException?.Message}\n{ex.StackTrace}\n");
                }

                return(info);
            }
 public PriceCalculator(MarketHandler marketHandler, IProductionDataAccess productionDataAccess, IRobotTemplateRelations robotTemplateRelations)
 {
     _marketHandler          = marketHandler;
     _productionDataAccess   = productionDataAccess;
     _robotTemplateRelations = robotTemplateRelations;
 }
 public static RobotTemplate GetRelatedTemplateOrDefault(this IRobotTemplateRelations relations, EntityDefault ed)
 {
     return(relations.GetRelatedTemplateOrDefault(ed.Definition));
 }
        public static RobotTemplate GetRelatedTemplate(this IRobotTemplateRelations relations, int definition)
        {
            var relation = relations.Get(definition);

            return(relation?.Template);
        }
 public static RobotTemplate GetStarterMaster(this IRobotTemplateRelations relations, bool equipped = true)
 {
     return(equipped ? relations.EquippedDefault : relations.UnequippedDefault);
 }
 public static IRobotTemplateRelation GetRandomByMissionLevelAndRaceID(this IRobotTemplateRelations relations, int missionLevel, int raceID)
 {
     return(relations.GetAll().Where(r => r.HasMissionLevel).FilterByMissionLevel(missionLevel).FilterByRaceID(raceID).RandomElement());
 }
 public static IRobotTemplateRelation GetRandomIndustrialNpc(this IRobotTemplateRelations relations, int level)
 {
     return(relations.GetAll().Where(r => r.HasMissionLevel && r.MissionLevel >= 0 && r.MissionLevel <= level).FilterByRaceID(INDY_RACE).RandomElement());
 }
 public static IRobotTemplateRelation GetRandomDummyDecoyOthers(this IRobotTemplateRelations relations)
 {
     return(relations.GetRandomIndustrialNpc(0));
 }
 public PBSDockingBase(MarketHelper marketHelper, ICorporationManager corporationManager, IChannelManager channelManager, ICentralBank centralBank, IRobotTemplateRelations robotTemplateRelations, DockingBaseHelper dockingBaseHelper, SparkTeleportHelper sparkTeleportHelper, PBSObjectHelper <PBSDockingBase> .Factory pbsObjectHelperFactory) : base(channelManager, centralBank, robotTemplateRelations, dockingBaseHelper)
 {
     _marketHelper                   = marketHelper;
     _corporationManager             = corporationManager;
     _sparkTeleportHelper            = sparkTeleportHelper;
     _pbsObjectHelper                = pbsObjectHelperFactory(this);
     _pbsReinforceHandler            = new PBSReinforceHandler <PBSDockingBase>(this);
     _standingController             = new PBSStandingController <PBSDockingBase>(this);
     _pbsTerritorialVisibilityHelper = new PBSTerritorialVisibilityHelper(this);
 }
Exemplo n.º 15
0
 public TrainingDockingBase(IChannelManager channelManager, ICentralBank centralBank, IRobotTemplateRelations robotTemplateRelations, DockingBaseHelper dockingBaseHelper) : base(channelManager, centralBank, robotTemplateRelations, dockingBaseHelper)
 {
 }
 public MarketRobotPriceWriter(IEntityDefaultReader entityDefaultReader, IRobotTemplateRelations robotTemplateRelations)
 {
     _entityDefaultReader    = entityDefaultReader;
     _robotTemplateRelations = robotTemplateRelations;
 }