HelloWorldLayer.h代码
@interface HelloWorldLayer : CCLayer <GKAchievementViewControllerDelegate, GKLeaderboardViewControllerDelegate>
{
CCSprite *brid;
}
@property (nonatomic,retain) CCSprite *bird;
+(CCScene *) scene;
@end
HelloWorldLayer.m代码
@synthesize bird;
+(CCScene *) scene
{
CCScene *scene = [CCScene node];
HelloWorldLayer *layer = [HelloWorldLayer node];
[scene addChild: layer];
return scene;
}
-(void) finishCall{
float x = arc4random()%320;
float y = arc4random()%480;
id moveToAction = [CCMoveTo actionWithDuration:0.9 position:ccp(x, y)];
id finishCallAction =[CCCallFunc actionWithTarget:self selector:@selector(finishCall)];
[self.bird runAction:[CCSequence actions:moveToAction,finishCallAction, nil]];}
-(id) init
{
if( (self=[super init]) ) {
isTouchEnabled_ = YES;
self.bird =[CCSprite spriteWithFile:@"head.png"];
float x = arc4random()%320;
float y = arc4random()%480;
id moveToAction = [CCMoveTo actionWithDuration:0.9 position:ccp(x, y)];
id finishCallAction =[CCCallFunc actionWithTarget:self selector:@selector(finishCall)];
[self.bird runAction:[CCSequence actions:moveToAction,finishCallAction, nil]];
[self addChild: self.bird];
}
return self;
}
-(void)ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
UITouch *touch =[touches anyObject];
CGPoint location = [touch locationInView:[touch view]];
location=[[CCDirector sharedDirector] convertToGL:location];
float distance =powf(self.bird.position.x-location.x, 2)+powf(self.bird.position.y-location.y, 2);
distance = sqrtf(distance);
if(distance<25){
id rotateAction = [CCRotateBy actionWithDuration:0.9 angle:360 ];
[self.bird runAction:rotateAction];
}
}