Skip to content

Commit d326475

Browse files
committed
refactor(World): replace identifier with name for world references
1 parent 0993323 commit d326475

8 files changed

Lines changed: 18 additions & 27 deletions

File tree

engine/engine-core/src/main/kotlin/com/typewritermc/core/utils/point/World.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.typewritermc.core.utils.point
22

33
data class World(
4-
val identifier: String,
4+
val name: String,
55
) {
66
companion object {
77
val Empty = World("")

engine/engine-paper/src/main/kotlin/com/typewritermc/engine/paper/entry/entity/PositionProperty.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ data class PositionProperty(
1414
override val pitch: Float,
1515
) : EntityProperty, Point<PositionProperty>, Rotatable<PositionProperty>, WorldHolder<PositionProperty> {
1616
fun distanceSqrt(other: org.bukkit.Location): Double? {
17-
if (world.identifier != other.world.uid.toString()) return null
17+
if (world.name != other.world.name) return null
1818
return distanceSqrt(other.toPosition())
1919
}
2020

@@ -70,7 +70,7 @@ data class PositionProperty(
7070
}
7171

7272
fun org.bukkit.Location.toProperty(): PositionProperty {
73-
return PositionProperty(World(world.uid.toString()), x, y, z, yaw, pitch)
73+
return PositionProperty(World(world.name), x, y, z, yaw, pitch)
7474
}
7575

7676
fun Position.toProperty(): PositionProperty {

engine/engine-paper/src/main/kotlin/com/typewritermc/engine/paper/loader/serializers/WorldSerializer.kt

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,32 +9,25 @@ import com.typewritermc.core.utils.point.World
99
import com.typewritermc.engine.paper.utils.logErrorIfNull
1010
import com.typewritermc.engine.paper.utils.server
1111
import java.lang.reflect.Type
12-
import java.util.*
1312

1413
class WorldSerializer : DataSerializer<World> {
1514
override val type: Type = World::class.java
1615

1716
override fun serialize(src: World, typeOfSrc: Type, context: JsonSerializationContext): JsonElement {
18-
return JsonPrimitive(src.identifier)
17+
return JsonPrimitive(src.name)
1918
}
2019

2120
override fun deserialize(json: JsonElement, typeOfT: Type, context: JsonDeserializationContext): World {
2221
val world = json.asString
2322

24-
val uuid = try {
25-
UUID.fromString(world)
26-
} catch (e: IllegalArgumentException) {
27-
null
28-
}
29-
3023
val bukkitWorld =
31-
uuid?.let { server.getWorld(it) }
24+
world?.let { server.getWorld(it) }
3225
?: server.getWorld(world)
3326
?: server.worlds.firstOrNull { it.name.equals(world, true) }
3427
.logErrorIfNull("No world found for identifier '$world', possible worlds: ${server.worlds.map { it.name }}. Picking ${server.worlds.firstOrNull()?.name} as default.")
3528
?: server.worlds.firstOrNull()
3629
?: throw IllegalArgumentException("Could not find world '$world' for location, and no default world available.")
3730

38-
return World(bukkitWorld.uid.toString())
31+
return World(bukkitWorld.name)
3932
}
4033
}

engine/engine-paper/src/main/kotlin/com/typewritermc/engine/paper/utils/Point.kt

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import com.typewritermc.engine.paper.extensions.packetevents.sendPacketTo
1414
import io.github.retrooper.packetevents.util.SpigotConversionUtil
1515
import org.bukkit.Color
1616
import org.bukkit.entity.Player
17-
import java.util.*
1817
import kotlin.math.cos
1918
import kotlin.math.sin
2019
import kotlin.math.sqrt
@@ -28,10 +27,10 @@ fun Point<*>.toPacketVector3d() = Vector3d(x, y, z)
2827
fun Point<*>.toPacketVector3i() = Vector3i(blockX, blockY, blockZ)
2928
fun Point<*>.toBukkitVector(): org.bukkit.util.Vector = org.bukkit.util.Vector(x, y, z)
3029

31-
fun World.toBukkitWorld(): org.bukkit.World = server.getWorld(UUID.fromString(identifier))
32-
?: throw IllegalArgumentException("Could not find world '$identifier' for location, and no default world available.")
30+
fun World.toBukkitWorld(): org.bukkit.World = server.getWorld(name)
31+
?: throw IllegalArgumentException("Could not find world '$name' for location, and no default world available.")
3332

34-
fun org.bukkit.World.toWorld(): World = World(uid.toString())
33+
fun org.bukkit.World.toWorld(): World = World(name)
3534

3635
fun <RWP> RWP.toBukkitLocation(): org.bukkit.Location where RWP : Point<RWP>, RWP : Rotatable<RWP>, RWP : WorldHolder<RWP> {
3736
return org.bukkit.Location(world.toBukkitWorld(), x, y, z, yaw, pitch)
@@ -49,7 +48,7 @@ fun <RP> RP.toPacketLocation(): Location where RP : Point<RP>, RP : Rotatable<RP
4948
return Location(x, y, z, yaw, pitch)
5049
}
5150

52-
fun org.bukkit.Location.toPosition(): Position = Position(World(world.uid.toString()), x, y, z, yaw, pitch)
51+
fun org.bukkit.Location.toPosition(): Position = Position(World(world.name), x, y, z, yaw, pitch)
5352
fun org.bukkit.Location.toPacketLocation(): Location = SpigotConversionUtil.fromBukkitLocation(this)
5453
fun org.bukkit.Location.toCoordinate(): Coordinate = Coordinate(x, y, z, yaw, pitch)
5554

extensions/BasicExtension/src/main/kotlin/com/typewritermc/basic/entries/cinematic/CameraCinematicEntry.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -396,8 +396,8 @@ private class DisplayCameraAction(
396396
}
397397

398398
override suspend fun switchSegment(newSegment: CameraSegment) {
399-
val oldWorld = path.first().position.world.identifier
400-
val newWorld = newSegment.path.first().location.get(player).world.identifier
399+
val oldWorld = path.first().position.world.name
400+
val newWorld = newSegment.path.first().location.get(player).world.name
401401

402402
setupPath(newSegment)
403403
if (oldWorld == newWorld) {

extensions/EntityExtension/src/main/kotlin/com/typewritermc/entity/entries/activity/LookCloseActivity.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ class LookCloseActivity(
133133
val shouldRefresh: Boolean
134134
get() {
135135
if (!player.isValid) return true
136-
if (player.location.world.uid.toString() != this@Target.position.world.identifier) return true
136+
if (player.location.world.name != this@Target.position.world.name) return true
137137
if (this@Target.position.distanceSquared(player.location.toProperty()) > playerLookCloseRange * playerLookCloseRange) return true
138138
return System.currentTimeMillis() - lookupTime > 1000
139139
}

extensions/RoadNetworkExtension/src/main/kotlin/com/typewritermc/roadnetwork/pathfinding/PFInstanceSpace.kt

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ import org.bukkit.event.EventPriority
2222
import org.bukkit.event.Listener
2323
import org.bukkit.event.block.*
2424
import org.koin.java.KoinJavaComponent
25-
import java.util.*
2625
import java.util.concurrent.ConcurrentHashMap
2726

2827
class PFInstanceSpace(val world: com.typewritermc.core.utils.point.World) : IInstanceSpace {
@@ -82,15 +81,15 @@ class PFInstanceSpace(val world: com.typewritermc.core.utils.point.World) : IIns
8281

8382
@Singleton
8483
class InstanceSpaceCache : Initializable, Listener {
85-
private val cache = ConcurrentHashMap<UUID, PFInstanceSpace>()
84+
private val cache = ConcurrentHashMap<String, PFInstanceSpace>()
8685
private var job: Job? = null
8786

8887
fun instanceSpace(world: World): PFInstanceSpace {
89-
return cache.computeIfAbsent(world.uid) { PFInstanceSpace(world.toWorld()) }
88+
return cache.computeIfAbsent(world.name) { PFInstanceSpace(world.toWorld()) }
9089
}
9190

9291
fun instanceSpace(world: com.typewritermc.core.utils.point.World): PFInstanceSpace {
93-
return cache.computeIfAbsent(UUID.fromString(world.identifier)) { PFInstanceSpace(world) }
92+
return cache.computeIfAbsent(world.name) { PFInstanceSpace(world) }
9493
}
9594

9695
override suspend fun initialize() {
@@ -133,7 +132,7 @@ class InstanceSpaceCache : Initializable, Listener {
133132

134133
private fun onBlockEvent(event: BlockEvent) {
135134
val block = event.block
136-
cache[block.world.uid]?.evict(block.x shr 4, block.z shr 4)
135+
cache[block.world.name]?.evict(block.x shr 4, block.z shr 4)
137136
}
138137

139138
override suspend fun shutdown() {

version.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
0.9.0
1+
0.9.0-beta-170

0 commit comments

Comments
 (0)