Hey, I'm making a game that goes across a lot of interface files. I'm working on coding it so that there's a timer counting across all of them. If this code is just completely terrible, please let me know lol. Here's what I have:
GameTimerViewController.h
@interface GameTimerViewController : UIViewController {
int time;
NSTimer *maintimer;
IBOutlet UILabel *mylabel;
}
- (IBAction)newgame;
- (void)updatetime;
-(IBAction)save;
-(IBAction)switchPage:(id)sender;
@endGameTimerViewController.m
#import "GameTimerViewController.h"
#import "Page2.h"
@implementation GameTimerViewController
- (void) awakeFromNib {
time = 0;
}
- (IBAction)newgame {
maintimer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(updatetime) userInfo:nil repeats:YES];
}
- (void) updatetime {
time = time +1;
if (time <=0) {<br />
[maintimer invalidate];
//game over
}
mylabel.text = [NSString stringWithFormat:@"%i" , time];
}
-(IBAction)save {
NSString *savestring = mylabel.text;
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:savestring forKey:@"savedstring"];
[defaults synchronize];
[maintimer invalidate];
}
-(IBAction)switchPage:(id)sender {
Page2 *p2 =[[Page2 alloc] initWithNibName:nil bundle:nil];
[self presentModalViewController:p2 animated:YES];
}
Page2.h
@interface Page2 : UIViewController {
int time;
NSTimer *maintimer;
IBOutlet UILabel *label2;
}
-(IBAction)load;
@endPage2.m
@implementation Page2
-(IBAction)load {
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *loadstring = [defaults objectForKey:@"savedstring"];
[label2 setText:loadstring];
maintimer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(updatetime) userInfo:nil repeats:YES];
}
- (void) updatetime {
time = time +1;
if (time <=0) {<br />
[maintimer invalidate];
//game over
}
label2.text = [NSString stringWithFormat:@"%i" , time];
}