public static boolean canSpawn(CreatureSpawner spawner, Entity ent) {
		if(advanced_useOldTrackingSystem) {
			creature_Store.add(ent);
			int point = 0;
			if(spawner_Store.contains(spawner)) {
				point = spawner_Store.indexOf(spawner);
				if(entries.get(point) >= entsPerSpawner || creature_Store.size() > TotalSpawnedEnts) {
					return false;
				}
			}
			return true;
		} else {
			if(!spawner.hasMetadata("spawnedEnts")) spawner.setMetadata("spawnedEnts", new FixedMetadataValue(getThisPlugin(), 1));
			creature_Store.add(ent);
			int spawnedEnts = spawner.getMetadata("spawnedEnts").get(0).asInt();
			if(spawnedEnts >= entsPerSpawner || creature_Store.size() > TotalSpawnedEnts) {
				return false;
			} else {
				spawner.setMetadata("spawnedEnts", new FixedMetadataValue(getThisPlugin(), spawnedEnts + 1));
				spawner.getMetadata("spawnedEnts").get(0).invalidate();
				return true;
			}
		}
	}