本站文章均为 李华明Himi 原创,转载务必在明显处注明:(作者新浪微博: @李华明Himi ) 
转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/cocos2d-html5/1528.html

          ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您!

                 

Cocos2dx html5开发,对于用过2d Or -x的童鞋来说非常easy,Himi这里也没有必要去再跟同学们具体的教学一遍。

所以Himi简单做了一个项目,供给大家參考,源代码下载地址及GIF截图在文章最后!

强调一点:执行 cocos2dx-html5项目,大家能够本地安装webserver, apache 等,将项目公布在webserver上就可以。或者直接使用火狐浏览器进行调试,火狐浏览器是没有限制的。

演示样例项目执行截图:

源代码下载地址(含执行后的GIF图):   http://vdisk.weibo.com/s/yZxRoLm4SHuv0

最后直接贴上源代码,方便懒得去下载的童鞋们直接CV~


var CircleSprite = cc.Sprite.extend({_degree:0,ctor:function () {this._super();},draw:function () {cc.drawingUtil.setDrawColor4B(0,0,0,255);if (this._degree < 0)this._degree = 360;cc.drawingUtil.setLineWidth(2);cc.drawingUtil.drawCircle(cc.PointZero(), 30, cc.DEGREES_TO_RADIANS(this._degree), 60, true);},myUpdate:function (dt) {this._degree -= 6;}
});var HpRectSprite = cc.Sprite.extend({_rectWidth:0,_rectHeigth:0,_x:0,_y:0,_hp:0,_maxHp:0,ctor:function () {this._super();},draw:function () {cc.drawingUtil.setDrawColor4B(0,0,0,255);cc.drawingUtil.setLineWidth(2); var vertices = [cc.p(this._x, this._y), cc.p(this._x+this._rectWidth, this._y), cc.p(this._x+this._rectWidth, this._y-this._rectHeigth), cc.p(this._x, this._y-this._rectHeigth)];cc.drawingUtil.drawPoly(vertices, 4, true);cc.drawingUtil.setDrawColor4B(255,0,0,255);cc.drawingUtil.setLineWidth(7); var rate = this._hp/this._maxHp;cc.drawingUtil.drawLine(cc.p(this._x+1, this._y-4), cc.p(this._x+this._rectWidth*rate,this._y-4));},
});var gameLayer = cc.Layer.extend({ //game stategameState:0,//0:map   , 1:home(母港)  , 2.//pointer countpointer_count:10,//pointers (left to right , up to  down)pointArray:[[],[],[],[],[],[],[],[],[],[]],//pointer tower name collitisionpointStrCollisitionArray:[[],[],[],[],[],[],[],[],[],[]],//pointer tower namepointStrArray:[],//tower propertytowerProperArray:[[],[],[],[],[],[],[],[],[],[]],//pet propertypetProperArray:[],//random countrandomCount:0,//tower timetowerTime:[],enumTag:{tag_pointer:0,tag_map:100,tag_shop:101,tag_home:102,tag_bgJumpContent:103,tag_bgCloseX:104,tag_towerProperPeople:105,tag_towerProperDef:106,tag_towerProperAttCount:107,tag_towerProperPeopleC:108,tag_towerProperDefC:109,tag_towerProperAttCountC:110,tag_towerProperLine:111,tag_contentAllPetHpName:112,tag_contentIntoTower:113,tag_contentAdd:130,},//select tower indexselectTowerIndex:-1,//select tower isSHowselectContentIsShow:false,init:function () {var selfPointer = this;this._super();this.schedule(this.logicUpdate, 1 / 60);var size = cc.Director.getInstance().getWinSize();this.pointArray=[[size.width*0.1,size.height*0.6],[size.width*0.23,size.height*0.6],[size.width*0.33,size.height*0.25],[size.width*0.46,size.height*0.64],[size.width*0.5,size.height*0.58],[size.width*0.53,size.height*0.45],[size.width*0.7,size.height*0.6],[size.width*0.8,size.height*0.42],[size.width*0.897,size.height*0.5],[size.width*0.915,size.height*0.175]];this.pointStrArray=["翡冷翠","牛曰","里曰热内裤","狼蛋","篱笆","开锣","摸死客","向肛","洞精","稀泥"];this.towerProperArray=[[1000000,1000000,1000],[5000000,5000000,5000],[20000000,20000000,20000],[5000000,5000000,5000],[5000000,5000000,5000],[20000000,20000000,20000],[1000000,1000000,1000],[100000000,100000000,100000],[1000000,1000000,1000],[20000000,20000000,20000]];this.towerTime=["01:10:60","01:10:60","01:10:60","01:10:60","01:10:60","01:10:60","01:10:60","01:10:60","01:10:60","01:10:60"];//name,hp,maxhpthis.petProperArray=[["皮卡丘",10,100],["小皮卡",30,100],["宠物猫咪",50,100],["清晨大怪兽",70,100],["哇哈哈怪兽",90,100],["pet name",100,100]];//map bgsprite = cc.Sprite.create(r_worldBG);sprite.setPosition(cc.p(sprite.getContentSize().width*0.5, size.height- sprite.getContentSize().height*0.5));sprite.setScale(0.5);sprite.setRotation(180);this.addChild(sprite,0,this.enumTag.tag_map);var rotateToA = cc.RotateTo.create(0.1, 0);var scaleToA = cc.ScaleTo.create(0.1, 1, 1);sprite.runAction(cc.Sequence.create(rotateToA, scaleToA));//circle var circle = new CircleSprite();circle.setPosition(cc.p(40, size.height - 60));this.addChild(circle);circle.schedule(circle.myUpdate, 1 / 60);for (var i=0;i<this.pointer_count;i++){ var towerPoint = cc.Sprite.create(r_towerPoint);towerPoint.setPosition(cc.p(this.pointArray[i][0],this.pointArray[i][1]+size.height));this.addChild(towerPoint,0,this.enumTag.tag_pointer+i);var dyTime = Math.random();if(dyTime<0.2){dyTime=0.2;}var actDown = cc.Sequence.create(  cc.DelayTime.create(dyTime),cc.MoveTo.create(0.2,cc.p(this.pointArray[i][0],this.pointArray[i][1]+size.height)), cc.MoveTo.create(0.2,cc.p(this.pointArray[i][0],this.pointArray[i][1])),cc.MoveTo.create(0.15,cc.p(this.pointArray[i][0],this.pointArray[i][1]+10)),cc.MoveTo.create(0.15,cc.p(this.pointArray[i][0],this.pointArray[i][1])));towerPoint.runAction(actDown);//地名文字var fontNode =this.createFontWithBg(this.pointStrArray[i],23,this.pointArray[i][0],this.pointArray[i][1]+33,true,dyTime+0.5,i);this.addChild(fontNode,0,this.pointer_count+i);}//shopvar shopBtn= cc.Sprite.create(r_shopBtn);shopBtn.setPosition(cc.p(size.width - shopBtn.getContentSize().width*0.5, size.height - shopBtn.getContentSize().height*0.5));this.addChild(shopBtn,0,this.enumTag.tag_shop)//homevar homeBtn= cc.Sprite.create(r_homeBtn);homeBtn.setPosition(cc.p(homeBtn.getContentSize().width, homeBtn.getContentSize().height));this.addChild(homeBtn,0,this.enumTag.tag_home)//map content  var mapContent=this.createContentWithBg(0,0,300,500,true,0,-80);this.addChild(mapContent,0,this.enumTag.tag_bgJumpContent);mapContent.setVisible(false);//closeXvar closeX  = cc.Sprite.create(r_closeX);this.addChild(closeX,0,this.enumTag.tag_bgCloseX);closeX.setVisible(false);//tower propervar towerProperPeople = cc.LabelTTF.create("人口:", "Arial-bold", 17);var towerProperDef = cc.LabelTTF.create("城防:", "Arial-bold", 17);var towerProperAttCount = cc.LabelTTF.create("机甲:", "Arial-bold",17);this.addChild(towerProperPeople,0,this.enumTag.tag_towerProperPeople);this.addChild(towerProperDef,0,this.enumTag.tag_towerProperDef);this.addChild(towerProperAttCount,0,this.enumTag.tag_towerProperAttCount);towerProperPeople.setVisible(false);towerProperDef.setVisible(false);towerProperAttCount.setVisible(false);towerProperPeople.setColor(cc.c3b(0,0,0));towerProperDef.setColor(cc.c3b(0,0,0));towerProperAttCount.setColor(cc.c3b(0,0,0));var towerProperPeopleC = cc.LabelTTF.create("", "Arial-bold", 17);var towerProperDefC = cc.LabelTTF.create("", "Arial-bold", 17);var towerProperAttCountC = cc.LabelTTF.create("", "Arial-bold", 17);this.addChild(towerProperPeopleC,0,this.enumTag.tag_towerProperPeopleC);this.addChild(towerProperDefC,0,this.enumTag.tag_towerProperDefC);this.addChild(towerProperAttCountC,0,this.enumTag.tag_towerProperAttCountC);towerProperPeopleC.setVisible(false);towerProperDefC.setVisible(false);towerProperAttCountC.setVisible(false);towerProperPeopleC.setColor(cc.c3b(0,0,0));towerProperDefC.setColor(cc.c3b(0,0,0));towerProperAttCountC.setColor(cc.c3b(0,0,0));},logicUpdate:function (dt) {if(this.gameState == 0){this.randomCount++;if(this.randomCount%180==0){var resCount= parseInt(Math.random()*5);for(var i = 0;i<resCount;i++){var pointerIndex = parseInt(Math.random()*10);var everyPointer =this.getChildByTag(pointerIndex); everyPointer.stopAllActions();var randomDown = cc.Sequence.create(cc.MoveTo.create(0.2,cc.p(everyPointer.getPositionX(),everyPointer.getPositionY()+10)), cc.MoveTo.create(0.2,cc.p(everyPointer.getPositionX(),everyPointer.getPositionY())),cc.MoveTo.create(0.15,cc.p(everyPointer.getPositionX(),everyPointer.getPositionY()+5)),cc.MoveTo.create(0.15,cc.p(everyPointer.getPositionX(),everyPointer.getPositionY())),cc.MoveTo.create(0.15,cc.p(everyPointer.getPositionX(),everyPointer.getPositionY()+2)),cc.MoveTo.create(0.15,cc.p(everyPointer.getPositionX(),everyPointer.getPositionY())));everyPointer.runAction(randomDown);}this.randomCount=0;} }else{}},onTouchBegan:function (touch, event) {  //point checkvar point =touch.getLocation();if(this.gameState == 0){for (var i=0;i<this.pointer_count;i++){ var everyPointer =this.getChildByTag(this.enumTag.tag_pointer+i); var _rect = cc.rect(this.pointStrCollisitionArray[i][0],this.pointStrCollisitionArray[i][1],this.pointStrCollisitionArray[i][2], this.pointStrCollisitionArray[i][3]); if(cc.rectContainsPoint(everyPointer.getBoundingBox(),point) || cc.rectContainsPoint(_rect,point) ){ everyPointer.setTexture(cc.TextureCache.getInstance().addImage(r_towerPointPress));}}//shop & home check var shopSpr =this.getChildByTag(this.enumTag.tag_shop);if(cc.rectContainsPoint(shopSpr.getBoundingBox(),point)){ shopSpr.setTexture(cc.TextureCache.getInstance().addImage(r_shopBtnPress));}var homeSpr =this.getChildByTag(this.enumTag.tag_home);if(cc.rectContainsPoint(homeSpr.getBoundingBox(),point)){ homeSpr.setTexture(cc.TextureCache.getInstance().addImage(r_homeBtnPress));}var closeXSpr =this.getChildByTag(this.enumTag.tag_bgCloseX);if(cc.rectContainsPoint(closeXSpr.getBoundingBox(),point)){ closeXSpr.setTexture(cc.TextureCache.getInstance().addImage(r_closeXPress));}var towerProperContent =this.getChildByTag(this.enumTag.tag_contentAllPetHpName);if(this.selectContentIsShow){var towerAdd =towerProperContent.getChildByTag(this.enumTag.tag_contentAdd);if(cc.rectContainsPoint(towerAdd.getBoundingBox(),point)){ towerAdd.setTexture(cc.TextureCache.getInstance().addImage(r_addPress));}for (var i=0;i<this.petProperArray.length;i++){ var into_tower =towerProperContent.getChildByTag(this.enumTag.tag_contentIntoTower+i);if(cc.rectContainsPoint(into_tower.getBoundingBox(),point)){ into_tower.setTexture(cc.TextureCache.getInstance().addImage(r_intoTowerPress));}}}}else{}return true;},onTouchEnded:function (touch, event) {var point =touch.getLocation();if(this.gameState == 0){//---------- back old img ----------for (var i=0;i<this.pointer_count;i++){ var everyPointer =this.getChildByTag(this.enumTag.tag_pointer+i);everyPointer.setTexture(cc.TextureCache.getInstance().addImage(r_towerPoint));} var shopSpr =this.getChildByTag(this.enumTag.tag_shop);var homeSpr =this.getChildByTag(this.enumTag.tag_home);var closeXSpr =this.getChildByTag(this.enumTag.tag_bgCloseX);shopSpr.setTexture(cc.TextureCache.getInstance().addImage(r_shopBtn));homeSpr.setTexture(cc.TextureCache.getInstance().addImage(r_homeBtn));closeXSpr.setTexture(cc.TextureCache.getInstance().addImage(r_closeX));var towerProperContent =this.getChildByTag(this.enumTag.tag_contentAllPetHpName);if(this.selectContentIsShow){var towerAdd =towerProperContent.getChildByTag(this.enumTag.tag_contentAdd);towerAdd.setTexture(cc.TextureCache.getInstance().addImage(r_add));for (var i=0;i<this.petProperArray.length;i++){ var into_tower =towerProperContent.getChildByTag(this.enumTag.tag_contentIntoTower+i);into_tower.setTexture(cc.TextureCache.getInstance().addImage(r_intoTower));}}//shop & home check  & content Xif(cc.rectContainsPoint(shopSpr.getBoundingBox(),point)){ }if(cc.rectContainsPoint(homeSpr.getBoundingBox(),point)){ var director = cc.Director.getInstance();var skillScene =skillScene.createSkillLayer();director.replaceScene(skillScene);}if(cc.rectContainsPoint(closeXSpr.getBoundingBox(),point)){ this.hideOrShowContent(false,-1,point);return;}if(this.selectContentIsShow){var towerAdd =towerProperContent.getChildByTag(this.enumTag.tag_contentAdd);if(cc.rectContainsPoint(towerAdd.getBoundingBox(),point)){ alert("Himi-Tower Name");}var selectIntoIndex=-1;for (var i=0;i<this.petProperArray.length;i++){ var into_tower =towerProperContent.getChildByTag(this.enumTag.tag_contentIntoTower+i);if(cc.rectContainsPoint(into_tower.getBoundingBox(),point)){  selectIntoIndex =i;}}if(selectIntoIndex!=-1){alert("Himi:"+selectIntoIndex);}}//---------- point & tower check ----------if(!this.selectContentIsShow){//is touch towerthis.selectTowerIndex=-1;for (var i=0;i<this.pointer_count;i++){ var everyPointer =this.getChildByTag(this.enumTag.tag_pointer+i); var _rect = cc.rect(this.pointStrCollisitionArray[i][0],this.pointStrCollisitionArray[i][1],this.pointStrCollisitionArray[i][2], this.pointStrCollisitionArray[i][3]); if(cc.rectContainsPoint(everyPointer.getBoundingBox(),point) || cc.rectContainsPoint(_rect,point) ){ everyPointer.setTexture(cc.TextureCache.getInstance().addImage(r_towerPointPress));this.selectTowerIndex= this.enumTag.tag_pointer+i;}}if(this.selectTowerIndex!=-1){this.hideOrShowContent(true,this.selectTowerIndex,point);}}else{var contentPosi = this.getChildByTag(this.enumTag.tag_bgJumpContent).getPosition();if(!(point.x>=contentPosi.x && point.x<=contentPosi.x+255&& point.y<=contentPosi.y+5 && point.y>=contentPosi.y-465)){this.hideOrShowContent(false,this.selectTowerIndex,point);//is touch towerthis.selectTowerIndex=-1;for (var i=0;i<this.pointer_count;i++){ var everyPointer =this.getChildByTag(this.enumTag.tag_pointer+i); var _rect = cc.rect(this.pointStrCollisitionArray[i][0],this.pointStrCollisitionArray[i][1],this.pointStrCollisitionArray[i][2], this.pointStrCollisitionArray[i][3]); if(cc.rectContainsPoint(everyPointer.getBoundingBox(),point) || cc.rectContainsPoint(_rect,point) ){ everyPointer.setTexture(cc.TextureCache.getInstance().addImage(r_towerPointPress));this.selectTowerIndex= this.enumTag.tag_pointer+i;}}if(this.selectTowerIndex!=-1){this.hideOrShowContent(true,this.selectTowerIndex,point);}}}}else{}},onTouchMoved:function (touch, event) {},onTouchCancelled:function (touch, event) {  },hideOrShowContent:function(_isShow,selectTowerIndex,point){if(_isShow){this.selectContentIsShow=true;var towerX = this.pointArray[this.selectTowerIndex][0];var towerY = this.pointArray[this.selectTowerIndex][1];var mapContent=this.getChildByTag(this.enumTag.tag_bgJumpContent);mapContent.setVisible(true);var mx=0;var my=0;if(point.y<=500 &&point.y>400 ){my=100;}else if(point.y<=400 &&point.y>300 ){my=240;}else if(point.y<=300 && point.y>200){my=340;}else if(point.y<=200 && point.y>100){my=440;}else if(point.y<=100){my=500;}else{mapContent.setPosition(cc.p(towerX,towerY));}var sWidth =cc.Director.getInstance().getWinSize().width;if(sWidth-point.x<=300 &&sWidth-point.x>200 ){mx=-100;}else if(sWidth-point.x<=200 &&sWidth-point.x>100 ){mx=-200;}else if(sWidth-point.x<=100){mx=-300;}else{mapContent.setPosition(cc.p(towerX,towerY));}towerX+=mx;towerY+=my;mapContent.setPosition(cc.p(towerX,towerY));var CloseX =this.getChildByTag(this.enumTag.tag_bgCloseX);CloseX.setVisible(true);CloseX.setPosition(cc.p(towerX+220,towerY-CloseX.getContentSize().height*0.5));var properPeople = this.getChildByTag(this.enumTag.tag_towerProperPeople);var properDef = this.getChildByTag(this.enumTag.tag_towerProperDef);var properAttCount = this.getChildByTag(this.enumTag.tag_towerProperAttCount);properPeople.setVisible(true);properDef.setVisible(true);properAttCount.setVisible(true);properPeople.setPosition(cc.p(towerX+30,towerY-CloseX.getContentSize().height*0.5+20));properDef.setPosition(cc.p(towerX+30,towerY-CloseX.getContentSize().height*0.5));properAttCount.setPosition(cc.p(towerX+30,towerY-CloseX.getContentSize().height*0.5-20));var properPeopleC = this.getChildByTag(this.enumTag.tag_towerProperPeopleC);var properDefC = this.getChildByTag(this.enumTag.tag_towerProperDefC);var properAttCountC = this.getChildByTag(this.enumTag.tag_towerProperAttCountC);properPeopleC.setVisible(true);properDefC.setVisible(true);properAttCountC.setVisible(true);properPeopleC.setString(this.getCurrentTowerProperbyIndex(this.selectTowerIndex,0));properDefC.setString(this.getCurrentTowerProperbyIndex(this.selectTowerIndex,0));properAttCountC.setString(this.getCurrentTowerProperbyIndex(this.selectTowerIndex,0));properPeopleC.setPosition(cc.p(towerX+100,towerY-CloseX.getContentSize().height*0.5+20));properDefC.setPosition(cc.p(towerX+100,towerY-CloseX.getContentSize().height*0.5));properAttCountC.setPosition(cc.p(towerX+100,towerY-CloseX.getContentSize().height*0.5-20));//into  this.petProperArray.lengthvar allPetNameAndHp = this.getCurrentContentAllPetNameAndHpBg(properAttCountC.getPositionX()-25,properAttCountC.getPositionY()-50);this.addChild(allPetNameAndHp,0,this.enumTag.tag_contentAllPetHpName);}else{this.selectContentIsShow=false;var mapContent=this.getChildByTag(this.enumTag.tag_bgJumpContent);mapContent.setVisible(false);var closeX=this.getChildByTag(this.enumTag.tag_bgCloseX);closeX.setVisible(false);closeX.setPosition(cc.p(-300,-300));var properPeople = this.getChildByTag(this.enumTag.tag_towerProperPeople);var properDef = this.getChildByTag(this.enumTag.tag_towerProperDef);var properAttCount = this.getChildByTag(this.enumTag.tag_towerProperAttCount);properPeople.setVisible(false);properDef.setVisible(false);properAttCount.setVisible(false);var properPeopleC = this.getChildByTag(this.enumTag.tag_towerProperPeopleC);var properDefC = this.getChildByTag(this.enumTag.tag_towerProperDefC);var properAttCountC = this.getChildByTag(this.enumTag.tag_towerProperAttCountC);properPeopleC.setVisible(false);properDefC.setVisible(false);properAttCountC.setVisible(false);if(this.getChildByTag(this.enumTag.tag_contentAllPetHpName)!=null){this.removeChildByTag(this.enumTag.tag_contentAllPetHpName);}selectTowerIndex=-1;}},getCurrentContentAllPetNameAndHpBg:function(_x,_y){if(this.getChildByTag(this.enumTag.tag_contentAllPetHpName)!=null){this.removeChildByTag(this.enumTag.tag_contentAllPetHpName);}var petAllHpName = cc.Node.create();var contentHurry = this.createFontWithBg("XXOOZX",23,_x+10,_y,false);petAllHpName.addChild(contentHurry);var contentTowerTime = this.createFontWithBg(this.towerTime[this.selectTowerIndex],23,_x+10,_y-32,false);petAllHpName.addChild(contentTowerTime);var contentTowerAdd = cc.Sprite.create(r_add);contentTowerAdd.setPosition(cc.p(_x+135,_y-13));petAllHpName.addChild(contentTowerAdd,0,this.enumTag.tag_contentAdd);for(var i = 0 ;i<this.petProperArray.length;i++){var name =this.petProperArray[i][0];var hp  = this.petProperArray[i][1];var hpMax =this.petProperArray[i][2];var contentHpName = this.createFontWithBg(name,23,_x+10,_y-i*52-70,false);petAllHpName.addChild(contentHpName);var intoTower =cc.Sprite.create(r_intoTower);intoTower.setPosition(cc.p(_x+135,_y-i*52-75));petAllHpName.addChild(intoTower,0,this.enumTag.tag_contentIntoTower+i); //hp rect var hpRectSprite = new HpRectSprite();hpRectSprite._rectWidth= 100;hpRectSprite._rectHeigth=8;hpRectSprite._x= _x-78;hpRectSprite._y= _y-i*52-148;hpRectSprite._hp= hp;hpRectSprite._maxHp= hpMax;hpRectSprite.setPosition(cc.p(40,60));petAllHpName.addChild(hpRectSprite);}return petAllHpName;},getCurrentTowerProperbyIndex:function(_aIndex,index){return this.towerProperArray[_aIndex][index];},createContentWithBg:function(_positionX,_positionY,_contentWidth,_contentHeight,isNeedLine,lineX,lineY){var node = cc.Node.create();node.setPosition(cc.p(_positionX,_positionY));var upLeft = cc.Sprite.create(r_contentUpLeft);var upRight = cc.Sprite.create(r_contentUpRight);var contentCenter = cc.Sprite.create(r_contentCenter);var downLeft = cc.Sprite.create(r_contentDownLeft);var downRight = cc.Sprite.create(r_contentDownRight);var centerWidth =contentCenter.getContentSize().width;var centerHeight =contentCenter.getContentSize().height;var hengCount = (_contentWidth-centerWidth-centerWidth)/centerWidth;var shuCount = (_contentHeight-centerHeight-centerHeight)/centerHeight;for(var i =0;i<hengCount;i++){ for(var j =0; j<shuCount; j++){var contentCenter = cc.Sprite.create(r_contentCenter);contentCenter.setPosition(cc.p(centerWidth*i,-centerHeight*j));node.addChild(contentCenter); }if(isNeedLine){//up line backvar contentUp = cc.Sprite.create(r_contentUp);contentUp.setPosition(cc.p(centerWidth*i+lineX,lineY));node.addChild(contentUp);}//up linevar contentUp = cc.Sprite.create(r_contentUp);contentUp.setPosition(cc.p(centerWidth*i,0));node.addChild(contentUp);//down linevar contentDown= cc.Sprite.create(r_contentDown);contentDown.setPosition(cc.p(centerWidth*i,-centerHeight*shuCount));node.addChild(contentDown); }upRight.setPosition(cc.p((centerWidth-1)*hengCount,0));for(var j =0; j<shuCount; j++){//left linevar contentLeft= cc.Sprite.create(r_contentLeft);contentLeft.setPosition(cc.p(0,-centerHeight*(j+1)));node.addChild(contentLeft);//right linevar contentRight= cc.Sprite.create(r_contentRight);contentRight.setPosition(cc.p((centerWidth-1)*hengCount,-centerHeight*(j+1)));node.addChild(contentRight);}downLeft.setPosition(cc.p(0,-centerHeight*shuCount));downRight.setPosition(cc.p((centerWidth-1)*hengCount,-centerHeight*shuCount));node.addChild(upLeft);node.addChild(upRight);node.addChild(downLeft);node.addChild(downRight);return node;},createFontWithBg:function(fontString,fontWidth,_positionX,_positionY,isAddFontCollisiton,_dyTime,_collisitionArrayIndex) {var node = cc.Node.create();var font = cc.LabelTTF.create(fontString, "Arial", fontWidth);font.setColor(cc.c3b(0,0,0));font.setPosition(cc.p(_positionX,_positionY)); var fontWidth =font.getContentSize().width;  var fontBgLeft =cc.Sprite.create(r_fontLeft);  fontBgLeft.setPosition(cc.p(_positionX-fontWidth*0.5,_positionY));var tempFontMiddle =cc.Sprite.create(r_fontCenter);var fontMiddleWidth=tempFontMiddle.getContentSize().width;var countMiddle =fontWidth / fontMiddleWidth;var middlePX = _positionX - fontWidth*0.5;var fadeOutTime =0.1;for(var i =0;i<countMiddle;i++){var fontBgMiddle =cc.Sprite.create(r_fontCenter); fontBgMiddle.setPosition(cc.p(middlePX,_positionY));middlePX+=fontMiddleWidth;node.addChild(fontBgMiddle);if(isAddFontCollisiton){ fontBgMiddle.setOpacity(0);fontBgMiddle.runAction(cc.Sequence.create(cc.DelayTime.create(_dyTime),cc.FadeIn.create(fadeOutTime)));}}var fontBgRight =cc.Sprite.create(r_fontRight);fontBgRight.setPosition(cc.p(middlePX,_positionY)); node.addChild(fontBgLeft);if(isAddFontCollisiton){ fontBgLeft.setOpacity(0);fontBgLeft.runAction(cc.Sequence.create(cc.DelayTime.create(_dyTime),cc.FadeIn.create(fadeOutTime)));} node.addChild(fontBgRight);if(isAddFontCollisiton){ fontBgRight.setOpacity(0);fontBgRight.runAction(cc.Sequence.create(cc.DelayTime.create(_dyTime),cc.FadeIn.create(fadeOutTime)));} node.addChild(font);if(isAddFontCollisiton){ font.setOpacity(0);font.runAction(cc.Sequence.create(cc.DelayTime.create(_dyTime),cc.FadeIn.create(fadeOutTime)));}//add tower name collisiton x,y,w,hif(isAddFontCollisiton){this.pointStrCollisitionArray[_collisitionArrayIndex][0]=_positionX-fontWidth*0.5-3;this.pointStrCollisitionArray[_collisitionArrayIndex][1]=_positionY-14;this.pointStrCollisitionArray[_collisitionArrayIndex][2]=font.getContentSize().width+10;this.pointStrCollisitionArray[_collisitionArrayIndex][3]=font.getContentSize().height;}return node;},onEnter:function () { cc.Director.getInstance().getTouchDispatcher().addTargetedDelegate(this, 0, true);this._super();},onExit:function () {cc.Director.getInstance().getTouchDispatcher().removeDelegate(this);this._super();},
});var gameScene = cc.Scene.extend({onEnter:function () {this._super();   layer = new gameLayer();layer.init();this.addChild(layer);}
});

