Cleaned up some code and added messages to trolls

This commit is contained in:
5vl 2022-05-30 20:47:16 +02:00
parent ef729c29b7
commit ef20c0c3e7
No known key found for this signature in database
GPG Key ID: DA8938F22548E4D5
2 changed files with 37 additions and 31 deletions

View File

@ -0,0 +1,29 @@
package me.fivevl.troll
import org.bukkit.entity.EntityType
import org.bukkit.entity.Player
import kotlin.random.Random
object Trolls {
fun yeetPlayer(p: Player, ps: Player) {
val loc = ps.location
loc.yaw = Random.nextInt(360).toFloat()
loc.pitch = Random.nextInt(-50, -20).toFloat()
ps.velocity = loc.direction.multiply(3)
p.sendMessage(Utils.color("<color:#4747ff>${ps.name} has been yeeted!</color>"))
}
fun pigBomb(p: Player, ps: Player) {
val loc = ps.location
loc.add(0.0, 2.0, 0.0)
for (i in 0..10) {
loc.world.spawnEntity(loc, EntityType.PIG)
}
p.sendMessage(Utils.color("<color:#4747ff>A pig bomb has been thrown on ${ps.name}!</color>"))
}
fun fakeOp(p: Player, ps: Player) {
ps.sendMessage(Utils.color("<i><gray>[Server: Made ${ps.name} a server operator]</gray></i>"))
p.sendMessage(Utils.color("<color:#4747ff>${ps.name} has been fake opped!</color>"))
}
}

View File

@ -1,13 +1,11 @@
package me.fivevl.troll.listeners package me.fivevl.troll.listeners
import me.fivevl.troll.Utils import me.fivevl.troll.Trolls
import me.fivevl.troll.gui.TrollGui import me.fivevl.troll.gui.TrollGui
import org.bukkit.entity.EntityType
import org.bukkit.entity.Player import org.bukkit.entity.Player
import org.bukkit.event.EventHandler import org.bukkit.event.EventHandler
import org.bukkit.event.Listener import org.bukkit.event.Listener
import org.bukkit.event.inventory.InventoryClickEvent import org.bukkit.event.inventory.InventoryClickEvent
import kotlin.random.Random
class InvClickListener : Listener { class InvClickListener : Listener {
@EventHandler @EventHandler
@ -16,34 +14,13 @@ class InvClickListener : Listener {
if (TrollGui.inTrollGui.containsKey(p)) { if (TrollGui.inTrollGui.containsKey(p)) {
e.isCancelled = true e.isCancelled = true
val ps = TrollGui.inTrollGui[p]!! val ps = TrollGui.inTrollGui[p]!!
if (e.rawSlot == 0) yeetPlayer(p, ps) when (e.rawSlot) {
if (e.rawSlot == 1) pigBomb(p, ps) 0 -> Trolls.yeetPlayer(p, ps)
if (e.rawSlot == 2) fakeOp(p, ps) 1 -> Trolls.pigBomb(p, ps)
2 -> Trolls.fakeOp(p, ps)
}
TrollGui.inTrollGui.remove(p)
p.closeInventory()
} }
} }
private fun yeetPlayer(p: Player, ps: Player) {
val loc = ps.location
loc.yaw = Random.nextInt(360).toFloat()
loc.pitch = Random.nextInt(-50, -20).toFloat()
ps.velocity = loc.direction.multiply(3)
TrollGui.inTrollGui.remove(p)
p.closeInventory()
}
private fun pigBomb(p: Player, ps: Player) {
val loc = ps.location
loc.add(0.0, 2.0, 0.0)
for (i in 0..10) {
loc.world.spawnEntity(loc, EntityType.PIG)
}
TrollGui.inTrollGui.remove(p)
p.closeInventory()
}
private fun fakeOp(p: Player, ps: Player) {
ps.sendMessage(Utils.color("<i><gray>[Server: Made ${ps.name} a server operator]</gray></i>"))
TrollGui.inTrollGui.remove(p)
p.closeInventory()
}
} }