Add RandomMask (not sure if really useful)

This commit is contained in:
aumgn 2012-08-29 11:28:25 +02:00
parent f2557abf9a
commit 21d603ce4e
2 changed files with 28 additions and 0 deletions

View File

@ -632,6 +632,10 @@ public class WorldEdit {
} }
return new BiomeTypeMask(biomes); return new BiomeTypeMask(biomes);
case '%':
int i = Integer.parseInt(component.substring(1));
return new RandomMask(((double) i) / 100);
case '!': case '!':
if (component.length() > 1) { if (component.length() > 1) {
return new InvertedMask(getBlockMaskComponent(player, session, masks, component.substring(1))); return new InvertedMask(getBlockMaskComponent(player, session, masks, component.substring(1)));

View File

@ -0,0 +1,24 @@
package com.sk89q.worldedit.masks;
import com.sk89q.worldedit.EditSession;
import com.sk89q.worldedit.LocalPlayer;
import com.sk89q.worldedit.LocalSession;
import com.sk89q.worldedit.Vector;
public class RandomMask implements Mask {
private final double ratio;
public RandomMask(double ratio) {
this.ratio = ratio;
}
@Override
public void prepare(LocalSession session, LocalPlayer player, Vector target) {
}
@Override
public boolean matches(EditSession editSession, Vector pos) {
return Math.random() < ratio;
}
}