cocos2d-html5对话界面设计
"use strict" var _dialogMsgBottom = null;
var _dialogMsgTop = null;
var _dialogMsgId = ;
var _dialogConfig = null;
var _dialogId = ; var DialogLayer = cc.Layer.extend({ init:function () {
var bRet = false;
if (this._super()) { // 底图
var sp = cc.Sprite.createWithSpriteFrameName("bg01.jpg"); //cc.Sprite.create(s_loading);
sp.setAnchorPoint(AnchorPointBottomLeft);
this.addChild(sp, g_GameZOder.bg, ); // 灰底,透明
var dialogBg1 = cc.Sprite.createWithSpriteFrameName("dg1.png");
dialogBg1.setAnchorPoint(AnchorPointBottomLeft);
dialogBg1.setPosition(cc.p(,));
this.addChild(dialogBg1, g_GameZOder.ui); // 下面的黑色背景
var dialogBg2 = cc.Sprite.createWithSpriteFrameName("dg2.png");
dialogBg2.setAnchorPoint(AnchorPointBottomLeft);
dialogBg2.setPosition(cc.p(,));
this.addChild(dialogBg2, g_GameZOder.ui); // 上面的黑色背景
var dialogBg3 = cc.Sprite.createWithSpriteFrameName("dg2.png");
dialogBg3.setAnchorPoint(AnchorPointTopLeft);
dialogBg3.setPosition(cc.p(,winSize.height));
this.addChild(dialogBg3, g_GameZOder.ui); // 菜单
cc.MenuItemFont.setFontSize();
cc.MenuItemFont.setFontName("Arial");
var systemMenu = cc.MenuItemFont.create("NEXT", this.showNextMsg);
var menu = cc.Menu.create(systemMenu);
menu.setPosition(, );
systemMenu.setAnchorPoint(cc.p(, ));
systemMenu.setPosition(winSize.width-, );
this.addChild(menu, g_GameZOder.ui, ); _dialogConfig = DialogConfig[_dialogId]; this.showFirstMsg(); bRet = true;
} return bRet;
},
showNextMsg:function (pSender) {
_dialogMsgId++; if (_dialogMsgId >= _dialogConfig.msg.length) {
// 显示完所有对话,跳转执行
cc.Loader.preload(g_maingame, function () {
var scene = cc.Scene.create();
scene.addChild(GameLayer.create());
// 游戏里面菜单
// scene.addChild(GameControlMenu.create());
cc.Director.getInstance().replaceScene(cc.TransitionFade.create(1.2, scene));
}, this);
}
else {
if (_dialogConfig.msg[_dialogMsgId]) {
if (_dialogMsgId % == ) {
_dialogMsgTop.setString(_dialogConfig.msg[_dialogMsgId]);
}
else {
_dialogMsgBottom.setString(_dialogConfig.msg[_dialogMsgId]);
}
}
}
},
showFirstMsg:function() { var photoTop = cc.Sprite.createWithSpriteFrameName(_dialogConfig.textureNameTop);
photoTop.setPosition(,winSize.height-);
this.addChild(photoTop, g_GameZOder.ui);
var xPos = photoTop.getContentSize().width; _dialogMsgTop = cc.LabelTTF.create(_dialogConfig.msg[_dialogMsgId],"华文黑体",);
_dialogMsgTop.setAnchorPoint(AnchorPointBottomLeft);
_dialogMsgTop.setPosition(cc.p(xPos, winSize.height-));
this.addChild(_dialogMsgTop, g_GameZOder.ui); var photoBottom = cc.Sprite.createWithSpriteFrameName(_dialogConfig.textureNameBottom);
photoBottom.setPosition(,);
this.addChild(photoBottom, g_GameZOder.ui);
_dialogMsgBottom = cc.LabelTTF.create("","华文黑体",);
_dialogMsgBottom.setAnchorPoint(AnchorPointBottomLeft);
_dialogMsgBottom.setPosition(cc.p(xPos, ));
this.addChild(_dialogMsgBottom, g_GameZOder.ui, );
}
}); DialogLayer.create = function () {
var sg = new DialogLayer();
if (sg && sg.init()) {
return sg;
}
return null;
};
cocos2d-html5对话界面设计的更多相关文章
- 25个让人无法抗拒的HTML5网站设计实例
原文地址:http://www.goodfav.com/html5-website-designs-8272.html HTML5在其功能方面给网络市场带来了惊人的改进. HTML5是万维网联盟,在起 ...
- 微信HTML5页面设计建议
一个HTML5页面从提出到完成上线的流程:> 1.需求方.设计人员.H5实现人员三方共同讨论实现方案 2.设计人员出设计图 3.H5人员按设计图出H5页面 4.需求方评估已实现的H5页面后给 ...
- 写给“有钱大爷”、”美工殿下”、“前端文艺青年”的微信HTML5页面设计建议
============================== 2018更新 iphone X 的设计内容 ============================== 我保证你一分钟就 ...
- HTML5的设计目的是为了在移动设备上支持多媒体
HTML5的设计目的是为了在移动设备上支持多媒体
- HTML5游戏设计与开发 小白7-9月的动态
好久没有更新博客了,最近在努力修炼提升逼格,当然了还有个恶心的毕业论文... 当然啦...在写这个论文的时候也就是为了提升下自身的技术,毕竟我的公司也不是游戏公司,SO 我决定开发个手机游戏.然后考虑 ...
- 论文的构思!姚小白的html5游戏设计开发与构思----给审核我论文的导师看的
此处只为笔记 游戏么基本上确定是用canvas做个能一只手玩的游戏!基本打飞机之类的.毕竟手机也就上下班玩玩的.上下班么基本就是一只手拉着扶手一只手撸啊撸! 当然啦,如果能搞出超级牛逼的游戏,比如刺客 ...
- 王家林的81门一站式云计算分布式大数据&移动互联网解决方案课程第14门课程:Android软硬整合设计与框架揭秘: HAL&Framework &Native Service &App&HTML5架构设计与实战开发
掌握Android从底层开发到框架整合技术到上层App开发及HTML5的全部技术: 一次彻底的Android架构.思想和实战技术的洗礼: 彻底掌握Andorid HAL.Android Runtime ...
- 推荐十款非常优秀的 HTML5 在线设计工具
网络有很多优秀的设计和开发工具可能大家都不知道,因此这篇文章就向设计师推荐十款优秀 HTML5 在线工具,这些工具能够帮助设计师们设计出更有创意的作品.随着 HTML5 技术的不断成熟,网络上涌现出越 ...
- 使用HTML5 WebDataBase设计离线数据库
基于HTML5的Web DataBase 可以让你在浏览器中进行数据持久地存储管理和有效查询,假设你的离线应用程序有需要规范化的存储功能,那么使用Web DataBase,可以使你的应用程序无论是在离 ...
- Adobe推出HTML5动画设计工具Edge
HTML5和Flash,是敌对?是共存? 虽然Flash如今依旧牢牢占领着网络动画的大半江山,但这样的状况终将会被改变. 那么,Edge的推出是否意味着Adobe将放弃和屈服于Flash与HTML5之 ...
随机推荐
- BZOJ 2956 模积和
题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=2956 题意:给出n和m.计算: 思路: i64 n,m; i64 cal(i64 m,i ...
- 第九篇 ERP实施项目中需求分析及方案设计的通用思路
顾问实施ERP就好想医生给患者看病抓药,不但具有类似的过程,而且具有其通用的思路. --详见http://bbs.erp100.com/thread-272856-1-1.html 顾问实施ERP就好 ...
- uDig 简介
uDig是一个 open source (EPL and BSD) 桌面应用程序框架,构建在Eclipse RCP和GeoTools(一个开源的Java GIS工具包)上的桌面GIS(地理信息系统) ...
- Git基础(二)
本章内容将介绍第二部分:本地仓储操作.为了加深对每个命令操作的理解,我们可以事先获取一个仓储边学边操作.这里首先 你要明白一个概念,所有本地工作目录下的文件状态无不在乎两种,已跟踪和未跟踪.已跟踪文件 ...
- makeObjectsPerformSelector: 方法的用法
//让数组中得每个元素都调用 @selector 中的get方法 [self.buttons makeObjectsPerformSelector:@selector(get)]; NSString ...
- memcached的LRU删除机制
1)memcached不会自动清空缓存的值如果add了一个值,但不去get它,那么这个值过期了,它也不会被清空.解释:memcached不自动检测和清空值,它只当你需要get这个值的时候,才检测这个值 ...
- hdu 1885 Key Task(bfs+位运算)
题意:矩阵中'#'表示墙,'.'表示通路,要求从起点'*'到达终点'X',途中可能遇到一些门(大写字母),要想经过,必须有对应的钥匙(小写字母).问能否完成,若能,花费的时间是多少. 分析:同hdu ...
- 深入理解 AngularJS 的 Scope(转)
一.遇到的问题 问题发生在使用 AngularJS 嵌套 Controller 的时候.因为每个 Controller 都有它对应的 Scope(相当于作用域.控制范围),所以 Controller ...
- Python内置数据类型之List篇
List的定义: li = ["one" , "two" , "three" , "four"] List是一个有序的集 ...
- 配置dg出现的错误
ORA-09925: Unable to create audit trail file Linux-x86_64 Error: 30: Read-only file system 没有创建adump ...