-
Notifications
You must be signed in to change notification settings - Fork 63
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
Add Advanced Modifier #144
Merged
Merged
+885
−450
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
I am also not entirely sure about the wording of "rules"? Any ideas? |
Now "ABOVE" means it will place the tile ABOVE any tiles from the ids array.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
AdvancedModifier(2D/3D) is a modular modifier which will allow for much more complex generation.
It works with an array of conditions, all of which it have to be met to place the tile on the target cell.
For example:

Let's say we want to place vegetation on top of side-scrolling terrain. We'll use an OffsetCondition, which checks for a certain tile in an offset to allow placing.
In this case, the first condition is only met if there is a ground tile below.
We also have a chance condition, which is pretty self explanatory.
Now we'll make the tile to be placed a RandomTileInfo, which will choose between trees, grass and tall grass.
Here's the result:

We can also do stuff like this (the torches):

This PR also adds a filter type to only apply modifiers on empty tiles.
To-do