Flags & Permissions

This example will check if a flag was added before, remove a flag, and add another flag.

import tfagaming.projects.minecraft.homestead.flags.*;

// Getting global player flags from a region
long flags = region.getPlayerFlags();

// Add or remove a flag to/from flags
flags = FlagsCalculator.addFlag(flags, PlayerFlags.BREAK_BLOCKS);
flags = FlagsCalculator.removeFlag(flags, PlayerFlags.ELYTRA);

// Check if a flag is set
boolean isFlagSet = FlagsCalculator.isFlagSet(flags, PlayerFlags.INTERACT_ENTITIES);

Logger.info(isFlagSet ? "The flag is in ALLOW state" : "The flag is in DENY state");

// Update flags for the region's global player flags
region.setPlayerFlags(flags);

Player Flags

Global Player Flags:

The flags class is: PlayerFlags

Method of getting the flags:

region.getPlayerFlags();

Sub-Area Flags:

The flags class is: PlayerFlags

Method of getting the flags:

SerializableSubArea subArea = region.getSubArea("The Sub-area name");

subArea.getFlags();

World Flags

The flags class is: WorldFlags

Method of getting the flags:

region.getWorldFlags();

Member Flags

Player Flags:

The flags class is: PlayerFlags

Method of getting the flags:

OfflinePlayer player = ... // Getting a player (online or offline)

SerializableMember member = region.getMember(player);

member.getFlags();

Region Control Flags:

The flags class is: RegionControlFlags

Method of getting the flags:

OfflinePlayer player = ... // Getting a player (online or offline)

SerializableMember member = region.getMember(player);

member.getRegionControlFlags();

Last updated