Action.java

net.minecraft.server.dialog.action.Action

信息

  • 全限定名:net.minecraft.server.dialog.action.Action
  • 类型:public interface
  • 包:net.minecraft.server.dialog.action
  • 源码路径:src/main/java/net/minecraft/server/dialog/action/Action.java
  • 起始行号:L14
  • 职责:

    TODO

字段/常量

  • CODEC
    • 类型: Codec<Action>
    • 修饰符: package-private
    • 源码定位: L15
    • 说明:

      TODO

内部类/嵌套类型

  • net.minecraft.server.dialog.action.Action.ValueGetter
    • 类型: interface
    • 修饰符: public
    • 源码定位: L21
    • 说明:

      TODO

构造器

方法

下面的方法块按源码顺序生成。

MapCodec<?extends Action> codec() @ L17

  • 方法名:codec
  • 源码定位:L17
  • 返回类型:MapCodec<?extends Action>
  • 修饰符:package-private

参数:

说明:

TODO

Optional<ClickEvent> createAction(Map<String,Action.ValueGetter> parameters) @ L19

  • 方法名:createAction
  • 源码定位:L19
  • 返回类型:Optional
  • 修饰符:package-private

参数:

  • parameters: Map<String,Action.ValueGetter>

说明:

TODO

代码

public interface Action {
    Codec<Action> CODEC = BuiltInRegistries.DIALOG_ACTION_TYPE.byNameCodec().dispatch(Action::codec, c -> c);
 
    MapCodec<? extends Action> codec();
 
    Optional<ClickEvent> createAction(Map<String, Action.ValueGetter> parameters);
 
    public interface ValueGetter {
        String asTemplateSubstitution();
 
        Tag asTag();
 
        static Map<String, String> getAsTemplateSubstitutions(Map<String, Action.ValueGetter> parameters) {
            return Maps.transformValues(parameters, Action.ValueGetter::asTemplateSubstitution);
        }
 
        static Action.ValueGetter of(String value) {
            return new Action.ValueGetter() {
                @Override
                public String asTemplateSubstitution() {
                    return value;
                }
 
                @Override
                public Tag asTag() {
                    return StringTag.valueOf(value);
                }
            };
        }
 
        static Action.ValueGetter of(Supplier<String> value) {
            return new Action.ValueGetter() {
                @Override
                public String asTemplateSubstitution() {
                    return value.get();
                }
 
                @Override
                public Tag asTag() {
                    return StringTag.valueOf(value.get());
                }
            };
        }
    }
}

引用的其他类

  • StringTag

    • 引用位置: 方法调用
    • 关联成员: StringTag.valueOf()
  • ClickEvent

    • 引用位置: 返回值