Class PropertyBaseCondition<Handler extends PropertyHandler.ConditionPropertyHandler<?>>
java.lang.Object
ch.njol.skript.lang.TriggerItem
ch.njol.skript.lang.Statement
ch.njol.skript.lang.Condition
org.skriptlang.skript.lang.properties.PropertyBaseCondition<Handler>
- Type Parameters:
Handler- The handler type expected for this property.
- All Implemented Interfaces:
Debuggable,Simplifiable<Condition>,SyntaxElement,Conditional<org.bukkit.event.Event>,PropertyBaseSyntax<Handler>,RuntimeErrorProducer,SyntaxRuntimeErrorProducer
- Direct Known Subclasses:
PropCondIsEmpty
@Experimental
public abstract class PropertyBaseCondition<Handler extends PropertyHandler.ConditionPropertyHandler<?>>
extends Condition
implements PropertyBaseSyntax<Handler>
A helper class for implementing property-driven conditions. Only
PropertyBaseSyntax.getProperty() needs to be implemented.- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class ch.njol.skript.lang.Condition
Condition.ConditionTypeNested classes/interfaces inherited from interface org.skriptlang.skript.lang.condition.Conditional
Conditional.Operator -
Field Summary
FieldsFields inherited from class ch.njol.skript.lang.TriggerItem
parent -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleancheck(org.bukkit.event.Event event) Checks whether this condition is satisfied with the given event.protected ch.njol.skript.conditions.base.PropertyCondition.PropertyTypeThe type of propertycondition this should be.booleaninit(Expression<?>[] expressions, int matchedPattern, Kleenean isDelayed, SkriptParser.ParseResult parseResult) Called just after the constructor andSyntaxElement.preInit().static voidregister(Class<? extends Condition> condition, ch.njol.skript.conditions.base.PropertyCondition.PropertyType propertyType, String property, String type) Registers a new property condition.static voidRegisters a new property condition.toString(@Nullable org.bukkit.event.Event event, boolean debug) Methods inherited from class ch.njol.skript.lang.Condition
evaluate, getNode, getSyntaxTypeName, isNegated, parse, preInit, run, setNegated, simplifyMethods inherited from class ch.njol.skript.lang.TriggerItem
debug, executionIntent, getActualNext, getIndentation, getNext, getParent, getTrigger, setNext, setParent, toString, walk, walkMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.skriptlang.skript.lang.condition.Conditional
evaluate, evaluateAnd, evaluateAnd, evaluateAnd, evaluateAnd, evaluateNot, evaluateNot, evaluateOr, evaluateOr, evaluateOr, evaluateOrMethods inherited from interface ch.njol.skript.lang.Debuggable
toStringMethods inherited from interface org.skriptlang.skript.lang.properties.PropertyBaseSyntax
getBadTypesErrorMessage, getProperty, getPropertyNameMethods inherited from interface org.skriptlang.skript.log.runtime.RuntimeErrorProducer
error, error, getRuntimeErrorManager, warning, warningMethods inherited from interface ch.njol.skript.lang.SyntaxElement
getParserMethods inherited from interface org.skriptlang.skript.log.runtime.SyntaxRuntimeErrorProducer
getErrorSource
-
Field Details
-
propertyHolder
-
-
Constructor Details
-
PropertyBaseCondition
public PropertyBaseCondition()
-
-
Method Details
-
register
Registers a new property condition. The property type is set toPropertyCondition.PropertyType.BE.- Parameters:
condition- the class to registerproperty- the property name, for example fly in players can flytype- must be plural, for example players in players can fly
-
register
public static void register(Class<? extends Condition> condition, ch.njol.skript.conditions.base.PropertyCondition.PropertyType propertyType, String property, String type) Registers a new property condition.- Parameters:
condition- the class to registerpropertyType- the property type, seePropertyCondition.PropertyTypeproperty- the property name, for example fly in players can flytype- must be plural, for example players in players can fly
-
init
public boolean init(Expression<?>[] expressions, int matchedPattern, Kleenean isDelayed, SkriptParser.ParseResult parseResult) Description copied from interface:SyntaxElementCalled just after the constructor andSyntaxElement.preInit().- Specified by:
initin interfaceSyntaxElement- Parameters:
expressions- all %expr%s included in the matching pattern in the order they appear in the pattern. If an optional value was left out, it will still be included in this list holding the default value of the desired type, which usually depends on the event.matchedPattern- The index of the pattern which matchedisDelayed- Whether this expression is used after a delay or not (i.e. if the event has already passed when this expression will be called)parseResult- Additional information about the match.- Returns:
- Whether this expression was initialised successfully. An error should be printed prior to returning false to specify the cause.
- See Also:
-
check
public boolean check(org.bukkit.event.Event event) Description copied from class:ConditionChecks whether this condition is satisfied with the given event. This should not alter the event or the world in any way, as conditions are only checked until one returns false. All subsequent conditions of the same trigger will then be omitted.
You might want to useSimpleExpression.check(Event, Predicate) -
getPropertyType
protected ch.njol.skript.conditions.base.PropertyCondition.PropertyType getPropertyType()The type of propertycondition this should be. Defaults toPropertyCondition.PropertyType.BE.- Returns:
- The PropertyType. Used in toString and pattern generation.
-
toString
- Specified by:
toStringin interfaceDebuggable- Parameters:
event- The event to get information from. This is always null if debug == false.debug- If true this should print more information, if false this should print what is shown to the end user- Returns:
- String representation of this object
-