Skip to content

Ponder JS API 完整参考

本页为 Ponder 脚本环境的函数级 API 列表。Ponder 脚本只在客户端执行。


1. 全局对象与常量

1.1 Ponder

  • Ponder.registry(cb):注册场景
  • Ponder.tags(cb):注册标签

cb 会拿到对应的 Wrapper(见下方完整列表)。

1.2 PonderPalette

常量:

  • WHITE BLACK RED GREEN BLUE
  • SLOW MEDIUM FAST
  • INPUT OUTPUT

方法:

  • fromString(name)
  • parseHex(hex)

1.3 PonderGuiTextures

常量(图标/纹理):

  • LOGO
  • SPEECH_TOOLTIP_BACKGROUND
  • SPEECH_TOOLTIP_COLOR
  • ICON_PONDER_LEFT / ICON_PONDER_CLOSE / ICON_PONDER_RIGHT
  • ICON_PONDER_IDENTIFY / ICON_PONDER_REPLAY
  • ICON_PONDER_USER_MODE / ICON_PONDER_SLOW_MODE
  • ICON_CONFIG_UNLOCKED / ICON_CONFIG_LOCKED
  • ICON_CONFIG_DISCARD / ICON_CONFIG_SAVE / ICON_CONFIG_RESET
  • ICON_CONFIG_BACK / ICON_CONFIG_PREV / ICON_CONFIG_NEXT
  • ICON_DISABLE / ICON_CONFIG_OPEN / ICON_CONFIRM
  • ICON_LMB / ICON_SCROLL / ICON_RMB

1.4 Direction / Facing

  • Direction.DOWN UP NORTH SOUTH WEST EAST
  • Facing.DOWN UP NORTH SOUTH WEST EAST

1.5 PonderPointing

  • PonderPointing.DOWN / LEFT / RIGHT / UP

1.6 Block

  • Block.id("minecraft:stone") -> PonderBlockStateWrapper

1.7 Vec3

  • new Vec3(x, y, z) -> PonderVec3Wrapper

2. 从零示例(可直接使用)

js
// 注册标签
Ponder.tags(tags => {
  tags.createTag("rpg:forge", "minecraft:anvil", "锻造", "演示锻造流程")
})

// 注册场景
Ponder.registry(reg => {
  reg.create("minecraft:anvil")
    .scene("rpg:forge", "锻造流程", (scene, util) => {
      scene.title("rpg:forge", "锻造流程")
      scene.configureBasePlate(0, 0, 5)
      scene.showBasePlate()

      const base = util.select().fromToXYZ(0, 0, 0, 2, 0, 2)
      scene.world().showSection(base, Direction.UP)
      scene.idle(20)

      const top = util.vector().topOfXYZ(1, 1, 1)
      scene.overlay().showText(40).text("放入矿石").pointAt(top)
      scene.idle(40)

      scene.effects().indicateSuccess(top)
      scene.particles().simple(20, "smoke", top)
      scene.idle(20)
    })
})

3. Wrapper 完整列表(函数级)

下方为所有 Wrapper 的用途与典型用法,并列出其完整方法签名与参数说明。

PonderBlockJS

用途:解析方块 id 并生成 BlockState

典型用法:const state = Block.id("minecraft:stone")

方法签名:

  • id(value: String) - 参数:value(String) 默认值:无 注意事项:无

PonderBlockStateWrapper

用途:调整方块状态属性

典型用法:const state = Block.id("minecraft:furnace").with("lit", true)

方法签名:

  • with(property: String, value: String) - 参数:property(String);value(String) 默认值:无 注意事项:无
  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderDebugInstructionsWrapper

用途:调试指令(显示/回调)

典型用法:scene.debug().debugSchematic()

