// // 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