转载于:https://www.cnblogs.com/mfrbuaa/p/3884158.html

【COCOS2D-HTML5 开发之三】演示样例项目附源代码及执行的GIF效果图相关推荐

  1. SNF快速开发平台MVC-各种级联绑定方式,演示样例程序(包含表单和表格控件)...

    做了这么多项目,经常会使用到级联.联动的情况. 如:省.市.县.区.一级分类.二级分类.三级分类.仓库.货位. 方式:有表单需要做级联的,还是表格行上需要做级联操作的. 实现:实现方法也有很多种方式. ...

  2. 移动端报表JS开发演示样例

    近期对移动端的报表开发颇有研究,细磨精算了好久,尽管到如今还是"囊中羞涩",但决定还是先抛砖引玉,拿点小干货出来和大家分享. 研究的工具是比較有代表性的FineReport. 1. ...

  3. arcsde java_ArcSDE SDK For Java二次开发介绍、演示样例

    在一个工作中,遇到了须要java后台来查询ArcGIS 中用到的Oracle数据库空间数据,因为对ArcGIS空间数据首次接触,仅仅知道Oracle能够使用ST_GEOMETRY字段存储,例如以下图 ...

  4. JDBC连接MySQL数据库及演示样例

    JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识         JDBC(Java Data Base Connectivity,java数据库连接)是一种用 ...

  5. 最简单的视音频播放演示样例5:OpenGL播放RGB/YUV

    ===================================================== 最简单的视音频播放演示样例系列文章列表: 最简单的视音频播放演示样例1:总述 最简单的视音频 ...

  6. Python Web框架Tornado的异步处理代码演示样例

    1. What is Tornado Tornado是一个轻量级但高性能的Python web框架,与还有一个流行的Python web框架Django相比.tornado不提供操作数据库的ORM接口 ...

  7. Java 8 时间日期库的20个使用演示样例

    除了lambda表达式,stream以及几个小的改进之外,Java 8还引入了一套全新的时间日期API,在本篇教程中我们将通过几个简单的任务演示样例来学习怎样使用Java 8的这套API.Java对日 ...

  8. 最简单的视音频播放演示样例3:Direct3D播放YUV,RGB(通过Surface)

    ===================================================== 最简单的视音频播放演示样例系列文章列表: 最简单的视音频播放演示样例1:总述 最简单的视音频 ...

  9. Cocos2d-x 3.2 Lua演示样例FontTest(字体測试)

    Cocos2d-x 3.2 Lua演示样例FontTest(字体測试) 本篇博客介绍Cocos2d-x 3.2中Lua測试项目中的FontTest样例,主要使用了字体文件来创建我们想要的字体样式: 第 ...

