当前位置: 首页>>代码示例>>Java>>正文


Java Skript.warning方法代码示例

本文整理汇总了Java中ch.njol.skript.Skript.warning方法的典型用法代码示例。如果您正苦于以下问题:Java Skript.warning方法的具体用法?Java Skript.warning怎么用?Java Skript.warning使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ch.njol.skript.Skript的用法示例。


在下文中一共展示了Skript.warning方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: execute

import ch.njol.skript.Skript; //导入方法依赖的package包/类
@Override
protected void execute(Event e) {
  String cls = className.getSingle(e);

  if (cls == null) {
    return;
  }

  JavaType javaType;
  try {
    javaType = new JavaType(LibraryLoader.getClassLoader().loadClass(cls));
  } catch (ClassNotFoundException ex) {
    Skript.warning(cls + " refers to a non-existent class.");
    return;
  }

  if (var == null) {
    Variables.setVariable(javaType.getJavaClass().getSimpleName().toLowerCase(), javaType, e,
        false);
  } else {
    var.change(e, new Object[]{javaType}, Changer.ChangeMode.SET);
  }
}
 
开发者ID:btk5h,项目名称:skript-mirror,代码行数:24,代码来源:EffImport.java

示例2: walk

import ch.njol.skript.Skript; //导入方法依赖的package包/类
@Override
protected TriggerItem walk(Event e) {
  if (e instanceof CustomEffect.EffectEvent) {
    if (((CustomEffect.EffectEvent) e).isSync()) {
      Skript.warning("Synchronous events should not be continued. " +
          "Call 'delay effect' to delay the effect's execution.");
    } else {
      TriggerItem.walk(((CustomEffect.EffectEvent) e).getNext(),
          ((CustomEffect.EffectEvent) e).getDirectEvent());
    }
  } else if (e instanceof CustomExpression.ExpressionGetEvent) {
    if (objects != null) {
      ((CustomExpression.ExpressionGetEvent) e).setOutput(objects.getAll(e));
    } else {
      ((CustomExpression.ExpressionGetEvent) e).setOutput(new Object[0]);
    }
  } else if (e instanceof CustomCondition.ConditionEvent) {
    ((CustomCondition.ConditionEvent) e).markContinue();
  }
  return null;
}
 
开发者ID:btk5h,项目名称:skript-mirror,代码行数:22,代码来源:EffContinue.java

示例3: propagateErrors

import ch.njol.skript.Skript; //导入方法依赖的package包/类
@SuppressWarnings("ThrowableNotThrown")
public static <T, R> Function<T, R> propagateErrors(ExceptionalFunction<T, R> function) {
  return t -> {
    try {
      return function.apply(t);
    } catch (Exception e) {
      Skript.warning(
          String.format("skript-mirror encountered a %s: %s%n" +
              "Run Skript with the verbosity 'very high' for the stack trace.",
              e.getClass().getSimpleName(), e.getMessage()));

      if (Skript.logVeryHigh()) {
        StringWriter errors = new StringWriter();
        e.printStackTrace(new PrintWriter(errors));
        Skript.warning(errors.toString());
      }
    }
    return null;
  };
}
 
开发者ID:btk5h,项目名称:skript-mirror,代码行数:21,代码来源:Util.java

示例4: setScope

import ch.njol.skript.Skript; //导入方法依赖的package包/类
@Override
public void setScope() {
	TriggerItem possibleCatch = scope.getNext();
	if (possibleCatch instanceof Conditional) {
		try {
			Condition catchCond = (Condition) CustomScope.condition.get(possibleCatch);
			if (catchCond instanceof ScopeCatch) {
				this.scopeCatch = (ScopeCatch) catchCond;
			} else {
				Skript.warning("It is recommended to use a catch statement after a try statement");
			}
		} catch (IllegalAccessException e) {
			Logging.reportException(this, e);
		}
	} else {
		Skript.warning("It is recommended to use a catch statement after a try statement");
	}
	last.setNext(null);
}
 
开发者ID:MundoSK,项目名称:MundoSK,代码行数:20,代码来源:ScopeTry.java

示例5: onValueChange

