hudlayer.m と actionlayer.m の 2 つのクラス ファイルがあります。
hudlayer.m にjumpという名前のメソッドがあり、 actionlayer.m に jumpone という名前のメソッドがあります
-(void) jumpone {
_heroBody->ApplyLinearImpulse(b2Vec2(_playerVelX/[_lhelper pixelsToMeterRatio], 1.25), _heroBody->GetWorldCenter());
}
hudlayer.m の jump と呼ばれる別のメソッド
-(void)jump {
ActionLayer *aob = [[ActionLayer alloc] init];
[aob jumpone];
}
問題は、actionlayer.m から Jumpone メソッドを呼び出すときです。私のスプライト ジャンプ (つまり、メソッドが呼び出されます)
アクションレイヤーの私のinitメソッド
- (id)initWithHUD:(HUDLayer *)hud
{
if ((self = [super init])) {
[self setupWorld];
}
return self;
}
しかし、hudlayer.m から jump メソッドを介して jumpone を呼び出すと、失敗し、アプリがクラッシュしました。どんな助けでも大歓迎です.thanks