@dao3fun/player-fall-manager
v1.0.2
Published
管理玩家的坠落,实时计算坠落开始到结束期间的数据并返回。
Downloads
181
Readme
玩家坠落管理神岛版
介绍
管理玩家的坠落,实时计算坠落开始到结束期间的数据并返回。
说明
- 由于本监听方式是基于 world.onTick ,所以Y坐标可能会有±2的误差。
- 当玩家掉落超过阈值时,会触发一个回调函数,你可以在这里对玩家进行一些操作,例如对玩家造成伤害。
- 你可以在代码中设置是否启用日志记录,以方便调试。
- 除了全局阈值和全局回调函数,还可以自定义每个玩家的坠落阈值和触发回调函数。
示例代码
import PlayerFallManager, { onThresholdExceeded } from "@dao3fun/player-fall-manager";
// 创建一个PlayerFallManager实例来管理玩家的坠落情况
const manager = new PlayerFallManager({
// 设置Y轴方向的坠落全局阈值
thresholdY: 4.5,
// 当玩家坠落超过阈值时执行的全局回调函数
onThresholdExceeded: (handle: onThresholdExceeded) => {
// 对玩家造成伤害
handle.entity.hurt(20);
}
});
// 启用日志记录以便于调试
manager.isLog = true;
// 当玩家加入世界时执行的事件处理函数
world.onPlayerJoin(({ entity, tick }) => {
// 允许玩家受到伤害
entity.enableDamage = true;
// 将玩家添加到坠落管理器中进行管理
manager.addPlayer(entity);
// 或者以另一种方式添加玩家,这种方式允许为每个玩家自定义坠落阈值和伤害
/**
manager.addPlayer({
entity,
thresholdY: 6,
onThresholdExceeded: (handle: onThresholdExceeded) => {
// 自定义伤害值
handle.entity.hurt(100);
}
})
*/
});