示例#1
0
 public MiningDefenseService(BaseData baseData, ActiveUnitData activeUnitData, IIndividualMicroController workerMicroController, DebugService debugService)
 {
     BaseData              = baseData;
     ActiveUnitData        = activeUnitData;
     WorkerMicroController = workerMicroController;
     DebugService          = debugService;
 }
示例#2
0
        public SupportAttackTask(AttackData attackData, TargetingData targetingData, ActiveUnitData activeUnitData, MicroTaskData microTaskData,
                                 IMicroController microController,
                                 DebugService debugService, ChatService chatService, TargetingService targetingService, DefenseService defenseService, DistractionSquadService distractionSquadService, EnemyCleanupService enemyCleanupService,
                                 ArmySplitter armySplitter,
                                 List <UnitTypes> mainAttackerTypes,
                                 float priority, bool enabled = true)
        {
            AttackData     = attackData;
            TargetingData  = targetingData;
            ActiveUnitData = activeUnitData;
            MicroTaskData  = microTaskData;

            MicroController = microController;

            DebugService            = debugService;
            ChatService             = chatService;
            TargetingService        = targetingService;
            DefenseService          = defenseService;
            DistractionSquadService = distractionSquadService;
            EnemyCleanupService     = enemyCleanupService;

            ArmySplitter = armySplitter;

            MainAttackers  = mainAttackerTypes;
            Priority       = priority;
            Enabled        = enabled;
            UnitCommanders = new List <UnitCommander>();
        }
示例#3
0
        public FourGate(BuildOptions buildOptions, MacroData macroData, ActiveUnitData activeUnitData, AttackData attackData, ChatService chatService, ChronoData chronoData, SharkyUnitData sharkyUnitData, ICounterTransitioner counterTransitioner, UnitCountService unitCountService, MicroTaskData microTaskData)
            : base(buildOptions, macroData, activeUnitData, attackData, chatService, chronoData, counterTransitioner, unitCountService, microTaskData)
        {
            SharkyUnitData = sharkyUnitData;

            OpeningAttackChatSent = false;
        }
示例#4
0
 public TargetingService(ActiveUnitData activeUnitData, MapDataService mapDataService, BaseData baseData, TargetingData targetingData)
 {
     ActiveUnitData = activeUnitData;
     MapDataService = mapDataService;
     BaseData       = baseData;
     TargetingData  = targetingData;
 }
示例#5
0
 public ZergBuildingPlacement(ActiveUnitData activeUnitData, SharkyUnitData sharkyUnitData, DebugService debugService, BuildingService buildingService)
 {
     ActiveUnitData  = activeUnitData;
     SharkyUnitData  = sharkyUnitData;
     DebugService    = debugService;
     BuildingService = buildingService;
 }
示例#6
0
 public BuildingService(MapData mapData, ActiveUnitData activeUnitData, TargetingData targetingData, BaseData baseData)
 {
     MapData        = mapData;
     ActiveUnitData = activeUnitData;
     TargetingData  = targetingData;
     BaseData       = baseData;
 }
示例#7
0
        public MacroManager(MacroSetup macroSetup, ActiveUnitData activeUnitData, SharkyUnitData sharkyUnitData, IBuildingBuilder buildingBuilder, SharkyOptions sharkyOptions, BaseData baseData, TargetingData targetingData, AttackData attackData, IBuildingPlacement warpInPlacement, MacroData macroData, Morpher morpher, BuildOptions buildOptions,
                            BuildPylonService buildPylonService, BuildDefenseService buildDefenseService, BuildProxyService buildProxyService, UnitCountService unitCountService, BuildingCancelService buildingCancelService)
        {
            MacroSetup      = macroSetup;
            ActiveUnitData  = activeUnitData;
            SharkyUnitData  = sharkyUnitData;
            BuildingBuilder = buildingBuilder;
            SharkyOptions   = sharkyOptions;
            BaseData        = baseData;
            TargetingData   = targetingData;
            AttackData      = attackData;
            WarpInPlacement = warpInPlacement;

            MacroData    = macroData;
            Morpher      = morpher;
            BuildOptions = buildOptions;

            BuildPylonService     = buildPylonService;
            BuildDefenseService   = buildDefenseService;
            BuildProxyService     = buildProxyService;
            UnitCountService      = unitCountService;
            BuildingCancelService = buildingCancelService;

            MacroData.DesiredUpgrades = new Dictionary <Upgrades, bool>();

            LastRunFrame = -10;
            RunFrequency = 5;
        }
