打飞机01-游戏框架的搭建

游戏界面.gif

游戏框架的搭建

1.游戏背景
2.飞机和喷气动画

一、添加游戏背景

首先要注意的是self.size和self.view.frame.size这两个尺寸是不相同的,以前上课的时候没有分清楚,结果添加的背景总是尺寸不对,为了简便的解决这个问题直接在didMoveToView中添加这样的一行代码

-(void)didMoveToView:(SKView *)view {

    self.size = self.view.frame.size;


    [self backgroundNode];

    [self planeNode];
    
}

接下来设置背景

-(void)backgroundNode {
    SKSpriteNode *bg = [SKSpriteNode spriteNodeWithImageNamed:@"background"];

    //背景图片在最底层,所以设置zPosition = 0
    bg.zPosition = 0;

    //为了防止background.png和屏幕尺寸不同,直接设置图片尺寸和屏幕一样大小
    bg.size = self.size;
    
    //这里设置锚点和bg的坐标都为0点
    bg.position = CGPointZero;
    bg.anchorPoint = CGPointZero;

    [self addChild:bg];
}

附上一张锚点的图片

锚点图片

二、飞机以及喷气动画

-(void)planeNode {
    
    SKSpriteNode *plane = [SKSpriteNode spriteNodeWithImageNamed:@"hero1"];
    plane.name = @"plane";

    //plane位于背景的上层,所以设置zPosition = 1
    plane.zPosition = 1;
    
    //调整一下飞机的大小和初始位置
    plane.xScale = 0.6;
    plane.yScale = 0.6;
    plane.position = CGPointMake(self.size.width/2, 50);
    
    [self addChild:plane];
    
    
 //喷气动画,因为这里只有两张纹理图片,不超过3张不建议使用for循环,超过3张在后续会提到
    //首先将两张图片转换成纹理图片
    SKTexture *planeTexture1 = [SKTexture textureWithImageNamed:@"hero1"];
    SKTexture *planeTexture2 = [SKTexture textureWithImageNamed:@"hero2"];

    //接着将这两张纹理图片添加到数组
    NSArray *textureArr = [NSArray arrayWithObjects:planeTexture1, planeTexture2, nil];

    //将这个纹理数组转换成每张图片显示0.2s的动作
    SKAction *textureAct = [SKAction animateWithTextures:textureArr timePerFrame:0.2];

    //无限循环这个动作
    SKAction *repeatTexture =[SKAction repeatActionForever:textureAct];

    //然后再让plane执行这个动作就会持续喷气这个动画
    [plane runAction:repeatTexture];
    
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥ios动画全貌。在这里你可以看...
    每天刷两次牙阅读 8,613评论 6 30
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌。在这里你可以看...
    F麦子阅读 5,164评论 5 13
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,638评论 25 709
  • 由于很多小伙伴要demo我就不一一发了,直接丢在github上自己下载吧:https://github.com/s...
    FKSky阅读 23,762评论 27 99
  • 亚当生活在一个美丽无比的花园里,这里气候宜人,鲜花遍地,树木丛生,有许多的温顺的动物,亚当无需劳作,有吃不尽的食物...
    Easen的卡片写作人生阅读 621评论 1 2