Class BlockStatePropertyExpression<TYPE,ARGUMENT extends IScratchArgument<ILevelEnvironment,TYPE>,EXPRESSION extends BlockStatePropertyExpression<TYPE,ARGUMENT,EXPRESSION>>
java.lang.Object
com.petrolpark.core.scratch.symbol.ScratchSymbol<ILevelEnvironment,ScratchArguments.And<ILevelEnvironment,net.minecraft.core.BlockPos,ExpressionArgument<ILevelEnvironment,net.minecraft.core.BlockPos,?>,ScratchArguments.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>>>>
com.petrolpark.core.scratch.symbol.expression.ScratchExpression<ILevelEnvironment,TYPE,ScratchArguments.And<ILevelEnvironment,net.minecraft.core.BlockPos,ExpressionArgument<ILevelEnvironment,net.minecraft.core.BlockPos,?>,ScratchArguments.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>>>,EXPRESSION>
com.petrolpark.core.scratch.symbol.expression.SimpleExpressionType<ILevelEnvironment,TYPE,ScratchArguments.And<ILevelEnvironment,net.minecraft.core.BlockPos,ExpressionArgument<ILevelEnvironment,net.minecraft.core.BlockPos,?>,ScratchArguments.And<ILevelEnvironment,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,ScratchArguments.Just<ILevelEnvironment,TYPE,ARGUMENT>>>,EXPRESSION>
com.petrolpark.core.scratch.symbol.expression.TernaryExpressionType<ILevelEnvironment,TYPE,net.minecraft.core.BlockPos,ExpressionArgument<ILevelEnvironment,net.minecraft.core.BlockPos,?>,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,TYPE,ARGUMENT,EXPRESSION>
com.petrolpark.core.scratch.symbol.expression.world.block.BlockStatePropertyExpression<TYPE,ARGUMENT,EXPRESSION>
- All Implemented Interfaces:
IScratchExpression<ILevelEnvironment,,TYPE, ScratchArguments.And<ILevelEnvironment, net.minecraft.core.BlockPos, ExpressionArgument<ILevelEnvironment, net.minecraft.core.BlockPos, ?>, ScratchArguments.And<ILevelEnvironment, String, ExpressionOrLiteralArgument<ILevelEnvironment, String>, ScratchArguments.Just<ILevelEnvironment, TYPE, ARGUMENT>>>, EXPRESSION> IScratchExpression.Type<EXPRESSION>,IScratchSymbol<ILevelEnvironment,,ScratchArguments.And<ILevelEnvironment, net.minecraft.core.BlockPos, ExpressionArgument<ILevelEnvironment, net.minecraft.core.BlockPos, ?>, ScratchArguments.And<ILevelEnvironment, String, ExpressionOrLiteralArgument<ILevelEnvironment, String>, ScratchArguments.Just<ILevelEnvironment, TYPE, ARGUMENT>>>> IScratchSymbol.Type<EXPRESSION>
- Direct Known Subclasses:
BooleanBlockStatePropertyExpression
public abstract class BlockStatePropertyExpression<TYPE,ARGUMENT extends IScratchArgument<ILevelEnvironment,TYPE>,EXPRESSION extends BlockStatePropertyExpression<TYPE,ARGUMENT,EXPRESSION>>
extends TernaryExpressionType<ILevelEnvironment,TYPE,net.minecraft.core.BlockPos,ExpressionArgument<ILevelEnvironment,net.minecraft.core.BlockPos,?>,String,ExpressionOrLiteralArgument<ILevelEnvironment,String>,TYPE,ARGUMENT,EXPRESSION>
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.petrolpark.core.scratch.symbol.expression.IScratchExpression
IScratchExpression.Type<EXPRESSION extends IScratchExpression<?,?, ?, ?>> Nested classes/interfaces inherited from interface com.petrolpark.core.scratch.symbol.IScratchSymbol
IScratchSymbol.Type<SYMBOL extends IScratchSymbol<?,?>> -
Field Summary
Fields inherited from class com.petrolpark.core.scratch.symbol.ScratchSymbol
parametersFields inherited from interface com.petrolpark.core.scratch.symbol.expression.IScratchExpression
CODEC, STREAM_CODEC, TYPED_CODEC -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedBlockStatePropertyExpression(IScratchParameter<ILevelEnvironment, TYPE, ARGUMENT> fallbackParameter) -
Method Summary
Modifier and TypeMethodDescriptionfinal TYPEevaluate(ILevelEnvironment environment, net.minecraft.core.BlockPos pos, String property, TYPE fallback) abstract TYPEgetProperty(net.minecraft.world.level.block.state.BlockState state, String property) Methods inherited from class com.petrolpark.core.scratch.symbol.expression.TernaryExpressionType
evaluateMethods inherited from class com.petrolpark.core.scratch.symbol.expression.SimpleExpressionType
codec, getExpressionType, self, streamCodecMethods inherited from class com.petrolpark.core.scratch.symbol.ScratchSymbol
getParametersMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.petrolpark.core.scratch.symbol.expression.IScratchExpression
getReturnClassMethods inherited from interface com.petrolpark.core.scratch.symbol.IScratchSymbol
getParameters
-
Constructor Details
-
BlockStatePropertyExpression
protected BlockStatePropertyExpression(IScratchParameter<ILevelEnvironment, TYPE, ARGUMENT> fallbackParameter)
-
-
Method Details
-
evaluate
public final TYPE evaluate(ILevelEnvironment environment, net.minecraft.core.BlockPos pos, String property, TYPE fallback) - Specified by:
evaluatein classTernaryExpressionType<ILevelEnvironment,TYPE, net.minecraft.core.BlockPos, ExpressionArgument<ILevelEnvironment, net.minecraft.core.BlockPos, ?>, String, ExpressionOrLiteralArgument<ILevelEnvironment, String>, TYPE, ARGUMENT extends IScratchArgument<ILevelEnvironment, TYPE>, EXPRESSION extends BlockStatePropertyExpression<TYPE, ARGUMENT, EXPRESSION>>
-
getProperty
-