实训八(游戏背景)

首先呢,先说说导演、场景、层、精灵的关系,一个场景里面包含图层,就是说层可以加载到场景当中,层上面又可以有很多精灵,这些精灵的移动、消失等动作构成了游戏的主要部分,一个游戏可能不仅仅只有一个场景,但是有且仅有一个导演的存在,这个存在且唯一的导演控制着整个游戏的流程。创建背景的通用三部曲:场景的创建、层的创建、精灵的创建(别忘记将层加入场景、将精灵计入层中)
//创建Scene
auto scene = Scene::create();
//创建层
auto layer = HelloWorld::create();
//把层加入场景中
scene->addChild(layer);
//创建一个精灵
auto sprite = Sprite::create( "HelloWorld.png" );
//把精灵加到层里
layer->addChild(sprite, 0);
 
言归正传,我的项目中涉及到的背景创建代码如下:
switch (BGI_Number) {
 case 1:
  Image_One = Sprite::create(strName);
  Image_Two = Sprite::create(strName);
  break;
 case 2:
  Image_One = Sprite::create(strName);
  Image_Two = Sprite::create(strName);
  break;
 case 3:
  Image_One = Sprite::create(strName);
  Image_Two = Sprite::create(strName);
  break;
 case 4:
  Image_One = Sprite::create(strName);
  Image_Two = Sprite::create(strName);
  break;
 case 5:
  Image_One = Sprite::create(strName);
  Image_Two = Sprite::create(strName);
  break;
 default:
  break;
 }
 
看了也许会有些不理解,不是说加背景吗?怎么一下出来了5个,其实方法就是三部曲,为了避免游戏过于无聊,可以利用C++中的随机函数、%取余和Swich语句实现多个背景的随机出现。

转载于:https://www.cnblogs.com/revenge/p/5890554.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值