private static IPolybianConfig GetInstance() { if (_polybianConfig == null) { _polybianConfig = SettingsLoader.LoadPolybianConfig(); } return(_polybianConfig); }
public BattleBannerController(IBMBSettings settings, IPolybianConfig polybianConfig, MissionType missionType) { _settings = settings; _polybianConfig = polybianConfig; _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>(); _polybianDict = _polybianConfig.PolybianDict; _polybianIdCount = new Dictionary <string, int>(); }
public BattleBannerAssignBehaviour(IBMBSettings settings, IPolybianConfig polybianConfig, MissionType missionType) { _controller = new BattleBannerController(settings, polybianConfig, missionType); _dropBannerController = new DropBannerController(settings); _settings = settings; _polybianConfig = polybianConfig; // For battles, we don't want ranged units dropping banners because they had a bow _forbiddenWeapons = new HashSet <ItemObject.ItemTypeEnum>() { ItemObject.ItemTypeEnum.Arrows, ItemObject.ItemTypeEnum.Bolts, ItemObject.ItemTypeEnum.Bow, ItemObject.ItemTypeEnum.Crossbow }; }
public static IPolybianConfig InitializeTemplateList(this IPolybianConfig config) { config.PolybianUnits = new List <PolybianUnit>() { new PolybianUnit("imperial_infantryman", new List <string>() { "3.0.111.1536.1536.756.764.0.0.0", "3.1.111.1536.1536.756.764.0.0.0", "3.2.111.1536.1536.756.764.0.0.0", "3.3.111.1536.1536.756.764.0.0.0", "3.4.111.1536.1536.756.764.0.0.0" }), new PolybianUnit("imperial_equite", new List <string>() { "3.5.111.1536.1536.756.764.0.0.0", "3.6.111.1536.1536.756.764.0.0.0", "3.7.111.1536.1536.756.764.0.0.0", "3.8.111.1536.1536.756.764.0.0.0", "3.9.111.1536.1536.756.764.0.0.0" }) }; return(config); }
public static IPolybianConfig Reload() { _polybianConfig = null; return(Instance); }