private void SetupSettings() { _settings = new TestSettings(); _settings.SetDefaultSettings(); _formationBanners = new TestFormations(); _formationBanners.SetDefaultFormationSettings(); }
public BattleBannerAssignBehaviour(IBMBSettings settings, IBMBFormationBanners formationBannerSettings, MissionType missionType) { _controller = new BattleBannerController(settings, formationBannerSettings, missionType); _dropBannerController = new DropBannerController(settings); _settings = settings; _formationBannerSettings = formationBannerSettings; // For battles, we don't want ranged units dropping banners because they had a bow _forbiddenWeapons = new HashSet <WeaponClass>() { WeaponClass.Arrow, WeaponClass.Bolt, WeaponClass.Bow, WeaponClass.Crossbow }; _formationBanners = new Dictionary <FormationGroup, Banner>() { { FormationGroup.Infantry, new Banner(_formationBannerSettings.Infantry) }, { FormationGroup.Ranged, new Banner(_formationBannerSettings.Ranged) }, { FormationGroup.Cavalry, new Banner(_formationBannerSettings.Cavalry) }, { FormationGroup.HorseArcher, new Banner(_formationBannerSettings.HorseArcher) }, { FormationGroup.Skirmisher, new Banner(_formationBannerSettings.Skirmisher) }, { FormationGroup.HeavyInfantry, new Banner(_formationBannerSettings.HeavyInfantry) }, { FormationGroup.LightCavalry, new Banner(_formationBannerSettings.LightCavalry) }, { FormationGroup.HeavyCavalry, new Banner(_formationBannerSettings.HeavyCavalry) } }; }
private static IBMBFormationBanners GetInstance() { if (_formationBanners == null) { _formationBanners = SettingsLoader.LoadBMBFormationBanners(); } return(_formationBanners); }
public static void CopyCodesTo(this IBMBFormationBanners from, IBMBFormationBanners to) { to.Infantry = from.Infantry; to.Ranged = from.Ranged; to.Cavalry = from.Cavalry; to.HorseArcher = from.HorseArcher; to.Skirmisher = from.Skirmisher; to.HeavyInfantry = from.HeavyInfantry; to.LightCavalry = from.LightCavalry; to.HeavyCavalry = from.HeavyCavalry; }
public BattleBannerController(IBMBSettings settings, IBMBFormationBanners formationBanners, MissionType missionType) { _settings = settings; _formationBanners = formationBanners; _missionType = missionType; _processedBySpec = new Dictionary <string, Dictionary <TroopSpecialization, List <IBMBAgent> > >(); _processedByFormation = new Dictionary <string, Dictionary <FormationGroup, List <IBMBAgent> > >(); _processedByTroop = new Dictionary <string, Dictionary <IBMBCharacter, List <IBMBAgent> > >(); _equippedBannersByParty = new Dictionary <string, int>(); PopulateAllowedFormations(); }
public static IBMBFormationBanners SetDefaultFormationSettings(this IBMBFormationBanners formationBanners) { formationBanners.Infantry = "1.111.111.1536.1536.756.764.1.0.0.301.116.116.700.700.764.764.0.0.225"; formationBanners.Ranged = "1.111.111.1536.1536.756.764.1.0.0.311.116.116.700.700.764.764.0.0.315"; formationBanners.Cavalry = "1.111.111.1536.1536.756.764.0.0.0.124.116.116.500.500.784.864.0.0.0.301.116.116.300.300.764.564.0.0.225"; formationBanners.HorseArcher = "1.111.111.1536.1536.756.764.0.0.0.124.116.116.500.500.784.864.0.0.0.311.116.116.300.300.764.564.0.0.315"; formationBanners.Skirmisher = "1.111.111.1536.1536.756.764.1.0.0.304.116.116.600.600.764.864.0.0.45.304.116.116.600.600.764.664.0.0.45.304.116.116.600.600.764.764.0.0.45"; formationBanners.HeavyInfantry = "1.111.111.1536.1536.756.764.1.0.0.318.111.116.700.700.764.764.1.1.0.301.116.116.700.700.764.764.0.0.225"; formationBanners.LightCavalry = "1.111.111.1536.1536.756.764.0.0.0.124.116.116.500.500.784.864.0.0.0.304.116.116.300.300.764.614.0.0.315.304.116.116.300.300.764.514.0.0.315.304.116.116.300.300.764.564.0.0.315"; formationBanners.HeavyCavalry = "1.111.111.1536.1536.756.764.0.0.0.124.116.116.500.500.784.864.0.0.0.318.111.116.300.300.764.564.1.0.0.301.116.116.300.300.764.564.0.0.225"; return(formationBanners); }
public static IBMBFormationBanners Reload() { _formationBanners = null; return(Instance); }