메인 씬은 SKNode 객체를 호출하고 메인 씬에 스프라이트를 추가합니다. 스프라이트가 완료/소멸되면 메인 씬에서 스프라이트를 제거하고 업데이트합니다 점수. 그러나 내가 SKNode 양식을 실행하려고하면 실행되지 않는 것 같지만 오류도 발생하지 않습니다.Xcode SpriteKit SKNode 클래스가 메인 씬에서 코드를 실행하지 않습니다.
아래 코드는 제가 지금 가지고있는 코드입니다. 그것은 문제/비 문제 :)의 일부 단지 코드 전체 코드 아니다
EnemyNode.h
#import "MyScene.h"
@class MyScene;
@interface EnemyNode : SKNode
@property (nonatomic, assign) MyScene *_scene;
EnemyNode.m
-(void)enemyEscaped
{
NSLog(@"Enemy Escaped");
[_scene.enemyArray removeObject:_enemy];
[_scene enemyAttackedBase];
[_enemy removeAllChildren];
[_enemy removeAllActions];
[_enemy removeFromParent];
[self removeFromParent];
}
MyScene.h
#import "EnemyNode.h"
@class EnemyNode;
@interface MyScene : SKScene
@property (nonatomic) NSUInteger myMoney;
@property (nonatomic) EnemyNode *_enemy;
- (void)enemyWasDestroyed:(NSUInteger)money;
MyScene.m
- (void)enemyWasDestroyed:(NSUInteger)money
{
NSLog(@"money, money, money %lu", (unsigned long)money);
self.myMoney += money;
SKLabelNode *moneyLabel = (SKLabelNode *)[self childNodeWithName:@"moneyHUD"];
moneyLabel.text = [NSString stringWithFormat:@"Money: %lu",(unsigned long)self.myMoney];
}
내가 전화 할 때 [_scene.enemyArray removeObject : _enemy] [_scene enemyAttackedBase];
메인 장면에서 아무런 변화가 없습니다 (예 : 돈 라벨이 업데이트되지 않음).
아이디어가 있으십니까?
내가이 일을하는 방식이 완전히 잘못 되었습니까?
감사합니다.