21 lines
485 B
Kotlin
21 lines
485 B
Kotlin
|
package net.shadowfacts.asmr.program.execution
|
||
|
|
||
|
import net.minecraft.util.Identifier
|
||
|
import net.shadowfacts.asmr.ASMR
|
||
|
import net.shadowfacts.asmr.program.ProgramBlock
|
||
|
|
||
|
/**
|
||
|
* @author shadowfacts
|
||
|
*/
|
||
|
abstract class ExecutableBlock(identifier: Identifier): ProgramBlock(identifier) {
|
||
|
|
||
|
val incoming = IncomingExecutionFlow(Identifier(ASMR.modid, "incoming"), this)
|
||
|
abstract val outgoing: Array<OutgoingExecutionFlow>
|
||
|
|
||
|
abstract fun execute()
|
||
|
|
||
|
abstract fun next(): ExecutableBlock?
|
||
|
|
||
|
}
|
||
|
|