|
178 | 178 | "# @markdown - **⭕️ 正しい例**: `LegacyCraft`, `MyAwesomeModpack`\n", |
179 | 179 | "# @markdown - **❌️ ダメな例**: `私のすごいModパック`, `レガシークラフト`, `LegacyCraft 1.12.2`\n", |
180 | 180 | "ModパックID = \"\" #@param {type:\"string\"}\n", |
| 181 | + "modpack_id = ModパックID\n", |
181 | 182 | "# @markdown\n", |
182 | 183 | "# @markdown ### zip名について\n", |
183 | 184 | "# @markdown zip名は、`ModPacks/modpacks/curseforge/` にアップロードしたzipファイルの正確なファイル名(拡張子含む)を入力してください。\n", |
184 | 185 | "# @markdown - **⭕️ 正しい例**: `LegacyCraft-v2.2.1-release-cf.zip`\n", |
185 | 186 | "# @markdown - **❌️ ダメな例**: `ModPacks/modpacks/curseforge/LegacyCraft-v2.2.1-release-cf.zip`\n", |
186 | 187 | "zip名 = \"\" #@param {type:\"string\"}\n", |
| 188 | + "zip_name = zip名\n", |
187 | 189 | "\n", |
188 | 190 | "%cd /content/ModNebula\n", |
189 | 191 | "\n", |
190 | 192 | "# Modパックをビルドするコマンドを構築\n", |
191 | | - "command = f\"node dist/index.js generate server-curseforge {ModパックID} {zip名}\"\n", |
| 193 | + "command = f\"node dist/index.js generate server-curseforge {modpack_id} {zip_name}\"\n", |
192 | 194 | "done_curseforge = True\n", |
193 | 195 | "\n", |
194 | 196 | "# コマンドを実行\n", |
|
211 | 213 | "# @markdown servermeta.jsonの情報が実際のかめぱランチャーのModパック名になります。\n", |
212 | 214 | "# @markdown\n", |
213 | 215 | "# @markdown こちらは表示用なので日本語でOKです。\n", |
214 | | - "# 新しい名前と説明\n", |
| 216 | + "\n", |
| 217 | + "# 新しい名前\n", |
215 | 218 | "Modパックの名前 = \"\"#@param {type:\"string\"}\n", |
| 219 | + "modpack_name = Modパックの名前\n", |
| 220 | + "# 新しい説明\n", |
216 | 221 | "Modパックの説明 = \"\"#@param {type:\"string\"}\n", |
| 222 | + "modpack_description = Modパックの説明\n", |
| 223 | + "\n", |
217 | 224 | "# @markdown こんな感じで表示されます\\\n", |
218 | 225 | "# @markdown \n", |
219 | 226 | "\n", |
220 | 227 | "import json\n", |
221 | 228 | "import os\n", |
222 | 229 | "import glob\n", |
223 | 230 | "\n", |
224 | | - "# modpack_nameは以前のセルで定義されています。\n", |
| 231 | + "# modpack_idは以前のセルで定義されています。\n", |
225 | 232 | "# テスト目的でコメントを外して設定できます。\n", |
226 | | - "# modpack_name = 'LegacyCraft2'\n", |
| 233 | + "# modpack_id = 'LegacyCraft2'\n", |
227 | 234 | "\n", |
228 | 235 | "servers_base_path = \"/content/ModPacks/servers/\"\n", |
229 | 236 | "\n", |
230 | 237 | "# Modpack名で始まる実際のディレクトリ名を検索します。\n", |
231 | 238 | "# ModNebulaツールは、Modpack名にMinecraftのバージョンを付加してディレクトリを作成することがよくあります。\n", |
232 | | - "matching_dirs = glob.glob(os.path.join(servers_base_path, f\"{modpack_name}-*\"))\n", |
| 239 | + "matching_dirs = glob.glob(os.path.join(servers_base_path, f\"{modpack_id}-*\"))\n", |
233 | 240 | "\n", |
234 | 241 | "target_modpack_dir = None\n", |
235 | 242 | "if matching_dirs:\n", |
236 | 243 | " # 複数のディレクトリが一致する場合は、最初に見つかったものを採用します。\n", |
237 | | - " # 通常、与えられたmodpack_nameに対しては1つだけであるはずです。\n", |
| 244 | + " # 通常、与えられたmodpack_idに対しては1つだけであるはずです。\n", |
238 | 245 | " target_modpack_dir = matching_dirs[0]\n", |
239 | 246 | "else:\n", |
240 | | - " # バージョンサフィックスが見つからなかった場合、modpack_nameのみのディレクトリを探します\n", |
241 | | - " if os.path.isdir(os.path.join(servers_base_path, modpack_name)):\n", |
242 | | - " target_modpack_dir = os.path.join(servers_base_path, modpack_name)\n", |
| 247 | + " # バージョンサフィックスが見つからなかった場合、modpack_idのみのディレクトリを探します\n", |
| 248 | + " if os.path.isdir(os.path.join(servers_base_path, modpack_id)):\n", |
| 249 | + " target_modpack_dir = os.path.join(servers_base_path, modpack_id)\n", |
243 | 250 | "\n", |
244 | 251 | "if not target_modpack_dir:\n", |
245 | | - " print(f\"エラー: '{modpack_name}'で始まるModpackディレクトリが {servers_base_path} に見つかりません。Modpackが正しく生成されたこと、およびzipファイルが 'ModPacks/modpacks/curseforge' に配置されていることを確認してください。\")\n", |
| 252 | + " print(f\"エラー: '{modpack_id}'で始まるModpackディレクトリが {servers_base_path} に見つかりません。Modpackが正しく生成されたこと、およびzipファイルが 'ModPacks/modpacks/curseforge' に配置されていることを確認してください。\")\n", |
246 | 253 | "else:\n", |
247 | 254 | " # servermeta.jsonへのフルパスを構築します\n", |
248 | 255 | " file_path = os.path.join(target_modpack_dir, \"servermeta.json\")\n", |
|
271 | 278 | " if 'meta' in data:\n", |
272 | 279 | " data['meta']['icon'] = \"\"\n", |
273 | 280 | " data['meta']['address'] = \"\"\n", |
274 | | - " data['meta']['name'] = Modパックの名前 + name_suffix\n", |
275 | | - " data['meta']['description'] = Modパックの説明 + description_suffix\n", |
| 281 | + " data['meta']['name'] = modpack_name + name_suffix\n", |
| 282 | + " data['meta']['description'] = modpack_description + description_suffix\n", |
276 | 283 | " if 'discord' in data['meta']:\n", |
277 | 284 | " data['meta']['discord']['shortId'] = \"\"\n", |
278 | 285 | " data['meta']['discord']['largeImageText'] = \"\"\n", |
|
675 | 682 | " print(f\"「Modパックのビルド」手順が実行されていない可能性があります。Modパックを追加し、ビルドを実行してください。\")\n", |
676 | 683 | "else:\n", |
677 | 684 | " # ブランチを切る\n", |
678 | | - " !git checkout -b modpack/{modpack_name}\n", |
| 685 | + " !git checkout -b modpack/{modpack_id}\n", |
679 | 686 | "\n", |
680 | 687 | " # すべての変更をステージングエリアに追加\n", |
681 | 688 | " !git add .\n", |
682 | 689 | "\n", |
683 | 690 | " # 変更をコミット\n", |
684 | | - " !git commit -m \"add: {modpack_name}を追加\"\n", |
| 691 | + " !git commit -m \"add: {modpack_id}を追加\"\n", |
685 | 692 | "\n", |
686 | 693 | " print(\"コミットが作成されました。\")" |
687 | 694 | ] |
|
729 | 736 | "source": [ |
730 | 737 | "%cd /content/ModPacks\n", |
731 | 738 | "\n", |
732 | | - "pr_title = f\"「{modpack_name}」を追加しました。\"\n", |
733 | | - "pr_body = f\"「{modpack_name}」を追加しました。\\n\\n(かめぱランチャーModパック追加ツールを使用)\"\n", |
| 739 | + "pr_title = f\"「{modpack_id}」を追加しました。\"\n", |
| 740 | + "pr_body = f\"「{modpack_id}」を追加しました。\\n\\n(かめぱランチャーModパック追加ツールを使用)\"\n", |
734 | 741 | "\n", |
735 | 742 | "# プルリクエストを作成\n", |
736 | 743 | "# base: プルリクエストの対象となるブランチ (KamePowerWorld/ModPacksのmaster)\n", |
737 | | - "# head: プルリクエストの元となるブランチ (ユーザーのフォークのmodpack/${modpack_name})\n", |
| 744 | + "# head: プルリクエストの元となるブランチ (ユーザーのフォークのmodpack/${modpack_id})\n", |
738 | 745 | "!gh repo set-default KamePowerWorld/ModPacks\n", |
739 | | - "!gh pr create --base master --head {username_from_gh}:modpack/{modpack_name} --title \"{pr_title}\" --body \"{pr_body}\"\n", |
| 746 | + "!gh pr create --base master --head {username_from_gh}:modpack/{modpack_id} --title \"{pr_title}\" --body \"{pr_body}\"\n", |
740 | 747 | "\n", |
741 | 748 | "print(\"プルリクエストが作成されました。上記URLを確認し、かめぱランチャー担当者に連絡してください。お疲れ様でした!\")" |
742 | 749 | ] |
|
0 commit comments