示例#8
0
        public UnitManager(ActiveUnitData activeUnitData, SharkyUnitData sharkyUnitData, SharkyOptions sharkyOptions, TargetPriorityService targetPriorityService, CollisionCalculator collisionCalculator, MapDataService mapDataService, DebugService debugService, DamageService damageService, UnitDataService unitDataService)
        {
            ActiveUnitData = activeUnitData;

            SharkyUnitData        = sharkyUnitData;
            SharkyOptions         = sharkyOptions;
            TargetPriorityService = targetPriorityService;
            CollisionCalculator   = collisionCalculator;
            MapDataService        = mapDataService;
            DebugService          = debugService;
            DamageService         = damageService;
            UnitDataService       = unitDataService;

            ActiveUnitData.EnemyUnits   = new ConcurrentDictionary <ulong, UnitCalculation>();
            ActiveUnitData.SelfUnits    = new ConcurrentDictionary <ulong, UnitCalculation>();
            ActiveUnitData.NeutralUnits = new ConcurrentDictionary <ulong, UnitCalculation>();

            ActiveUnitData.Commanders = new ConcurrentDictionary <ulong, UnitCommander>();

            ActiveUnitData.DeadUnits = new List <ulong>();

            TargetPriorityCalculationFrame = 0;

            UndeadTypes = new List <UnitTypes> {
                UnitTypes.ZERG_BROODLING, UnitTypes.ZERG_EGG, UnitTypes.ZERG_LARVA, UnitTypes.TERRAN_KD8CHARGE, UnitTypes.ZERG_OVERLORD, UnitTypes.ZERG_OVERLORDCOCOON, UnitTypes.ZERG_OVERLORDTRANSPORT, UnitTypes.ZERG_TRANSPORTOVERLORDCOCOON
            };
        }
示例#9
0
        public WallOffTest(BuildOptions buildOptions, MacroData macroData, ActiveUnitData activeUnitData, AttackData attackData, ChatService chatService, ChronoData chronoData, MicroTaskData microTaskData,
                           ICounterTransitioner counterTransitioner, UnitCountService unitCountService)
            : base(buildOptions, macroData, activeUnitData, attackData, chatService, chronoData, counterTransitioner, unitCountService, microTaskData)
        {
            MicroTaskData = microTaskData;

            WallOffStarted = false;
        }
示例#10
0
 public BuildingBuilder(ActiveUnitData activeUnitData, TargetingData targetingData, IBuildingPlacement buildingPlacement, SharkyUnitData sharkyUnitData, BaseData baseData)
 {
     ActiveUnitData    = activeUnitData;
     TargetingData     = targetingData;
     BuildingPlacement = buildingPlacement;
     SharkyUnitData    = sharkyUnitData;
     BaseData          = baseData;
 }
示例#11
0
        public DestroyWallOffTask(ActiveUnitData activeUnitData, bool enabled, float priority)
        {
            ActiveUnitData = activeUnitData;
            Priority       = priority;
            Enabled        = enabled;

            UnitCommanders = new List <UnitCommander>();
            Ended          = false;
        }
示例#12
0
 public ProtossBuildingPlacement(ActiveUnitData activeUnitData, SharkyUnitData sharkyUnitData, DebugService debugService, MapDataService mapDataService, BuildingService buildingService, IBuildingPlacement wallOffPlacement)
 {
     ActiveUnitData   = activeUnitData;
     SharkyUnitData   = sharkyUnitData;
     DebugService     = debugService;
     MapDataService   = mapDataService;
     BuildingService  = buildingService;
     WallOffPlacement = wallOffPlacement;
 }
示例#13
0
 public ZealotRush(EnemyStrategyHistory enemyStrategyHistory, ChatService chatService, ActiveUnitData activeUnitData, SharkyOptions sharkyOptions, DebugService debugService, UnitCountService unitCountService)
 {
     EnemyStrategyHistory = enemyStrategyHistory;
     ChatService          = chatService;
     ActiveUnitData       = activeUnitData;
     SharkyOptions        = sharkyOptions;
     DebugService         = debugService;
     UnitCountService     = unitCountService;
 }
        public HallucinationScoutEmptyBasesTask(BaseData baseData, ActiveUnitData activeUnitData, bool enabled, float priority)
        {
            BaseData       = baseData;
            Priority       = priority;
            ActiveUnitData = activeUnitData;

            UnitCommanders = new List <UnitCommander>();
            Enabled        = enabled;
        }
