nes/NesKit/NesLayer.m

32 lines
772 B
Objective-C

//
// NesLayer.m
//
//
// Created by Мустафаев Селим Мустафаевич on 28.09.2023.
//
#import "NesLayer.h"
@implementation NesLayer {
NSTimer* _timer;
}
- (instancetype)initWithNesSystem:(NesSystem*)system {
if(self = [super init]) {
self.system = system;
self.contentsGravity = kCAGravityResizeAspect;
_timer = [NSTimer timerWithTimeInterval:1.0/60.0 repeats:YES block:^(NSTimer * _Nonnull timer) {
if(self.system) {
self.contents = (__bridge id _Nullable)(self.system.frame);
[self.system stepToNextFrame];
}
}];
[[NSRunLoop currentRunLoop] addTimer:_timer forMode:NSDefaultRunLoopMode];
}
return self;
}
@end