<commit_before>package com.pauldavdesign.mineauz.minigames.blockRecorder;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;

import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.BlockFace;
import org.bukkit.block.BlockState;
import org.bukkit.block.Chest;
import org.bukkit.entity.Animals;
import org.bukkit.entity.Entity;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
import org.bukkit.entity.minecart.HopperMinecart;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.CreatureSpawnEvent;
import org.bukkit.event.entity.EntityChangeBlockEvent;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityExplodeEvent;
import org.bukkit.event.entity.ItemSpawnEvent;
import org.bukkit.event.inventory.InventoryMoveItemEvent;
import org.bukkit.event.inventory.InventoryPickupItemEvent;
import org.bukkit.event.vehicle.VehicleCreateEvent;
import org.bukkit.event.vehicle.VehicleDestroyEvent;
import org.bukkit.inventory.InventoryHolder;
import org.bukkit.metadata.FixedMetadataValue;

import com.pauldavdesign.mineauz.minigames.MinigamePlayer;
import com.pauldavdesign.mineauz.minigames.Minigames;
import com.pauldavdesign.mineauz.minigames.PlayerData;
import com.pauldavdesign.mineauz.minigames.menu.Callback;
import com.pauldavdesign.mineauz.minigames.minigame.Minigame;

public class RecorderData implements Listener{
	private static Minigames plugin;
	private PlayerData pdata;
	
	private Minigame minigame;
	private boolean whitelistMode = false;
	private List<Material> wbBlocks = new ArrayList<Material>();
	private boolean hasCreatedRegenBlocks = false;
	
	private Map<String, BlockData> blockdata;
	private Map<Integer, EntityData> entdata;
	
	private static List<Material> physBlocks = new ArrayList<Material>();
	
	static{
		physBlocks.add(Material.TORCH);
		physBlocks.add(Material.SIGN_POST);
		physBlocks.add(Material.WALL_SIGN);
		physBlocks.add(Material.TRIPWIRE);
		physBlocks.add(Material.RAILS);
		physBlocks.add(Material.POWERED_RAIL);
		physBlocks.add(Material.ACTIVATOR_RAIL);
		physBlocks.add(Material.REDSTONE_WIRE);
		physBlocks.add(Material.REDSTONE_TORCH_OFF);
		physBlocks.add(Material.REDSTONE_TORCH_ON);
		physBlocks.add(Material.SAPLING);
		physBlocks.add(Material.RED_ROSE);
		physBlocks.add(Material.YELLOW_FLOWER);
		physBlocks.add(Material.WOOD_PLATE);
		physBlocks.add(Material.STONE_PLATE);
		physBlocks.add(Material.GOLD_PLATE);
		physBlocks.add(Material.IRON_PLATE);
		physBlocks.add(Material.STONE_BUTTON);
		physBlocks.add(Material.WOOD_BUTTON);
		physBlocks.add(Material.LEVER);
		physBlocks.add(Material.LADDER);
		physBlocks.add(Material.IRON_DOOR);
		physBlocks.add(Material.WOODEN_DOOR);
		physBlocks.add(Material.RED_MUSHROOM);
		physBlocks.add(Material.BROWN_MUSHROOM);
		physBlocks.add(Material.DOUBLE_PLANT);
		physBlocks.add(Material.FLOWER_POT);
		physBlocks.add(Material.WATER_LILY);
		physBlocks.add(Material.TRIPWIRE_HOOK);
		physBlocks.add(Material.TRAP_DOOR);
		physBlocks.add(Material.CARPET);
		physBlocks.add(Material.LONG_GRASS);
		physBlocks.add(Material.DEAD_BUSH);
		physBlocks.add(Material.REDSTONE_COMPARATOR_ON);
		physBlocks.add(Material.REDSTONE_COMPARATOR_OFF);
		physBlocks.add(Material.DIODE_BLOCK_OFF);
		physBlocks.add(Material.DIODE_BLOCK_ON);
		physBlocks.add(Material.WATER);
		physBlocks.add(Material.LAVA);
	}
	
	public RecorderData(Minigame minigame){
		plugin = Minigames.plugin;
		pdata = plugin.pdata;
		
		this.minigame = minigame;
		blockdata = new HashMap<String, BlockData>();
		entdata = new HashMap<Integer, EntityData>();
		
		plugin.getServer().getPluginManager().registerEvents(this, plugin);
	}
	
	public void setWhitelistMode(boolean bool){
		whitelistMode = bool;
	}
	
	public boolean getWhitelistMode(){
		return whitelistMode;
	}
	
	public Callback<Boolean> getWhitelistModeCallback(){
		return new Callback<Boolean>() {

			@Override
			public void setValue(Boolean value) {
				whitelistMode = value;
			}
<commit_msg>Added some missing blocks to the physics block list<commit_after>package com.pauldavdesign.mineauz.minigames.blockRecorder;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;

import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.BlockFace;
import org.bukkit.block.BlockState;
import org.bukkit.block.Chest;
import org.bukkit.entity.Animals;
import org.bukkit.entity.Entity;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
import org.bukkit.entity.minecart.HopperMinecart;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.CreatureSpawnEvent;
import org.bukkit.event.entity.EntityChangeBlockEvent;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityExplodeEvent;
import org.bukkit.event.entity.ItemSpawnEvent;
import org.bukkit.event.inventory.InventoryMoveItemEvent;
import org.bukkit.event.inventory.InventoryPickupItemEvent;
import org.bukkit.event.vehicle.VehicleCreateEvent;
import org.bukkit.event.vehicle.VehicleDestroyEvent;
import org.bukkit.inventory.InventoryHolder;
import org.bukkit.metadata.FixedMetadataValue;

import com.pauldavdesign.mineauz.minigames.MinigamePlayer;
import com.pauldavdesign.mineauz.minigames.Minigames;
import com.pauldavdesign.mineauz.minigames.PlayerData;
import com.pauldavdesign.mineauz.minigames.menu.Callback;
import com.pauldavdesign.mineauz.minigames.minigame.Minigame;

public class RecorderData implements Listener{
	private static Minigames plugin;
	private PlayerData pdata;
	
	private Minigame minigame;
	private boolean whitelistMode = false;
	private List<Material> wbBlocks = new ArrayList<Material>();
	private boolean hasCreatedRegenBlocks = false;
	
	private Map<String, BlockData> blockdata;
	private Map<Integer, EntityData> entdata;
	
	private static List<Material> physBlocks = new ArrayList<Material>();
	
	static{
		physBlocks.add(Material.TORCH);
		physBlocks.add(Material.SIGN_POST);
		physBlocks.add(Material.WALL_SIGN);
		physBlocks.add(Material.TRIPWIRE);
		physBlocks.add(Material.RAILS);
		physBlocks.add(Material.POWERED_RAIL);
		physBlocks.add(Material.ACTIVATOR_RAIL);
		physBlocks.add(Material.REDSTONE_WIRE);
		physBlocks.add(Material.REDSTONE_TORCH_OFF);
		physBlocks.add(Material.REDSTONE_TORCH_ON);
		physBlocks.add(Material.SAPLING);
		physBlocks.add(Material.RED_ROSE);
		physBlocks.add(Material.YELLOW_FLOWER);
		physBlocks.add(Material.WOOD_PLATE);
		physBlocks.add(Material.STONE_PLATE);
		physBlocks.add(Material.GOLD_PLATE);
		physBlocks.add(Material.IRON_PLATE);
		physBlocks.add(Material.STONE_BUTTON);
		physBlocks.add(Material.WOOD_BUTTON);
		physBlocks.add(Material.LEVER);
		physBlocks.add(Material.LADDER);
		physBlocks.add(Material.IRON_DOOR);
		physBlocks.add(Material.WOODEN_DOOR);
		physBlocks.add(Material.RED_MUSHROOM);
		physBlocks.add(Material.BROWN_MUSHROOM);
		physBlocks.add(Material.DOUBLE_PLANT);
		physBlocks.add(Material.FLOWER_POT);
		physBlocks.add(Material.WATER_LILY);
		physBlocks.add(Material.TRIPWIRE_HOOK);
		physBlocks.add(Material.TRAP_DOOR);
		physBlocks.add(Material.CARPET);
		physBlocks.add(Material.LONG_GRASS);
		physBlocks.add(Material.DEAD_BUSH);
		physBlocks.add(Material.REDSTONE_COMPARATOR_ON);
		physBlocks.add(Material.REDSTONE_COMPARATOR_OFF);
		physBlocks.add(Material.DIODE_BLOCK_OFF);
		physBlocks.add(Material.DIODE_BLOCK_ON);
		physBlocks.add(Material.WATER);
		physBlocks.add(Material.LAVA);
		physBlocks.add(Material.STATIONARY_WATER);
		physBlocks.add(Material.STATIONARY_LAVA);
		physBlocks.add(Material.ANVIL);
		physBlocks.add(Material.SAND);
		physBlocks.add(Material.GRAVEL);
		physBlocks.add(Material.DRAGON_EGG);
	}
	
	public RecorderData(Minigame minigame){
		plugin = Minigames.plugin;
		pdata = plugin.pdata;
		
		this.minigame = minigame;
		blockdata = new HashMap<String, BlockData>();
		entdata = new HashMap<Integer, EntityData>();
		
		plugin.getServer().getPluginManager().registerEvents(this, plugin);
	}
	
	public void setWhitelistMode(boolean bool){
		whitelistMode = bool;
	}
	
	public boolean getWhitelistMode(){
		return whitelistMode;
	}
	
	public Callback<Boolean> getWhitelistModeCallback(){
		return new Callback<Boolean>() {

			@Override
			public void setValue(Boolean value) {
				whitelistMode = value;
			}

{'fraction_non_alphanumeric': 0.1082271147161066, 'fraction_numerical': 0.0, 'mean_word_length': 6.308213378492803, 'pattern_counts': {'":': 0, '<': 23, '<?xml version=': 0, '>': 23, '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': '1695693', 'n_tokens_mistral': 3186, 'n_tokens_neox': 2951, 'n_words': 408}