private void LoadEliteConfigurations() { foreach (var tank in this.SelectedTanks) { TankInstanceManager.GetInstance(tank.Repository, tank.Model).TankConfiguration.LoadEliteConfiguration(); } }
private StatVM GetStatVM(TankVM tank, StatInfoVM statInfo) { var tankStats = _statVms.GetOrCreate(statInfo, () => new Dictionary <TankVM, StatVM>()); return(tankStats.GetOrCreate(tank, () => new StatVM(statInfo, statInfo.Model, TankInstanceManager.GetInstance(tank.Repository, tank.Model)))); }
private void LoadFullProficiencyCrews() { foreach (var tank in this.SelectedTanks) { var tankInstance = TankInstanceManager.GetInstance(tank.Repository, tank.Model); foreach (var crew in tankInstance.CrewConfiguration.Crews) { crew.LastSkillTrainingLevel = 100; } } }
private void LoadBrotherInArmsForAllCrews() { foreach (var tank in this.SelectedTanks) { var tankInstance = TankInstanceManager.GetInstance(tank.Repository, tank.Model); foreach (var crew in tankInstance.CrewConfiguration.Crews) { crew.LearnSkill("brotherhood"); } } }
private void LoadCamouflageForAllCrews() { foreach (var tank in this.SelectedTanks) { var tankInstance = TankInstanceManager.GetInstance(tank.Repository, tank.Model); foreach (var crew in tankInstance.CrewConfiguration.Crews) { crew.LearnSkill("camouflage"); } } }
private void UpdateRivals() { var rivals = new List <ModelComparerRivalVM>(); var currentTank = this.TankInstance; foreach (var repository in RepositoryManager.Instance.Repositories) { if (!(repository is LocalGameClient)) { continue; } if (repository == currentTank.Repository) { continue; } var tank = repository.GetTank(currentTank.Tank.NationKey, currentTank.Tank.Key); if (tank == null) { continue; } var instance = TankInstanceManager.GetInstance(repository, tank); var rival = new ModelComparerRivalVM(instance); rivals.Add(rival); } this.Rivals = rivals; if (rivals.Count > 0) { if (this.SelectedRival != null) { this.SelectedRival = rivals.FirstOrDefault(r => r.Model.Repository == this.SelectedRival.Model.Repository); } if (this.SelectedRival == null) { this.SelectedRival = rivals.First(); } } else { this.SelectedRival = null; } this.IsEnabled = rivals.Count > 0; }
private void ViewInstanceXMLSnapshot(TankUnikey key) { var repository = RepositoryManager.Instance[key.RepositoryID]; var tank = repository.TankDatabase.Query("tank[@key = '{0}' and nation/@key = '{1}']", key.TankKey, key.NationKey); var uri = FileDocumentService.Instance .CreateTemporaryStreamUri("tankinstance", "xml", key.ToString(), TankInstanceManager.GetInstance(key).Xml.ToStream(), this.L("xml_viewer_service", "instance_xml_document_title", tank["userString"]), null, RepositoryManager.Instance[key.RepositoryID]); DockingViewManager.Instance.DocumentManager.OpenDocument(uri); }
protected override ICreateDocumentTask CreateCreateDocumentTask(IRepository repository, Uri uri, Guid guid, IXQueryable tank, string persistentInfo) { return(CreateDocumentTask.FromFactory(() => { var tankInstance = TankInstanceManager.GetInstance(repository, tank); var view = new TankModuleTreeDocumentView(); var vm = new TankModuleTreeDocumentVM(this, view.CommandBindings, tankInstance, persistentInfo); view.ViewModel = vm; return new DocumentInfo(guid: guid, repositoryId: repository.ID, uri: uri, title: string.Format("{0} [module tree]", tankInstance.Tank.Name), content: view, features: new IFeature[] { vm }); })); }
protected override ICreateDocumentTask CreateCreateDocumentTask(IRepository repository, Uri uri, Guid guid, IXQueryable tank, string persistentInfo) { return(CreateDocumentTask.FromFactory(() => { var tankInstance = TankInstanceManager.GetInstance(repository, tank); var view = new ModelDocumentView(); var vm = new ModelDocumentVM(this, view.CommandBindings, tankInstance, persistentInfo); view.ViewModel = vm; return new DocumentInfo(guid: guid, repositoryId: repository.ID, uri: uri, title: this.L("model_inspector", "document_title", tankInstance.Tank.Name), content: view, features: new IFeature[] { vm }, persistentInfoProvider: vm.PersistentInfo); })); }