31 lines
606 B
Kotlin
31 lines
606 B
Kotlin
package net.shadowfacts.asmr.program.execution
|
|
|
|
import net.minecraft.util.Identifier
|
|
import net.minecraft.util.Language
|
|
|
|
/**
|
|
* @author shadowfacts
|
|
*/
|
|
class OutgoingExecutionFlow(
|
|
val identifier: Identifier,
|
|
val block: ExecutableBlock
|
|
) {
|
|
|
|
var destination: IncomingExecutionFlow? = null
|
|
private set
|
|
|
|
fun link(to: IncomingExecutionFlow) {
|
|
destination = to
|
|
to.source = this
|
|
}
|
|
|
|
fun unlink() {
|
|
destination?.source = null
|
|
destination = null
|
|
}
|
|
|
|
fun translateName(): String {
|
|
return Language.getInstance().translate("programblock.execution.${identifier.namespace}.${identifier.path}")
|
|
}
|
|
|
|
} |