cocos2d-x 3.2 |飞机大战:背景与滚动
来源:互联网 发布:2017淘宝账号怎么贷款 编辑:程序博客网 时间:2024/06/08 05:37
五篇介绍飞机大战实现过程
cocos2d-x 3.2 |飞机大战:背景与滚动
前情提要第一篇:背景与滚动
如下:新建项目---->类----->BackGround
BackGround.h
#include <stdio.h>#include "cocos2d.h"using namespace cocos2d;class BackGround:public Node{public: CREATE_FUNC(BackGround); //create方法会调用init bool init(); void update(float t); int count;};BackGround.cpp
#include "BackGround.h"#include "cocos2d.h"using namespace cocos2d;bool BackGround::init(){ if (!Node::init()) { return false; } //添加背景图片 auto Gamebk=Sprite::create("xxxx.jpg"); Gamebk->setTag(10); //设定背景层锚点 坐标 并添加到当前场景 Gamebk->setAnchorPoint(Vec2(0,0)); Gamebk->setPosition(Vec2(0,0)); this->addChild(Gamebk); //添加滚动背景层 锚点 坐标 添加到当前场景 标签 auto Gamebk1=Sprite::create("xxxx.jpg"); Gamebk1->setAnchorPoint(Vec2(0,0)); Gamebk1->setPosition(Vec2(0,0)); this->addChild(Gamebk1); Gamebk1->setTag(11); //计划任务:滚动贴图 this->scheduleUpdate(); //添加云彩图片 auto Clouds=Sprite::create("xxxxx.png"); Clouds->setScale(0.3, 0.3); this->addChild(Clouds); Clouds->setTag(13); Clouds->setAnchorPoint(Vec2::ZERO); //随机生成云彩位置 int px=rand()%(int)Director::getInstance()->getWinSize().width; int py=rand()%(int)Clouds->getContentSize().height+Director::getInstance()->getWinSize().height; //CCLOG("%d %d ",px,py); Clouds->setPosition(px, py); count=0; return true;}void BackGround::update(float t){ //移动云彩逻辑 count=count+1; if (count>1) { auto Clouds=this->getChildByTag(13); Clouds->setPositionY(Clouds->getPositionY()-2); if (Clouds->getPositionY()<-Clouds->getContentSize().height) {// Clouds->setPositionY(// Director::getInstance()->getWinSize().height+Clouds->getContentSize().height); int px=rand()%(int)Director::getInstance()->getWinSize().width; int py=rand()%(int)Clouds->getContentSize().height+Director::getInstance()->getWinSize().height; Clouds->setPosition(px, py); } } //移动背景逻辑 auto Gamebk=this->getChildByTag(10); auto Gamebk1=this->getChildByTag(11); Gamebk->setPositionY(Gamebk->getPositionY()-1); Gamebk1->setPositionY(Gamebk->getPositionY()+Gamebk->getContentSize().height); if (Gamebk1->getPositionY()<=0) { Gamebk->setPositionY(Gamebk1->getPositionY()); }}
总结:实现了背景、背景滚动、云彩、云彩随机出生+移动。
0 0
- cocos2d-x 3.2 |飞机大战:背景与滚动
- cocos2d-x 3.2 |飞机大战:飞机与子弹
- [cocos2d-x][游戏开发]通过cocos2d-x实现简易飞机大战 03.游戏界面 背景层实现滚动
- cocos2d-x 3.2 |飞机大战:敌机与爆炸
- cocos2d-x 3.2 |飞机大战:碰撞与分数
- cocos2d-x 3.2 |飞机大战:技能
- 【cocos2d-x入门实战】微信飞机大战之三:引擎坐标系,锚点和背景滚动
- cocos2dx飞机大战Cocos2d-x飞机实现
- cocos2dx飞机大战教程Cocos2d-x飞机大战运行效果
- cocos2d中分步实现飞机大战----游戏场景中背景的滚动
- Cocos2d-x 3.2 简易飞机大战教程系列 【一】
- Cocos2d-x 3.2 lua飞机大战开发实例(一)背景地图,飞机,子弹的封装,以及lua中定时器的使用
- 【cocos2d-x 3.7 飞机大战】 决战南海I (八) 背景移动
- cocos2d-x笔记(九)Lua开发飞机大战-3-背景图的滚动
- Cocos2d-x飞机大战教程笔记
- cocos2d-x小游戏——飞机大战
- Cocos2d-x飞机大战源代码下载
- cocos2d-x--->飞机大战第一天0905
- c语言之可变参数函数
- 杨辉三角
- C#验证码
- adt lauching project
- 字符串匹配
- cocos2d-x 3.2 |飞机大战:背景与滚动
- LeetCode OJ - Restore IP Addresses
- 面试10大算法汇总+常见题目解答(Java)
- 外籍军团(ftp射击游戏)的细节
- 利用UltimateAndroid快速开发(一):配置篇
- PHP调试
- String 类
- 环境连接报错(最大连接数超过) APP-FND-01516
- 保研上级实验考题(郑州大学,计算机,软件,据经验,很多原题)