Skip to content
On this page
NeoForge

ServerPlayerEvent

top.katton.api.eventneoforge/src/main/kotlin/top/katton/api/event/ServerPlayerEvent.kt
NeoForge 平台的服务端玩家事件。 此对象提供与服务端玩家生命周期相关的事件,包括加入/离开/重生、经验值事件、物品拾取/投掷、合成等。

ServerPlayerEvent

ServerPlayerEventNeoForge对象
kotlin
@Suppress("unused")
@EventBusSubscriber( modid = Katton.MOD_ID, value = [Dist.DEDICATED_SERVER] )
modid

NeoForge 平台的服务端玩家事件。 此对象提供与服务端玩家生命周期相关的事件,包括加入/离开/重生、经验值事件、物品拾取/投掷、合成等。

ServerPlayerEvent.onPlayerJoin

ServerPlayerEvent.onPlayerJoinNeoForge属性
kotlin
@JvmField
@JvmField val onPlayerJoin

当玩家加入服务器时触发。

ServerPlayerEvent.onPlayerLeave

ServerPlayerEvent.onPlayerLeaveNeoForge属性
kotlin
@JvmField
@JvmField val onPlayerLeave

当玩家离开服务器时触发。

ServerPlayerEvent.onAfterPlayerRespawn

ServerPlayerEvent.onAfterPlayerRespawnNeoForge属性
kotlin
@JvmField
@JvmField val onAfterPlayerRespawn

当玩家重生后触发。

ServerPlayerEvent.onPlayerCopy

ServerPlayerEvent.onPlayerCopyNeoForge属性
kotlin
@JvmField
@JvmField val onPlayerCopy

当复制玩家数据时触发,例如在重生或维度切换时。

ServerPlayerEvent.onPlayerXpChange

ServerPlayerEvent.onPlayerXpChangeNeoForge属性
kotlin
val onPlayerXpChange

当玩家经验变化时触发。 可取消以阻止变化。

ServerPlayerEvent.onPlayerXpLevelChange

ServerPlayerEvent.onPlayerXpLevelChangeNeoForge属性
kotlin
val onPlayerXpLevelChange

当玩家经验等级变化时触发。 可取消以阻止变化。

ServerPlayerEvent.onPlayerPickupXp

ServerPlayerEvent.onPlayerPickupXpNeoForge属性
kotlin
val onPlayerPickupXp

当玩家拾取经验球时触发。 可取消以阻止拾取。

ServerPlayerEvent.onStartTracking

ServerPlayerEvent.onStartTrackingNeoForge属性
kotlin
val onStartTracking

当玩家开始跟踪某个实体时触发。

ServerPlayerEvent.onStopTracking

ServerPlayerEvent.onStopTrackingNeoForge属性
kotlin
val onStopTracking

当玩家停止跟踪某个实体时触发。

ServerPlayerEvent.onPlayerLoadFromFile

ServerPlayerEvent.onPlayerLoadFromFileNeoForge属性
kotlin
val onPlayerLoadFromFile

当玩家数据从文件加载时触发。

ServerPlayerEvent.onPlayerSaveToFile

ServerPlayerEvent.onPlayerSaveToFileNeoForge属性
kotlin
val onPlayerSaveToFile

当玩家数据保存到文件时触发。

ServerPlayerEvent.onItemToss

ServerPlayerEvent.onItemTossNeoForge属性
kotlin
val onItemToss

当玩家投掷物品时触发。

ServerPlayerEvent.onItemPickupPre

ServerPlayerEvent.onItemPickupPreNeoForge属性
kotlin
val onItemPickupPre

当玩家拾取物品前触发。 可修改是否允许拾取。

ServerPlayerEvent.onItemPickupPost

ServerPlayerEvent.onItemPickupPostNeoForge属性
kotlin
val onItemPickupPost

当玩家拾取物品后触发。

ServerPlayerEvent.onPlayerItemCrafted

ServerPlayerEvent.onPlayerItemCraftedNeoForge属性
kotlin
val onPlayerItemCrafted

当玩家合成物品时触发。

ServerPlayerEvent.onPlayerItemSmelted

ServerPlayerEvent.onPlayerItemSmeltedNeoForge属性
kotlin
val onPlayerItemSmelted