import ch.njol.skript.Skript; //导入方法依赖的package包/类
@Override
protected void onValueChange() {
	String value = getValue();
	if (value == null) {
		plural = singular = key;
		gender = 0;
		return;
	}
	final int g = value.lastIndexOf('@');
	if (g != -1) {
		gender = getGender("" + value.substring(g + 1).trim(), key);
		value = "" + value.substring(0, g).trim();
	} else {
		gender = 0;
	}
	final NonNullPair<String, String> p = Noun.getPlural(value);
	singular = p.getFirst();
	plural = p.getSecond();
	if (gender == PLURAL && !Objects.equals(singular, plural))
		Skript.warning("Noun '" + key + "' is of gender 'plural', but has different singular and plural values.");
}
 
开发者ID:nfell2009,项目名称:Skript,代码行数:22,代码来源:Noun.java

示例6: insertFunction

import ch.njol.skript.Skript; //导入方法依赖的package包/类
private final static void insertFunction(final PrintWriter pw, final JavaFunction<?> func) {
	final StringBuilder params = new StringBuilder();
	for (final Parameter<?> p : func.getParameters()) {
		if (params.length() != 0)
			params.append(", ");
		params.append(p.toString());
	}
	final String desc = validateHTML(StringUtils.join(func.getDescription(), "<br/>"), "functions");
	final String since = validateHTML(func.getSince(), "functions");
	if (desc == null || since == null) {
		Skript.warning("Function " + func.getName() + "'s description or 'since' is invalid");
		return;
	}
	replaceInto(pw, "functions", "name, parameters, description, examples, since",
			escapeHTML(func.getName()),
			escapeHTML(params.toString()),
			desc,
			escapeHTML(StringUtils.join(func.getExamples(), "\n")),
			since);
}
 
开发者ID:nfell2009,项目名称:Skript,代码行数:21,代码来源:Documentation.java

示例7: acceptChange

import ch.njol.skript.Skript; //导入方法依赖的package包/类
@Override
@Nullable
public Class<?>[] acceptChange(final ChangeMode mode) {
	if (mode == ChangeMode.REMOVE_ALL)
		return null;
	if (ScriptLoader.isCurrentEvent(PlayerRespawnEvent.class) && !ScriptLoader.hasDelayBefore.isTrue()) {
		Skript.error("Cannot change a player's level in a respawn event. Add a delay of 1 tick or change the 'new level' in a death event.");
		return null;
	}
	if (ScriptLoader.isCurrentEvent(PlayerDeathEvent.class) && getTime() == 0 && getExpr().isDefault() && !ScriptLoader.hasDelayBefore.isTrue()) {
		Skript.warning("Changing the player's level in a death event will change the player's level before he dies. " +
				"Use either 'past level of player' or 'new level of player' to clearly state whether to change the level before or after he dies.");
	}
	if (getTime() == -1 && !ScriptLoader.isCurrentEvent(PlayerDeathEvent.class))
		return null;
	return new Class[] {Number.class};
}
 
开发者ID:nfell2009,项目名称:Skript,代码行数:18,代码来源:ExprLevel.java

示例8: init

import ch.njol.skript.Skript; //导入方法依赖的package包/类
@SuppressWarnings({"unchecked", "null"})
@Override
public boolean init(final Expression<?>[] exprs, final int matchedPattern, final Kleenean isDelayed, final ParseResult parseResult) {
	effects = (Expression<VisualEffect>) exprs[0];
	direction = (Expression<Direction>) exprs[1];
	where = exprs[2];
	players = (Expression<Player>) exprs[3];
	if (effects instanceof Literal) {
		final VisualEffect[] effs = effects.getAll(null);
		boolean hasLocationEffect = false, hasEntityEffect = false;
		for (final VisualEffect e : effs) {
			if (e.isEntityEffect())
				hasEntityEffect = true;
			else
				hasLocationEffect = true;
		}
		if (!hasLocationEffect && players != null)
			Skript.warning("Entity effects are visible to all players");
		if (!hasLocationEffect && !direction.isDefault())
			Skript.warning("Entity effects are always played on an entity");
		if (hasEntityEffect && !Entity.class.isAssignableFrom(where.getReturnType()))
			Skript.warning("Entity effects can only be played on entities");
	}
	return true;
}
 
开发者ID:nfell2009,项目名称:Skript,代码行数:26,代码来源:EffVisualEffect.java

示例9: save

import ch.njol.skript.Skript; //导入方法依赖的package包/类
/**
 * May be called from a different thread than Bukkit's main thread.
 */
