This is a rant post...
I received a request to make a mod. A mod focused on adding redstone-related blocks. I learned what does code of redstone blocks represent. And it is truly horrible, badly readable piece of garbage. File of redstone wire consists of 657 code lines. Code of pistons is scattered across 5 files - 503, 310, 289, 434, and 231 lines respectively. No adequate way to create custom wire and piston implementations, because majority of fields and methods are private, you can't inherit or override them (and inner classes, too). So one ends up with an option to write implementations by copying that code over, removing hard-coded stuff, fixing and adapting it. I understand modders who want profit for their work, because it can be very exhausting. No wonder there are so many bugs and flaws in redstone mechanics...
End of my small rant.
I received a request to make a mod. A mod focused on adding redstone-related blocks. I learned what does code of redstone blocks represent. And it is truly horrible, badly readable piece of garbage. File of redstone wire consists of 657 code lines. Code of pistons is scattered across 5 files - 503, 310, 289, 434, and 231 lines respectively. No adequate way to create custom wire and piston implementations, because majority of fields and methods are private, you can't inherit or override them (and inner classes, too). So one ends up with an option to write implementations by copying that code over, removing hard-coded stuff, fixing and adapting it. I understand modders who want profit for their work, because it can be very exhausting. No wonder there are so many bugs and flaws in redstone mechanics...
End of my small rant.