13
0
geforkt von Mirrors/Paper

Revert "Added callback line of sight methods. Thanks xZise!"

This reverts commit 1df3a823ba477d68b359e5ac246345a05fe82ebd.

By: EvilSeph <evilseph@gmail.com>
Dieser Commit ist enthalten in:
Bukkit/Spigot 2011-10-03 15:15:50 -04:00
Ursprung 3ea8302a86
Commit c549298711
3 geänderte Dateien mit 0 neuen und 82 gelöschten Zeilen

Datei anzeigen

@ -5,7 +5,6 @@ import java.util.List;
import org.bukkit.Location; import org.bukkit.Location;
import org.bukkit.block.Block; import org.bukkit.block.Block;
import org.bukkit.util.Callback;
/** /**
* Represents a living entity, such as a monster or player * Represents a living entity, such as a monster or player
@ -48,34 +47,6 @@ public interface LivingEntity extends Entity {
*/ */
public Location getEyeLocation(); public Location getEyeLocation();
/**
* Gets all blocks along the player's line of sight
* List iterates from player's position to target inclusive
*
* @param callback Through every iteration it will call {@link Callback#call(Object)}. If set to/returns <code>null</code> only air is considered transparent.
* @param maxDistance This is the maximum distance to scan. This may be further limited by the server, but never to less than 100 blocks.
* @return List containing all blocks along the player's line of sight
*/
public List<Block> getLineOfSight(Callback<Boolean, Block> callback, int maxDistance);
/**
* Gets the block that the player has targeted
*
* @param callback Through every iteration it will call {@link Callback#call(Object)}. If set to/returns <code>null</code> only air is considered transparent.
* @param maxDistance This is the maximum distance to scan. This may be further limited by the server, but never to less than 100 blocks.
* @return Block that the player has targeted
*/
public Block getTargetBlock(Callback<Boolean, Block> callback, int maxDistance);
/**
* Gets the block that the player has targeted
*
* @param callback Through every iteration it will call {@link Callback#call(Object)}. If set to/returns <code>null</code> only air is considered transparent.
* @param maxDistance This is the maximum distance to scan. This may be further limited by the server, but never to less than 100 blocks.
* @return Block that the player has targeted
*/
public List<Block> getLastTwoTargetBlocks(Callback<Boolean, Block> callback, int maxDistance);
/** /**
* Gets all blocks along the player's line of sight * Gets all blocks along the player's line of sight
* List iterates from player's position to target inclusive * List iterates from player's position to target inclusive

Datei anzeigen

@ -1,19 +0,0 @@
package org.bukkit.util;
/**
* Primitive callback class, to allow specific callback handling. For example to determine if a block in sight is invisible.
*
* @param <Result> This is the type it will return.
* @param <Parameter> This is the type it has as parameter.
*/
public interface Callback<Result, Parameter> {
/**
* This method will be called on each step.
*
* @param parameter The parameter of this step.
* @return The result of the step.
*/
public Result call(Parameter parameter);
}

Datei anzeigen

@ -1,34 +0,0 @@
package org.bukkit.util;
import java.util.Set;
import org.bukkit.block.Block;
/**
* Default transparent call back. This class as callback acts like the normal
* line of sight methods.
*
* To implement own handler override {@link TransparentCallback#call(Block)} and
* call it via super.
*/
public class TransparentCallback implements Callback<Boolean, Block> {
private final Set<Byte> transparent;
/**
* Creates a new callback class which returns by default for every block in
* the transparent list true. Otherwise false. Could be expanded by override
* the {@link Callback#call(Block)} method.
*
* @param transparent
* The list of transparent blocks.
*/
public TransparentCallback(Set<Byte> transparent) {
this.transparent = transparent;
}
public Boolean call(Block parameter) {
return this.transparent.contains((byte) parameter.getTypeId());
}
}