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

New sticky and slippy blocks #489

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

Conversation

leucome
Copy link
Contributor

@leucome leucome commented Oct 12, 2019

Linear sticky block, sticky on opposite side of one axis.
Flat sticky block, sticky on opposite side of two axis.
These block can switch to any x,y,z orientation we can chose the next axis by punching it with anything sticky.

The slippy block do not stick to stickypiston stickyblock and movestone.

A little demo video, https://www.youtube.com/watch?v=DumoGyWlGJg&feature=youtu.be

Linear sticky block
Flat sticky block
Slippy block
@Desour
Copy link
Contributor

Desour commented Oct 12, 2019

Rotation should probably better be done with a screwdriver.

In some places the indentation is a bit wrong.

Could you explain how the slippy block works? I guess it uses buildable_to in some hacky way. There might be better ways to do this.

{x = 0, y = -1, z = 0},
{x = 0, y = 0, z = 1},
{x = 0, y = 0, z = -1},
}
Copy link
Contributor

@Desour Desour Oct 12, 2019

Choose a reason for hiding this comment

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

Copy link
Contributor Author

Choose a reason for hiding this comment

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

If they want to merge the change it's indeed a good idea to move them back in preset. I placed them there originally. But I moved them so that it can work as stand alone with older/unmodified version of mesecon.

pointable = true,
diggable = true,
buildable_to = true,
groups = {cracky=3,oddly_breakable_by_hand=3},
Copy link
Contributor

Choose a reason for hiding this comment

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

This would look nicer:

Suggested change
groups = {cracky=3,oddly_breakable_by_hand=3},
groups = {cracky = 3, oddly_breakable_by_hand = 3},

(Not only here.)

tiles = {"mesecons_slippyblocks.png"},
walkable = true,
pointable = true,
diggable = true,
Copy link
Contributor

Choose a reason for hiding this comment

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

I suggest not to explicitly set all these properties to their default values.

{x = 0, y = 1, z = 0},
{x = 0, y = -1, z = 0},
{x = 0, y = 0, z = 0},
{x = 0, y = 0, z = 0},
Copy link
Contributor

Choose a reason for hiding this comment

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

Why the (0,0,0)? Should it connect to itself?

@leucome
Copy link
Contributor Author

leucome commented Oct 12, 2019

Rotation should probably better be done with a screwdriver.

In some places the indentation is a bit wrong.

Could you explain how the slippy block works? I guess it uses buildable_to in some hacky way. There might be better ways to do this.

I noticed that the sticky system already ignore air and water or any build_to block. So I made a built_to block that swap place with a common block when we try interact with it.

I am sure there is a better way to do this. But it will require change to be done to other mesecon files. If these block are approved as a concept and included to mesecon it will be a good idea to look into these improvement.

It's possible to change axis with the screw driver. 
Note that It does not really use facedir but still use 3 pre-made orientations.  Paramtype2 facedir is required for some screw driver to trigger on_rotate but it's not really used for the rotation.
It's possible to change axis with the screw driver. 
Note that It does not really use facedir but still use 3 pre-made orientations.  Paramtype2 facedir is required for some screw driver to trigger on_rotate but it's not really used for the rotation.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants