when client ticks faster than server, don't die horribly
since client either way handles teleportation logic by itself we just take care of discharging battery
This commit is contained in:
parent
7a0d7d668a
commit
790fdde0cb
@ -294,15 +294,24 @@ class EnderTeleporterFeature(capability: MatteryPlayerCapability) : AndroidActiv
|
||||
}
|
||||
|
||||
override fun activate(isClient: Boolean): Boolean {
|
||||
if (!canUse()) {
|
||||
val canUse = canUse()
|
||||
|
||||
if (!canUse && isClient) {
|
||||
return false
|
||||
}
|
||||
|
||||
if (!isClient) {
|
||||
cooldown = ServerConfig.EnderTeleporter.COOLDOWN
|
||||
|
||||
if (!canUse) {
|
||||
android.androidEnergy.extractEnergyInnerExact(ServerConfig.EnderTeleporter.ENERGY_COST, false)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
val (blockPos) = trace()
|
||||
blockPos ?: return false
|
||||
|
||||
cooldown = ServerConfig.EnderTeleporter.COOLDOWN
|
||||
|
||||
val server = ply.server
|
||||
|
||||
if (server != null)
|
||||
|
Loading…
Reference in New Issue
Block a user