SPIGOT-2206: playEffect doesn't accept sub classes of the expected data type

This commit is contained in:
md_5 2016-04-26 09:35:17 +10:00
parent 4377b86b29
commit 935f18b476
2 changed files with 2 additions and 2 deletions

View File

@ -863,7 +863,7 @@ public class CraftWorld implements World {
public <T> void playEffect(Location loc, Effect effect, T data, int radius) { public <T> void playEffect(Location loc, Effect effect, T data, int radius) {
if (data != null) { if (data != null) {
Validate.isTrue(data.getClass().isAssignableFrom(effect.getData()), "Wrong kind of data for this effect!"); Validate.isTrue(effect.getData() != null && effect.getData().isAssignableFrom(data.getClass()), "Wrong kind of data for this effect!");
} else { } else {
Validate.isTrue(effect.getData() == null, "Wrong kind of data for this effect!"); Validate.isTrue(effect.getData() == null, "Wrong kind of data for this effect!");
} }

View File

@ -322,7 +322,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@Override @Override
public <T> void playEffect(Location loc, Effect effect, T data) { public <T> void playEffect(Location loc, Effect effect, T data) {
if (data != null) { if (data != null) {
Validate.isTrue(data.getClass().isAssignableFrom(effect.getData()), "Wrong kind of data for this effect!"); Validate.isTrue(effect.getData() != null && effect.getData().isAssignableFrom(data.getClass()), "Wrong kind of data for this effect!");
} else { } else {
Validate.isTrue(effect.getData() == null, "Wrong kind of data for this effect!"); Validate.isTrue(effect.getData() == null, "Wrong kind of data for this effect!");
} }