final void save(final SerializedVariable var) {
	if (changesQueue.size() > FIRST_WARNING && lastWarning < System.currentTimeMillis() - WARNING_INTERVAL * 1000) {
		Skript.warning("Cannot write variables to the database '" + databaseName + "' at sufficient speed; server performance may suffer and many variables will be lost if the server crashes. (this warning will be repeated at most once every " + WARNING_INTERVAL + " seconds)");
		lastWarning = System.currentTimeMillis();
	}
	if (!changesQueue.offer(var)) {
		if (lastError < System.currentTimeMillis() - ERROR_INTERVAL * 1000) {
			Skript.error("Skript cannot save any variables to the database '" + databaseName + "'. The server will hang and may crash if no more variables can be saved.");
			lastError = System.currentTimeMillis();
		}
		while (true) {
			try {
				// REMIND add repetitive error and/or stop saving variables altogether?
				changesQueue.put(var);
				break;
			} catch (final InterruptedException e) {}
		}
	}
}
 
开发者ID:nfell2009,项目名称:Skript,代码行数:23,代码来源:VariablesStorage.java

示例10: insertSyntaxElement

import ch.njol.skript.Skript; //导入方法依赖的package包/类
private final static void insertSyntaxElement(final PrintWriter pw, final SyntaxElementInfo<?> info, final String type) {
	if (info.c.getAnnotation(NoDoc.class) != null)
		return;
	if (info.c.getAnnotation(Name.class) == null || info.c.getAnnotation(Description.class) == null || info.c.getAnnotation(Examples.class) == null || info.c.getAnnotation(Since.class) == null) {
		Skript.warning("" + info.c.getSimpleName() + " is missing information");
		return;
	}
	final String desc = validateHTML(StringUtils.join(info.c.getAnnotation(Description.class).value(), "<br/>"), type + "s");
	final String since = validateHTML(info.c.getAnnotation(Since.class).value(), type + "s");
	if (desc == null || since == null) {
		Skript.warning("" + info.c.getSimpleName() + "'s description or 'since' is invalid");
		return;
	}
	final String patterns = cleanPatterns(StringUtils.join(info.patterns, "\n", 0, info.c == CondCompare.class ? 8 : info.patterns.length));
	insertOnDuplicateKeyUpdate(pw, "syntax_elements",
			"id, name, type, patterns, description, examples, since",
			"patterns = TRIM(LEADING '\n' FROM CONCAT(patterns, '\n', '" + escapeSQL(patterns) + "'))",
			escapeHTML("" + info.c.getSimpleName()),
			escapeHTML(info.c.getAnnotation(Name.class).value()),
			type,
			patterns,
			desc,
			escapeHTML(StringUtils.join(info.c.getAnnotation(Examples.class).value(), "\n")),
			since);
}
 
开发者ID:nfell2009,项目名称:Skript,代码行数:26,代码来源:Documentation.java

示例11: toString

import ch.njol.skript.Skript; //导入方法依赖的package包/类
@Override
public String toString() {
	validate();
	if (Skript.testing())
		Skript.warning("Invalid use of Adjective.toString()");
	return "" + def;
}
 
开发者ID:nfell2009,项目名称:Skript,代码行数:8,代码来源:Adjective.java

示例12: init

import ch.njol.skript.Skript; //导入方法依赖的package包/类
@SuppressWarnings({"unchecked", "null"})
@Override
public boolean init(final Expression<?>[] vars, final int matchedPattern, final Kleenean isDelayed, final ParseResult parser) {
	setExpr((Expression<ItemType>) vars[0]);
	if (parser.mark != 1) {
		single = true;
		if (!getExpr().isSingle() || (getExpr() instanceof Literal && ((Literal<ItemType>) getExpr()).getSingle().getTypes().size() != 1)) {
			Skript.warning("'" + getExpr() + "' has multiple ids");
			single = false;
		}
	}
	return true;
}
 
开发者ID:nfell2009,项目名称:Skript,代码行数:14,代码来源:ExprIdOf.java

示例13: init

import ch.njol.skript.Skript; //导入方法依赖的package包/类
@SuppressWarnings({"unchecked", "null"})
@Override
public boolean init(final Expression<?>[] exprs, final int matchedPattern, final Kleenean isDelayed, final ParseResult parseResult) {
	invis = (Expression<Inventory>) exprs[0];
	if (invis instanceof Variable && !invis.isSingle() && parseResult.mark != 1)
		Skript.warning("'items in {variable::*}' does not actually represent the items stored in the variable. Use either '{variable::*}' (e.g. 'loop {variable::*}') if the variable contains items, or 'items in inventories {variable::*}' if the variable contains inventories.");
	return true;
}
 
