org.bukkit.util.CachedServerIcon#ch.njol.util.coll.CollectionUtils源码实例Demo

下面列出了org.bukkit.util.CachedServerIcon#ch.njol.util.coll.CollectionUtils 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: Skript   文件: ExprColorOf.java
@Override
@Nullable
public Class<?>[] acceptChange(ChangeMode mode) {
	Class<?> returnType = getExpr().getReturnType();
	
	if (FireworkEffect.class.isAssignableFrom(returnType))
		return CollectionUtils.array(Color[].class);
	
	if (mode != ChangeMode.SET && !getExpr().isSingle())
		return null;
	
	if (Entity.class.isAssignableFrom(returnType))
		return CollectionUtils.array(Color.class);
	else if (Block.class.isAssignableFrom(returnType))
		return CollectionUtils.array(Color.class);
	if (ItemType.class.isAssignableFrom(returnType))
		return CollectionUtils.array(Color.class);
	return null;
}
 
源代码2 项目: skUtilities   文件: SExprYaml.java
@SuppressWarnings("unchecked")
@Override
public Class<?>[] acceptChange(final Changer.ChangeMode mode) {
  if (mode == Changer.ChangeMode.DELETE) {
    return CollectionUtils.array(Object.class);
  }
  switch (ty) {
    case 0: {
      if (mode == Changer.ChangeMode.SET) {
        return CollectionUtils.array(Object.class);
      }
      break;
    }
    case 1:
    case 2:
    case 3:
      if (mode == Changer.ChangeMode.ADD || mode == Changer.ChangeMode.REMOVE) {
        return CollectionUtils.array(Object.class);
      }
      break;
  }
  return null;
}
 
源代码3 项目: Skript   文件: ExprMaxPlayers.java
@Override
@Nullable
public Class<?>[] acceptChange(ChangeMode mode) {
	if (!isReal) {
		if (ScriptLoader.hasDelayBefore.isTrue()) {
			Skript.error("Can't change the fake max players count anymore after the server list ping event has already passed");
			return null;
		}
		switch (mode) {
			case SET:
			case ADD:
			case REMOVE:
			case DELETE:
			case RESET:
				return CollectionUtils.array(Number.class);
		}
	}
	return null;
}
 
源代码4 项目: Skript   文件: ExprName.java
@Override
@Nullable
public Class<?>[] acceptChange(ChangeMode mode) {
	if (mode == ChangeMode.DELETE && (type.acceptChange & ~PLAYER) != 0 || mode == ChangeMode.RESET)
		return new Class[0];
	if (mode != ChangeMode.SET)
		return null;
	if ((type.acceptChange & PLAYER) != 0 && Player.class.isAssignableFrom(getExpr().getReturnType())) {
		changeType = PLAYER;
	} else if ((type.acceptChange & INVENTORY) != 0 && Inventory.class.isAssignableFrom(getExpr().getReturnType())) {
		changeType = INVENTORY;
	} else if ((type.acceptChange & ITEM) != 0 && (getExpr().isSingle() && ChangerUtils.acceptsChange(getExpr(), ChangeMode.SET, ItemStack.class, ItemType.class) || Slot.class.isAssignableFrom(getExpr().getReturnType()))) {
		changeType = ITEM;
	} else if ((type.acceptChange & ENTITY) != 0 && Entity.class.isAssignableFrom(getExpr().getReturnType())) {
		if (type == NameType.NAME && Player.class.isAssignableFrom(getExpr().getReturnType())) {
			Skript.error("Can't change the Minecraft name of a player. Change the 'display name' or 'tab list name' instead.");
			return null;
		}
		changeType = ENTITY;
	}
	return changeType == 0 ? null : CollectionUtils.array(String.class);
}
 
源代码5 项目: Skript   文件: ExprMOTD.java
@Override
@Nullable
public Class<?>[] acceptChange(ChangeMode mode) {
	if (!isDefault) {
		if (ScriptLoader.hasDelayBefore.isTrue()) {
			Skript.error("Can't change the MOTD anymore after the server list ping event has already passed");
			return null;
		}
		switch (mode) {
			case SET:
			case DELETE:
			case RESET:
				return CollectionUtils.array(String.class);
		}
	}
	return null;
}
 
源代码6 项目: Skript   文件: ExprTime.java
@Override
@Nullable
public Class<?>[] acceptChange(final ChangeMode mode) {
	switch (mode) {
		case ADD:
		case REMOVE:
			return CollectionUtils.array(Timespan.class);
		case SET:
			return CollectionUtils.array(Time.class, Timeperiod.class);
		case DELETE:
		case REMOVE_ALL:
		case RESET:
		default:
			return null;
	}
}
 
