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 "AppDelegate.h"
- @interface ViewController ()
- @property (weak, nonatomic) IBOutlet UILabel *outCome;
- @end
- @implementation ViewController
- @synthesize idelegate;
- - (IBAction)newGame:(id)sender {
- [self.idelegate startAnew];
- [self tTTSquareEnabled:TRUE];
- _outCome.text = @"Good Luck! :)";
- }
- - (IBAction)ticTacToeSquares:(id)sender {
- UIButton *button = (UIButton *)sender;
- NSInteger bTag = button.tag;
- [self.idelegate modifyXOSpotsWithIndex:(int)bTag];
- button.enabled=FALSE;
- }
- - (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];
- [self.idelegate startAnew];
- // BMGameDynamics* gameManager = [(BMGameDynamics *)[[UIApplication sharedApplication] delegate] delegate];
- BMGameDynamics* gameManager = [[BMGameDynamics alloc] init];
- gameManager.delegate = self;
- [self.idelegate interactionDone];
- }
- #pragma mark Delegate methods
- - (void)updateCurrentSquare:(int)index
- withCurrentPlayer:(BMPlayerType)playNumber {
- UIButton *button = (UIButton *)[self.view viewWithTag:index];
- switch (playNumber) {
- case BMPlayerTypeX:
- [button setBackgroundImage:[UIImage imageNamed:@"x.png"]
- forState: UIControlStateNormal];
- break;
- case BMPlayerTypeO:
- [button setBackgroundImage:[UIImage imageNamed:@"o.png"]
- forState: UIControlStateNormal];
- break;
- default:
- NSLog(@"There was an error with the PlayerDelegate method updateCurrentSquare: withCurrentPlayer:");
- break;
- }
- }
- - (void)updateGameStatusWithWinner:(BMPlayerType)winner {
- switch (winner) {
- case BMPlayerTypeX:
- [self tTTSquareEnabled:false];
- self.outCome.text = @"X's WON!!!";
- break;
- case BMPlayerTypeO:
- [self tTTSquareEnabled:false];
- self.outCome.text = @"O's WON!!!";
- break;
- case BMPlayerTypeTie:
- self.outCome.text = @"You BOTH LOST!!!";
- break;
- default:
- NSLog(@"There was an error with the PlayerDelegate method updateGameStatusWithWinner");
- break;
- }
- }
- @end
Advertisement
Add Comment
Please, Sign In to add comment