- 博客(90)
- 收藏
- 关注
原创 cocos2.2.3精灵注册监听
MainScene.prototype.prepare = function() { var mainScene = this; var selectLen = mainScene.bgSprite.getChildren().length -1; cc.log("子节点数量" + selectLen); // 为所有选项绑定点击事件 for (var ...
2019-04-22 12:04:34
334
原创 git 命令总结
git操作:git提交流程sudo git add -Asudo git commit -asudo git push origin master修改分之名 命令:git branch (-m | -M) [<oldbranch>] <newbranch>切换分支:git checkout name撤销修改:git checkout --...
2019-04-22 12:02:34
230
原创 cocos2d js 判断是否点击到一个图片的非像素区域
/*** 返回true点中并且不在透明位置, false可能没点中或者点击到透明位置*/onClickTranslate : function(touch, shape){ var targetSize = shape.getContentSize(); var targetPos = shape.convertTouchToNodeSpace(touch); ...
2019-01-03 16:46:41
1155
原创 翻牌
#ifndef __HELLOWORLD_SCENE_H__#define __HELLOWORLD_SCENE_H__#include "cocos2d.h"USING_NS_CC;class HelloWorld : publiccocos2d::Scene{public: staticcocos2d
2017-12-18 14:07:27
318
原创 Mac 上用命令行创建cocos工程
创建之前mac上需要配好环境变量,这个我后期再写进来。还有,可以输入open .bash_profile 来看一下配好的环境或者环境是否配好。另外,创建工程时最后输入的com.a.b,是包名。
2017-11-24 17:39:16
950
原创 安卓打包遇到的问题
1,修改包名:res下面名为value的文件,里面有一个string.xml的文件,在里面修改就好。2,注意:在cocos项目里面,如果不用命名空间,using namespace cocos2d::ui,不会报错,但是到了安卓打包时会报错。3,eclipse里面导入项目和libcocos2d,路径为:项目->cocos2d->cocos->platform->android->java。
2017-11-20 16:31:05
547
原创 cocos2dx C++ 遮罩使玩家头像为圆形
auto clipnode =ClippingNode::create(); clipnode->addChild(headimage); auto circleNode =DrawNode::create(); constint maxTrangle = 360; Vec2 circleVec2[maxTrangle];
2017-09-21 15:04:18
983
原创 cocos2dx C++ 嵌入一个网页
auto webview =cocos2d::experimental::ui::WebView::create(); Size *_size =new Size(visibleSize.width-100, visibleSize.height-100); webview->setContentSize(*_size); webview->s
2017-09-19 15:47:16
1954
原创 js node.js 输出大量数字到一个文本
用js写的话, ,写之前导入node.js/** * Created by Administrator on 2017/5/23. */var fs = require('fs');var numArr = "";function checkPhone(){for(var i=0;i{ var s = first+ "" + second+""+third+""+
2017-05-23 17:36:54
954
原创 scale9Sprite和sprite
这两天在写头像的加载时,,因为头像原图片很大,想要把它缩放成我需要的固定大小,刚开始设置了a.width=100,a.height=100;不管怎么改变,图片的大小实际上都是没变的,最后发现,对于sprite精灵,改变大小只能用setScale();另外经过别人指点,知道了scale9Sprite也可以改变大小,是通过setContentSize()来实现。CCScale9Sprite
2017-03-16 11:01:24
1022
原创 rapidJson::Document doc
RapidJSON是一个C++的JSON解析器及生成器。解析一个JSON字符串至一个document (DOM),对DOM作出简单修改,最终把DOM转换(stringify)至JSON字符串。#include "rapidjson/document.h"#include "rapidjson/writer.h"#include "rapidjson/string
2016-12-27 16:20:35
5191
原创 html5最最基本
一般新建一个html文件,整体结构是:html>html lang="en">head> meta charset="UTF-8"> title>Titletitle>head>body>body>html>第一句话相当于发言时的,,领导好,,所以可以省去不写;第二行也可以不写,删除第二行,最后一行对应当然也要删除。地三行说明该文档的字符编码,有三种形式, m
2016-12-01 17:07:07
388
原创 初始html5
学html5是为了看js的一个类库jquery,,刚开始自己搜了下html的东西随便看了下,,发现很奇怪,,感觉学起来很麻烦,就想直接去看Jquery,但我的老师说看一下html5会有帮助,,我就只好又来了,刚开始对用什么编辑器纠结了很久,eclipse,DW,最后还是觉得常用的webstorm好用,,我是看的书,从最简单的看起,,写了个小东西,,发觉很神奇,,激发了我学html的渴望,,不错。这
2016-12-01 16:53:20
444
原创 访问服务端网址获取数据
/////////////////////////////////////var xhr = cc.loader.getXMLHttpRequest();var statusGetLabel = new cc.LabelTTF("Status:", "Thonburi", 18);this.addChild(statusGetLabel, 1);statusGetLabel.x =
2016-11-29 10:50:21
496
原创 js 获取url参数
因为写的一个回放游戏的模块要发布成web版本,而我的程序里需要获取几个数据以访问服务端的网页,,要获取的数据是通过客户端传过来的,发布后的web版本是他们后端拿去用的,,所以我需要获取自己的url参数,,刚开始我并不知道这是什么,,查了资料后才发现,就是获取地址栏而已,,如果早知道,也不会浪费那么多时间了。。 很简单,,需要使用api,,location,,,假设一网址为:http:/
2016-11-29 10:43:23
506
原创 js发布web版本出错 ANT_ROOT 找不到
发布web版本时,在命令窗口里输入 cocos compile -p web -m release然后报错: ANT_ROOT 找不到,,查了百度后,,发现自己没有配置ant环境变量,,,但配置后仍然报错,,,显示和刚开始一样的错。。所以我就又新建一个ANT_ROOT,配置他的环境变量,,就可以了,,,
2016-11-17 11:37:54
2467
原创 js 创建进度条
//添加进度条背景 var slide_bg=new cc.Sprite(res.slide1); this.addChild(slide_bg,30); slide_bg.setPosition(cc.winSize.width/2,cc.winSize.height*0.03); //添加进度条 slide=new ccui.LoadingBar(res
2016-11-14 16:43:07
459
原创 Js: Maximum call stack size exceeded
我写了一个计算回合的函数,,然后在里面计算,当回合数结束的时候,,就设置定时器,,关闭该函数。然后就一直报这个错,,查了下说是溢出,,,但始终找不到原因,后来在每一次回合时,执行动作后,都要在scheduleOnce一次,调用回合函数。堆栈溢出:原因:有小类到大类的递归查询导致溢出2、解决方法思想:A、在做递归查询时候由大类到小类去查询B、匹配结果后及时re
2016-11-10 10:42:33
733
原创 map容器的遍历
在用列表时用到了map容器,,他的遍历是这样的:for(auto allianceInfo:map){(中间赋值用:auto name=map.second.szName)}
2016-11-02 15:57:21
797
原创 cocos2d-x给Text,imageView添加侦听
其实很简单,跟button一样的。auto Text_cancelcreate = static_cast(m_ClubLayer[Panel_ccreateclub]->getChildByName("TextField_14cancel"));Text_cancelcreate->addTouchEventListener(CC_CALLBACK_2(PageClubLayer::on
2016-11-02 10:39:20
1379
原创 cocos2d-x sudio和程序编辑注意事项
当你在UI里面拖出来一个button,text,imageview时,,导出生成文件,在程序里面获取到这些控件,并添加侦听时,,会发现只有按钮的侦听添加成功了,,图片,文本什么的,,明明一模一样,,感觉没错啊,可点击就是没反应,,,这种时候,,就要到studio里面勾选一个东西,,就是属性->常规里面,,把交互性勾上。。。可以弱弱地说一声蛋疼么,,,,因为UI是我自己搭的,,程序需要我自己写,,,
2016-11-02 10:16:59
425
原创 cocos2d-x ListView列表
用这个列表时,,我真是头大,,学习了2个多星期,,足以可见我是有多笨。然而还没有全理解。基本上往里面添加东西时的步骤为(代码为例):Button* oitem = (Button*)m_oneBtnClub->clone();oitem->setVisible(true);oitem->setTag(allianceInfo.second.idAlliance);//oitem
2016-11-02 10:05:34
3306
原创 cocos2d-x CheckBox添加侦听
之前写文本,按钮,图片时,,侦听用的如鱼得水,,但是到了复选框CheckBox,有那么一瞬的迷茫,,只知道大概是有个什么判断,,是点开还是关闭,然后做相应的处理,,应该是跟按钮什么的不一样的吧,,但又不知道怎么写,,查了资料才发现,,不是那么复杂,,可以看看。 CheckBox* checkbox = static_cast(Helper::seekWidgetByName(ro
2016-11-02 09:43:27
1619
原创 Cocos2d-x 3.10把文本设置为空
把文本设置为空时,,a.setString("");可能会在清空地方用到;之前设置的是a.setString(nullptr);这样是不对的。
2016-11-01 11:34:11
345
原创 C++字符串格式化
printf 和sprintf 都使用格式化字符串来指定串的格式,在格式串内部使用一些以“%”开头的格式说明符(format specifications)来占据一个位置,在后边的变参列表中提供相应的变量,最终函数就会用相应位置的变量来替代那个说明符,产生一个调用者想要的字符串。格式化值:%% -返回百分号%b –返回二进制数%c –返回与ASCII值相
2016-11-01 11:17:54
1179
转载 C++stl容器类使用
C++中有两种类型的容器:顺序容器和关联容器。顺序容器主要有vector、list、deque等。其中vector表示一段连续的内存,基于数组实现,list表示非连续的内存,基于链表实现,deque与vector类似,但是对首元素提供插入和删除的双向支持。关联容器主要有map和set。map是key-value形式,set是单值。map和set只能存放唯一的key,multimap和multise
2016-10-20 09:45:04
318
原创 C++里面表达(a/b)的写法
比如两个数a,b,如果是在js 里面,我果断写成ss.setString(a+"/"+b);但在C++里面,这样写不报错,但值为空,,,搞得我空欢喜一场,,应该写成ss->setString(_string::createWithFormat("%d/%d",a,b)->getCstring());
2016-10-18 18:03:59
2680
原创 initialization of 'nret' is skipped by 'default' label
用到了一个switch语句,switch (event){case EventTypeCreateAlliance:int * nret = (int*)data; if(){}break;default:break;}然后里面就会报错,如题目,,百度了下,说是在case里面定义变量时,要用{}括起来,,这是解决办法。详解如下:
2016-10-11 15:07:09
616
原创 CCAction
CCFiniteTimeAction:有限次动作执行类,按时间顺序执行,执行完后动作结束,CCSpeed:调整实体(节点)的速度,CCFiniteTimeAction又分为CCActionInstanse(瞬时动作的基类)和CCActionInterval(延时动作的基类)。CCActionInstanse:没什么特别,跟CCActionInterval主要区别是没有执行过程,动作
2016-10-11 12:11:56
399
原创 设置按钮点击后一直保持被点击时的状态
昨天写游戏时,需要实现一个点击按钮后跳转到相应界面,然后在该界面时,那个按钮要一直保持点击时的颜色,或状态,,考虑了两种办法,第一种按钮用图片来做imageView,做Ui时也是把button换成了image,但我刚开始没写过C++的图片按钮,,找度娘也没得办法,,,第二种是就用Button,点击后再设置button的图片,,但我找不到设置图片的函数,,,刚开始用button->setEnable
2016-10-11 11:43:18
10382
原创 EditBox
首先使用命名空间 using namespace cocos2d::ui;定义:EditBox * 名字EditBox和TextField配合使用:EditBox* PageClubLayer::ReplaceTextField(TextField* pTField){cocos2d::ui::EditBox* editname = cocos2d::ui::EditB
2016-10-09 17:12:18
600
原创 TextField
TextField * textField = TextField::create("input words here", "Arial", 30);textField->setPosition(Vec2(widgetSize.width / 2.0f, widgetSize.height / 2.0f));textField->addEventListener(CC_CALLBA
2016-10-09 16:55:48
888
原创 宏定义
宏定义是替换,不做计算,也不做表达式求解。简称宏。格式:#define 标识符 字符串说明:(1)宏名一般用大写(2)使用宏可提高程序的通用性和易读性,减少不一致性,减少输入错误和便于修改。例如:数组大小常用宏定义(3)预处理是在编译之前的处理,而编译工作的任务之一就是语法检查,预处理不做语法检查。(4)宏定义末尾不加分号;(5)宏定义写在
2016-10-09 14:17:22
1384
1
转载 C++设计模式-Observer观察者模式
观察者模式概念:定义对象间的一种一对多的依赖关系,以便当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并自动更新。“Define a one-to-many dependency between objects so that when one object changes state, all its dependents are notified and updated automat
2016-10-09 12:10:42
340
原创 static_cast
cast:强制类型转换,标准C++的类型转换符:static_cast, dynamic_cast。标准C++中有四个类型转换符:static_cast、dynamic_cast、reinterpret_cast、和const_cast。static_cast用法:static_cast(expression); //把expression转换为type-id类型,主要用于把vo
2016-10-09 11:16:33
330
原创 C++加载csb文件
Node* root=CSLoader::createNode("名字");this->addChile(root);Layer* 666=(Layer*)root->getChildByName("名字"); 当然头文件需要:#include "cocostudio/CocoStudio.h"#include "ui\CocosGUI.h"using namesp
2016-10-08 18:22:43
891
原创 #pragma once
#pragma once 表示该文件只运行一次,,因为文件中如果加载了很多东西,每次需要的时候都要加载的话会浪费运行速度。
2016-10-08 17:23:32
700
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人