package cc.maxmc.blastingcrisis.game import cc.maxmc.blastingcrisis.configuration.GlobalSettings import cc.maxmc.blastingcrisis.misc.debug import cc.maxmc.blastingcrisis.misc.pluginScope import cc.maxmc.blastingcrisis.misc.toEntityLocation import kotlinx.coroutines.Job import kotlinx.coroutines.delay import kotlinx.coroutines.launch import org.bukkit.Bukkit import org.bukkit.Location import org.bukkit.Material import org.bukkit.inventory.ItemStack import org.bukkit.util.Vector import taboolib.platform.BukkitPlugin class GameItemGenerator(val type: Material) { fun generate(location: Location): Job = pluginScope.launch { while (true) { Bukkit.getScheduler().runTask(BukkitPlugin.getInstance()) { val item = location.world.dropItem(location.toEntityLocation(), ItemStack(type)) item.teleport(location.toEntityLocation()) item.velocity = Vector(0.0, 0.2, 0.0) debug("Generate Item at ${location.toVector()}") } delay(GlobalSettings.itemGenDelay * 50) } } }