Ejemplo n.º 1
0
        public BattleManager(uint battleId,
                             BattleLocation location,
                             BattleOwner owner,
                             IRewardStrategy rewardStrategy,
                             IDbManager dbManager,
                             IBattleReport battleReport,
                             ICombatListFactory combatListFactory,
                             IBattleFormulas battleFormulas,
                             IBattleOrder battleOrder,
                             IBattleRandom battleRandom)
        {
            groupIdGen = new LargeIdGenerator(uint.MaxValue);
            idGen      = new LargeIdGenerator(uint.MaxValue);
            // Group id 1 is always reserved for local troop
            groupIdGen.Set(1);

            BattleId     = battleId;
            Location     = location;
            Owner        = owner;
            BattleReport = battleReport;
            Attackers    = combatListFactory.GetAttackerCombatList();
            Defenders    = combatListFactory.GetDefenderCombatList();

            this.rewardStrategy = rewardStrategy;
            this.dbManager      = dbManager;
            this.battleOrder    = battleOrder;
            this.battleFormulas = battleFormulas;
            this.battleRandom   = battleRandom;
        }
Ejemplo n.º 2
0
 public PublicBattleManager(uint battleId,
                            BattleLocation location,
                            BattleOwner owner,
                            IRewardStrategy rewardStrategy,
                            IDbManager dbManager,
                            IBattleReport battleReport,
                            ICombatListFactory combatListFactory,
                            IBattleFormulas battleFormulas,
                            IBattleOrder battleOrder,
                            IBattleRandom battleRandom)
     : base(battleId, location, owner, rewardStrategy, dbManager, battleReport, combatListFactory, battleFormulas, battleOrder, battleRandom)
 {
 }
Ejemplo n.º 3
0
 public StrongholdMainBattleManager(uint battleId,
                                    BattleLocation location,
                                    BattleOwner owner,
                                    IRewardStrategy rewardStrategy,
                                    IDbManager dbManager,
                                    IBattleReport battleReport,
                                    ICombatListFactory combatListFactory,
                                    IGameObjectLocator gameObjectLocator,
                                    IBattleOrder battleOrder,
                                    IBattleFormulas battleFormulas,
                                    IBattleRandom random) :
     base(battleId, location, owner, rewardStrategy, dbManager, battleReport, combatListFactory, battleFormulas, battleOrder, random)
 {
     this.gameObjectLocator = gameObjectLocator;
 }
Ejemplo n.º 4
0
        public BattleManagerGate(uint battleId,
                                 IStronghold stronghold,
                                 BattleLocation location,
                                 BattleOwner owner,
                                 IRewardStrategy rewardStrategy,
                                 IDbManager dbManager,
                                 IBattleReport battleReport,
                                 ICombatListFactory combatListFactory,
                                 IBattleFormulas battleFormulas,
                                 IBattleOrder battleOrder,
                                 IBattleRandom battleRandom)
            : base(battleId, location, owner, rewardStrategy, dbManager, battleReport, combatListFactory, battleFormulas, battleOrder, battleRandom)
        {
            this.stronghold = stronghold;

            precision = 1m + (new Random((int)(owner.Id + battleId + location.Id)).Next(-20, 20) / 100m);
        }