Beispiel #1
0
 internal static CCTotem.Ends <CCTotem.TotemicFigure> CreateAllTotemicFigures(CCTotem.TotemPole TotemPole)
 {
     if (!object.ReferenceEquals(TotemPole.TotemicFigures[0], null))
     {
         throw new ArgumentException("The totem pole already has totemic figures", "TotemPole");
     }
     CCTotem.TotemicFigure totemicFigure  = new CCTotem.TotemicFigure(TotemPole);
     CCTotem.TotemicFigure totemicFigures = TotemPole.TotemicFigures[TotemPole.Configuration.numRequiredTotemicFigures - 1];
     return(new CCTotem.Ends <CCTotem.TotemicFigure>(totemicFigure, totemicFigures));
 }
Beispiel #2
0
 private TotemicFigure(CCTotem.TotemPole TotemPole, int BottomUpIndex)
 {
     this.TotemPole          = TotemPole;
     this.BottomUpIndex      = BottomUpIndex;
     this.TopDownIndex       = this.TotemPole.Configuration.numRequiredTotemicFigures - (this.BottomUpIndex + 1);
     this.CollisionFlagsMask = CollisionFlags.Sides;
     if (this.BottomUpIndex == 0)
     {
         CCTotem.TotemicFigure collisionFlagsMask = this;
         collisionFlagsMask.CollisionFlagsMask = collisionFlagsMask.CollisionFlagsMask | CollisionFlags.Below;
     }
     if (this.TopDownIndex == 0)
     {
         CCTotem.TotemicFigure totemicFigure = this;
         totemicFigure.CollisionFlagsMask = totemicFigure.CollisionFlagsMask | CollisionFlags.Above;
     }
     this.TotemPole.TotemicFigures[this.BottomUpIndex] = this;
 }
Beispiel #3
0
 private TotemicFigure(CCTotem.TotemPole TotemPole) : this(TotemPole, 0)
 {
     CCTotem.Direction direction = new CCTotem.Direction(this);
     this.TotemicRoute = new CCTotem.Route(CCTotem.Direction.None, direction, new CCTotem.Direction(new CCTotem.TotemicFigure(direction)));
 }