Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //
- // ViewController.m
- // tic tac toe
- //
- // Created by Bogdan Michalchuk on 10/22/15.
- // Copyright © 2015 PDXRR. All rights reserved.
- //
- #import "ViewController.h"
- #import "BMGameDynamics.h"
- @interface ViewController ()
- @property (nonatomic) BOOL oTurn;
- @property (weak, nonatomic) IBOutlet UILabel *outCome;
- @end
- @implementation ViewController {
- BMGameDynamics* gameManager;
- }
- @synthesize oTurn;
- - (instancetype) initWithCoder:(NSCoder *)aDecoder {
- if (self = [super initWithCoder:aDecoder]) {
- gameManager = [[BMGameDynamics alloc] init];
- }
- return self;
- }
- - (IBAction)newGame:(id)sender {
- [gameManager startAnew];
- [self tTTSquareEnabled:TRUE];
- _outCome.text = @"Good Luck! :)";
- }
- - (IBAction)ticTacToeSquares:(id)sender {
- UIButton *button = (UIButton *)sender;
- NSInteger bTag = button.tag;
- if (oTurn) {
- [button setBackgroundImage:[UIImage imageNamed:@"x.png"]
- forState: UIControlStateNormal];
- }
- else if (!oTurn) {
- [button setBackgroundImage:[UIImage imageNamed:@"o.png"]
- forState: UIControlStateNormal];
- }
- int winner = [gameManager modifyXOSpotsWithTurn:oTurn withIndex:(int)bTag];
- switch (winner) {
- case 0:
- break;
- case 1:
- [self tTTSquareEnabled:false];
- self.outCome.text = @"O's WON!!!";
- break;
- case 2: {
- [self tTTSquareEnabled:false];
- self.outCome.text = @"X's WON!!!";
- break;
- }
- case 3: {
- self.outCome.text = @"You BOTH LOST!!!";
- break;
- }
- default:
- break;
- }
- button.enabled=FALSE;
- oTurn = !oTurn;
- NSLog(@"%ld", (long)bTag);
- }
- - (void)tTTSquareEnabled:(BOOL)answer {
- for (NSInteger i = [self.view.subviews count] -1; i>=0; i--) {
- if ([[self.view.subviews objectAtIndex:i] isKindOfClass:[UIButton class]]) {
- UIButton *button = (UIButton*)[self.view.subviews objectAtIndex:i];
- if ((button.tag < 10)) {
- button.enabled=answer;
- }
- if (answer) {
- [button setBackgroundImage:nil
- forState: UIControlStateNormal];
- }
- }
- }
- }
- - (void)viewDidLoad {
- [super viewDidLoad];
- [gameManager startAnew];
- }
- - (void)didReceiveMemoryWarning {
- [super didReceiveMemoryWarning];
- }
- @end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement