public GameAggregatePromotableNode(GUBP bp, List<UnrealTargetPlatform> InHostPlatforms, BranchInfo.BranchUProject InGameProj, bool IsSeparate) : base(InHostPlatforms, InGameProj.GameName) { GameProj = InGameProj; foreach (var HostPlatform in HostPlatforms) { AddDependency(RootEditorNode.StaticGetFullName(HostPlatform)); if (InGameProj.GameName != bp.Branch.BaseEngineProject.GameName && GameProj.Properties.Targets.ContainsKey(TargetRules.TargetType.Editor)) { AddDependency(EditorGameNode.StaticGetFullName(HostPlatform, GameProj)); } // add all of the platforms I use { var Platforms = bp.GetMonolithicPlatformsForUProject(HostPlatform, InGameProj, false); if (bp.bOrthogonalizeEditorPlatforms) { foreach (var Plat in Platforms) { AddDependency(EditorPlatformNode.StaticGetFullName(HostPlatform, Plat)); } } } { if (!GameProj.Options(HostPlatform).bPromoteEditorOnly) { var Platforms = bp.GetMonolithicPlatformsForUProject(HostPlatform, InGameProj, true); foreach (var Plat in Platforms) { AddDependency(GamePlatformMonolithicsNode.StaticGetFullName(HostPlatform, GameProj, Plat)); if (Plat == UnrealTargetPlatform.Win32 && GameProj.Properties.Targets.ContainsKey(TargetRules.TargetType.Game)) { if (GameProj.Properties.Targets[TargetRules.TargetType.Game].Rules.GUBP_BuildWindowsXPMonolithics()) { AddDependency(GamePlatformMonolithicsNode.StaticGetFullName(HostPlatform, GameProj, Plat, true)); } } } } } } }
public GameAggregatePromotableNode(GUBP.GUBPBranchConfig BranchConfig, List<UnrealTargetPlatform> InHostPlatforms, List<UnrealTargetPlatform> InActivePlatforms, BranchInfo.BranchUProject InGameProj, bool IsSeparate, bool bNoIOSOnPC) : base(InHostPlatforms, InGameProj.GameName) { GameProj = InGameProj; foreach (var HostPlatform in HostPlatforms) { AddDependency(RootEditorNode.StaticGetFullName(HostPlatform)); if(!BranchConfig.BranchOptions.PromotablesWithoutTools.Contains(GameProj.GameName)) { AddDependency(ToolsNode.StaticGetFullName(HostPlatform)); AddDependency(InternalToolsNode.StaticGetFullName(HostPlatform)); } if (InGameProj.GameName != BranchConfig.Branch.BaseEngineProject.GameName && GameProj.Properties.Targets.ContainsKey(TargetRules.TargetType.Editor)) { AddDependency(EditorGameNode.StaticGetFullName(HostPlatform, GameProj)); } // add all of the platforms I use { if (!GameProj.Options(HostPlatform).bPromoteEditorOnly) { var Platforms = GamePlatformMonolithicsNode.GetMonolithicPlatformsForUProject(HostPlatform, InActivePlatforms, InGameProj, true, bNoIOSOnPC); foreach (var Plat in Platforms) { AddDependency(GamePlatformMonolithicsNode.StaticGetFullName(HostPlatform, GameProj, Plat)); if (Plat == UnrealTargetPlatform.Win32 && GameProj.Properties.Targets.ContainsKey(TargetRules.TargetType.Game)) { if (GameProj.Properties.Targets[TargetRules.TargetType.Game].Rules.GUBP_BuildWindowsXPMonolithics()) { AddDependency(GamePlatformMonolithicsNode.StaticGetFullName(HostPlatform, GameProj, Plat, true)); } } } } } } }