23 lines
533 B
Kotlin
23 lines
533 B
Kotlin
package net.shadowfacts.asmr.program.execution
|
|
|
|
import net.minecraft.util.Identifier
|
|
import net.shadowfacts.asmr.ASMR
|
|
|
|
/**
|
|
* @author shadowfacts
|
|
*/
|
|
abstract class SimpleExecutableBlock(identifier: Identifier): ExecutableBlock(identifier) {
|
|
|
|
val outgoingFlow = OutgoingExecutionFlow(Identifier(ASMR.modid, "outgoing"), this)
|
|
override val outgoing = arrayOf(outgoingFlow)
|
|
|
|
override fun next(): ExecutableBlock? {
|
|
return outgoingFlow.destination?.block
|
|
}
|
|
|
|
fun link(to: ExecutableBlock) {
|
|
outgoingFlow.link(to.incoming)
|
|
}
|
|
|
|
}
|