18 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
21 for (
int i = 0; i <
_scale; i++)
23 for (
int j = 0; j <
_scale; j++)
25 flag |= !
UnitApply(origin, (x - origin.
X << 1) + i + origin.
X, (y - origin.
Y << 1) + j + origin.
Y);
44 public Expand(
int xExpansion,
int yExpansion)
50 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
57 flag |= !
UnitApply(origin, x + i, y + j, args);
76 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
81 ((
Vector2D)(ref val))._002Ector((
double)origin.
X, (double)origin.
Y);
104 public Blotches(
int scale = 2,
double chance = 0.3)
113 public Blotches(
int xScale,
int yScale,
double chance = 0.3)
122 public Blotches(
int leftScale,
int upScale,
int rightScale,
int downScale,
double chance = 0.3)
131 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
141 for (
int i = num; i <= num2; i++)
143 for (
int j = num3; j <= num4; j++)
145 flag |= !
UnitApply(origin, x + i, y + j, args);
163 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
182 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
201 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
225 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
227 for (
int i = 0; i <
_types.Length; i++)
247 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
253 for (
int i = 0; i <
_types.Length; i++)
268 0, -1, 1, 0, -1, 0, 0, 1, -1, -1,
276 public IsTouching(
bool useDiagonals, params ushort[] tileIds)
282 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
285 for (
int i = 0; i < num; i += 2)
292 for (
int j = 0; j <
_tileIds.Length; j++)
308 0, -1, 1, 0, -1, 0, 0, 1, -1, -1,
322 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
325 for (
int i = 0; i < num; i += 2)
332 for (
int j = 0; j <
_tileIds.Length; j++)
348 0, -1, 1, 0, -1, 0, 0, 1, -1, -1,
359 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
362 for (
int i = 0; i < num; i += 2)
382 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
388 for (
int i = 0; i <
_types.Length; i++)
405 public HasLiquid(
int liquidLevel = -1,
int liquidType = -1)
411 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
431 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
433 for (
int i = 0; i <
_types.Length; i++)
446 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
458 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
470 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
498 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
500 if (x >=
_xMin + origin.
X && x <= _xMax + origin.X && y >=
_yMin + origin.
Y && y <=
_yMax + origin.
Y)
520 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
530 public Dither(
double failureChance = 0.5)
535 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
551 public Flip(
bool flipX,
bool flipY)
557 public override bool Apply(
Point origin,
int x,
int y, params
object[] args)
561 x = origin.X * 2 - x;
565 y = origin.Y * 2 - y;
static byte Min(byte val1, byte val2)
static byte Max(byte val1, byte val2)
void liquidType(int liquidType)
bool UnitApply(Point origin, int x, int y, params object[] args)
static UnifiedRandom _random
bool IsValid(int x, int y)
Blotches(int xScale, int yScale, double chance=0.3)
Blotches(int scale=2, double chance=0.3)
override bool Apply(Point origin, int x, int y, params object[] args)
Blotches(int leftScale, int upScale, int rightScale, int downScale, double chance=0.3)
readonly GenCondition[] _conditions
Conditions(params GenCondition[] conditions)
override bool Apply(Point origin, int x, int y, params object[] args)
override bool Apply(Point origin, int x, int y, params object[] args)
Dither(double failureChance=0.5)
override bool Apply(Point origin, int x, int y, params object[] args)
Expand(int xExpansion, int yExpansion)
override bool Apply(Point origin, int x, int y, params object[] args)
Flip(bool flipX, bool flipY)
override bool Apply(Point origin, int x, int y, params object[] args)
HasLiquid(int liquidLevel=-1, int liquidType=-1)
readonly ShapeData _shapeData
InShape(ShapeData shapeData)
override bool Apply(Point origin, int x, int y, params object[] args)
override bool Apply(Point origin, int x, int y, params object[] args)
override bool Apply(Point origin, int x, int y, params object[] args)
override bool Apply(Point origin, int x, int y, params object[] args)
static readonly int[] DIRECTIONS
IsTouchingAir(bool useDiagonals=false)
override bool Apply(Point origin, int x, int y, params object[] args)
static readonly int[] DIRECTIONS
IsTouching(bool useDiagonals, params ushort[] tileIds)
override bool Apply(Point origin, int x, int y, params object[] args)
readonly ShapeData _shapeData
override bool Apply(Point origin, int x, int y, params object[] args)
NotInShape(ShapeData shapeData)
override bool Apply(Point origin, int x, int y, params object[] args)
static readonly int[] DIRECTIONS
NotTouching(bool useDiagonals, params ushort[] tileIds)
override bool Apply(Point origin, int x, int y, params object[] args)
override bool Apply(Point origin, int x, int y, params object[] args)
OnlyTiles(params ushort[] types)
OnlyWalls(params ushort[] types)
override bool Apply(Point origin, int x, int y, params object[] args)
RadialDither(double innerRadius, double outerRadius)
override bool Apply(Point origin, int x, int y, params object[] args)
RectangleMask(int xMin, int xMax, int yMin, int yMax)
override bool Apply(Point origin, int x, int y, params object[] args)
override bool Apply(Point origin, int x, int y, params object[] args)
override bool Apply(Point origin, int x, int y, params object[] args)
SkipTiles(params ushort[] types)
SkipWalls(params ushort[] types)
override bool Apply(Point origin, int x, int y, params object[] args)
bool Contains(int x, int y)
static bool SolidOrSlopedTile(Tile tile)
static double Distance(Vector2D value1, Vector2D value2)