From 0f196f59c6a4cb76ab8409da62ff1f35505f94a8 Mon Sep 17 00:00:00 2001 From: Dico Karssiens Date: Sun, 11 Nov 2018 14:06:45 +0000 Subject: Changes I made before breaking my local repository. Hoping this works. --- src/main/kotlin/io/dico/parcels2/Parcel.kt | 132 ++++++++++++++--------------- 1 file changed, 66 insertions(+), 66 deletions(-) (limited to 'src/main/kotlin/io/dico/parcels2/Parcel.kt') diff --git a/src/main/kotlin/io/dico/parcels2/Parcel.kt b/src/main/kotlin/io/dico/parcels2/Parcel.kt index 4f89fe0..3527e15 100644 --- a/src/main/kotlin/io/dico/parcels2/Parcel.kt +++ b/src/main/kotlin/io/dico/parcels2/Parcel.kt @@ -1,66 +1,66 @@ -package io.dico.parcels2 - -import io.dico.parcels2.util.math.Vec2i -import io.dico.parcels2.util.math.Vec3i -import org.bukkit.Location -import org.joda.time.DateTime -import java.util.UUID - -/** - * Parcel implementation of ParcelData will update the database when changes are made. - * To change the data without updating the database, defer to the data delegate instance. - * - * This should be used for example in database query callbacks. - * However, this implementation is intentionally not thread-safe. - * Therefore, database query callbacks should schedule their updates using the bukkit scheduler. - */ -interface Parcel : ParcelData, Privileges { - val id: ParcelId - val world: ParcelWorld - val pos: Vec2i - val x: Int - val z: Int - val data: ParcelDataHolder - val infoString: String - val hasBlockVisitors: Boolean - val globalPrivileges: GlobalPrivileges? - - override val keyOfOwner: PlayerProfile.Real? - get() = owner as? PlayerProfile.Real - - fun copyData(newData: ParcelDataHolder, callerIsDatabase: Boolean = false) - - fun dispose() = copyData(ParcelDataHolder()) - - fun updateOwnerSign(force: Boolean = false) - - val homeLocation: Location get() = world.blockManager.getHomeLocation(id) -} - - - -interface ParcelData : RawPrivileges { - var owner: PlayerProfile? - val lastClaimTime: DateTime? - var isOwnerSignOutdated: Boolean - var interactableConfig: InteractableConfiguration - - //fun canBuild(player: OfflinePlayer, checkAdmin: Boolean = true, checkGlobal: Boolean = true): Boolean - - fun isOwner(uuid: UUID): Boolean { - return owner?.uuid == uuid - } - - fun isOwner(profile: PlayerProfile?): Boolean { - return owner == profile - } -} - -class ParcelDataHolder(addedMap: MutablePrivilegeMap = mutableMapOf()) - : ParcelData, PrivilegesHolder(addedMap) { - override var owner: PlayerProfile? = null - override var lastClaimTime: DateTime? = null - override var isOwnerSignOutdated = false - override var interactableConfig: InteractableConfiguration = BitmaskInteractableConfiguration() -} - +package io.dico.parcels2 + +import io.dico.parcels2.util.math.Vec2i +import io.dico.parcels2.util.math.Vec3i +import org.bukkit.Location +import org.joda.time.DateTime +import java.util.UUID + +/** + * Parcel implementation of ParcelData will update the database when changes are made. + * To change the data without updating the database, defer to the data delegate instance. + * + * This should be used for example in database query callbacks. + * However, this implementation is intentionally not thread-safe. + * Therefore, database query callbacks should schedule their updates using the bukkit scheduler. + */ +interface Parcel : ParcelData, Privileges { + val id: ParcelId + val world: ParcelWorld + val pos: Vec2i + val x: Int + val z: Int + val data: ParcelDataHolder + val infoString: String + val hasBlockVisitors: Boolean + val globalPrivileges: GlobalPrivileges? + + override val keyOfOwner: PlayerProfile.Real? + get() = owner as? PlayerProfile.Real + + fun copyData(newData: ParcelDataHolder, callerIsDatabase: Boolean = false) + + fun dispose() = copyData(ParcelDataHolder()) + + fun updateOwnerSign(force: Boolean = false) + + val homeLocation: Location get() = world.blockManager.getHomeLocation(id) +} + + + +interface ParcelData : RawPrivileges { + var owner: PlayerProfile? + val lastClaimTime: DateTime? + var isOwnerSignOutdated: Boolean + var interactableConfig: InteractableConfiguration + + //fun canBuild(player: OfflinePlayer, checkAdmin: Boolean = true, checkGlobal: Boolean = true): Boolean + + fun isOwner(uuid: UUID): Boolean { + return owner?.uuid == uuid + } + + fun isOwner(profile: PlayerProfile?): Boolean { + return owner == profile + } +} + +class ParcelDataHolder(addedMap: MutablePrivilegeMap = mutableMapOf()) + : ParcelData, PrivilegesHolder(addedMap) { + override var owner: PlayerProfile? = null + override var lastClaimTime: DateTime? = null + override var isOwnerSignOutdated = false + override var interactableConfig: InteractableConfiguration = BitmaskInteractableConfiguration() +} + -- cgit v1.2.3