internal void ExecuteProgramCard(AI ai, ProgramCard card) { switch (card.CardAction) { case ProgramCardAction.RotateLeft: ai.Direction = TileDirectionUtil.TurnLeft(ai.Direction); break; case ProgramCardAction.RotateRight: ai.Direction = TileDirectionUtil.TurnRight(ai.Direction); break; case ProgramCardAction.UTurn: ai.Direction = TileDirectionUtil.Opposite(ai.Direction); break; case ProgramCardAction.Move1: MoveAIOnce(ai); break; case ProgramCardAction.Move2: MoveAIOnce(ai); MoveAIOnce(ai); break; case ProgramCardAction.Move3: MoveAIOnce(ai); MoveAIOnce(ai); MoveAIOnce(ai); break; case ProgramCardAction.BackUp: MoveAIOnce(ai, TileDirectionUtil.Opposite(ai.Direction)); break; } }
public void BlockCard(ProgramCard blockCard) { blockCard.Blocked = true; }
public void BlockCard(ProgramCard blockCard) { blockCard.Blocked = true; }
public void UnblockCard(ProgramCard blockCard) { blockCard.Blocked = false; }
public void UnblockCard(ProgramCard blockCard) { blockCard.Blocked = false; }