cocos2d基礎用法(一)

開發工具cocos creator。

比較隨意,看demo源碼總結

1.平臺:

當前平臺系統:cc.sys.os

cc.sys.isNative:false/true;(是不是真機)

cc.sys.isMobile:false/true;(是不是手機可以使瀏覽器選擇了手機模式)

cc.sys.OS_ANDROID:Android;

cc.sys.OS_IOS:iOS;

cc.sys.OS_WINDOWS:Windows;

cc.sys.OS_OSX:OS X;

cc.sys.isBrowser:true/false(是不是瀏覽器);

cc.sys.browserType:瀏覽器類型,比如:safari;

用法:

(1).if(cc.sys.os == cc.sys.OS_ANDROID){}

(2).if(!cc.sys.isNative){ return; }

cc.sys.browserType !== cc.sys.BROWSER_TYPE_UC

2.存儲:

cc.sys.localStorage.setItem("bgmVolume",v);

var t = cc.sys.localStorage.getItem("bgmVolume");

cc.sys.localStorage.removeItem("wx_account");

3.節點隱藏/顯示:(可用于彈出框)

cc.find("Canvas/alert").active=true;(true為顯示,false為隱藏);

4.獲取某一節點:

(1)varcvs=this.node.getComponent(cc.Canvas);

(2)vart=this.node.getComponent("leixingxuanze");

(3)varbtnClose= cc.find("Canvas/game_result/btnClose");

seat.node.getChildByName("zimocishu").getComponent(cc.Label).string= info.numzimo;

this._lblTip= cc.find("Canvas/reconnect/tip").getComponent(cc.Label);

示例:

this._leixingxuanze= [];

vart=this.node.getChildByName("leixingxuanze");//該節點的名為“leixingxuanze”的子節點

for(vari=0;i

varn=t.children[i].getComponent("RadioButton");

if(n!=null){

this._leixingxuanze.push(n);

}

5.給label賦值:

this.tipLabel.string="nisdji";

6.引入別的js文件:

(1)如果UserMgr.js文件varHTTP= cc.Class({}),則

varUserMgr=require("UserMgr");

(2)如果UserMgr.js文件cc.Class({}),則

varUserMgr=require("UserMgr");

cc.vv.userMgr=newUserMgr();

示例:

cc.vv= {};

varUserMgr=require("UserMgr");

cc.vv.userMgr=newUserMgr();

7.輸出:

cc.log('ddd');

console.log('sdd');

8.字典/數組? 與字符串互轉

字典或數組轉字符串:

var dic={name:'sd',sex:'m'};

JSON.stringify(dic));

字符串格式的字典/數組恢復原類型:

var dicStr='{name:'sd',sex:'m'}';

var dic1=JSON.parse(dicStr);

9.打開地址鏈接進入別的網站:

cc.sys.openURL('http://www.lxweimin.com');

10.跳轉頁面:

cc.director.loadScene("login");

11.全局變量:

(1)cc.baseUrl='192.12.23.13'

(2)window.baseUrl="192.12.23.13";

12.組件設置數組:

(1)

holdsEmpty:{

default:[],

type:[cc.SpriteFrame]

},

(2)holdsEmpty:[cc.SpriteFrame];

(3)

holdsEmpty:{

default:[],

type:cc.SpriteFrame,

},

13.隨機:

Math.random();

14.事件監聽:

(1)this.node.on('game_dingque',function(data){

});

(2)點擊事件代碼篇

varbtn= cc.find("Canvas/popups/"+ btnName);

this.addClickEvent(btn,this.node,"PopupMgr","onBtnClicked");

addClickEvent:function(node,target,component,handler){

vareventHandler=newcc.Component.EventHandler();

eventHandler.target= target;

eventHandler.component= component;

eventHandler.handler= handler;

varclickEvents= node.getComponent(cc.Button).clickEvents;

clickEvents.push(eventHandler);

},

onBtnClicked:function(event){

this.closeAll();

varbtnName= event.target.name;

if(btnName=="btn_agree"){

cc.vv.net.send("dissolve_agree");

}

else if(btnName=="btn_reject"){

cc.vv.net.send("dissolve_reject");

}

else if(btnName=="btn_sqjsfj"){

cc.vv.net.send("dissolve_request");

}

},

15.播放/關閉/暫停音頻:

node.getComponent(cc.Animation).play("dingque_tuijian");

node.getComponent(cc.Animation).stop();

node.getComponent(cc.Animation).pause();

16.資源文件加載:

(1)進度條

cc.loader.onProgress=function( completedCount, totalCount,? item ){

//console.log("completedCount:" + completedCount + ",totalCount:" + totalCount );

if(self._isLoading){

self._progress= completedCount/totalCount;

}

};

(2)全部圖片加載

cc.loader.loadResAll("textures",function(err, assets) {

});

拓展:

獲取url,并把其參數放到數組中:

urlParse:function(){

varparams= {};

if(window.location==null){

returnparams;

}

varname,value;

varstr=window.location.href;//取得整個地址欄

varnum=str.indexOf("?")

str=str.substr(num+1);//取得所有參數? stringvar.substr(start [, length ]

vararr=str.split("&");//各個參數放到數組里

for(vari=0;i

num=arr[i].indexOf("=");

if(num>0){

name=arr[i].substring(0,num);

value=arr[i].substr(num+1);

params[name]=value;

}

}

returnparams;

},

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,983評論 6 537
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,772評論 3 422
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,947評論 0 381
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,201評論 1 315
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,960評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,350評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,406評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,549評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,104評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,914評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,089評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,647評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,340評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,753評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,007評論 1 289
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,834評論 3 395
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,106評論 2 375

推薦閱讀更多精彩內容