public void InheritFrom(MVersion parentVersion) { // Inherit list // Overload : AssetId, AssetUrl, AssetHash, ClientDownloadUrl, ClientHash, MainClass, MinecraftArguments // Combine : Libraries, GameArguments, JvmArguments // Overloads if (nc(AssetId)) { AssetId = parentVersion.AssetId; } if (nc(AssetUrl)) { AssetUrl = parentVersion.AssetUrl; } if (nc(AssetHash)) { AssetHash = parentVersion.AssetHash; } if (nc(ClientDownloadUrl)) { ClientDownloadUrl = parentVersion.ClientDownloadUrl; } if (nc(ClientHash)) { ClientHash = parentVersion.ClientHash; } if (nc(MainClass)) { MainClass = parentVersion.MainClass; } if (nc(MinecraftArguments)) { MinecraftArguments = parentVersion.MinecraftArguments; } Jar = parentVersion.Jar; // Combine if (parentVersion.Libraries != null) { if (Libraries != null) { Libraries = Libraries.Concat(parentVersion.Libraries).ToArray(); } else { Libraries = parentVersion.Libraries; } } if (parentVersion.GameArguments != null) { if (GameArguments != null) { GameArguments = GameArguments.Concat(parentVersion.GameArguments).ToArray(); } else { GameArguments = parentVersion.GameArguments; } } if (parentVersion.JvmArguments != null) { if (JvmArguments != null) { JvmArguments = JvmArguments.Concat(parentVersion.JvmArguments).ToArray(); } else { JvmArguments = parentVersion.JvmArguments; } } }