Advertisement
redribben

vc code

Nov 4th, 2015
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //
  2. //  ViewController.m
  3. //  tic tac toe
  4. //
  5. //  Created by Bogdan Michalchuk on 10/22/15.
  6. //  Copyright © 2015 PDXRR. All rights reserved.
  7. //
  8.  
  9. #import "ViewController.h"
  10. #import "BMGameDynamics.h"
  11.  
  12. @interface ViewController ()
  13. @property (nonatomic) BOOL oTurn;
  14. @property (weak, nonatomic) IBOutlet UILabel *outCome;
  15.  
  16. @end
  17.  
  18.  
  19. @implementation ViewController {
  20.     BMGameDynamics* gameManager;
  21. }
  22.  
  23. @synthesize oTurn;
  24.  
  25. - (instancetype) initWithCoder:(NSCoder *)aDecoder {
  26.     if (self = [super initWithCoder:aDecoder]) {
  27.         gameManager = [[BMGameDynamics alloc] init];
  28.     }
  29.     return self;
  30. }
  31.  
  32. - (IBAction)newGame:(id)sender {
  33.     [gameManager startAnew];
  34.     [self tTTSquareEnabled:TRUE];
  35.     _outCome.text = @"Good Luck! :)";
  36. }
  37.  
  38. - (IBAction)ticTacToeSquares:(id)sender {
  39.     UIButton *button = (UIButton *)sender;
  40.     NSInteger bTag = button.tag;
  41.     if (oTurn) {
  42.         [button setBackgroundImage:[UIImage imageNamed:@"x.png"]
  43.                           forState: UIControlStateNormal];
  44.     }
  45.     else if (!oTurn) {
  46.         [button setBackgroundImage:[UIImage imageNamed:@"o.png"]
  47.                           forState: UIControlStateNormal];
  48.     }
  49.     int winner = [gameManager modifyXOSpotsWithTurn:oTurn withIndex:(int)bTag];
  50.     switch (winner) {
  51.         case 0:
  52.             break;
  53.         case 1:
  54.             [self tTTSquareEnabled:false];
  55.             self.outCome.text = @"O's WON!!!";
  56.             break;
  57.         case 2: {
  58.             [self tTTSquareEnabled:false];
  59.             self.outCome.text = @"X's WON!!!";
  60.             break;
  61.         }
  62.         case 3: {
  63.             self.outCome.text = @"You BOTH LOST!!!";
  64.             break;
  65.         }
  66.         default:
  67.             break;
  68.     }
  69.     button.enabled=FALSE;
  70.     oTurn = !oTurn;
  71.     NSLog(@"%ld", (long)bTag);
  72. }
  73.  
  74. - (void)tTTSquareEnabled:(BOOL)answer {
  75.     for (NSInteger i = [self.view.subviews count] -1; i>=0; i--) {
  76.         if ([[self.view.subviews objectAtIndex:i] isKindOfClass:[UIButton class]]) {
  77.             UIButton *button = (UIButton*)[self.view.subviews objectAtIndex:i];
  78.             if ((button.tag < 10)) {
  79.                 button.enabled=answer;
  80.             }
  81.             if (answer) {
  82.                 [button setBackgroundImage:nil
  83.                                   forState: UIControlStateNormal];
  84.             }
  85.         }
  86.     }
  87. }
  88.  
  89. - (void)viewDidLoad {
  90.     [super viewDidLoad];
  91.     [gameManager startAnew];
  92. }
  93.  
  94. - (void)didReceiveMemoryWarning {
  95.     [super didReceiveMemoryWarning];
  96. }
  97.  
  98. @end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement