ELEKTRIKITY#711
Conversation
This reverts commit 3cae7d2.
# Conflicts: # rebar/build.gradle.kts
# Conflicts: # rebar/build.gradle.kts
|
needs to open the companion pylon pr at https://github.com/pylonmc/pylon/pulls |
|
Yeah ik but that's ones in much less of a completed state |
There was a problem hiding this comment.
1-Gauge-Wire shouldn't be placed directly as string
| import io.github.pylonmc.rebar.recipe.FluidOrItem | ||
|
|
||
| @JvmRecord | ||
| data class FluidWithAmount(val fluid: RebarFluid, val amount: Double) { |
There was a problem hiding this comment.
I'd prefer rename the parameter amount to amountMillibucket
There was a problem hiding this comment.
Hold a wire and conenct one node then go through nether portal
[22:53:56 ERROR]: Could not pass event PlayerMoveEvent to Rebar v1.0.0-SNAPSHOT
java.lang.IllegalArgumentException: Cannot add Locations of differing worlds
at org.bukkit.Location.subtract(Location.java:450) ~[paper-api-1.21.11-R0.1-SNAPSHOT.jar:?]
at rebar-1.0.0-SNAPSHOT.jar//io.github.pylonmc.rebar.entity.display.transform.TransformUtil.getDisplacement(TransformUtil.kt:61) ~[?:?]
at rebar-1.0.0-SNAPSHOT.jar//io.github.pylonmc.rebar.entity.display.transform.TransformUtil.getDirection(TransformUtil.kt:71) ~[?:?]
at rebar-1.0.0-SNAPSHOT.jar//io.github.pylonmc.rebar.entity.display.transform.LookAlong.(LookAlong.kt:21) ~[?:?]
at rebar-1.0.0-SNAPSHOT.jar//io.github.pylonmc.rebar.entity.display.transform.TransformBuilder.lookAlong(TransformBuilder.kt:61) ~[?:?]
at rebar-1.0.0-SNAPSHOT.jar//io.github.pylonmc.rebar.electricity.WireConnectionService.getDisplayTransform(WireConnectionService.kt:312) ~[?:?]
at rebar-1.0.0-SNAPSHOT.jar//io.github.pylonmc.rebar.electricity.WireConnectionService.onPlayerMove(WireConnectionService.kt:249) ~[?:?]
at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80) ~[paper-api-1.21.11-R0.1-SNAPSHOT.jar:?]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:71) ~[paper-api-1.21.11-R0.1-SNAPSHOT.jar:?]
at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:54) ~[paper-1.21.11.jar:1.21.11-99-81b9122]
at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:131) ~[paper-1.21.11.jar:1.21.11-99-81b9122]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:628) ~[paper-api-1.21.11-R0.1-SNAPSHOT.jar:?]
at net.minecraft.server.network.ServerGamePacketListenerImpl.handleMovePlayer(ServerGamePacketListenerImpl.java:1673) ~[paper-1.21.11.jar:1.21.11-99-81b9122]
at net.minecraft.network.protocol.game.ServerboundMovePlayerPacket.handle(ServerboundMovePlayerPacket.java:62) ~[paper-1.21.11.jar:1.21.11-99-81b9122]
at net.minecraft.network.protocol.game.ServerboundMovePlayerPacket$Pos.handle(ServerboundMovePlayerPacket.java:101) ~[paper-1.21.11.jar:1.21.11-99-81b9122]
at net.minecraft.network.PacketProcessor$ListenerAndPacket.handle(PacketProcessor.java:99) ~[paper-1.21.11.jar:1.21.11-99-81b9122]
at net.minecraft.network.PacketProcessor.executeSinglePacket(PacketProcessor.java:33) ~[paper-1.21.11.jar:1.21.11-99-81b9122]
at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1504) ~[paper-1.21.11.jar:1.21.11-99-81b9122]
at net.minecraft.server.MinecraftServer.recordTaskExecutionTimeWhileWaiting(MinecraftServer.java:1230) ~[paper-1.21.11.jar:1.21.11-99-81b9122]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1346) ~[paper-1.21.11.jar:1.21.11-99-81b9122]
at net.minecraft.server.MinecraftServer.lambda$spin$2(MinecraftServer.java:388) ~[paper-1.21.11.jar:1.21.11-99-81b9122]
at java.base/java.lang.Thread.run(Thread.java:1575) ~[?:?]
There was a problem hiding this comment.
Breaking the wire-connected Pylon should drop wires at the pylon.
There was a problem hiding this comment.
A bug:
In Creative Power Source, enter manual-input mode and type "abab", the check will fail and then type 1234, PlayerInput is still received the number but it does not change the Power
# Conflicts: # nms/src/main/kotlin/io/github/pylonmc/rebar/i18n/packet/PlayerPacketHandler.kt # rebar/src/main/kotlin/io/github/pylonmc/rebar/Rebar.kt # rebar/src/main/kotlin/io/github/pylonmc/rebar/block/base/RebarSimpleMultiblock.kt # rebar/src/main/kotlin/io/github/pylonmc/rebar/command/RebarCommand.kt # rebar/src/main/kotlin/io/github/pylonmc/rebar/config/RebarConfig.kt # rebar/src/main/kotlin/io/github/pylonmc/rebar/content/fluid/FluidPipeDisplay.kt # rebar/src/main/kotlin/io/github/pylonmc/rebar/fluid/placement/FluidPipePlacementService.kt # rebar/src/main/kotlin/io/github/pylonmc/rebar/item/RebarItem.kt # rebar/src/main/kotlin/io/github/pylonmc/rebar/item/RebarItemSchema.kt # rebar/src/main/kotlin/io/github/pylonmc/rebar/item/research/Research.kt # rebar/src/main/kotlin/io/github/pylonmc/rebar/recipe/IngredientCalculator.kt # rebar/src/main/kotlin/io/github/pylonmc/rebar/recipe/RecipeListener.kt # rebar/src/main/kotlin/io/github/pylonmc/rebar/resourcepack/armor/ArmorTextureEngine.kt # rebar/src/main/kotlin/io/github/pylonmc/rebar/util/RebarUtils.kt # rebar/src/main/kotlin/io/github/pylonmc/rebar/util/position/BlockPosition.kt










The Rebar part is electricity is most done I think, so y'all can start reviewing it.
How it works:
Electric blocks and the electric system are completely disconnected. The only thing electric blocks are/do is hold "electric nodes" and the entities for them. The electric nodes are what the electric system actually operates on. Electric blocks just hold these nodes and interact with the electricity system by manipulating these nodes. There's 4 node types: producers, connectors, consumers, and acceptors. Producers make electricity, connectors connect nodes, consumers require a specific amount to work, and acceptors eat any surplus electricity that comes along. Electricity itself has 4 numbers: volts, amperes, joules, and watts, although the only ones that actually matter in practice are volts and watts. Amperes follow P=IV, and wires have current limits, so in order to push more watts through a wire, you need wither higher voltage or more wire capacity. Joules is just the static form of watts, ie watt = joule/tick. Machines have a specific voltage range they want, so you cant just run everything on the smallest wires at 15 megavolts or smth.