ASMR/src/main/kotlin/net/shadowfacts/asmr/program/ProgramBlock.kt

21 lines
522 B
Kotlin
Raw Normal View History

2019-08-09 01:44:59 +00:00
package net.shadowfacts.asmr.program
2019-08-10 23:21:26 +00:00
import net.minecraft.util.Identifier
import net.minecraft.util.Language
2019-08-09 02:44:19 +00:00
import net.shadowfacts.cacao.geometry.Point
2019-08-09 01:44:59 +00:00
/**
* @author shadowfacts
*/
2019-08-10 23:21:26 +00:00
abstract class ProgramBlock(val identifier: Identifier) {
2019-08-09 02:44:19 +00:00
var position: Point = Point.ORIGIN
2019-08-09 01:44:59 +00:00
2019-08-09 02:44:19 +00:00
abstract val inputs: Array<ProgramBlockInput<*>>
abstract val outputs: Array<ProgramBlockOutput<*>>
2019-08-09 01:44:59 +00:00
2019-08-10 23:21:26 +00:00
fun translateName(): String {
return Language.getInstance().translate("programblock.${identifier.namespace}.${identifier.path}")
}
2019-08-09 01:44:59 +00:00
}