PageInstanceExport.xaml 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314
  1. <local:MyPageRight
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:local="clr-namespace:PCL" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  5. xmlns:System="clr-namespace:System;assembly=mscorlib"
  6. mc:Ignorable="d" x:Class="PageInstanceExport"
  7. PanScroll="PanBack">
  8. <Grid x:Name="PanAllBack">
  9. <Grid.Resources>
  10. <Style TargetType="local:MyCheckBox">
  11. <Setter Property="Height" Value="26" />
  12. </Style>
  13. </Grid.Resources>
  14. <local:MyScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled" x:Name="PanBack">
  15. <StackPanel Margin="25,10,25,65">
  16. <local:MyHint Margin="0,15,0,0" Text="受 Modrinth 整合包规范限制,导出的整合包中不会包含 OptiFine。" Theme="Yellow" x:Name="HintOptiFine" />
  17. <local:MyHint Margin="0,15,0,0" Theme="Yellow" x:Name="HintJava" />
  18. <local:MyCard Margin="0,15">
  19. <Grid Margin="22,15,25,15">
  20. <Grid.ColumnDefinitions>
  21. <ColumnDefinition Width="Auto" />
  22. <ColumnDefinition Width="1*" />
  23. <ColumnDefinition Width="Auto" />
  24. <ColumnDefinition Width="0.3*" />
  25. </Grid.ColumnDefinitions>
  26. <Grid.RowDefinitions>
  27. <RowDefinition Height="28" />
  28. </Grid.RowDefinitions>
  29. <TextBlock Grid.Row="0" Grid.Column="0" VerticalAlignment="Center" HorizontalAlignment="Left" Text="整合包名称" Margin="0,0,20,0" />
  30. <local:MyTextBox Grid.Row="0" Grid.Column="1" x:Name="TextExportName" MaxLength="100" />
  31. <TextBlock Grid.Row="0" Grid.Column="2" VerticalAlignment="Center" HorizontalAlignment="Left" Text="整合包版本" Margin="30,0,20,0" />
  32. <local:MyTextBox Grid.Row="0" Grid.Column="3" x:Name="TextExportVersion" Tag="VersionArgumentTitle" MaxLength="100" />
  33. </Grid>
  34. </local:MyCard>
  35. <local:MyCard Margin="0,0,0,15" x:Name="CardOptions" MinHeight="39">
  36. <local:MyIconTextButton x:Name="BtnOverrideCancel" Height="24" HorizontalAlignment="Right" VerticalAlignment="Center" Margin="0,0,5,0"
  37. IsHitTestVisible="False" Opacity="0.5"
  38. Text="重置" Logo="M530 0c287 0 521 229 521 511s-233 511-521 511c-233 0-436-151-500-368a63 63 0 0 1 44-79 65 65 0 0 1 80 43c48 162 200 276 375 276 215 0 390-171 390-383s-174-383-390-383c-103 0-199 39-270 106l21-5a63 63 0 0 1 33 123l-157 42a65 65 0 0 1-90-42l-49-183a65 65 0 1 1 126-33l6 26A524 524 0 0 1 530 0z" LogoScale="0.9" />
  39. <StackPanel Margin="25,38,15,15" Name="PanOptions">
  40. <local:MyCheckBox IsEnabled="False" x:Name="CheckOptionsBasic">
  41. <local:MyCheckBox.Tag>
  42. <local:ExportOption
  43. Title="游戏本体"
  44. DefaultChecked="True" />
  45. </local:MyCheckBox.Tag>
  46. </local:MyCheckBox>
  47. <local:MyCheckBox x:Name="CheckOptionsOptions" Margin="30,0,0,0">
  48. <local:MyCheckBox.Tag>
  49. <local:ExportOption
  50. Title="游戏本体设置"
  51. Description="键位、音量、视频设置等"
  52. Rules="options.txt|configureddefaults/"
  53. DefaultChecked="True" />
  54. </local:MyCheckBox.Tag>
  55. </local:MyCheckBox>
  56. <local:MyCheckBox Margin="30,0,0,0">
  57. <local:MyCheckBox.Tag>
  58. <local:ExportOption
  59. Title="游戏本体个人信息"
  60. Description="命令历史、已保存的快捷栏"
  61. Rules="hotbar.nbt|command_history.txt"
  62. DefaultChecked="False" />
  63. </local:MyCheckBox.Tag>
  64. </local:MyCheckBox>
  65. <local:MyCheckBox Margin="30,0,0,0">
  66. <local:MyCheckBox.Tag>
  67. <local:ExportOption
  68. Title="OptiFine 设置"
  69. Rules="optionsof.txt|optionsshaders.txt"
  70. DefaultChecked="True"
  71. RequireOptiFine="True" />
  72. </local:MyCheckBox.Tag>
  73. </local:MyCheckBox>
  74. <local:MyCheckBox x:Name="CheckOptionsMod">
  75. <local:MyCheckBox.Tag>
  76. <local:ExportOption
  77. Title="Mod"
  78. Description="模组"
  79. Rules="mods/|!mods/*.disabled|!mods/*.old|!mods/.connector/|coremods/|lib/"
  80. DefaultChecked="True"
  81. RequireModLoader="True" />
  82. </local:MyCheckBox.Tag>
  83. </local:MyCheckBox>
  84. <StackPanel Margin="30,0,0,0"
  85. Visibility="{Binding Checked, ElementName=CheckOptionsMod, Converter={StaticResource BooleanToVisibilityConverter}}">
  86. <local:MyCheckBox>
  87. <local:MyCheckBox.Tag>
  88. <local:ExportOption
  89. Title="已禁用的 Mod"
  90. Rules="mods/*.disabled|mods/*.old" />
  91. </local:MyCheckBox.Tag>
  92. </local:MyCheckBox>
  93. <local:MyCheckBox>
  94. <local:MyCheckBox.Tag>
  95. <local:ExportOption
  96. Title="整合包重要数据"
  97. Description="脚本文件、内置资源包、数据包等"
  98. Rules="hotai/|bansoukou/|addons/|multiblocked/|modpack-update-checker/|global_packs/|global_resource_packs/|global_data_packs/|optional_data_packs/|moonlight-global-datapacks/|maps/|icon.png|mods-resourcepacks/|matmos/|resource_assorts/|resource_assorts.json|patchouli_books/|datapacks/|kubejs*/|!kubejs*/probe/|!kubejs*/exported/|!kubejs*/jsconfig.json|!kubejs*/README.txt|openloader/|worldshape/|resources/|scripts/|structures/|fontfiles/|oresources/|packmenu/|craftpresence/|pointblanks/|template*/|!template*/playerdata/|!template*/stats/"
  99. DefaultChecked="True" />
  100. </local:MyCheckBox.Tag>
  101. </local:MyCheckBox>
  102. <local:MyCheckBox>
  103. <local:MyCheckBox.Tag>
  104. <local:ExportOption
  105. Title="Mod 设置"
  106. Rules="config/|!config/jei/world/|!config/worldedit/|config/worldedit/worldedit.properties|!config/spark/|config/spark/config.json|defaultconfigs/|journeymap/config/|journeymap/server/|TrashSlotSaveState.json|customfov.txt|gg.essential.mod/|essential/|!essential/*/|!essential/*.jar*|!essential/screenshot-checksum-caches.json|!essential/microsoft_accounts.json|paragliderSettings.nbt|local/client_config.json|local/ftbl.json|local/client/sidebar_buttons.json|local/client/ftbutilities.cfg|local/client/ftblib.cfg|local/client/xencraft.cfg|liteloader.properties|default_reference.xml|CustomSkinLoader/CustomSkinLoader.json|!config/tacz/custom"
  107. DefaultChecked="True" />
  108. </local:MyCheckBox.Tag>
  109. </local:MyCheckBox>
  110. <local:MyCheckBox>
  111. <local:MyCheckBox.Tag>
  112. <local:ExportOption
  113. Title="TaCZ 枪包"
  114. Rules="tacz/|config/tacz/custom/"
  115. DefaultChecked="True" />
  116. </local:MyCheckBox.Tag>
  117. </local:MyCheckBox>
  118. <local:MyCheckBox>
  119. <local:MyCheckBox.Tag>
  120. <local:ExportOption
  121. Title="已上传的沉浸画"
  122. Rules="immersive_paintings/"
  123. DefaultChecked="True" />
  124. </local:MyCheckBox.Tag>
  125. </local:MyCheckBox>
  126. <local:MyCheckBox>
  127. <local:MyCheckBox.Tag>
  128. <local:ExportOption
  129. Title="已绘制的地图"
  130. Description="地图类 Mod 为现有的存档、服务器记录的地图、路标点等"
  131. Rules="journeymap/data/|xaero/|XaeroWaypoints/|XaeroWorldMap/"
  132. DefaultChecked="False" />
  133. </local:MyCheckBox.Tag>
  134. </local:MyCheckBox>
  135. <local:MyCheckBox>
  136. <local:MyCheckBox.Tag>
  137. <local:ExportOption
  138. Title="JEI 个人信息"
  139. Description="物品收藏夹等"
  140. Rules="config/jei/world/"
  141. DefaultChecked="False" />
  142. </local:MyCheckBox.Tag>
  143. </local:MyCheckBox>
  144. <local:MyCheckBox>
  145. <local:MyCheckBox.Tag>
  146. <local:ExportOption
  147. Title="EMI 个人信息"
  148. Description="物品收藏夹、默认配方、合成历史记录等"
  149. Rules="emi.json"
  150. DefaultChecked="False" />
  151. </local:MyCheckBox.Tag>
  152. </local:MyCheckBox>
  153. <local:MyCheckBox>
  154. <local:MyCheckBox.Tag>
  155. <local:ExportOption
  156. Title="帕秋莉手册个人信息"
  157. Description="教程书的已读记录、书签、阅读历史记录等"
  158. Rules="patchouli_data.json"
  159. DefaultChecked="False" />
  160. </local:MyCheckBox.Tag>
  161. </local:MyCheckBox>
  162. </StackPanel>
  163. <local:MyCheckBox x:Name="CheckOptionsResourcePacks">
  164. <local:MyCheckBox.Tag>
  165. <local:ExportOption
  166. Title="资源包"
  167. Description="纹理包/材质包"
  168. ShowRules="resourcepacks/|texturepacks/"
  169. DefaultChecked="True" />
  170. </local:MyCheckBox.Tag>
  171. </local:MyCheckBox>
  172. <StackPanel Margin="30,0,0,0" x:Name="PanOptionsResourcePacks"
  173. Visibility="{Binding Checked, ElementName=CheckOptionsResourcePacks, Converter={StaticResource BooleanToVisibilityConverter}}">
  174. </StackPanel>
  175. <local:MyCheckBox x:Name="CheckOptionsShaderPacks">
  176. <local:MyCheckBox.Tag>
  177. <local:ExportOption
  178. Title="光影包"
  179. ShowRules="shaderpacks/"
  180. DefaultChecked="True"
  181. RequireModLoaderOrOptiFine="True" />
  182. </local:MyCheckBox.Tag>
  183. </local:MyCheckBox>
  184. <StackPanel Margin="30,0,0,0"
  185. Visibility="{Binding Checked, ElementName=CheckOptionsShaderPacks, Converter={StaticResource BooleanToVisibilityConverter}}">
  186. <local:MyCheckBox x:Name="CheckOptionsShaderPackSettings">
  187. <local:MyCheckBox.Tag>
  188. <local:ExportOption
  189. Title="光影包设置"
  190. Description="已选光影包的自定义设置"
  191. ShowRules="shaderpacks/*.txt"
  192. DefaultChecked="True" />
  193. </local:MyCheckBox.Tag>
  194. </local:MyCheckBox>
  195. </StackPanel>
  196. <StackPanel Margin="30,0,0,0" x:Name="PanOptionsShaderPacks"
  197. Visibility="{Binding Checked, ElementName=CheckOptionsShaderPacks, Converter={StaticResource BooleanToVisibilityConverter}}">
  198. </StackPanel>
  199. <local:MyCheckBox>
  200. <local:MyCheckBox.Tag>
  201. <local:ExportOption
  202. Title="截图"
  203. Rules="screenshots/"
  204. DefaultChecked="False" />
  205. </local:MyCheckBox.Tag>
  206. </local:MyCheckBox>
  207. <local:MyCheckBox>
  208. <local:MyCheckBox.Tag>
  209. <local:ExportOption
  210. Title="导出的结构"
  211. Description="schematics 文件夹"
  212. Rules="schematics/"
  213. DefaultChecked="False" />
  214. </local:MyCheckBox.Tag>
  215. </local:MyCheckBox>
  216. <local:MyCheckBox>
  217. <local:MyCheckBox.Tag>
  218. <local:ExportOption
  219. Title="录像回放"
  220. Description="Replay Mod 的录像文件"
  221. Rules="replay_recordings/|replay_videos/"
  222. RequireModLoader="True"
  223. DefaultChecked="False" />
  224. </local:MyCheckBox.Tag>
  225. </local:MyCheckBox>
  226. <local:MyCheckBox x:Name="CheckOptionsSaves">
  227. <local:MyCheckBox.Tag>
  228. <local:ExportOption
  229. Title="单人游戏存档"
  230. Description="世界/地图"
  231. ShowRules="saves/"
  232. DefaultChecked="False" />
  233. </local:MyCheckBox.Tag>
  234. </local:MyCheckBox>
  235. <StackPanel Margin="30,0,0,0" x:Name="PanOptionsSaves"
  236. Visibility="{Binding Checked, ElementName=CheckOptionsSaves, Converter={StaticResource BooleanToVisibilityConverter}}">
  237. </StackPanel>
  238. <local:MyCheckBox>
  239. <local:MyCheckBox.Tag>
  240. <local:ExportOption
  241. Title="协议"
  242. Description="Licence 文件"
  243. Rules="LICEN*"
  244. DefaultChecked="True" />
  245. </local:MyCheckBox.Tag>
  246. </local:MyCheckBox>
  247. <local:MyCheckBox>
  248. <local:MyCheckBox.Tag>
  249. <local:ExportOption
  250. Title="多人游戏服务器列表"
  251. Rules="servers.dat"
  252. DefaultChecked="False" />
  253. </local:MyCheckBox.Tag>
  254. </local:MyCheckBox>
  255. <local:MyCheckBox x:Name="CheckOptionsJava">
  256. <local:MyCheckBox.Tag>
  257. <local:ExportOption
  258. Title="版本文件夹中的 Java"
  259. DefaultChecked="True" />
  260. </local:MyCheckBox.Tag>
  261. </local:MyCheckBox>
  262. <local:MyCheckBox x:Name="CheckOptionsPcl">
  263. <local:MyCheckBox.Tag>
  264. <local:ExportOption
  265. Title="PCL 启动器程序"
  266. Description="打包正式版 PCL,以便没有启动器的玩家安装整合包"
  267. DefaultChecked="True" />
  268. </local:MyCheckBox.Tag>
  269. </local:MyCheckBox>
  270. <StackPanel Margin="30,0,0,0"
  271. Visibility="{Binding Checked, ElementName=CheckOptionsPcl, Converter={StaticResource BooleanToVisibilityConverter}}">
  272. <local:MyCheckBox x:Name="CheckOptionsPclCustom">
  273. <local:MyCheckBox.Tag>
  274. <local:ExportOption
  275. Title="PCL 个性化内容"
  276. Description="功能隐藏设置、主页、背景音乐和图片等"
  277. DefaultChecked="True" />
  278. </local:MyCheckBox.Tag>
  279. </local:MyCheckBox>
  280. </StackPanel>
  281. </StackPanel>
  282. </local:MyCard>
  283. <local:MyCard Title="高级选项" Margin="0,0,0,15" CanSwap="True" IsSwapped="True">
  284. <StackPanel Margin="25,37,23,20">
  285. <local:MyHint Text="建议仅在无法稳定连接 CurseForge 或 Modrinth 时才打包资源文件。&#xa;请不要公开发布含资源文件的整合包,这会违反部分 Mod 的使用协议!"
  286. Theme="Yellow" Margin="0,2,0,8" Visibility="{Binding Checked, ElementName=CheckAdvancedInclude, Converter={StaticResource BooleanToVisibilityConverter}}" />
  287. <local:MyCheckBox Text="打包资源文件,以避免在导入时下载" x:Name="CheckAdvancedInclude"
  288. ToolTip="将 Mod、资源包、光影包的文件直接放入整合包中,这样在导入时就无需联网下载它们。&#xa;建议仅在无法稳定连接 CurseForge 或 Modrinth 时才考虑勾选。" />
  289. <local:MyCheckBox Text="仅从 Modrinth 下载资源文件" x:Name="CheckAdvancedModrinth"
  290. ToolTip="若资源未在 Modrinth 上托管,则将其原始文件直接放入整合包中。&#xa;如果你想将整合包上传到 Modrinth,这能帮助你分辨哪些文件未在 Modrinth 上托管。" />
  291. <local:MyHint Theme="Yellow" x:Name="HintModrinthFormat" Margin="26,2,0,2"
  292. Text="若不勾选 “PCL 启动器程序”,导出时才能在 “保存类型” 中选择 .mrpack 格式!" />
  293. <local:MyHint Theme="Blue" RelativeSetup="HintExportConfig" CanClose="True" Margin="0,20,0,2"
  294. Text="配置文件中含有更多高级选项,例如精准控制导出的文件、设置整合包存放位置等。&#xa;要修改这些选项,请先点击 “保存配置”,在编辑配置文件后再导入。" />
  295. <Grid Height="35" Margin="0,12,0,0">
  296. <Grid.ColumnDefinitions>
  297. <ColumnDefinition Width="Auto" SharedSizeGroup="Button" />
  298. <ColumnDefinition Width="Auto" SharedSizeGroup="Button" />
  299. <ColumnDefinition Width="Auto" SharedSizeGroup="Button" />
  300. </Grid.ColumnDefinitions>
  301. <local:MyButton Grid.Column="0" x:Name="BtnAdvancedImport" MinWidth="140" Text="读取配置" Padding="13,0" Margin="0,0,20,0" ColorType="Highlight" />
  302. <local:MyButton Grid.Column="1" x:Name="BtnAdvancedExport" MinWidth="140" Text="保存配置" Padding="13,0" Margin="0,0,20,0" />
  303. <local:MyButton Grid.Column="2" MinWidth="140" Text="整合包制作指南" Padding="13,0" Margin="0,0,20,0" x:Name="BtnAdvancedHelp"
  304. local:CustomEventService.EventType="打开帮助" />
  305. </Grid>
  306. </StackPanel>
  307. </local:MyCard>
  308. </StackPanel>
  309. </local:MyScrollViewer>
  310. <local:MyExtraTextButton HorizontalAlignment="Center" VerticalAlignment="Bottom"
  311. x:Name="BtnExport" Text="开始导出"
  312. LogoScale="1.1" Logo="M511 995a128 128 0 0 1-57-13L70 791a126 126 0 0 1-70-113V311a126 126 0 0 1 15-60V248c1-2 3-5 5-8a127 127 0 0 1 49-42L454 13a128 128 0 0 1 112 0l383 190a126 126 0 0 1 72 113v360a126 126 0 0 1-70 115L568 984c-17 7-37 11-57 11z m42-470v370l360-178c14-7 23-21 23-38v-335L554 524zM85 330v347a42 42 0 0 0 23 38l360 178V523L85 330zM135 260l375 189 137-65L286 188 135 260z m245-118l363 197 150-71-365-180a42 42 0 0 0-37 0l-111 53z" />
  313. </Grid>
  314. </local:MyPageRight>