Package org.kingdoms.constants.group
Class Group
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected @NonNull Map<KingdomRelation,Set<org.kingdoms.constants.group.model.relationships.RelationAttribute>> protected doubleprotected @NonNull Map<String,BookChapter> protected booleanprotected @Nullable org.kingdoms.server.location.ImmutableLocationprotected final UUIDprotected @NonNull Stringprotected @Nullable SimpleLocationprotected @NonNull UUIDprotected booleanprotected booleanprotected doubleprotected @NonNull RankMapprotected @NonNull Map<UUID,KingdomRelation> protected @NonNull Map<UUID,KingdomRelationshipRequest> protected booleanprotected longprotected longprotected longprotected longprotected @Nullable Stringprotected @Nullable StringFields inherited from class org.kingdoms.constants.metadata.KingdomsObject
metadata -
Constructor Summary
ConstructorsConstructorDescriptionGroup(@NonNull UUID id, @NonNull UUID owner, @NonNull String name, @Nullable String tag, @Nullable String tax, @NonNull RankMap ranks, long resourcePoints, long since, double bank, boolean publicHome, boolean permanent, boolean requiresInvite, long shieldSince, long shieldTime, @Nullable SimpleLocation nexus, @Nullable org.kingdoms.server.location.ImmutableLocation home, String flag, Color color, @NonNull Set<UUID> members, @NonNull Map<String, BookChapter> book, Map<UUID, KingdomRelation> relations, Map<UUID, KingdomRelationshipRequest> relationshipRequests, Map<KingdomRelation, Set<org.kingdoms.constants.group.model.relationships.RelationAttribute>> attributes, @NonNull Set<UUID> mails, @NonNull LinkedList<AuditLog> logs) -
Method Summary
Modifier and TypeMethodDescription@NonNull NexusMoveEventabstractPlaceOrMoveNexus(String styleName, @NonNull org.bukkit.Location toLocation, @Nullable KingdomPlayer kp, org.kingdoms.events.KingdomsEventCallerContext<NexusMoveEvent> eventContext) voidactivateShield(long time) voidactivateShield(long time, boolean reset) doubleaddBank(double amount) voidaddResourcePoints(long amount) addToResourcePoints(@NonNull Collection<org.bukkit.inventory.ItemStack> donations, @Nullable BiFunction<org.bukkit.inventory.ItemStack, List<org.bukkit.inventory.ItemStack>, Long> function) abstract doubleintcountRelationships(KingdomRelation relation) voiddisband(GroupDisband.Reason reason) abstract GroupDisbanddisband(GroupDisband.Reason reason, Runnable predataRemoval) boolean@NonNull Map<KingdomRelation,Set<org.kingdoms.constants.group.model.relationships.RelationAttribute>> doublegetBank()@NonNull Map<String,BookChapter> getBook()getColor()@NonNull String@NonNull UUID@Nullable StringgetFlag()@Nullable org.kingdoms.server.location.ImmutableLocationgetHome()@NonNull UUIDgetId()abstract @NonNull List<KingdomPlayer>@NonNull LinkedList<AuditLog>getLogs()getMails()abstract intabstract doublegetMight()@NonNull StringgetName()<C extends AuditLog,T>
TgetNewestLog(Class<C> base, Function<C, T> transformer) @Nullable SimpleLocationgetNexus()abstract @NonNull List<org.bukkit.entity.Player>abstract @NonNull List<org.bukkit.OfflinePlayer>double@NonNull RankMapgetRanks()@NonNull Map<UUID,KingdomRelation> @NonNull Map<UUID,KingdomRelationshipRequest> longlonglonglonglonggetSince()@Nullable StringgetTag()@Nullable StringgetTax()abstract Stringstatic @NonNull Comparator<Group>booleanhasAttribute(@Nullable Group other, org.kingdoms.constants.group.model.relationships.RelationAttribute attribute) inthashCode()booleanhasMoney(double amount) booleanhasResourcePoints(long amount) booleanfinal booleanisFull()booleanisHidden()booleanbooleanbooleanvoidabstract NexusMoveEventplaceOrMoveNexus(@NonNull org.bukkit.Location loc, @Nullable KingdomPlayer kp) abstract @NonNull GroupRenameEventrename(@NonNull String str, @Nullable KingdomPlayer renamer) org.kingdoms.events.general.GroupRenameTagEventrenameTag(@Nullable String tag, @Nullable KingdomPlayer by) booleansendMail(String subject, org.bukkit.entity.Player sender, Map<Group, MailRecipientType> recipients, List<String> message, UUID replyTo) voidsetAttributes(@NonNull Map<KingdomRelation, Set<org.kingdoms.constants.group.model.relationships.RelationAttribute>> attributes) voidsetBank(double bank) voidsetBook(@NonNull Map<String, BookChapter> book) setColor(Color color, KingdomPlayer player) setFlag(@Nullable String flag, KingdomPlayer player) setHidden(boolean hidden, @Nullable KingdomPlayer player) abstract org.kingdoms.events.general.LocationChangeEventsetHome(@Nullable org.bukkit.Location home, @Nullable KingdomPlayer player) protected voidvoidsetNexus(@Nullable SimpleLocation nexus) voidsetPermanent(boolean permanent) voidsetPublicHome(boolean publicHome) voidsetPublicHomeCost(double publicHomeCost) voidvoidsetRelations(@NonNull Map<UUID, KingdomRelation> relations) voidsetRelationshipRequests(@NonNull Map<UUID, KingdomRelationshipRequest> relationshipRequests) voidsetRelationShipWith(Group other, @Nullable KingdomRelation relation) voidsetRequiresInvite(boolean requiresInvite) voidsetResourcePoints(long resourcePoints) voidsetShieldSince(long shieldSince) voidsetShieldTime(long shieldTime) voidsetSince(long since) voidvoidtoString()@NonNull Map<UUID,KingdomRelation> abstract voidupdateRankNode(@NonNull String node, @NonNull String newNode) Methods inherited from class org.kingdoms.constants.metadata.KingdomsObject
compressBoolean, compressCollecton, compressCollecton, compressColor, compressInventory, compressLocation, compressLocation, compressMap, compressMetadata, compressString, compressUUID, getMetadata, getSaveMeta, setMetadata, setSaveMeta, shouldSave
-
Field Details
-
members
-
relationshipRequests
-
relations
-
attributes
protected @NonNull Map<KingdomRelation,Set<org.kingdoms.constants.group.model.relationships.RelationAttribute>> attributes -
owner
-
id
-
name
-
nexus
-
home
protected @Nullable org.kingdoms.server.location.ImmutableLocation home -
shieldSince
protected long shieldSince -
shieldTime
protected long shieldTime -
resourcePoints
protected long resourcePoints -
since
protected long since -
tag
-
bank
protected double bank -
publicHomeCost
protected double publicHomeCost -
ranks
-
requiresInvite
protected boolean requiresInvite -
publicHome
protected boolean publicHome -
permanent
protected boolean permanent -
tax
-
book
-
-
Constructor Details
-
Group
public Group(@NonNull UUID id, @NonNull UUID owner, @NonNull String name, @Nullable String tag, @Nullable String tax, @NonNull RankMap ranks, long resourcePoints, long since, double bank, boolean publicHome, boolean permanent, boolean requiresInvite, long shieldSince, long shieldTime, @Nullable SimpleLocation nexus, @Nullable org.kingdoms.server.location.ImmutableLocation home, String flag, Color color, @NonNull Set<UUID> members, @NonNull Map<String, BookChapter> book, Map<UUID, KingdomRelation> relations, Map<UUID, KingdomRelationshipRequest> relationshipRequests, Map<KingdomRelation, Set<org.kingdoms.constants.group.model.relationships.RelationAttribute>> attributes, @NonNull Set<UUID> mails, @NonNull LinkedList<AuditLog> logs) -
Group
-
-
Method Details
-
sendMail
-
sendMail
-
log
-
getSentMails
-
getReceivedMails
-
getPublicHomeCost
public double getPublicHomeCost() -
setPublicHomeCost
public void setPublicHomeCost(double publicHomeCost) -
getTaxOrDefault
-
getTopComparator
-
getBook
-
setBook
-
placeOrMoveNexus
public abstract NexusMoveEvent placeOrMoveNexus(@NonNull org.bukkit.Location loc, @Nullable KingdomPlayer kp) -
abstractPlaceOrMoveNexus
public @NonNull NexusMoveEvent abstractPlaceOrMoveNexus(String styleName, @NonNull org.bukkit.Location toLocation, @Nullable KingdomPlayer kp, org.kingdoms.events.KingdomsEventCallerContext<NexusMoveEvent> eventContext) -
getCompressedData
- Specified by:
getCompressedDatain classKingdomsObject<UUID>
-
getDataKey
- Specified by:
getDataKeyin classKingdomsObject<UUID>
-
isHidden
public boolean isHidden() -
setHidden
-
getFlag
-
setFlag
-
getColor
-
setColor
-
toString
-
getBank
public double getBank() -
setBank
public void setBank(double bank) -
getTax
-
setTax
-
getMight
public abstract double getMight() -
hasMoney
public boolean hasMoney(double amount) -
hasResourcePoints
public boolean hasResourcePoints(long amount) -
getId
-
getName
-
setName
-
getResourcePoints
public long getResourcePoints() -
setResourcePoints
public void setResourcePoints(long resourcePoints) -
getNexus
-
setNexus
-
getHome
public @Nullable org.kingdoms.server.location.ImmutableLocation getHome()- Returns:
- an
ImmutableLocationif not null.
-
setHome
public abstract org.kingdoms.events.general.LocationChangeEvent setHome(@Nullable org.bukkit.Location home, @Nullable KingdomPlayer player) -
hasAttribute
public boolean hasAttribute(@Nullable Group other, org.kingdoms.constants.group.model.relationships.RelationAttribute attribute) -
getRelations
-
unsafeGetRelations
-
setRelations
-
getRanks
-
setRanks
-
rename
public abstract @NonNull GroupRenameEvent rename(@NonNull String str, @Nullable KingdomPlayer renamer) -
getRelationshipRequests
-
setRelationshipRequests
public void setRelationshipRequests(@NonNull Map<UUID, KingdomRelationshipRequest> relationshipRequests) -
addResourcePoints
public void addResourcePoints(long amount) -
activateShield
public void activateShield(long time) -
getOwnerId
-
activateShield
public void activateShield(long time, boolean reset) -
deactivateShield
public void deactivateShield() -
isMember
-
getMembers
-
unsafeGetMembers
-
addToResourcePoints
public @NonNull Pair<Long,List<org.bukkit.inventory.ItemStack>> addToResourcePoints(@NonNull Collection<org.bukkit.inventory.ItemStack> donations, @Nullable BiFunction<org.bukkit.inventory.ItemStack, List<org.bukkit.inventory.ItemStack>, Long> function) -
addBank
public double addBank(double amount) -
isFull
public final boolean isFull() -
getShieldTimeLeft
public long getShieldTimeLeft() -
countRelationships
-
setRelationShipWith
- Parameters:
relation- Removes the relationship entirely when null orKingdomRelation.NEUTRAL
-
hasShield
public boolean hasShield() -
isPermanent
public boolean isPermanent() -
setPermanent
public void setPermanent(boolean permanent) -
getShieldTime
public long getShieldTime() -
setShieldTime
public void setShieldTime(long shieldTime) -
getShieldSince
public long getShieldSince() -
setShieldSince
public void setShieldSince(long shieldSince) -
requiresInvite
public boolean requiresInvite() -
setRequiresInvite
public void setRequiresInvite(boolean requiresInvite) -
getSince
public long getSince() -
setSince
public void setSince(long since) -
hashCode
public int hashCode() -
equals
-
getAttributes
public @NonNull Map<KingdomRelation,Set<org.kingdoms.constants.group.model.relationships.RelationAttribute>> getAttributes() -
setAttributes
public void setAttributes(@NonNull Map<KingdomRelation, Set<org.kingdoms.constants.group.model.relationships.RelationAttribute>> attributes) -
getTag
-
setTag
-
renameTag
public org.kingdoms.events.general.GroupRenameTagEvent renameTag(@Nullable String tag, @Nullable KingdomPlayer by) -
disband
-
disband
-
calculateTax
public abstract double calculateTax() -
getMaxMembers
public abstract int getMaxMembers() -
isHomePublic
public boolean isHomePublic() -
setPublicHome
public void setPublicHome(boolean publicHome) -
getPlayerMembers
-
getOnlineMembers
-
getKingdomPlayers
-
updateRankNode
-
getMailIds
-
getMails
-
getLogs
-
getNewestLog
-