Updated WorldEdit FAWE mask list (markdown)

Jesse Boyd 2017-05-09 10:38:30 +10:00
parent e42afaf73c
commit bd90fd25eb

@ -1,8 +1,19 @@
# Masks
A mask is a restriction on an edit e.g. only replace blocks below stone. Global masks apply to all edits, brush masks apply to just the current brush.
# `Masks`
A mask is a restriction on an edit for when blocks are placed e.g. only replace blocks below stone. Global masks apply to all edits, brush masks apply to just the current brush.
Separating masks by spaces (` `) or colons (`:`) uses the intersection of all masks (all of them must be true). Separating masks by commans (`,`) uses the union of the masks, and only one has to be true.
----
### Syntax
#### Blocks
Use the name or id of a block (e.g. `stone`). For more info see [this page on the block data syntax](http://wiki.sk89q.com/wiki/WorldEdit/Block_data_syntax)
#### Multiple masks
Use `,`(OR) or `&`(AND) to separate multiple masks. e.g. `grass,$desert`
#### Arguments
Mask arguments should be inside square brackets e.g. `#offset[0][5][3]`
----
### Setting a mask
#### `//gmask [masks...]`
Perm: `worldedit.global-mask`
Desc: The global destination mask applies to all edits you do and masks based on the destination blocks (i.e. the blocks in the world).
@ -16,68 +27,4 @@ Desc: Set the brush destination mask
Perm: `worldedit.brush.options.mask`
Desc: Set the brush source mask
## List of masks
#### Simple masks
`#existing`: Allow any non air blocks
`#solid`: Allow any solid block
`#selection`: Restrict to current selection
`#dselection`: Same as `#selection`
`#xaxis`: Restrict to initial x-axis
`#yaxis`: Restrict to initial y-axis
`#zaxis`: Restrict to initial z-axis
`#id`: Restrict to initial id
`#data`: Restrict to initial data
`#iddata`: Restrict to initial id and data
`#wall`: Restrict to walls (any block n,e,s,w of air)
`#surface`: Restrict to surfaces (any block touching air)
`#nolight`: Restrict to blocks without light (sky or emitted)
`#haslight`: Restricts to blocks with light (sky or emitted)
#### Block mask `[blocks]`
Example: `stone:wood`
Explanation: Allows any block which is already stone or wood
#### Angle mask `/[min]:[max]`
Example: `/0d:45d`
Explanation: Allows any block where the adjacent block is between 0 and 45 degrees.
Example: `/3:20`
Explanation: Allows any block where the adjacent block is between 3 and 20 blocks below
#### Radius mask `{[min]:[max]`
Example: `{5:20`
Explanation: Restricts blocks to within a specific radius range of the initial block
#### Adjacent mask `~[pattern][=min[:max]]`
Example `~stone:wood`
Explanation: Allows any block if it is adjacent to stone or wood
Example: `~bedrock=2:4`
Explanation: Allows any block if it is adjacent to between 2 and 4 bedrock
#### Below mask `<[pattern]`
Example: `<stone`
Explanation: Allows any block directly beneath stone
#### Above mask `>[pattern]`
Example: `>stone`
Explanation: Allows any block directly above stone
#### Biome mask `$[biome]`
Example: `$FOREST`
Explanation: Restricts to the specified biome
#### Random mask `%[chance]`
Example: `%34`
Explanation: 34% chance any block is allowed
#### Negate mask
Example: `!<stone`
Explanation: Can negate any mask, this will allow any block not below stone
#### Expression mask `=[expression]`
Example: `=abs(z+1)%2-abs(x)%2`
Explanation: Restricts to blocks where x and z coords are even numbers.
Info: http://wiki.sk89q.com/wiki/WorldEdit/Expression_syntax
#### offset mask
Example: `#offset:1:0:0:stone`
Explanation: Requires the block to the east to be stone
#### Light masks
- `#light:<min>:<max>`
- `#skylight:<min>:<max>`
- `#blocklight:<min>:<max>`
- `#opacity:<min>:<max>`
- `#brightness:<min>:<max>`
## Registering a mask through the API
```Java
FaweAPI.registerMask(yourCustomMask);
```
### [`>> See here for the full list of masks...`](https://github.com/boy0001/FastAsyncWorldedit/wiki/Commands#mask-commands-)