"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对话界面设计的更多相关文章

  1. 25个让人无法抗拒的HTML5网站设计实例

    原文地址:http://www.goodfav.com/html5-website-designs-8272.html HTML5在其功能方面给网络市场带来了惊人的改进. HTML5是万维网联盟,在起 ...

  2. 微信HTML5页面设计建议

    一个HTML5页面从提出到完成上线的流程:>   1.需求方.设计人员.H5实现人员三方共同讨论实现方案 2.设计人员出设计图 3.H5人员按设计图出H5页面 4.需求方评估已实现的H5页面后给 ...

  3. 写给“有钱大爷”、”美工殿下”、“前端文艺青年”的微信HTML5页面设计建议

    ==============================   2018更新 iphone X 的设计内容   ==============================     我保证你一分钟就 ...

  4. HTML5的设计目的是为了在移动设备上支持多媒体

    HTML5的设计目的是为了在移动设备上支持多媒体

  5. HTML5游戏设计与开发 小白7-9月的动态

    好久没有更新博客了,最近在努力修炼提升逼格,当然了还有个恶心的毕业论文... 当然啦...在写这个论文的时候也就是为了提升下自身的技术,毕竟我的公司也不是游戏公司,SO 我决定开发个手机游戏.然后考虑 ...

  6. 论文的构思!姚小白的html5游戏设计开发与构思----给审核我论文的导师看的

    此处只为笔记 游戏么基本上确定是用canvas做个能一只手玩的游戏!基本打飞机之类的.毕竟手机也就上下班玩玩的.上下班么基本就是一只手拉着扶手一只手撸啊撸! 当然啦,如果能搞出超级牛逼的游戏,比如刺客 ...

  7. 王家林的81门一站式云计算分布式大数据&移动互联网解决方案课程第14门课程:Android软硬整合设计与框架揭秘: HAL&Framework &Native Service &App&HTML5架构设计与实战开发

    掌握Android从底层开发到框架整合技术到上层App开发及HTML5的全部技术: 一次彻底的Android架构.思想和实战技术的洗礼: 彻底掌握Andorid HAL.Android Runtime ...

  8. 推荐十款非常优秀的 HTML5 在线设计工具

    网络有很多优秀的设计和开发工具可能大家都不知道,因此这篇文章就向设计师推荐十款优秀 HTML5 在线工具,这些工具能够帮助设计师们设计出更有创意的作品.随着 HTML5 技术的不断成熟,网络上涌现出越 ...

  9. 使用HTML5 WebDataBase设计离线数据库

    基于HTML5的Web DataBase 可以让你在浏览器中进行数据持久地存储管理和有效查询,假设你的离线应用程序有需要规范化的存储功能,那么使用Web DataBase,可以使你的应用程序无论是在离 ...

  10. Adobe推出HTML5动画设计工具Edge

    HTML5和Flash,是敌对?是共存? 虽然Flash如今依旧牢牢占领着网络动画的大半江山,但这样的状况终将会被改变. 那么,Edge的推出是否意味着Adobe将放弃和屈服于Flash与HTML5之 ...

随机推荐

  1. string中常用的函数

    string中常用的函数 发现在string在处理这符串是很好用,就找了一篇文章放在这里了.. 用 string来代替char * 数组,使用sort排序算法来排序,用unique 函数来去重1.De ...

  2. hibernate.cfg.xml文件的说明

    <?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hi ...

  3. 在单机Hadoop上面增加Slave

    之前的文章已经介绍了搭建单机Hadoop, HBase, Hive, Spark的方式:link 现在希望在单机的基础上,加一个slave. 首先需要加上信任关系,加信任关系的方式,见前一篇文章:li ...

  4. 使用Less color函数创建专业网站配色方案

    Less提供了很多实用的函数专门用于定义和操作色彩.本文将介绍如何使用这些函数来 帮助你控制色彩,创造合适的色彩搭配,并且保持网站的一致性和专业性 color spinning spin()函数允许我 ...

  5. xxx cannot be resolved to a type 错误解决方法

    (1)jdk不匹配(或不存在)     项目指定的jdk为“jdk1.6.0_18”,而当前eclipse使用的是“jdk1.6.0_22”.需要在BuildPath | Libraries,中做简单 ...

  6. IE6下margin出现双边距

    在IE6下,块元素有浮动和横向margin的时候,横向的margin值会被放大成两倍 解决方法:添加display:inline; eg:下面的例子在IE6下会有两倍边距 <style> ...

  7. myeclipes准备工作

    设置jsp中默认编码为utf-8

  8. Android init.rc文件格式解析

    /***************************************************************************** * Android init.rc文件格式 ...

  9. define预处理以及宏定义

    define的定义方式 无参一般形式:#define 标认符 字符串                     比如:#define COUTD "%d\n" 带参一般形式:#def ...

  10. Linux Shell编程(5):整数运算

    http://blog.sina.com.cn/s/blog_6db275da0101asmf.html #!/bin/sh let a=$1+$2 b=$[$1+$2] ((c=$1+$2)) d= ...