示例#15
0
 public MacroBalancer(BuildOptions buildOptions, ActiveUnitData activeUnitData, MacroData macroData, SharkyUnitData sharkyUnitData, BaseData baseData, UnitCountService unitCountService)
 {
     BuildOptions     = buildOptions;
     ActiveUnitData   = activeUnitData;
     MacroData        = macroData;
     SharkyUnitData   = sharkyUnitData;
     BaseData         = baseData;
     UnitCountService = unitCountService;
 }
示例#16
0
 public WallOffPlacement(ActiveUnitData activeUnitData, SharkyUnitData sharkyUnitData, DebugService debugService, MapData mapData, BuildingService buildingService, TargetingData targetingData)
 {
     ActiveUnitData  = activeUnitData;
     SharkyUnitData  = sharkyUnitData;
     DebugService    = debugService;
     MapData         = mapData;
     BuildingService = buildingService;
     TargetingData   = targetingData;
 }
示例#17
0
        public ReaperCheese(BuildOptions buildOptions, MacroData macroData, ActiveUnitData activeUnitData, AttackData attackData, ChatService chatService, MicroTaskData microTaskData, UnitCountService unitCountService, SharkyUnitData sharkyUnitData, ProxyLocationService proxyLocationService, DebugService debugService, IIndividualMicroController scvMicroController) : base(buildOptions, macroData, activeUnitData, attackData, chatService, unitCountService)
        {
            MicroTaskData        = microTaskData;
            ProxyLocationService = proxyLocationService;

            OpeningAttackChatSent = false;
            ProxyTask             = new ProxyTask(sharkyUnitData, false, 0.9f, MacroData, string.Empty, MicroTaskData, debugService, scvMicroController);
            ProxyTask.ProxyName   = GetType().Name;
        }
示例#18
0
 public BaseManager(SharkyUnitData sharkyUnitData, ActiveUnitData activeUnitData, IPathFinder pathFinder, UnitCountService unitCountService, BaseData baseData)
 {
     SharkyUnitData         = sharkyUnitData;
     ActiveUnitData         = activeUnitData;
     PathFinder             = pathFinder;
     UnitCountService       = unitCountService;
     BaseData               = baseData;
     BaseData.BaseLocations = new List <BaseLocation>();
 }
示例#19
0
 public SharkyBuild(DefaultSharkyBot defaultSharkyBot)
 {
     BuildOptions     = defaultSharkyBot.BuildOptions;
     MacroData        = defaultSharkyBot.MacroData;
     ActiveUnitData   = defaultSharkyBot.ActiveUnitData;
     AttackData       = defaultSharkyBot.AttackData;
     ChatService      = defaultSharkyBot.ChatService;
     UnitCountService = defaultSharkyBot.UnitCountService;
     MicroTaskData    = defaultSharkyBot.MicroTaskData;
 }
示例#20
0
文件: Proxy.cs 项目: sharknice/Sharky
 public Proxy(EnemyStrategyHistory enemyStrategyHistory, ChatService chatService, ActiveUnitData activeUnitData, SharkyOptions sharkyOptions, TargetingData targetingData, DebugService debugService, UnitCountService unitCountService)
 {
     EnemyStrategyHistory = enemyStrategyHistory;
     ChatService          = chatService;
     ActiveUnitData       = activeUnitData;
     SharkyOptions        = sharkyOptions;
     TargetingData        = targetingData;
     DebugService         = debugService;
     UnitCountService     = unitCountService;
 }
示例#21
0
 public BuildingPlacement(IBuildingPlacement protossBuildingPlacement, IBuildingPlacement terranBuildingPlacement, IBuildingPlacement zergBuildingPlacement, BaseData baseData, ActiveUnitData activeUnitData, BuildingService buildingService, SharkyUnitData sharkyUnitData)
 {
     ProtossBuildingPlacement = protossBuildingPlacement;
     TerranBuildingPlacement  = terranBuildingPlacement;
     ZergBuildingPlacement    = zergBuildingPlacement;
     BaseData        = baseData;
     ActiveUnitData  = activeUnitData;
     BuildingService = buildingService;
     SharkyUnitData  = sharkyUnitData;
 }
示例#22
0
        public BuildProxyService(MacroData macroData, IBuildingBuilder buildingBuilder, SharkyUnitData sharkyUnitData, ActiveUnitData activeUnitData, Morpher morpher, MicroTaskData microTaskData)
        {
            MacroData       = macroData;
            BuildingBuilder = buildingBuilder;
            SharkyUnitData  = sharkyUnitData;
            ActiveUnitData  = activeUnitData;
            Morpher         = morpher;
            MicroTaskData   = microTaskData;

            lastFailFrame = 0;
        }