当玩家熔炼物品时触发。

ServerPlayerEvent.onPlayerSpawnPhantoms

ServerPlayerEvent.onPlayerSpawnPhantomsNeoForge属性
kotlin
val onPlayerSpawnPhantoms

当幻翼即将为某位玩家生成时触发。 可修改幻翼数量和生成结果。

ServerPlayerEvent.onPickFromBlock

ServerPlayerEvent.onPickFromBlockNeoForge属性
kotlin
@JvmField
@JvmField val onPickFromBlock

当玩家中键从方块中获取物品时触发。

返回值

要获取的 ItemStack,或返回 null 使用默认行为。

这是为了 NeoForge API 兼容性保留的占位事件。

ServerPlayerEvent.onPickFromEntity

ServerPlayerEvent.onPickFromEntityNeoForge属性
kotlin
@JvmField
@JvmField val onPickFromEntity

当玩家中键从实体中获取物品时触发。

返回值

要获取的 ItemStack,或返回 null 使用默认行为。

这是为了 NeoForge API 兼容性保留的占位事件。

ServerPlayerEvent.PlayerTrackingArg

ServerPlayerEvent.PlayerTrackingArgNeoForge数据类
kotlin
data class PlayerTrackingArg( val player: ServerPlayer, val target: Entity )

玩家跟踪事件的参数类。

属性

属性说明
player正在跟踪目标的玩家。
target被跟踪的实体。

ServerPlayerEvent.PlayerFileArg

ServerPlayerEvent.PlayerFileArgNeoForge数据类
kotlin
data class PlayerFileArg( val player: ServerPlayer, val playerDirectory: File, val playerUUID: String )

玩家文件操作的参数类。

属性

属性说明
player正在加载/保存的玩家。
playerDirectory包含玩家数据的目录。
playerUUID玩家 UUID。

ServerPlayerEvent.PlayerItemPickupPreArg

ServerPlayerEvent.PlayerItemPickupPreArgNeoForge数据类
kotlin
data class PlayerItemPickupPreArg( val player: ServerPlayer, val item: ItemEntity, var canPickup: TriState )

物品拾取前事件的参数类。

属性

属性说明
player正在拾取物品的玩家。
item正在被拾取的物品实体。
canPickup是否允许拾取(可修改)。

ServerPlayerEvent.PlayerItemPickupPostArg

ServerPlayerEvent.PlayerItemPickupPostArgNeoForge数据类
kotlin
data class PlayerItemPickupPostArg( val player: ServerPlayer, val item: ItemEntity, val originalStack: ItemStack, val currentStack: ItemStack )

物品拾取后事件的参数类。

属性

属性说明
player已拾取物品的玩家。
item已被拾取的物品实体。
originalStack原始物品堆栈。
currentStack拾取后的当前物品堆栈。

ServerPlayerEvent.PlayerCraftedItemArg

ServerPlayerEvent.PlayerCraftedItemArgNeoForge数据类
kotlin
data class PlayerCraftedItemArg( val player: ServerPlayer, val item: ItemStack, val inventory: Container )

玩家合成物品事件的参数类。

属性

属性说明
player合成该物品的玩家。
item合成得到的物品堆栈。
inventory发生合成的容器。

ServerPlayerEvent.PlayerSmeltedItemArg

ServerPlayerEvent.PlayerSmeltedItemArgNeoForge数据类
kotlin
data class PlayerSmeltedItemArg( val player: ServerPlayer, val item: ItemStack, val amountRemoved: Int )

玩家熔炼物品事件的参数类。

属性

属性说明
player熔炼该物品的玩家。
item熔炼得到的物品堆栈。
amountRemoved从输入中移除的数量。

ServerPlayerEvent.PlayerSpawnPhantomsArg

ServerPlayerEvent.PlayerSpawnPhantomsArgNeoForge数据类
kotlin
data class PlayerSpawnPhantomsArg( val player: ServerPlayer, var phantomsToSpawn: Int, var result: PlayerSpawnPhantomsEvent.Result )

幻翼生成事件的参数类。

属性

属性说明
player正在为其生成幻翼的玩家。
phantomsToSpawn要生成的幻翼数量(可修改)。
result生成结果(可修改)。