more computer stuffs

This commit is contained in:
minjaesong
2025-04-01 21:03:09 +09:00
parent a4b6ad1d5f
commit 06a8fd38d1
4 changed files with 43 additions and 1 deletions

View File

@@ -50,6 +50,7 @@ class FixtureComputerProcessor : Electric {
it.setRowsAndFrames(1,1)
}
setWireSinkAt(0, 0, "memory_bus")
setWireSinkAt(0, 1, "serial")
setWireSinkAt(1, 1, "serial")
setWireSinkAt(0, 2, "io_bus")
@@ -83,7 +84,6 @@ class FixtureNetworkInterface : Electric {
}
}
/**
* Created by minjaesong on 2025-04-01.
*/
@@ -109,4 +109,27 @@ class FixtureNetworkBridge : Electric {
setWireSinkAt(1, 1, "token_ring")
setWireSinkAt(1, 2, "power_low")
}
}
/**
* Created by minjaesong on 2025-04-01.
*/
class FixtureMemoryCabinet : Electric {
@Transient override val spawnNeedsStableFloor = true
@Transient override val spawnNeedsWall = false
constructor() : super(
BlockBox(BlockBox.ALLOW_MOVE_DOWN, 2, 3),
nameFun = { Lang["ITEM_MEMORY_CABINET"] }
)
init {
val itemImage = FixtureItemBase.getItemImageFromSingleImage("dwarventech", "sprites/fixtures/computer_memory_stack_1.tga")
makeNewSprite(TextureRegionPack(itemImage.texture, 1*TILE_SIZE, 3*TILE_SIZE)).let {
it.setRowsAndFrames(1,1)
}
setWireSinkAt(0, 0, "memory_bus")
}
}

View File

@@ -69,4 +69,21 @@ class ItemNetworkBridge(originalID: ItemID) : FixtureItemBase(originalID, "net.t
override var baseToolSize: Double? = baseMass
override var originalName = "ITEM_NETWORK_BRIDGE"
}
/**
* Created by minjaesong on 2025-04-01.
*/
class ItemMemoryCabinet(originalID: ItemID) : FixtureItemBase(originalID, "net.torvald.terrarum.modulecomputers.gameactors.FixtureMemoryCabinet") {
override var dynamicID: ItemID = originalID
override var baseMass = 80.0
override val canBeDynamic = false
override val materialId = "STAL"
init {
itemImage = FixtureItemBase.getItemImageFromSingleImage("dwarventech", "sprites/fixtures/computer_memory_stack_1.tga")
}
override var baseToolSize: Double? = baseMass
override var originalName = "ITEM_MEMORY_CABINET"
}

View File

@@ -2,3 +2,4 @@
"serial";"dwarventech";"wires/ports.tga";0;0
"io_bus";"dwarventech";"wires/ports.tga";1;0
"token_ring";"dwarventech";"wires/ports.tga";2;0
"memory_bus";"memory_bus";"wires/ports.tga";2;0
1 accepts fileModule file xpos ypos
2 serial dwarventech wires/ports.tga 0 0
3 io_bus dwarventech wires/ports.tga 1 0
4 token_ring dwarventech wires/ports.tga 2 0
5 memory_bus memory_bus wires/ports.tga 2 0

View File

@@ -3,6 +3,7 @@ id;drop;name;renderclass;accept;inputcount;inputtype;outputtype;javaclass;invent
2;2;WIRE_IO_BUS;io_bus;io_bus;1;N/A;N/A;net.torvald.terrarum.modulecomputers.gameitems.WirePieceIOBus;dwarventech.items,1,1;1;""
3;3;WIRE_TOKENRING_BLACK;token_ring;token_ring;1;N/A;N/A;net.torvald.terrarum.modulecomputers.gameitems.WirePieceNetworkBus;dwarventech.items,0,1;1;""
4;4;WIRE_TOKENRING_BLUE;token_ring;token_ring;1;N/A;N/A;net.torvald.terrarum.modulecomputers.gameitems.WirePieceNetworkBus;dwarventech.items,0,1;1;""
5;5;WIRE_MEMORY_BUS;memory_bus;memory_bus;1;N/A;N/A;net.torvald.terrarum.modulecomputers.gameitems.WirePieceNetworkBus;dwarventech.items,0,1;1;""
# accept: which wiretype (defined elsewhere) the wires acceps. Use comma to separate multiple. N/A for electronic components (aka not wires)
1 id drop name renderclass accept inputcount inputtype outputtype javaclass inventoryimg branching tags
3 2 2 WIRE_IO_BUS io_bus io_bus 1 N/A N/A net.torvald.terrarum.modulecomputers.gameitems.WirePieceIOBus dwarventech.items,1,1 1
4 3 3 WIRE_TOKENRING_BLACK token_ring token_ring 1 N/A N/A net.torvald.terrarum.modulecomputers.gameitems.WirePieceNetworkBus dwarventech.items,0,1 1
5 4 4 WIRE_TOKENRING_BLUE token_ring token_ring 1 N/A N/A net.torvald.terrarum.modulecomputers.gameitems.WirePieceNetworkBus dwarventech.items,0,1 1
6 5 5 WIRE_MEMORY_BUS memory_bus memory_bus 1 N/A N/A net.torvald.terrarum.modulecomputers.gameitems.WirePieceNetworkBus dwarventech.items,0,1 1
7 # accept: which wiretype (defined elsewhere) the wires acceps. Use comma to separate multiple. N/A for electronic components (aka not wires)
8 # inputcount: how many sides are input (outputcount is deduced from the inputcount). N/A for wires
9 # inputtype: which wiretype it accepts. N/A for wires