源代码7 项目: skRayFall   文件: ExprRayfallOffhand.java
@SuppressWarnings("unchecked")
@Override
@Nullable
public Class<?>[] acceptChange(final ChangeMode mode) {
    switch (mode) {
        case SET:
            return CollectionUtils.array(ItemStack.class);
        case ADD:
        case REMOVE:
        case DELETE:
        case REMOVE_ALL:
        case RESET:
        default:
            return null;
    }
}
 
源代码8 项目: Skript   文件: ExprHoverList.java
@Override
@Nullable
public Class<?>[] acceptChange(ChangeMode mode) {
	if (ScriptLoader.hasDelayBefore.isTrue()) {
		Skript.error("Can't change the hover list anymore after the server list ping event has already passed");
		return null;
	}
	switch (mode) {
		case SET:
		case ADD:
		case REMOVE:
		case DELETE:
		case RESET:
			return CollectionUtils.array(String[].class, Player[].class);
	}
	return null;
}
 
源代码9 项目: Skript   文件: ExprChestInventory.java
@Override
protected Inventory[] get(Event e) {
    String name = this.name != null ? this.name.getSingle(e) : "Chest";
    Number rows = this.rows != null ? this.rows.getSingle(e) : 3;

    // Shouldn't be null at this point, but empty variables are a thing
    rows = rows == null ? 3 : rows;
    name = name == null ? "Chest" : name;

    int size = rows.intValue() * 9;
    if (size % 9 != 0) {
        size = 27;
    }
    
    // Sanitize inventory size
    if (size < 0) // Negative sizes go and crash stuff deep in NMS code
    	size = 0;
    if (size > 255) // Too big values cause visual weirdness
    	size = 255 * 9; // Plus, REALLY big values will HANG the server
    return CollectionUtils.array(Bukkit.createInventory(null, size, name));
}
 
源代码10 项目: Skript   文件: ExprOnlinePlayersCount.java
@Override
@Nullable
public Class<?>[] acceptChange(ChangeMode mode) {
	if (!isReal) {
		if (ScriptLoader.hasDelayBefore.isTrue()) {
			Skript.error("Can't change the shown online players count anymore after the server list ping event has already passed");
			return null;
		}
		switch (mode) {
			case SET:
			case ADD:
			case REMOVE:
			case DELETE:
			case RESET:
				return CollectionUtils.array(Number.class);
		}
	}
	return null;
}
 
源代码11 项目: Skript   文件: SheepData.java
@SuppressWarnings("null")
@Override
protected boolean init(@Nullable Class<? extends Sheep> c, @Nullable Sheep e) {
	if (e != null) {
		sheared = e.isSheared() ? 1 : -1;
		colors = CollectionUtils.array(SkriptColor.fromDyeColor(e.getColor()));
	}
	return true;
}
 
源代码12 项目: Skript   文件: ConvertedLiteral.java
@SuppressWarnings("null")
@Override
public T getSingle() {
	if (getAnd() && data.length > 1)
		throw new SkriptAPIException("Call to getSingle on a non-single expression");
	return CollectionUtils.getRandom(data);
}
 
源代码13 项目: Skript   文件: ExprScoreboardTags.java
@Override
@Nullable
public Class<?>[] acceptChange(ChangeMode mode) {
	switch (mode) {
		case SET:
		case ADD:
		case REMOVE:
		case DELETE:
		case RESET:
			return CollectionUtils.array(String[].class);
		default:
			return null;
	}
}
 
源代码14 项目: Skript   文件: ExprProtocolVersion.java
@Override
@Nullable
public Class<?>[] acceptChange(ChangeMode mode) {
	if (ScriptLoader.hasDelayBefore.isTrue()) {
		Skript.error("Can't change the protocol version anymore after the server list ping event has already passed");
		return null;
	}
	if (mode == ChangeMode.SET)
		return CollectionUtils.array(Number.class);
	return null;
}
 
源代码15 项目: skUtilities   文件: SExprEditLine.java
@SuppressWarnings("unchecked")
@Override
public Class<?>[] acceptChange(final Changer.ChangeMode mode) {
  if (mode == Changer.ChangeMode.SET) {
    return CollectionUtils.array(String[].class);
  }
  return null;
}
 
源代码16 项目: Skript   文件: ExprMessage.java
@SuppressWarnings("unchecked")
@Override
@Nullable
public Class<?>[] acceptChange(final ChangeMode mode) {
	if (mode == ChangeMode.SET)
		return CollectionUtils.array(String.class);
	return null;
}
 
源代码17 项目: Skript   文件: ExprVectorCrossProduct.java
@Override
@SuppressWarnings("null")
protected Vector[] get(Event e) {
	Vector v1 = first.getSingle(e);
	Vector v2 = second.getSingle(e);
	if (v1 == null || v2 == null)
		return null;
	return CollectionUtils.array(v1.clone().crossProduct(v2));
}
 
