ChatRestriction.java
net.minecraft.client.multiplayer.chat.ChatRestriction
信息
- 全限定名:net.minecraft.client.multiplayer.chat.ChatRestriction
- 类型:public enum
- 包:net.minecraft.client.multiplayer.chat
- 源码路径:src/main/java/net/minecraft/client/multiplayer/chat/ChatRestriction.java
- 起始行号:L18
- 职责:
TODO
字段/常量
-
permissionSet, permissionSet, permissionSet, permissionSet- 类型:
CHAT_AND_COMMANDS_DISABLED_BY_OPTIONS(Component.translatable(),Optional.of(ChatRestriction.Action.GO_TO_CHAT_SETTINGS)) { public void modifyPermissions(Set<Permission> permissionSet) { ChatRestriction.disableCommands(permissionSet); ChatRestriction.disablePlayerMessages( - 修饰符:
public public public public - 源码定位:
L19 - 说明:
TODO
- 类型:
-
display- 类型:
Component - 修饰符:
private final - 源码定位:
L47 - 说明:
TODO
- 类型:
-
action- 类型:
Optional<ChatRestriction.Action> - 修饰符:
private final - 源码定位:
L48 - 说明:
TODO
- 类型:
内部类/嵌套类型
net.minecraft.client.multiplayer.chat.ChatRestriction.Action- 类型:
record - 修饰符:
public - 源码定位:
L76 - 说明:
TODO
- 类型:
构造器
private ChatRestriction(Component display, Optional<ChatRestriction.Action> action) @ L50
- 构造器名:ChatRestriction
- 源码定位:L50
- 修饰符:private
参数:
- display: Component
- action: Optional<ChatRestriction.Action>
说明:
TODO
方法
下面的方法块按源码顺序生成。
public Component display() @ L55
- 方法名:display
- 源码定位:L55
- 返回类型:Component
- 修饰符:public
参数:
- 无
说明:
TODO
public Optional<ChatRestriction.Action> action() @ L59
- 方法名:action
- 源码定位:L59
- 返回类型:Optional<ChatRestriction.Action>
- 修饰符:public
参数:
- 无
说明:
TODO
private static void disablePlayerMessages(Set<Permission> permissionSet) @ L63
- 方法名:disablePlayerMessages
- 源码定位:L63
- 返回类型:void
- 修饰符:private static
参数:
- permissionSet: Set
说明:
TODO
private static void disableCommands(Set<Permission> permissionSet) @ L68
- 方法名:disableCommands
- 源码定位:L68
- 返回类型:void
- 修饰符:private static
参数:
- permissionSet: Set
说明:
TODO
public abstract void modifyPermissions(Set<Permission> permissionSet) @ L73
- 方法名:modifyPermissions
- 源码定位:L73
- 返回类型:void
- 修饰符:public abstract
参数:
- permissionSet: Set
说明:
TODO
代码
@OnlyIn(Dist.CLIENT)
public enum ChatRestriction {
CHAT_AND_COMMANDS_DISABLED_BY_OPTIONS(
Component.translatable("chat_restriction.chat_and_commands_disabled_by_options"), Optional.of(ChatRestriction.Action.GO_TO_CHAT_SETTINGS)
) {
@Override
public void modifyPermissions(Set<Permission> permissionSet) {
ChatRestriction.disableCommands(permissionSet);
ChatRestriction.disablePlayerMessages(permissionSet);
}
},
CHAT_DISABLED_BY_OPTIONS(Component.translatable("chat_restriction.chat_disabled_by_options"), Optional.of(ChatRestriction.Action.GO_TO_CHAT_SETTINGS)) {
@Override
public void modifyPermissions(Set<Permission> permissionSet) {
ChatRestriction.disablePlayerMessages(permissionSet);
}
},
DISABLED_BY_LAUNCHER(Component.translatable("chat_restriction.disabled_by_launcher"), Optional.empty()) {
@Override
public void modifyPermissions(Set<Permission> permissionSet) {
ChatRestriction.disablePlayerMessages(permissionSet);
}
},
DISABLED_BY_PROFILE(Component.translatable("chat_restriction.disabled_by_profile"), Optional.of(ChatRestriction.Action.GO_TO_ACCOUNT)) {
@Override
public void modifyPermissions(Set<Permission> permissionSet) {
ChatRestriction.disablePlayerMessages(permissionSet);
}
};
private final Component display;
private final Optional<ChatRestriction.Action> action;
private ChatRestriction(Component display, Optional<ChatRestriction.Action> action) {
this.display = display;
this.action = action;
}
public Component display() {
return this.display;
}
public Optional<ChatRestriction.Action> action() {
return this.action;
}
private static void disablePlayerMessages(Set<Permission> permissionSet) {
permissionSet.remove(Permissions.CHAT_SEND_MESSAGES);
permissionSet.remove(Permissions.CHAT_RECEIVE_PLAYER_MESSAGES);
}
private static void disableCommands(Set<Permission> permissionSet) {
permissionSet.remove(Permissions.CHAT_SEND_COMMANDS);
permissionSet.remove(Permissions.CHAT_RECEIVE_SYSTEM_MESSAGES);
}
public abstract void modifyPermissions(Set<Permission> permissionSet);
@OnlyIn(Dist.CLIENT)
public record Action(Component title, BiConsumer<Minecraft, Screen> runnable) {
public static final ChatRestriction.Action GO_TO_ACCOUNT = new ChatRestriction.Action(
Component.translatable("chat_restriction.disabled_by_profile.action"),
(minecraft, screen) -> ConfirmLinkScreen.confirmLinkNow(screen, CommonLinks.ACCOUNT_SETTINGS, true)
);
public static final ChatRestriction.Action GO_TO_CHAT_SETTINGS = new ChatRestriction.Action(
Component.translatable("chat_restriction.chat_disabled_by_options.action"),
(minecraft, screen) -> minecraft.setScreen(new ChatOptionsScreen(screen, minecraft.options))
);
}
}引用的其他类
-
- 引用位置:
方法调用 - 关联成员:
ConfirmLinkScreen.confirmLinkNow()
- 引用位置:
-
- 引用位置:
构造调用 - 关联成员:
ChatOptionsScreen()
- 引用位置:
-
- 引用位置:
参数/字段/方法调用/返回值 - 关联成员:
Component.translatable()
- 引用位置:
-
- 引用位置:
参数/字段
- 引用位置: