Class RuleSet.Atom

java.lang.Object
edu.wisc.game.engine.RuleSet.Atom
Enclosing class:
RuleSet

public static class RuleSet.Atom
extends Object
Syntax:(counter,shape,color,position,bucketFunctions)

Example: (10,square,*,*,[1,2]) (10,*,blue,10,[2,3])

  • Field Details

    • counter

      public final int counter
      -1 means "no limit"
    • shapes

      public final Piece.Shape[] shapes
      If null, there are no shape restrictons; if empty or non-empty array, then either one of the elements must match, or (since GS5) permission may be granted via propertyConditions instead)
    • colors

      public Piece.Color[] colors
      For shape-and-color pieces, determines acceptable colors. Null means "no restriction"
    • plist

      public RuleSet.PositionList plist
      Alternative for GS5
    • bucketList

      public RuleSet.BucketList bucketList
  • Method Details

    • toString

      public String toString()
      Overrides:
      toString in class Object
    • toSrc

      public String toSrc()
      Formats the Atom as the source code of the rules set
    • acceptsColorShapeAndProperties

      public boolean acceptsColorShapeAndProperties​(Piece p, Expression.VarMap2 varMap)
      Does this atom accept a specified piece, based on its shape, color, and (in GS3+) any other properties? Since GS5, the "code:" field of the atom is also taken into account.
      Parameters:
      varMap - Map with variable values for expression evaluations. Maybe null before GS5.