开发者ID:nfell2009,项目名称:Skript,代码行数:9,代码来源:ExprItemsIn.java

示例14: insertEvent

import ch.njol.skript.Skript; //导入方法依赖的package包/类
private final static void insertEvent(final PrintWriter pw, final SkriptEventInfo<?> info) {
	if (info.getDescription() == SkriptEventInfo.NO_DOC)
		return;
	if (info.getDescription() == null || info.getExamples() == null || info.getSince() == null) {
		Skript.warning("" + info.getName() + " (" + info.c.getSimpleName() + ") is missing information");
		return;
	}
	for (final SkriptEventInfo<?> i : Skript.getEvents()) {
		if (info.getId().equals(i.getId()) && info != i && i.getDescription() != null && i.getDescription() != SkriptEventInfo.NO_DOC) {
			Skript.warning("Duplicate event id '" + info.getId() + "'");
			return;
		}
	}
	final String desc = validateHTML(StringUtils.join(info.getDescription(), "<br/>"), "events");
	final String since = validateHTML(info.getSince(), "events");
	if (desc == null || since == null) {
		Skript.warning("description or 'since' of " + info.getName() + " (" + info.c.getSimpleName() + ") is invalid");
		return;
	}
	final String patterns = cleanPatterns(info.getName().startsWith("On ") ? "[on] " + StringUtils.join(info.patterns, "\n[on] ") : StringUtils.join(info.patterns, "\n"));
	insertOnDuplicateKeyUpdate(pw, "syntax_elements",
			"id, name, type, patterns, description, examples, since",
			"patterns = '" + escapeSQL(patterns) + "'",
			escapeHTML(info.getId()),
			escapeHTML(info.getName()),
			"event",
			patterns,
			desc,
			escapeHTML(StringUtils.join(info.getExamples(), "\n")),
			since);
}
 
开发者ID:nfell2009,项目名称:Skript,代码行数:32,代码来源:Documentation.java

示例15: checkVariableConflicts

import ch.njol.skript.Skript; //导入方法依赖的package包/类
private static void checkVariableConflicts(final String name, final StringMode mode, final @Nullable Iterable<Object> string) {
	if (mode != StringMode.VARIABLE_NAME || variableNames.containsKey(name))
		return;
	if (name.startsWith("%")) {// inside the if to only print this message once per variable
		final Config script = ScriptLoader.currentScript;
		if (script != null)
			Skript.warning("Starting a variable's name with an expression is discouraged ({" + name + "}). You could prefix it with the script's name: {" + StringUtils.substring(script.getFileName(), 0, -3) + "." + name + "}");
	}
	
	final Pattern pattern;
	if (string != null) {
		final StringBuilder p = new StringBuilder();
		stringLoop: for (final Object o : string) {
			if (o instanceof Expression) {
				for (final ClassInfo<?> ci : Classes.getClassInfos()) {
					final Parser<?> parser = ci.getParser();
					if (parser != null && ci.getC().isAssignableFrom(((Expression<?>) o).getReturnType())) {
						p.append("(?!%)" + parser.getVariableNamePattern() + "(?<!%)");
						continue stringLoop;
					}
				}
				p.append("[^%*](.*[^%*])?"); // [^*] to not report {var::%index%}/{var::*} as conflict
			} else {
				p.append(Pattern.quote(o.toString()));
			}
		}
		pattern = Pattern.compile(p.toString());
	} else {
		pattern = Pattern.compile(Pattern.quote(name));
	}
	if (!SkriptConfig.disableVariableConflictWarnings.value()) {
		for (final Entry<String, Pattern> e : variableNames.entrySet()) {
			if (e.getValue().matcher(name).matches() || pattern.matcher(e.getKey()).matches()) {
				Skript.warning("Possible name conflict of variables {" + name + "} and {" + e.getKey() + "} (there might be more conflicts).");
				break;
			}
		}
	}
	variableNames.put(name, pattern);
}
 
开发者ID:nfell2009,项目名称:Skript,代码行数:41,代码来源:VariableString.java


注:本文中的ch.njol.skript.Skript.warning方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。