feat(multiplayer): link to video tutorial.

This commit is contained in:
huanghongxun
2022-09-24 23:36:48 +08:00
parent d3ca50259a
commit 7b23c7bc79
5 changed files with 31 additions and 11 deletions

View File

@@ -239,11 +239,16 @@ public class MultiplayerPage extends DecoratorAnimatedPage implements DecoratorP
public void stopBroadcasting() { public void stopBroadcasting() {
if (getBroadcaster() != null) { if (getBroadcaster() != null) {
getBroadcaster().close(); getBroadcaster().close();
setBroadcaster(null);
} }
} }
private void onBroadcasterExit(Event event) { private void onBroadcasterExit(Event event) {
runInFX(() -> this.broadcaster.set(null)); runInFX(() -> {
if (this.broadcaster.get() == event.getSource()) {
this.broadcaster.set(null);
}
});
} }
private void clearSession() { private void clearSession() {

View File

@@ -22,6 +22,7 @@ import com.jfoenix.controls.JFXPasswordField;
import com.jfoenix.controls.JFXTextField; import com.jfoenix.controls.JFXTextField;
import javafx.beans.binding.Bindings; import javafx.beans.binding.Bindings;
import javafx.collections.ObservableList; import javafx.collections.ObservableList;
import javafx.geometry.HPos;
import javafx.geometry.Insets; import javafx.geometry.Insets;
import javafx.geometry.Pos; import javafx.geometry.Pos;
import javafx.scene.Node; import javafx.scene.Node;
@@ -151,9 +152,15 @@ public class MultiplayerPageSkin extends DecoratorAnimatedPage.DecoratorAnimated
valueColumn.setFillWidth(true); valueColumn.setFillWidth(true);
valueColumn.setHgrow(Priority.ALWAYS); valueColumn.setHgrow(Priority.ALWAYS);
{ {
BorderPane titlePane = new BorderPane();
GridPane.setColumnSpan(titlePane, 3);
Label title = new Label(i18n("multiplayer.master")); Label title = new Label(i18n("multiplayer.master"));
GridPane.setColumnSpan(title, 3); titlePane.setLeft(title);
masterPane.addRow(0, title);
JFXHyperlink tutorial = new JFXHyperlink(i18n("multiplayer.master.video_tutorial"));
titlePane.setRight(tutorial);
tutorial.setOnAction(e -> HMCLService.openRedirectLink("multiplayer-tutorial-master"));
masterPane.addRow(0, titlePane);
HintPane hintPane = new HintPane(MessageDialogPane.MessageType.INFO); HintPane hintPane = new HintPane(MessageDialogPane.MessageType.INFO);
GridPane.setColumnSpan(hintPane, 3); GridPane.setColumnSpan(hintPane, 3);
@@ -197,9 +204,13 @@ public class MultiplayerPageSkin extends DecoratorAnimatedPage.DecoratorAnimated
VBox slavePane = new VBox(8); VBox slavePane = new VBox(8);
{ {
BorderPane titlePane = new BorderPane();
Label title = new Label(i18n("multiplayer.slave")); Label title = new Label(i18n("multiplayer.slave"));
GridPane.setColumnSpan(title, 3); titlePane.setLeft(title);
slavePane.getChildren().add(title);
JFXHyperlink tutorial = new JFXHyperlink(i18n("multiplayer.slave.video_tutorial"));
tutorial.setOnAction(e -> HMCLService.openRedirectLink("multiplayer-tutorial-slave"));
titlePane.setRight(tutorial);
HintPane hintPane = new HintPane(MessageDialogPane.MessageType.INFO); HintPane hintPane = new HintPane(MessageDialogPane.MessageType.INFO);
GridPane.setColumnSpan(hintPane, 3); GridPane.setColumnSpan(hintPane, 3);
@@ -242,9 +253,9 @@ public class MultiplayerPageSkin extends DecoratorAnimatedPage.DecoratorAnimated
FXUtils.onChangeAndOperate(control.broadcasterProperty(), broadcaster -> { FXUtils.onChangeAndOperate(control.broadcasterProperty(), broadcaster -> {
if (broadcaster == null) { if (broadcaster == null) {
slavePane.getChildren().setAll(title, hintPane, notBroadcastingPane); slavePane.getChildren().setAll(titlePane, hintPane, notBroadcastingPane);
} else { } else {
slavePane.getChildren().setAll(title, hintPane, broadcastingPane); slavePane.getChildren().setAll(titlePane, hintPane, broadcastingPane);
} }
}); });
} }

View File

@@ -868,6 +868,7 @@ multiplayer.master=Prompt for creator
multiplayer.master.hint=Multiplayer online requires one player to start the game first, select the single player mode to enter a save, and select the "Open to LAN" option in the game options menu. After that you can see the port number (usually 5 digits) indicated by the game in the game chat box. Click the Generate Server Address button below, enter the port number, and you can get your server address. This address needs to be provided to other players who need to join the server to add the server. multiplayer.master.hint=Multiplayer online requires one player to start the game first, select the single player mode to enter a save, and select the "Open to LAN" option in the game options menu. After that you can see the port number (usually 5 digits) indicated by the game in the game chat box. Click the Generate Server Address button below, enter the port number, and you can get your server address. This address needs to be provided to other players who need to join the server to add the server.
multiplayer.master.server_address=Generate server address multiplayer.master.server_address=Generate server address
multiplayer.master.server_address.copy=Copy multiplayer.master.server_address.copy=Copy
multiplayer.master.video_tutorial=Video Tutorial
multiplayer.master.port=Port number multiplayer.master.port=Port number
multiplayer.master.port.validate=The port number (0~65535) displayed in the game chat box,when you open the game in LAN. multiplayer.master.port.validate=The port number (0~65535) displayed in the game chat box,when you open the game in LAN.
multiplayer.slave=Participant Prompt multiplayer.slave=Participant Prompt
@@ -875,6 +876,7 @@ multiplayer.slave.hint=If you want to join another player's game save to play th
multiplayer.slave.server_address=Creator server address multiplayer.slave.server_address=Creator server address
multiplayer.slave.server_address.start=Join multiplayer.slave.server_address.start=Join
multiplayer.slave.server_address.stop=Exit multiplayer.slave.server_address.stop=Exit
multiplayer.slave.video_tutorial=Video Tutorial
multiplayer.session.expiration=Expire Time multiplayer.session.expiration=Expire Time
datapack=Datapacks datapack=Datapacks

View File

@@ -715,14 +715,15 @@ multiplayer.master=创建方提示
multiplayer.master.hint=1.啟動遊戲\n2.選擇單人遊戲模式進入一個存檔\n3.在遊戲選項菜單內選擇 對局域網開放 選項,之後你可以在遊戲聊天框內看到遊戲提示的端口號(通常是 5 位數字)\n4.點擊下方的生成伺服器地址按鈕,輸入端口號,你就可以獲得你的伺服器地址了\n5.該地址需要提供給其他需要加入伺服器的玩家用於添加伺服器。 multiplayer.master.hint=1.啟動遊戲\n2.選擇單人遊戲模式進入一個存檔\n3.在遊戲選項菜單內選擇 對局域網開放 選項,之後你可以在遊戲聊天框內看到遊戲提示的端口號(通常是 5 位數字)\n4.點擊下方的生成伺服器地址按鈕,輸入端口號,你就可以獲得你的伺服器地址了\n5.該地址需要提供給其他需要加入伺服器的玩家用於添加伺服器。
multiplayer.master.server_address=生成伺服器地址 multiplayer.master.server_address=生成伺服器地址
multiplayer.master.server_address.copy=拷貝 multiplayer.master.server_address.copy=拷貝
multiplayer.master.video_tutorial=教學影片
multiplayer.master.port=埠號 multiplayer.master.port=埠號
multiplayer.master.port.validate=在遊戲聊天框中出現的埠號 (0~65535) multiplayer.master.port.validate=在遊戲聊天框中出現的埠號 (0~65535)
multiplayer.slave=參與者提示 multiplayer.slave=參與者提示
multiplayer.slave.hint=1.要求創建方按照上方的 創建方提示 操作\n2.啟動遊戲\n3.選擇多人遊戲模式,選擇添加伺服器\n4.遊戲會要求你輸入伺服器地址,你只需要向創建方索要伺服器地址並輸入,並進入伺服器即可。 \n- 注意:\n1.一般情況下,參與者的遊戲賬戶必須是 微軟賬戶 或 外置登錄賬戶(如 Little Skin否則加入失敗,具體操作方法詳見左側的 幫助 \n2.一般情況下,參與者的遊戲版本、模組要必須與創建方的一致,否則加入失敗。 multiplayer.slave.hint=1.要求創建方按照上方的 創建方提示 操作\n2.啟動遊戲\n3.選擇多人遊戲模式,選擇添加伺服器\n4.遊戲會要求你輸入伺服器地址,你只需要向創建方索要伺服器地址並輸入,並進入伺服器即可。 \n- 注意:\n1.一般情況下,參與者的遊戲賬戶必須是 微軟賬戶 或 外置登錄賬戶(如 Little Skin否則你需要將伺服器地址輸入至下方的輸入框中並點擊廣播,在遊戲中選擇多人遊戲模式,進入局域網世界方可加入,具體操作方法詳見左側的 幫助 \n2.一般情況下,參與者的遊戲版本、模組要必須與創建方的一致,否則加入失敗。
#(若加回 LocalServerBroadcaster.java就使用)multiplayer.slave.hint=1.要求創建方按照上方的 創建方提示 操作\n2.啟動遊戲\n3.選擇多人遊戲模式,選擇添加伺服器\n4.遊戲會要求你輸入伺服器地址,你只需要向創建方索要伺服器地址並輸入,並進入伺服器即可。 \n- 注意:\n1.一般情況下,參與者的遊戲賬戶必須是 微軟賬戶 或 外置登錄賬戶(如 Little Skin否則你需要將伺服器地址輸入至下方的輸入框中並點擊廣播在遊戲中選擇多人遊戲模式進入局域網世界方可加入具體操作方法詳見左側的 幫助 \n2.一般情況下,參與者的遊戲版本、模組要必須與創建方的一致,否則加入失敗。
multiplayer.slave.server_address=創建方服務器地址 multiplayer.slave.server_address=創建方服務器地址
multiplayer.slave.server_address.start=加入 multiplayer.slave.server_address.start=加入
multiplayer.slave.server_address.stop=退出 multiplayer.slave.server_address.stop=退出
multiplayer.slave.video_tutorial=教學影片
multiplayer.session.expiration=本次使用截止時間 multiplayer.session.expiration=本次使用截止時間
datapack=資料包 datapack=資料包

View File

@@ -715,14 +715,15 @@ multiplayer.master=创建方提示
multiplayer.master.hint=1.启动游戏\n2.选择单人游戏模式进入一个存档\n3.在游戏选项菜单内选择 对局域网开放 选项,之后你可以在游戏聊天框内看到游戏提示的端口号(通常是 5 位数字)\n4.点击下方的生成服务器地址按钮,输入端口号,你就可以获得你的服务器地址了\n5.该地址需要提供给其他需要加入服务器的玩家用于添加服务器。 multiplayer.master.hint=1.启动游戏\n2.选择单人游戏模式进入一个存档\n3.在游戏选项菜单内选择 对局域网开放 选项,之后你可以在游戏聊天框内看到游戏提示的端口号(通常是 5 位数字)\n4.点击下方的生成服务器地址按钮,输入端口号,你就可以获得你的服务器地址了\n5.该地址需要提供给其他需要加入服务器的玩家用于添加服务器。
multiplayer.master.server_address=生成服务器地址 multiplayer.master.server_address=生成服务器地址
multiplayer.master.server_address.copy=拷贝 multiplayer.master.server_address.copy=拷贝
multiplayer.master.video_tutorial=教学视频
multiplayer.master.port=端口号 multiplayer.master.port=端口号
multiplayer.master.port.validate=在游戏聊天框中出现的端口号 (0~65535) multiplayer.master.port.validate=在游戏聊天框中出现的端口号 (0~65535)
multiplayer.slave=参与者提示 multiplayer.slave=参与者提示
multiplayer.slave.hint=1.要求创建方按照上方的 创建方提示 操作\n2.启动游戏\n3.选择多人游戏模式,选择添加服务器\n4.游戏会要求你输入服务器地址,你只需要向创建方索要服务器地址并输入,并进入服务器即可。\n- 注意:\n1.一般情况下,参与者的游戏账户必须是 微软账户 或 外置登录账户(如 Little Skin否则加入失败,具体操作方法详见左侧的 帮助 \n2.一般情况下,参与者的游戏版本、模组要必须与创建方的一致,否则加入失败。 multiplayer.slave.hint=1.要求创建方按照上方的 创建方提示 操作\n2.启动游戏\n3.选择多人游戏模式,选择添加服务器\n4.游戏会要求你输入服务器地址,你只需要向创建方索要服务器地址并输入,并进入服务器即可。\n- 注意:\n1.一般情况下,参与者的游戏账户必须是 微软账户 或 外置登录账户(如 Little Skin否则你需要将服务器地址输入至下方的输入框中并点击广播,在游戏中选择多人游戏模式,进入局域网世界方可加入,具体操作方法详见左侧的 帮助 \n2.一般情况下,参与者的游戏版本、模组要必须与创建方的一致,否则加入失败。
#(若加回 LocalServerBroadcaster.java就使用)multiplayer.slave.hint=1.要求创建方按照上方的 创建方提示 操作\n2.启动游戏\n3.选择多人游戏模式,选择添加服务器\n4.游戏会要求你输入服务器地址,你只需要向创建方索要服务器地址并输入,并进入服务器即可。\n- 注意:\n1.一般情况下,参与者的游戏账户必须是 微软账户 或 外置登录账户(如 Little Skin否则你需要将服务器地址输入至下方的输入框中并点击广播在游戏中选择多人游戏模式进入局域网世界方可加入具体操作方法详见左侧的 帮助 \n2.一般情况下,参与者的游戏版本、模组要必须与创建方的一致,否则加入失败。
multiplayer.slave.server_address=创建方服务器地址 multiplayer.slave.server_address=创建方服务器地址
multiplayer.slave.server_address.start=加入 multiplayer.slave.server_address.start=加入
multiplayer.slave.server_address.stop=退出 multiplayer.slave.server_address.stop=退出
multiplayer.slave.video_tutorial=视频教程
multiplayer.session.expiration=本次使用截止时间 multiplayer.session.expiration=本次使用截止时间
datapack=数据包 datapack=数据包