Code Patterns
Copy-paste examples for common plugin tasks. Commands, events, ECS, GUI, and more.
All
225
Command
60
Damage
2
Ecs
27
Entity
5
Gui
75
Interaction
2
Inventory
4
Moderation
3
Permission
2
Player
9
Plugin
4
Storage
2
Teleport
3
Ui
22
Util
5
← Back to Patterns
java
ecs
Ref Validation
Always validate entity references before use since entities can be deleted at any time.
Example Code
// Store Refs, never raw entity data
private Ref<EntityStore> targetRef;
public void setTarget(Ref<EntityStore> ref) {
this.targetRef = ref;
}
public void processTarget(Store<EntityStore> store) {
// Always check validity before use
if (targetRef == null || !targetRef.isValid()) {
targetRef = null; // Clear invalid ref
return;
}
// Safe to use now
Player target = store.getComponent(targetRef, Player.getComponentType());
if (target != null) {
// Process target...
}
}
// Alternative: validate() throws exception if invalid
public void mustHaveTarget() {
targetRef.validate(); // Throws "Invalid entity reference!" if deleted
// Only reached if valid
}