Skip to content

feat: 添加联机功能#45

Merged
AnemoFlower merged 28 commits intoCeciliaStudio:mainfrom
AnemoFlower:feature/multiplayer
Feb 1, 2026
Merged

feat: 添加联机功能#45
AnemoFlower merged 28 commits intoCeciliaStudio:mainfrom
AnemoFlower:feature/multiplayer

Conversation

@AnemoFlower
Copy link
Member

@AnemoFlower AnemoFlower commented Jan 15, 2026

本 PR 为 PCL.Mac.Refactor 添加了联机功能,使用了 SwiftScaffolding 库并实现了 Scaffolding 协议,支持与 HMCL 等启动器互通。

  • 将 SwiftScaffolding 更换为 Release 版本

closes #30

@AnemoFlower AnemoFlower marked this pull request as draft January 15, 2026 08:46
@AnemoFlower AnemoFlower marked this pull request as ready for review February 1, 2026 09:41
@AnemoFlower AnemoFlower requested a review from Copilot February 1, 2026 10:12
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds multiplayer functionality to PCL.Mac using the SwiftScaffolding library (version 0.1.1) and implements the Scaffolding protocol for interoperability with other Minecraft launchers like HMCL. The implementation is based on EasyTier for peer-to-peer networking.

Changes:

  • Added multiplayer functionality with room creation and joining capabilities
  • Integrated SwiftScaffolding library and EasyTier networking
  • Added MessageBoxManager for UI dialogs and EasyTierManager for EasyTier lifecycle management
  • Included license files for new dependencies (SwiftScaffolding, SwiftyJSON, ZIPFoundation, EasyTier)

Reviewed changes

Copilot reviewed 21 out of 26 changed files in this pull request and generated 11 comments.

Show a summary per file
File Description
Resources/licenses/*.LICENSE.txt License files for new dependencies (SwiftScaffolding, SwiftyJSON, ZIPFoundation, EasyTier)
PCL.Mac/Views/Multiplayer/MultiplayerPage.swift Main multiplayer UI with room creation/joining workflows
PCL.Mac/Views/Multiplayer/MultiplayerSidebar.swift Sidebar component for multiplayer section (currently empty)
PCL.Mac/ViewModels/MultiplayerViewModel.swift Core multiplayer logic including server/client management and heartbeat
PCL.Mac/Managers/MessageBoxManager.swift Dialog manager for user interactions
PCL.Mac/Managers/EasyTierManager.swift EasyTier installation and lifecycle management
PCL.Mac/Components/MyCard.swift Added limitHeight parameter for flexible card layouts
PCL.Mac/App/* App configuration updates for multiplayer feature integration
PCL.Mac.Core/Utils/* Utility additions including URLConstants, Architecture detection, FileUtils
PCL.Mac.xcodeproj/* Project configuration for SwiftScaffolding package dependency
PCL.Mac/Assets.xcassets/Icons/* New icons (IconCopy, IconExit) for multiplayer actions
PCL.Mac/Views/Tasks/TasksPage.swift Minor layout adjustment

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@AnemoFlower AnemoFlower merged commit 811396d into CeciliaStudio:main Feb 1, 2026
1 check passed
@AnemoFlower AnemoFlower deleted the feature/multiplayer branch February 1, 2026 10:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature] 添加联机功能

1 participant