Skip to content

Commit

Permalink
Merge pull request #68
Browse files Browse the repository at this point in the history
Spigot | Bug fixes
  • Loading branch information
Syrent committed Dec 16, 2022
2 parents 1acb45b + ef63487 commit f0a7663
Show file tree
Hide file tree
Showing 4 changed files with 35 additions and 9 deletions.
Expand Up @@ -24,6 +24,7 @@ import org.bukkit.metadata.FixedMetadataValue
import org.bukkit.potion.PotionEffect
import org.bukkit.potion.PotionEffectType
import org.bukkit.scoreboard.Team
import java.lang.IllegalStateException
import java.util.UUID


Expand Down Expand Up @@ -68,7 +69,11 @@ class VanishManager(
)
)

infoData?.write(0, playerInfo)
try {
infoData?.write(0, playerInfo)
} catch (e: IllegalStateException) {
infoData?.write(1, playerInfo)
}
infoAction?.write(0, EnumWrappers.PlayerInfoAction.UPDATE_GAME_MODE)

val newTabPacket = PacketContainer(PacketType.Play.Server.PLAYER_INFO, tabPacket?.handle)
Expand Down
Expand Up @@ -58,12 +58,15 @@ class PlayerInteractListener(
val gamemode = player.gameMode
val flight = player.allowFlight
val fly = player.isFlying

player.allowFlight = true
player.isFlying = true
player.gameMode = GameMode.SPECTATOR

// TODO: Use Packet to open chest
Ruom.runSync({
player.gameMode = gamemode
player.allowFlight = flight
player.isFlying = fly
}, 1)
}, 2)
}}
Expand Up @@ -18,6 +18,7 @@ class TabCompleteListener(
@EventHandler
private fun onTabComplete(event: TabCompleteEvent) {
if (event.sender !is Player) return
if (event.completions.isEmpty()) return

event.completions.removeIf {
plugin.vanishedNames.contains(it)
Expand Down
31 changes: 24 additions & 7 deletions src/main/java/ir/syrent/velocityvanish/spigot/utils/Utils.kt
Expand Up @@ -6,23 +6,40 @@ import ir.syrent.velocityvanish.spigot.ruom.string.CharAnimation
import ir.syrent.velocityvanish.spigot.storage.Message
import ir.syrent.velocityvanish.spigot.storage.Settings
import ir.syrent.velocityvanish.utils.TextReplacement
import org.bukkit.Bukkit
import org.bukkit.entity.Player
import org.bukkit.scheduler.BukkitRunnable

object Utils {

// TODO: Crate new Actionbar class

val actionbarPlayers = mutableSetOf<Player>()
val charAnimation = CharAnimation(CharAnimation.Style.SQUARE_BLOCK)
var lastChar = ""

init {
Ruom.runSync({
lastChar = charAnimation.get().toString()
}, 0, 30)
}

fun sendReportsActionbar(player: Player) {
if (actionbarPlayers.contains(player)) return

val charAnimation = CharAnimation(CharAnimation.Style.SQUARE_BLOCK)

if (Settings.actionbar && player.hasPermission("velocityvanish.admin.actionbar")) {
Ruom.runSync({
if (!VelocityVanishSpigot.instance.vanishedNames.contains(player.name)) return@runSync
player.sendActionbar(Message.VANISH_ACTIONBAR, TextReplacement("animation", charAnimation.get().toString()))
actionbarPlayers.add(player)
}, 0, 20)
object : BukkitRunnable() {
override fun run() {
if (Bukkit.getPlayer(player.uniqueId) == null) {
cancel()
return
}

if (!VelocityVanishSpigot.instance.vanishedNames.contains(player.name)) return

player.sendActionbar(Message.VANISH_ACTIONBAR, TextReplacement("animation", lastChar))
}
}.runTaskTimer(VelocityVanishSpigot.instance, 0, 20)
}
}

Expand Down

0 comments on commit f0a7663

Please sign in to comment.