我已经使用了objective-c和sprite kit一段时间了,但总是使用一个庞大的类来处理所有事情。对于这个应用程序,我需要有多个类。我怎么能有一个类,比如名为MySprite.m,它将拥有精灵的所有代码,并且能够在GameScene.m中的MySprite.m中添加精灵或调用方法?
答案 0 :(得分:0)
以下是如何在新类中创建和调用方法的示例:
1)使用MySprite
方法
init
的新类
#import "MySprite.h"
@implementation MySprite
- (id) init {
if (self = [super init]) {
// Add initialization code here, as needed
}
return self;
}
- (void) addSprite {
// Do something here
}
@end
2)在MySprite.h中,声明方法和属性
#import <SpriteKit/SpriteKit.h>
@interface MySprite : NSObject
// Declare this if you want to add nodes to the scene in your SKScene subclass
@property (nonatomic, weak) SKScene *scene;
// Declare methods to be called externally
- (void) addSprite;
@end
3)在GameScene.m中,分配并初始化MySprite
实例
MySprite *mySprite = [[MySprite alloc] init];
mySprite.scene = self;
// Call a MySprite method
[mySprite addSprite];