public void OnModuleWasUpgraded(ModuleUpgradedEvent e, SelectedModuleNode module, [JoinAll] SelectedSlotNode selectedSlot, [JoinAll] EquipButtonNode equipButton, [JoinAll] SelfUserMoneyNode selfUserMoney, [JoinAll] SingleNode <ModulesScreenUIComponent> screen)
 {
     this.UpdateButtons(screen.component, selectedSlot, module, equipButton, selfUserMoney);
 }
        public UpgradeCoefs GetCoefs(ICollection <MountedModuleItemNode> mountedModules, SelectedModuleNode selectedModule, SelectedSlotNode selectedSlot, ModuleItemNode mountedToSlotModule, ICollection <SlotNode> slots, ModuleUpgradeConfigNode moduleUpgradeConfig)
        {
            List <ModuleItemNode> tankModules               = new List <ModuleItemNode>();
            List <ModuleItemNode> weaponModules             = new List <ModuleItemNode>();
            List <ModuleItemNode> tankModulesWithSelected   = new List <ModuleItemNode>();
            List <ModuleItemNode> weaponModulesWithSelected = new List <ModuleItemNode>();

            this.FilterModules(mountedModules, selectedModule, mountedToSlotModule, tankModules, weaponModules, tankModulesWithSelected, weaponModulesWithSelected);
            int slotsCount = this.GetSlotsCount(slots, TankPartModuleType.TANK);
            int slotCount  = this.GetSlotsCount(slots, TankPartModuleType.WEAPON);

            return(new UpgradeCoefs {
                tankCoeff = TankUpgradeUtils.CalculateUpgradeCoeff(this.GetTierAndLevelsDictionary(tankModules), slotsCount, moduleUpgradeConfig.moduleUpgradablePowerConfig),
                weaponCoeff = TankUpgradeUtils.CalculateUpgradeCoeff(this.GetTierAndLevelsDictionary(weaponModules), slotCount, moduleUpgradeConfig.moduleUpgradablePowerConfig),
                tankCoeffWithSelected = TankUpgradeUtils.CalculateUpgradeCoeff(this.GetTierAndLevelsDictionary(tankModulesWithSelected), slotsCount, moduleUpgradeConfig.moduleUpgradablePowerConfig),
                weaponCoeffWithSelected = TankUpgradeUtils.CalculateUpgradeCoeff(this.GetTierAndLevelsDictionary(weaponModulesWithSelected), slotCount, moduleUpgradeConfig.moduleUpgradablePowerConfig)
            });
        }