示例#23
0
        public QueenInjectsTask(ActiveUnitData activeUnitData, float priority, UnitCountService unitCountService)
        {
            ActiveUnitData   = activeUnitData;
            UnitCountService = unitCountService;

            Priority = priority;

            UnitCommanders = new List <UnitCommander>();

            Enabled = true;
        }
示例#24
0
 public SharkyBuild(BuildOptions buildOptions, MacroData macroData, ActiveUnitData activeUnitData, AttackData attackData, MicroTaskData microTaskData,
                    ChatService chatService, UnitCountService unitCountService)
 {
     BuildOptions     = buildOptions;
     MacroData        = macroData;
     ActiveUnitData   = activeUnitData;
     AttackData       = attackData;
     ChatService      = chatService;
     UnitCountService = unitCountService;
     MicroTaskData    = microTaskData;
 }
示例#25
0
        public BuildPylonService(MacroData macroData, IBuildingBuilder buildingBuilder, SharkyUnitData sharkyUnitData, ActiveUnitData activeUnitData, BaseData baseData, TargetingData targetingData, BuildingService buildingService)
        {
            MacroData       = macroData;
            BuildingBuilder = buildingBuilder;
            SharkyUnitData  = sharkyUnitData;
            ActiveUnitData  = activeUnitData;
            BaseData        = baseData;
            TargetingData   = targetingData;
            BuildingService = buildingService;

            defensivePointLastFailFrame = 0;
        }
示例#26
0
        public BuildDefenseService(MacroData macroData, IBuildingBuilder buildingBuilder, SharkyUnitData sharkyUnitData, ActiveUnitData activeUnitData, BaseData baseData, TargetingData targetingData, BuildOptions buildOptions)
        {
            MacroData       = macroData;
            BuildingBuilder = buildingBuilder;
            SharkyUnitData  = sharkyUnitData;
            ActiveUnitData  = activeUnitData;
            BaseData        = baseData;
            TargetingData   = targetingData;
            BuildOptions    = buildOptions;

            defensivePointLastFailFrame = 0;
        }
示例#27
0
        public AttackDataManager(AttackData attackData, ActiveUnitData activeUnitData, AttackTask attackTask, TargetPriorityService targetPriorityService, TargetingData targetingData, MacroData macroData, BaseData baseData, DebugService debugService)
        {
            AttackData            = attackData;
            ActiveUnitData        = activeUnitData;
            AttackTask            = attackTask;
            TargetPriorityService = targetPriorityService;
            TargetingData         = targetingData;
            MacroData             = macroData;
            BaseData = baseData;

            DebugService = debugService;
        }
示例#28
0
        public ArmySplitter(AttackData attackData, TargetingData targetingData, ActiveUnitData activeUnitData,
                            DefenseService defenseService, IMicroController microController)
        {
            AttackData     = attackData;
            TargetingData  = targetingData;
            ActiveUnitData = activeUnitData;

            DefenseService = defenseService;

            MicroController = microController;

            LastSplitFrame = -1000;
        }
示例#29
0
        public WallOffTask(SharkyUnitData sharkyUnitData, TargetingData targetingData, ActiveUnitData activeUnitData, MacroData macroData, IBuildingPlacement wallOffPlacement, bool enabled, float priority)
        {
            SharkyUnitData   = sharkyUnitData;
            TargetingData    = targetingData;
            Priority         = priority;
            ActiveUnitData   = activeUnitData;
            MacroData        = macroData;
            WallOffPlacement = wallOffPlacement;

            UnitCommanders = new List <UnitCommander>();
            Enabled        = enabled;

            PlacementPoints = new List <Point2D>();
        }
示例#30
0
        public MapManager(MapData mapData, ActiveUnitData activeUnitData, SharkyOptions sharkyOptions, SharkyUnitData sharkyUnitData, DebugService debugService, WallDataService wallDataService)
        {
            MapData         = mapData;
            ActiveUnitData  = activeUnitData;
            SharkyOptions   = sharkyOptions;
            SharkyUnitData  = sharkyUnitData;
            DebugService    = debugService;
            WallDataService = wallDataService;

            LastBuildingCount         = 0;
            LastVisibleEnemyUnitCount = 0;
            FramesPerUpdate           = 5;
            LastUpdateFrame           = -100;
        }