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
import me.fivevl.troll.Utils
import me.fivevl.troll.Trolls
import me.fivevl.troll.gui.TrollGui
import org.bukkit.entity.EntityType
import org.bukkit.entity.Player
import org.bukkit.event.EventHandler
import org.bukkit.event.Listener
import org.bukkit.event.inventory.InventoryClickEvent
import kotlin.random.Random
class InvClickListener : Listener {
@EventHandler
@ -16,34 +14,13 @@ class InvClickListener : Listener {
if (TrollGui.inTrollGui.containsKey(p)) {
e.isCancelled = true
val ps = TrollGui.inTrollGui[p]!!
if (e.rawSlot == 0) yeetPlayer(p, ps)
if (e.rawSlot == 1) pigBomb(p, ps)
if (e.rawSlot == 2) fakeOp(p, ps)
}
}
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)
when (e.rawSlot) {
0 -> Trolls.yeetPlayer(p, ps)
1 -> Trolls.pigBomb(p, ps)
2 -> Trolls.fakeOp(p, ps)
}
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()
}
}