源代码18 项目: Skript   文件: ExprFacing.java
@Override
@Nullable
public Class<?>[] acceptChange(final ChangeMode mode) {
	if (!Block.class.isAssignableFrom(getExpr().getReturnType()))
		return null;
	if (mode == ChangeMode.SET)
		return CollectionUtils.array(Direction.class);
	return null;
}
 
源代码19 项目: Skript   文件: ExprWorld.java
@Override
@Nullable
public Class<?>[] acceptChange(final Changer.ChangeMode mode) {
	if (mode == ChangeMode.SET)
		return CollectionUtils.array(World.class);
	return null;
}
 
源代码20 项目: Skript   文件: ExprSpawnerType.java
@Nullable
@Override
public Class<?>[] acceptChange(Changer.ChangeMode mode) {
	if (mode == ChangeMode.SET || mode == ChangeMode.RESET) 
		return CollectionUtils.array(EntityData.class);
	return null;
}
 
源代码21 项目: Skript   文件: ExprSpectatorTarget.java
@Nullable
@Override
public Class<?>[] acceptChange(Changer.ChangeMode mode) {
	if (mode == Changer.ChangeMode.SET
			|| mode == Changer.ChangeMode.RESET
			|| mode == Changer.ChangeMode.DELETE) {
		return CollectionUtils.array(Entity.class);
	}
	return null;
}
 
源代码22 项目: Skript   文件: ExprMOTD.java
@Override
@Nullable
public String[] get(Event e) {
	if (isDefault)
		return CollectionUtils.array(Bukkit.getMotd());
	else
		return CollectionUtils.array(((ServerListPingEvent) e).getMotd());
}
 
源代码23 项目: Skript   文件: ExprVelocity.java
@Override
@SuppressWarnings("null")
public Class<?>[] acceptChange(ChangeMode mode) {
	if ((mode == ChangeMode.ADD || mode == ChangeMode.REMOVE || mode == ChangeMode.SET || mode == ChangeMode.DELETE || mode == ChangeMode.RESET))
		return CollectionUtils.array(Vector.class);
	return null;
}
 
源代码24 项目: Skript   文件: ExprEnchantmentLevel.java
@Override
protected Integer[] get(final Event e) {
	Enchantment[] enchantments = enchants.getArray(e);
	return Stream.of(items.getArray(e))
		.map(ItemType::getEnchantmentTypes)
		.flatMap(Stream::of)
		.filter(enchantment -> CollectionUtils.contains(enchantments, enchantment.getType()))
		.map(EnchantmentType::getLevel)
		.toArray(Integer[]::new);
}
 
源代码25 项目: Skript   文件: ExprEnchantmentLevel.java
@Nullable
@Override
public Class<?>[] acceptChange(ChangeMode mode) {
	switch (mode) {
		case SET:
		case REMOVE:
		case ADD:
			return CollectionUtils.array(Number.class);
		default:
			return null;
	}
}
 
源代码26 项目: Skript   文件: ExprVectorDotProduct.java
@Override
@SuppressWarnings("null")
protected Double[] get(Event e) {
	Vector v1 = first.getSingle(e);
	Vector v2 = second.getSingle(e);
	if (v1 == null || v2 == null)
		return null;
	return CollectionUtils.array(v1.getX() * v2.getX() + v1.getY() * v2.getY() + v1.getZ() * v2.getZ());
}
 
源代码27 项目: Skript   文件: ExprPlayerlistHeaderFooter.java
@Override
@Nullable
public Class<?>[] acceptChange(Changer.ChangeMode mode) {
	switch (mode) {
		case SET:
		case DELETE:
		case RESET:
			return CollectionUtils.array(String.class);
	}
	return null;
}
 
源代码28 项目: Skript   文件: ExprVectorCylindrical.java
@Override
@SuppressWarnings("null")
protected Vector[] get(Event e) {
	Number r = radius.getSingle(e);
	Number y = yaw.getSingle(e);
	Number h = height.getSingle(e);
	if (r == null || y == null || h == null)
		return null;
	return CollectionUtils.array(VectorMath.fromCylindricalCoordinates(r.doubleValue(), VectorMath.fromSkriptYaw(y.floatValue()), h.doubleValue()));
}
 
源代码29 项目: Skript   文件: ExprWeather.java
@Override
@Nullable
public Class<?>[] acceptChange(final ChangeMode mode) {
	if (mode == ChangeMode.DELETE || mode == ChangeMode.SET)
		return CollectionUtils.array(WeatherType.class);
	return null;
}
 
源代码30 项目: Skript   文件: ExprHealth.java
@SuppressWarnings("unchecked")
@Override
@Nullable
public Class<?>[] acceptChange(final ChangeMode mode) {
	if (mode == ChangeMode.REMOVE_ALL)
		return null;
	return CollectionUtils.array(Number.class);
}