<commit_before>package com.skelril.aurora.prayer.PrayerFX;

import com.skelril.aurora.prayer.PrayerType;
import org.bukkit.Location;
import org.bukkit.entity.Fireball;
import org.bukkit.entity.Player;
import org.bukkit.event.player.PlayerInteractEvent;

/**
 * Author: Turtle9598
 */
public class ThrownFireballFX extends AbstractTriggeredPrayer {

    public ThrownFireballFX() {

        super(PlayerInteractEvent.class);
    }

    @Override
    public void trigger(Player player) {

        Location loc = player.getEyeLocation().toVector().add(player.getLocation().getDirection().multiply(2))
                .toLocation(player.getWorld(), player.getLocation().getYaw(), player.getLocation().getPitch());
        player.getWorld().spawn(loc, Fireball.class);
    }

    @Override
    public PrayerType getType() {

        return PrayerType.FIREBALL;
    }
}<commit_msg>Prevent fireball prayer from being spammed<commit_after>package com.skelril.aurora.prayer.PrayerFX;

import com.skelril.aurora.prayer.PrayerType;
import org.bukkit.Location;
import org.bukkit.entity.Fireball;
import org.bukkit.entity.Player;
import org.bukkit.event.player.PlayerInteractEvent;

/**
 * Author: Turtle9598
 */
public class ThrownFireballFX extends AbstractTriggeredPrayer {

    private long nextTime = -1;

    public ThrownFireballFX() {

        super(PlayerInteractEvent.class);
    }

    @Override
    public void trigger(Player player) {

        if (nextTime != -1 && System.currentTimeMillis() < nextTime) return;

        Location loc = player.getEyeLocation().toVector().add(player.getLocation().getDirection().multiply(2))
                .toLocation(player.getWorld(), player.getLocation().getYaw(), player.getLocation().getPitch());
        player.getWorld().spawn(loc, Fireball.class);

        nextTime = System.currentTimeMillis() + 750;
    }

    @Override
    public PrayerType getType() {

        return PrayerType.FIREBALL;
    }
}
{'fraction_non_alphanumeric': 0.12088477366255145, 'fraction_numerical': 0.007716049382716049, 'mean_word_length': 3.6980676328502415, 'pattern_counts': {'":': 0, '<': 4, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4741702', 'n_tokens_mistral': 631, 'n_tokens_neox': 593, 'n_words': 100}