BedrioxDOCUMENTATION
PLAYER EVENT

PlayerExperienceChangedEvent

Observes the related action after it has committed.

Committed post-eventBedriox\Api\Event\Player
WHAT IT REPRESENTS

Reports that player experience changed has committed. Plugins may observe the result, but this event does not roll the action back.

WHEN IT FIRES

Bedriox dispatches this after the related action has committed. It is an observation and cannot undo the result.

EVENT SEQUENCE

Related before event

PlayerExperienceChangeEvent runs before this committed event and can be cancelled. This event is dispatched only after the action succeeds; it cannot cancel or roll back the result.

Event data

Bedriox\Api\Player\Player $player

Read-only event value supplied by Bedriox.

Bedriox\Api\Player\ExperienceSnapshot $previous

Read-only event value supplied by Bedriox.

Bedriox\Api\Player\ExperienceSnapshot $experience

Read-only event value supplied by Bedriox.

Bedriox\Api\Player\ExperienceChangeCause $cause

Read-only event value supplied by Bedriox.

Available methods

This type does not declare additional public methods.

Inherited methods

captureState(): mixed from Bedriox\Api\Event\Event

Typed public method.

restoreState(mixed $state): void from Bedriox\Api\Event\Event

Typed public method.

setReadOnly(bool $readOnly): void from Bedriox\Api\Event\Event

Typed public method.

Listen for this event

Register the containing object with PluginContext::events()->registerSubscriber($this), then add a typed handler:

PHP
use Bedriox\Api\Event\EventHandler;
use Bedriox\Api\Event\Player\PlayerExperienceChangedEvent;

#[EventHandler]
public function onPlayerExperienceChangedEvent(PlayerExperienceChangedEvent $event): void
{
    // Keep listener work bounded and use public capabilities only.
}

View exact source ↗