Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes + tunnel colors + transparent latch outputs #179

Open
wants to merge 9 commits into
base: master
Choose a base branch
from

Conversation

evg-zhabotinsky
Copy link
Contributor

Fixed #176
Fixed #174
Made same-colored wires connect more seamlessly (also removed unneeded holes in tunnel texture).

Made tunnels be derived from wires, so now they have colors. (#160)
Wire renderer now handles tunnels too, just draws background and always uses wire circle. (No straight lines.)
Disabled wire-like placement, added proper localized names.
Tunnels are otherwise unchanged.
Old tunnels are converted to green tunnels (one more small LegacyLoader), so no breaking changes.

Current problem: drop-down menu for wires almost goes off-screen and has zoom % printed on top of it.

Further plans: integrate tunnels with wires.
That is, convert tunnels to wires on disconnection and make tunnels by connecting wires.
This will also fix the above problem with drop-down menu, as tunnels will no longer be directly placeable.

Tunnels are still separate gate, just derived from wire.
Current problem: drop-down menu for wires almost goes off-screen, not sure how to fix properly.
@@ -31,7 +32,7 @@
public class CircuitData implements Cloneable {

// cdata version
public static final int version = 1;
public static final int version = 2;
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note that the legacy loader doesn't work at all (because it doesn't do the steps in sequence, there's a big TODO on it), so if you decide to change the version it should probably be fixed first

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These steps are NBT, transform and postTransform. For what I did this is fine.
Anyway, the proper solution is to do conversion using separate "frozen" codebase that will never have to be changed. That is, no CircuitData or any other such classes. It should receive NBT and produce new NBT.

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess... Still would like to see that get fixed though

@evg-zhabotinsky
Copy link
Contributor Author

What about making all wires be tunnels? I mean render disconnected tunnels as wires and not use wires at all. Performance-wise this should not be a big deal, while it would be a lot easier to implement. Tunnels are one big hack and making them auto-convert to wires asks for more hacks.

On the other side, I am currently not sure if I should unify wires and tunnels. When I first installed this mod I just was sure that there should be a way to do what I later found Ctrl+Screwdriver does, and as a side effect I also found that Shift+Click is used for scrolling. But how one should guess that wires can be connected with a tunnel using screwdriver?

Edit:
Also, I am suddenly extremely busy for a week or so. Just pull the first 2 commits (fixes) if you wish (don't forget to lowercase FixIO:)

Added `allowsDragPlacement` method, currently only used for wires.
Split wire/tunnel rendering into separate methods.
Just to be safe, they should "convert" properly anyway.
@Victorious3
Copy link
Owner

@evg-zhabotinsky Planning to finish this or should I pull?

@evg-zhabotinsky evg-zhabotinsky changed the title Fixes + tunnel colors Fixes + tunnel colors + transparent latch outputs Feb 3, 2016
@evg-zhabotinsky
Copy link
Contributor Author

That's all I've done for now.
Sorry for pouring everything into one PR. May the git rebase -i help you if you don't want some bits.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

CAD IO bits not synchronized ICs dont output redstone signal to certain sides
2 participants