最新文章

  1. Vbs脚本编程简明教程之十
  2. Tokyo Tyrant(TTServer)系列(三)-Memcache协议
  3. 一张图弄懂java线程的状态和生命周期
  4. python动态映射_sqlalchemy动态映射
  5. 架构师要了解那些??
  6. 详解 Blockchain Cuties (区块链萌宠)
  7. 手机app的性能测试工具——GT、、Emmagee
  8. 解决hbase客服端连接服务端不报错就是一直连不上的问题
  9. win2003 iis 设置301转向
  10. 淘宝评论数据抓取简记
  11. JAVA+MySQL综合笔记
  12. 【文化课每周学习记录】2019.3.3——2019.3.9
  13. 工作狂小废物的桌面[51CTO博客接龙桌面秀]
  14. iPh oto的删除动画
  15. C# 是否读到文件尾, 怎么判断
  16. ef mysql 事务_EF中使用事务 - 李超明的个人空间 - OSCHINA - 中文开源技术交流社区...
  17. 如何解决卸载McAfee时出现“处于托管模式时无法删除”问题
  18. 3.11 CMMI3级——组织培训(Organizational Training)
  19. 不能升级鸿蒙系统还可以用吗,华为推出鸿蒙系统后,鸿蒙系统在原android系统上是选择升级还是强制升级...
  20. 球面两点间的球面距离的计算(2)

热门文章

  1. python数据接口设计_基于python的接口测试框架设计(一)连接数据库
  2. c语言srand函数怎么用_Excel统计指定内容出现次数,用函数怎么写?人人都能看懂的公式...
  3. 机器学习、数据挖掘之中国大牛
  4. 常见机器学习算法思想简单梳理
  5. 模拟文件管理器的java可以编译但无法运行_在java学习经典问题he解答(6)
  6. 系统学习机器学习之距离的度量(二)--DTW
  7. 汇编学习--7.16--外中断
  8. MySQL 复制:最简单也最容易配置出错
  9. c语言实现shellcode转换工具
  10. 如何在HTML中加载一个CSS文件?