方法签名:

  • debugSchematic() - 参数:无 默认值:无 注意事项:无
  • addInstructionInstance(instruction: Any) - 参数:instruction(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • enqueueCallback(callback: Any) - 参数:callback(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderEffectInstructionsWrapper

用途:场景特效指令(光效/粒子/提示)

典型用法:scene.effects().indicateSuccess(pos)

方法签名:

  • emitParticles(location: Any, emitter: Any, amountPerCycle: Float, cycles: Int) - 参数:location(Any);emitter(Any);amountPerCycle(Float);cycles(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • simpleParticleEmitter(data: Any, motion: Any) - 参数:data(Any);motion(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • particleEmitterWithinBlockSpace(data: Any, motion: Any) - 参数:data(Any);motion(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • indicateRedstone(pos: Any) - 参数:pos(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • indicateSuccess(pos: Any) - 参数:pos(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • createRedstoneParticles(pos: Any, color: Any, amount: Int) - 参数:pos(Any);color(Any);amount(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • playPhotonFx(path: String, location: Any) - 参数:path(String);location(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • playSnowstormFx(path: String, location: Any) - 参数:path(String);location(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • unwrap() - 参数:无 默认值:无 注意事项:无

用途:元素引用句柄(便于后续操作)

典型用法:const link = scene.world().showIndependentSection(sel, Direction.UP)

方法签名:

  • getId() - 参数:无 默认值:无 注意事项:无
  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderInputElementBuilderWrapper

用途:输入提示构建器

典型用法:scene.showControls(40, pos, Direction.UP).leftClick()

方法签名:

  • withItem(item: Any) - 参数:item(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • leftClick() - 参数:无 默认值:无 注意事项:无
  • rightClick() - 参数:无 默认值:无 注意事项:无
  • scroll() - 参数:无 默认值:无 注意事项:无
  • showing(icon: Any) - 参数:icon(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • whileSneaking() - 参数:无 默认值:无 注意事项:无
  • whileCTRL() - 参数:无 默认值:无 注意事项:无
  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderInputWindowElementWrapper

用途:输入窗口元素实例

典型用法:input.unwrap()

方法签名:

  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderMultiSceneBuilderWrapper

用途:批量注册多个场景

典型用法:multi.addStoryBoard("id", (scene, util) => {})

方法签名:

  • addStoryBoard(schematic: Any, callback: Any) - 参数:schematic(Any);callback(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • addStoryBoardWithTags(schematic: Any, callback: Any, vararg tags: Any) - 参数:schematic(Any);callback(Any);vararg tags(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • addStoryBoardWithExtras(schematic: Any, callback: Any, extras: Any) - 参数:schematic(Any);callback(Any);extras(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • addStoryBoardByPath(schematicPath: String, callback: Any) - 参数:schematicPath(String);callback(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • addStoryBoardByPathWithTags(schematicPath: String, callback: Any, vararg tags: Any) - 参数:schematicPath(String);callback(Any);vararg tags(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • addStoryBoardByPathWithExtras(schematicPath: String, callback: Any, extras: Any) - 参数:schematicPath(String);callback(Any);extras(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderMultiTagBuilderWrapper

用途:批量为组件/标签做关联

典型用法:tags.addToTag("rpg:guide").add("minecraft:stone")

方法签名:

  • add(component: Any) - 参数:component(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • add(tag: Any) - 参数:tag(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)

PonderOverlayInstructionsWrapper

用途:Overlay 文本/线条/提示指令

典型用法:scene.overlay().showText(40).text("提示")

方法签名:

  • showText(duration: Int) - 参数:duration(Int) 默认值:无 注意事项:时间单位为 tick
  • showOutlineWithText(selection: Any, duration: Int) - 参数:selection(Any);duration(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • showControls(sceneSpace: Any, direction: Any, duration: Int) - 参数:sceneSpace(Any);direction(Any);duration(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • chaseBoundingBoxOutline(color: Any, slot: Any?, boundingBox: Any, duration: Int) - 参数:color(Any);slot(Any?);boundingBox(Any);duration(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • showCenteredScrollInput(pos: Any, side: Any, duration: Int) - 参数:pos(Any);side(Any);duration(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • showScrollInput(location: Any, side: Any, duration: Int) - 参数:location(Any);side(Any);duration(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • showRepeaterScrollInput(pos: Any, duration: Int) - 参数:pos(Any);duration(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • showFilterSlotInput(location: Any, duration: Int) - 参数:location(Any);duration(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • showFilterSlotInputWithSide(location: Any, side: Any, duration: Int) - 参数:location(Any);side(Any);duration(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • showLine(color: Any, start: Any, end: Any, duration: Int) - 参数:color(Any);start(Any);end(Any);duration(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • showBigLine(color: Any, start: Any, end: Any, duration: Int) - 参数:color(Any);start(Any);end(Any);duration(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • showOutline(color: Any, slot: Any?, selection: Any, duration: Int) - 参数:color(Any);slot(Any?);selection(Any);duration(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderParrotElementWrapper

用途:鹦鹉元素引用

典型用法:const link = scene.special().createBirb(pos, "standing")

方法签名:

  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderParticleEmitterWrapper

用途:粒子发射器句柄

典型用法:const raw = emitter.unwrap()

方法签名:

  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderParticleInstructionsWrapper

用途:粒子指令入口

典型用法:scene.particles().simple(20, "smoke", new Vec3(0, 1, 0))

方法签名:

  • simple(ticks: Int, type: Any, pos: Any) - 参数:ticks(Int);type(Any);pos(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • dust(ticks: Int, color: Any, pos: Any) - 参数:ticks(Int);color(Any);pos(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • dust(ticks: Int, fromColor: Any, toColor: Any, pos: Any) - 参数:ticks(Int);fromColor(Any);toColor(Any);pos(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • item(ticks: Int, item: Any, pos: Any) - 参数:ticks(Int);item(Any);pos(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • block(ticks: Int, state: Any, pos: Any) - 参数:ticks(Int);state(Any);pos(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • density(value: Number) - 参数:value(Number) 默认值:无 注意事项:无
  • gravity(value: Number) - 参数:value(Number) 默认值:无 注意事项:无
  • physics(value: Boolean) - 参数:value(Boolean) 默认值:无 注意事项:无
  • collision(value: Boolean) - 参数:value(Boolean) 默认值:无 注意事项:无
  • color(value: Any) - 参数:value(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • roll(value: Number) - 参数:value(Number) 默认值:无 注意事项:无
  • friction(value: Number) - 参数:value(Number) 默认值:无 注意事项:无
  • scale(value: Number) - 参数:value(Number) 默认值:无 注意事项:无
  • lifetime(value: Number) - 参数:value(Number) 默认值:无 注意事项:无
  • motion(vec: Any) - 参数:vec(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • speed(vec: Any) - 参数:vec(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • area(vec: Any) - 参数:vec(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • delta(vec: Any) - 参数:vec(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • withinBlockSpace() - 参数:无 默认值:无 注意事项:无
  • transform(callback: Any) - 参数:callback(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • transformPosition(callback: Any) - 参数:callback(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • transformMotion(callback: Any) - 参数:callback(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数

PonderPositionUtilWrapper

用途:位置工具(grid/at/zero)

典型用法:const pos = util.grid().at(1, 1, 1)

方法签名:

  • at(x: Int, y: Int, z: Int): BlockPos = util.at(x, y, z) - 参数:x(Int);y(Int);z(Int), 默认=util.at(x);y(Any);z(Any) 默认值:z=util.at(x 注意事项:无
  • zero(): BlockPos = util.zero() - 参数:)(BlockPos, 默认=util.zero() 默认值:)=util.zero( 注意事项:无
  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderRegistryEventWrapper

用途:场景注册事件入口

典型用法:Ponder.registry(reg => reg.create("id").scene("id", "标题", (scene, util) => {}))

方法签名:

  • create(vararg components: Any) - 参数:vararg components(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • forComponents(vararg components: Any) - 参数:vararg components(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • withKeyFunction() - 参数:无 默认值:无 注意事项:无
  • printParticleNames() - 参数:无 默认值:无 注意事项:无

PonderSceneBuilderWrapper

用途:场景构建主入口

典型用法:scene.title("id", "标题"); scene.idle(20)

方法签名:

  • util() - 参数:无 默认值:无 注意事项:无
  • overlay() - 参数:无 默认值:无 注意事项:无
  • world() - 参数:无 默认值:无 注意事项:无
  • effects() - 参数:无 默认值:无 注意事项:无
  • special() - 参数:无 默认值:无 注意事项:无
  • debug() - 参数:无 默认值:无 注意事项:无
  • getParticles() - 参数:无 默认值:无 注意事项:无
  • getScene(): PonderScene = builder.getScene() - 参数:)(PonderScene, 默认=builder.getScene() 默认值:)=builder.getScene( 注意事项:无
  • title(sceneId: String, title: String) - 参数:sceneId(String);title(String) 默认值:无 注意事项:无
  • configureBasePlate(xOffset: Int, zOffset: Int, basePlateSize: Int) - 参数:xOffset(Int);zOffset(Int);basePlateSize(Int) 默认值:无 注意事项:无
  • scaleSceneView(factor: Float) - 参数:factor(Float) 默认值:无 注意事项:无
  • removeShadow() - 参数:无 默认值:无 注意事项:无
  • setSceneOffsetY(yOffset: Float) - 参数:yOffset(Float) 默认值:无 注意事项:无
  • showBasePlate() - 参数:无 默认值:无 注意事项:无
  • addInstruction(instruction: Any) - 参数:instruction(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • addInstructionCallback(callback: Any) - 参数:callback(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • idle(ticks: Int) - 参数:ticks(Int) 默认值:无 注意事项:时间单位为 tick
  • idleSeconds(seconds: Int) - 参数:seconds(Int) 默认值:无 注意事项:时间单位为秒
  • markAsFinished() - 参数:无 默认值:无 注意事项:无
  • setNextUpEnabled(isEnabled: Boolean) - 参数:isEnabled(Boolean) 默认值:无 注意事项:无
  • rotateCameraY(degrees: Float) - 参数:degrees(Float) 默认值:无 注意事项:无
  • addKeyframe() - 参数:无 默认值:无 注意事项:无
  • addLazyKeyframe() - 参数:无 默认值:无 注意事项:无
  • text(duration: Int, text: String, position: Any) - 参数:duration(Int);text(String);position(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • text(duration: Int, text: String) - 参数:duration(Int);text(String) 默认值:无 注意事项:时间单位为 tick
  • textSimple(duration: Int, text: String) - 参数:duration(Int);text(String) 默认值:无 注意事项:时间单位为 tick
  • showControls(duration: Int, position: Any, direction: Any) - 参数:duration(Int);position(Any);direction(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • playSound(sound: Any) - 参数:sound(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • playSound(sound: Any, volume: Number) - 参数:sound(Any);volume(Number) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • playSound(sound: Any, volume: Number, pitch: Number) - 参数:sound(Any);volume(Number);pitch(Number) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • showStructure() - 参数:无 默认值:无 注意事项:无
  • showStructureHeight(height: Int) - 参数:height(Int) 默认值:无 注意事项:无
  • encapsulateBounds(size: Any) - 参数:size(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderSceneBuildingUtilWrapper

用途:构建工具(select/vector/grid)

典型用法:const sel = util.select().positionXYZ(0, 1, 0)

方法签名:

  • select(): PonderSelectionUtilWrapper = PonderSelectionUtilWrapper(util.select()) - 参数:)(PonderSelectionUtilWrapper, 默认=PonderSelectionUtilWrapper(util.select()) 默认值:)=PonderSelectionUtilWrapper(util.select() 注意事项:无
  • vector(): PonderVectorUtilWrapper = PonderVectorUtilWrapper(util.vector()) - 参数:)(PonderVectorUtilWrapper, 默认=PonderVectorUtilWrapper(util.vector()) 默认值:)=PonderVectorUtilWrapper(util.vector() 注意事项:无
  • grid(): PonderPositionUtilWrapper = PonderPositionUtilWrapper(util.grid()) - 参数:)(PonderPositionUtilWrapper, 默认=PonderPositionUtilWrapper(util.grid()) 默认值:)=PonderPositionUtilWrapper(util.grid() 注意事项:无
  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderSceneRegistrationBuilderWrapper

用途:基于组件注册场景

典型用法:registry.create("minecraft:stone").scene("id", "标题", (scene, util) => {})

方法签名:

  • tag(vararg tags: Any) - 参数:vararg tags(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • scene(sceneId: String, title: String, callback: Any, vararg tags: Any) - 参数:sceneId(String);title(String);callback(Any);vararg tags(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • scene(sceneId: String, title: String, schematic: Any, callback: Any, vararg tags: Any) - 参数:sceneId(String);title(String);schematic(Any);callback(Any);vararg tags(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • sceneWithSchematic(sceneId: String, title: String, schematic: Any, callback: Any, vararg tags: Any) - 参数:sceneId(String);title(String);schematic(Any);callback(Any);vararg tags(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数

PonderSelectionUtilWrapper

用途:选择器工具(Selection)

典型用法:util.select().fromToXYZ(0, 0, 0, 1, 1, 1)

方法签名:

  • everywhere(): Selection = util.everywhere() - 参数:)(Selection, 默认=util.everywhere() 默认值:)=util.everywhere( 注意事项:无
  • position(pos: Any) - 参数:pos(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • positionXYZ(x: Int, y: Int, z: Int): Selection = util.position(x, y, z) - 参数:x(Int);y(Int);z(Int), 默认=util.position(x);y(Any);z(Any) 默认值:z=util.position(x 注意事项:无
  • fromTo(pos1: Any, pos2: Any) - 参数:pos1(Any);pos2(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • fromToXYZ(x: Int, y: Int, z: Int, x2: Int, y2: Int, z2: Int) - 参数:x(Int);y(Int);z(Int);x2(Int);y2(Int);z2(Int) 默认值:无 注意事项:无
  • column(x: Int, z: Int): Selection = util.column(x, z) - 参数:x(Int);z(Int), 默认=util.column(x);z(Any) 默认值:z=util.column(x 注意事项:无
  • layer(y: Int): Selection = util.layer(y) - 参数:y(Int), 默认=util.layer(y) 默认值:y=util.layer(y 注意事项:无
  • layersFrom(y: Int): Selection = util.layersFrom(y) - 参数:y(Int), 默认=util.layersFrom(y) 默认值:y=util.layersFrom(y 注意事项:无
  • layers(y: Int, height: Int): Selection = util.layers(y, height) - 参数:y(Int);height(Int), 默认=util.layers(y);height(Any) 默认值:height=util.layers(y 注意事项:无
  • cuboid(origin: Any, size: Any) - 参数:origin(Any);size(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderSpecialInstructionsWrapper

用途:特殊元素与动画指令

典型用法:scene.special().createBirb(pos, "standing")

方法签名:

  • createBirb(location: Any, pose: Any?) - 参数:location(Any);pose(Any?) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • changeBirbPose(birb: Any, pose: Any?) - 参数:birb(Any);pose(Any?) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • movePointOfInterest(location: Any) - 参数:location(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • rotateParrot(link: Any, xRotation: Double, yRotation: Double, zRotation: Double, duration: Int) - 参数:link(Any);xRotation(Double);yRotation(Double);zRotation(Double);duration(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • moveParrot(link: Any, offset: Any, duration: Int) - 参数:link(Any);offset(Any);duration(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • createCart(location: Any, angle: Float, type: Any) - 参数:location(Any);angle(Float);type(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • rotateCart(link: Any, yRotation: Float, duration: Int) - 参数:link(Any);yRotation(Float);duration(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • moveCart(link: Any, offset: Any, duration: Int) - 参数:link(Any);offset(Any);duration(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • hideElement(link: Any, direction: Any) - 参数:link(Any);direction(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderStoryBoardEntryWrapper

用途:场景条目排序与标签

典型用法:entry.highlightTag("rpg:guide")

方法签名:

  • orderBefore(otherSceneId: String) - 参数:otherSceneId(String) 默认值:无 注意事项:无
  • orderBeforeWithNamespace(namespace: String, otherSceneId: String) - 参数:namespace(String);otherSceneId(String) 默认值:无 注意事项:无
  • orderAfter(otherSceneId: String) - 参数:otherSceneId(String) 默认值:无 注意事项:无
  • orderAfterWithNamespace(namespace: String, otherSceneId: String) - 参数:namespace(String);otherSceneId(String) 默认值:无 注意事项:无
  • highlightTag(tag: Any) - 参数:tag(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • highlightTags(vararg tags: Any) - 参数:vararg tags(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • highlightAllTags() - 参数:无 默认值:无 注意事项:无
  • getComponent(): ResourceLocation = entry.getComponent() - 参数:)(ResourceLocation, 默认=entry.getComponent() 默认值:)=entry.getComponent( 注意事项:无
  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderTagBuilderWrapper

用途:标签构建器

典型用法:tag.title("标题").description("说明").addToIndex()

方法签名:

  • title(title: String) - 参数:title(String) 默认值:无 注意事项:无
  • description(description: String) - 参数:description(String) 默认值:无 注意事项:无
  • addToIndex() - 参数:无 默认值:无 注意事项:无
  • noIndex() - 参数:无 默认值:无 注意事项:无
  • addIconToItems() - 参数:无 默认值:无 注意事项:无
  • icon(icon: Any) - 参数:icon(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • idAsIcon() - 参数:无 默认值:无 注意事项:无
  • item(item: Any) - 参数:item(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • itemWithOptions(item: Any, useAsIcon: Boolean, useAsMainItem: Boolean) - 参数:item(Any);useAsIcon(Boolean);useAsMainItem(Boolean) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • register() - 参数:无 默认值:无 注意事项:无
  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderTagEventWrapper

用途:标签注册事件入口

典型用法:Ponder.tags(tags => tags.createTag("rpg:guide", "minecraft:book", "标题", "说明"))

方法签名:

  • registerTag(id: Any) - 参数:id(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • createTag(id: Any, callback: Any) - 参数:id(Any);callback(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • createTag(id: Any, icon: Any, title: String, description: String, items: Any?) - 参数:id(Any);icon(Any);title(String);description(String);items(Any?) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • createTag(id: Any, icon: Any, title: String, description: String) - 参数:id(Any);icon(Any);title(String);description(String) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • createTagSimple(id: Any, icon: Any, title: String, description: String, items: Any? = null) - 参数:id(Any);icon(Any);title(String);description(String);items(Any?, 默认=null) 默认值:items=null 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • add(tag: Any, components: Any) - 参数:tag(Any);components(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • remove(tag: Any, components: Any) - 参数:tag(Any);components(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • addToTag(vararg tags: Any) - 参数:vararg tags(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • addToComponent(vararg components: Any) - 参数:vararg components(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderTextElementBuilderWrapper

用途:文本元素构建器

典型用法:scene.overlay().showText(40).text("提示")

方法签名:

  • colored(color: Any) - 参数:color(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • pointAt(pos: Any) - 参数:pos(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • independent(y: Int = 0) - 参数:y(Int, 默认=0) 默认值:y=0 注意事项:无
  • text(text: String) - 参数:text(String) 默认值:无 注意事项:无
  • textWithParams(text: String, vararg params: Any) - 参数:text(String);vararg params(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • placeNearTarget() - 参数:无 默认值:无 注意事项:无
  • attachKeyFrame() - 参数:无 默认值:无 注意事项:无
  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderVec3Wrapper

用途:向量对象封装

典型用法:const v = new Vec3(1, 2, 3)

方法签名:

  • x() - 参数:无 默认值:无 注意事项:无
  • y() - 参数:无 默认值:无 注意事项:无
  • z() - 参数:无 默认值:无 注意事项:无
  • add(other: Any) - 参数:other(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • add(x: Double, y: Double, z: Double) - 参数:x(Double);y(Double);z(Double) 默认值:无 注意事项:无
  • addXYZ(x: Double, y: Double, z: Double) - 参数:x(Double);y(Double);z(Double) 默认值:无 注意事项:无
  • subtract(other: Any) - 参数:other(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • subtract(x: Double, y: Double, z: Double) - 参数:x(Double);y(Double);z(Double) 默认值:无 注意事项:无
  • scale(factor: Double) - 参数:factor(Double) 默认值:无 注意事项:无
  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderVectorUtilWrapper

用途:向量工具(center/top/face)

典型用法:util.vector().centerOfXYZ(0, 1, 0)

方法签名:

  • centerOf(pos: Any) - 参数:pos(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • centerOfXYZ(x: Int, y: Int, z: Int): PonderVec3Wrapper = PonderVec3Wrapper(util.centerOf(x, y, z)) - 参数:x(Int);y(Int);z(Int), 默认=PonderVec3Wrapper(util.centerOf(x);y(Any);z)(Any) 默认值:z=PonderVec3Wrapper(util.centerOf(x 注意事项:无
  • topOf(pos: Any) - 参数:pos(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • topOfXYZ(x: Int, y: Int, z: Int): PonderVec3Wrapper = PonderVec3Wrapper(util.topOf(x, y, z)) - 参数:x(Int);y(Int);z(Int), 默认=PonderVec3Wrapper(util.topOf(x);y(Any);z)(Any) 默认值:z=PonderVec3Wrapper(util.topOf(x 注意事项:无
  • blockSurface(pos: Any, face: Any) - 参数:pos(Any);face(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • blockSurfaceWithMargin(pos: Any, face: Any, margin: Float) - 参数:pos(Any);face(Any);margin(Float) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • of(x: Double, y: Double, z: Double): PonderVec3Wrapper = PonderVec3Wrapper(util.of(x, y, z)) - 参数:x(Double);y(Double);z(Double), 默认=PonderVec3Wrapper(util.of(x);y(Any);z)(Any) 默认值:z=PonderVec3Wrapper(util.of(x 注意事项:无
  • unwrap() - 参数:无 默认值:无 注意事项:无

PonderWorldInstructionsWrapper

用途:世界/方块/实体操作指令

典型用法:scene.world().showSection(sel, Direction.UP)

方法签名:

  • incrementBlockBreakingProgress(pos: Any) - 参数:pos(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • showSection(selection: Any, fadeInDirection: Any) - 参数:selection(Any);fadeInDirection(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • showSectionAndMerge(selection: Any, fadeInDirection: Any, link: Any) - 参数:selection(Any);fadeInDirection(Any);link(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • glueBlockOnto(position: Any, fadeInDirection: Any, link: Any) - 参数:position(Any);fadeInDirection(Any);link(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • showIndependentSection(selection: Any, fadeInDirection: Any) - 参数:selection(Any);fadeInDirection(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • showIndependentSectionImmediately(selection: Any) - 参数:selection(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • hideSection(selection: Any, fadeOutDirection: Any) - 参数:selection(Any);fadeOutDirection(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • hideIndependentSection(link: Any, fadeOutDirection: Any) - 参数:link(Any);fadeOutDirection(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • restoreBlocks(selection: Any) - 参数:selection(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • makeSectionIndependent(selection: Any) - 参数:selection(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • rotateSection(link: Any, xRotation: Double, yRotation: Double, zRotation: Double, duration: Int) - 参数:link(Any);xRotation(Double);yRotation(Double);zRotation(Double);duration(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • configureCenterOfRotation(link: Any, anchor: Any) - 参数:link(Any);anchor(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • configureStabilization(link: Any, anchor: Any) - 参数:link(Any);anchor(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • moveSection(link: Any, offset: Any, duration: Int) - 参数:link(Any);offset(Any);duration(Int) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);时间单位为 tick
  • setBlocks(selection: Any, state: Any) - 参数:selection(Any);state(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • setBlocks(selection: Any, state: Any, spawnParticles: Boolean) - 参数:selection(Any);state(Any);spawnParticles(Boolean) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • destroyBlock(pos: Any) - 参数:pos(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • setBlock(pos: Any, state: Any) - 参数:pos(Any);state(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • setBlock(pos: Any, state: Any, spawnParticles: Boolean) - 参数:pos(Any);state(Any);spawnParticles(Boolean) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • replaceBlocks(selection: Any, state: Any) - 参数:selection(Any);state(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • replaceBlocks(selection: Any, state: Any, spawnParticles: Boolean) - 参数:selection(Any);state(Any);spawnParticles(Boolean) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • modifyBlock(pos: Any, callback: Any) - 参数:pos(Any);callback(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • modifyBlock(pos: Any, callback: Any, spawnParticles: Boolean) - 参数:pos(Any);callback(Any);spawnParticles(Boolean) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • cycleBlockProperty(pos: Any, property: Any) - 参数:pos(Any);property(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • modifyBlocks(selection: Any, callback: Any) - 参数:selection(Any);callback(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • modifyBlocks(selection: Any, callback: Any, spawnParticles: Boolean) - 参数:selection(Any);callback(Any);spawnParticles(Boolean) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • toggleRedstonePower(selection: Any) - 参数:selection(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • modifyEntities(entityType: Any, callback: Any) - 参数:entityType(Any);callback(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • modifyEntitiesInside(entityType: Any, area: Any, callback: Any) - 参数:entityType(Any);area(Any);callback(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • modifyEntity(link: Any, callback: Any) - 参数:link(Any);callback(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • removeEntity(link: Any) - 参数:link(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • createEntity(factory: Any) - 参数:factory(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • createEntity(entityType: Any, position: Any) - 参数:entityType(Any);position(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • createEntity(entityType: Any, position: Any, callback: Any?) - 参数:entityType(Any);position(Any);callback(Any?) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • createEntityWithType(entityType: Any, position: Any, callback: Any? = null) - 参数:entityType(Any);position(Any);callback(Any?, 默认=null) 默认值:callback=null 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • createItemEntity(location: Any, motion: Any, stack: Any) - 参数:location(Any);motion(Any);stack(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等)
  • modifyBlockEntityNBT(selection: Any, callback: Any) - 参数:selection(Any);callback(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • modifyBlockEntityNBT(selection: Any, reDrawBlocks: Boolean, callback: Any) - 参数:selection(Any);reDrawBlocks(Boolean);callback(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • modifyBlockEntityNBT(selection: Any, beType: Any, callback: Any) - 参数:selection(Any);beType(Any);callback(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • modifyBlockEntityNBTWithRedraw(selection: Any, beType: Any, callback: Any, reDrawBlocks: Boolean) - 参数:selection(Any);beType(Any);callback(Any);reDrawBlocks(Boolean) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • modifyBlockEntity(position: Any, beType: Any, callback: Any) - 参数:position(Any);beType(Any);callback(Any) 默认值:无 注意事项:参数允许多类型(BlockPos/Vec3/ResourceLocation/字符串等);可传 JS 函数
  • unwrap() - 参数:无 默认值:无 注意事项:无