Skip to content

Commit fc7350d

Browse files
committed
Merge branch 'develop' of git://github.com/cocos2d/cocos2d-html5 into browser_version
2 parents 27c11a8 + b67bb36 commit fc7350d

File tree

8 files changed

+88
-25
lines changed

8 files changed

+88
-25
lines changed

cocos2d/audio/CCAudio.js

+42
Original file line numberDiff line numberDiff line change
@@ -346,6 +346,9 @@ cc.AudioEngine = cc.Class.extend(/** @lends cc.audioEngine# */{
346346
self._soundSupported = cc._audioLoader._supportedAudioTypes.length > 0;
347347
if (self._effectPauseCb)
348348
self._effectPauseCb = self._effectPauseCb.bind(self);
349+
if(cc.sys.isMobile){
350+
self._addTouchStartEvent();
351+
}
349352
},
350353

351354
/**
@@ -769,6 +772,45 @@ cc.AudioEngine = cc.Class.extend(/** @lends cc.audioEngine# */{
769772
self._resumeAudio(playings[i]);
770773
}
771774
playings.length = 0;
775+
},
776+
/**
777+
* show music and effect info
778+
*/
779+
dumpAudioInfo: function () {
780+
var self = this;
781+
cc.log("--------------------------------------");
782+
if(self._currMusic){
783+
cc.log("Current music: ");
784+
self._printAudioInfo(this._currMusic);
785+
}
786+
if(self._effects){
787+
cc.log("Current effect: ");
788+
for(var key in self._effects){
789+
self._printAudioInfo(self._effects[key]);
790+
}
791+
}
792+
cc.log("--------------------------------------");
793+
},
794+
_printAudioInfo: function (audio) {
795+
cc.log(" url:" + audio.src);
796+
cc.log(" played:" + (audio.played).toString());
797+
cc.log(" paused:" + audio.paused);
798+
cc.log(" ended:" + audio.ended);
799+
cc.log(" loop:" + audio.loop);
800+
cc.log(" volume:" + audio.volume);
801+
cc.log("------------------------------");
802+
},
803+
/**
804+
* add touch event
805+
* @private
806+
*/
807+
_addTouchStartEvent: function () {
808+
var self = this;
809+
cc._addEventListener(document.getElementById(cc.game.config[cc.game.CONFIG_KEY.id]),"touchstart", function (event) {
810+
if(self._currMusic && (self._currMusic._sourceNode["playbackState"] == 1 || self._currMusic.played == null)){
811+
self._playMusic(self._currMusic);
812+
}
813+
},false);
772814
}
773815

774816
});

cocos2d/core/renderer/RendererCanvas.js

+27-11
Original file line numberDiff line numberDiff line change
@@ -54,15 +54,19 @@ if (cc._renderType === cc._RENDER_TYPE_CANVAS) {
5454
* drawing all renderer command to cache canvas' context
5555
* @param {CanvasRenderingContext2D} ctx
5656
* @param {Number} [instanceID]
57+
* @param {Number} [scaleX]
58+
* @param {Number} [scaleY]
5759
*/
58-
_renderingToCacheCanvas: function (ctx, instanceID) {
60+
_renderingToCacheCanvas: function (ctx, instanceID, scaleX, scaleY) {
5961
if (!ctx)
6062
cc.log("The context of RenderTexture is invalid.");
6163

64+
scaleX = cc.isUndefined(scaleX) ? 1 : scaleX;
65+
scaleY = cc.isUndefined(scaleY) ? 1 : scaleY;
6266
instanceID = instanceID || this._currentID;
6367
var locCmds = this._cacheToCanvasCmds[instanceID], i, len;
6468
for (i = 0, len = locCmds.length; i < len; i++) {
65-
locCmds[i].rendering(ctx, 1, 1);
69+
locCmds[i].rendering(ctx, scaleX, scaleY);
6670
}
6771
locCmds.length = 0;
6872
var locIDs = this._cacheInstanceIds;
@@ -530,15 +534,27 @@ if (cc._renderType === cc._RENDER_TYPE_CANVAS) {
530534

531535
//draw sprite
532536
var image = locSprite._texture.getHtmlElementObj();
533-
context.drawImage(image,
534-
locTextureCoord.renderX,
535-
locTextureCoord.renderY,
536-
locTextureCoord.width,
537-
locTextureCoord.height,
538-
flipXOffset, flipYOffset,
539-
locDrawSizeCanvas.width,
540-
locDrawSizeCanvas.height
541-
);
537+
if (locSprite._colorized) {
538+
context.drawImage(image,
539+
0,
540+
0,
541+
locTextureCoord.width,
542+
locTextureCoord.height,
543+
flipXOffset, flipYOffset,
544+
locDrawSizeCanvas.width,
545+
locDrawSizeCanvas.height
546+
);
547+
} else {
548+
context.drawImage(image,
549+
locTextureCoord.renderX,
550+
locTextureCoord.renderY,
551+
locTextureCoord.width,
552+
locTextureCoord.height,
553+
flipXOffset, flipYOffset,
554+
locDrawSizeCanvas.width,
555+
locDrawSizeCanvas.height
556+
);
557+
}
542558

543559
context.restore();
544560
cc.g_NumberOfDraws++;

cocos2d/core/sprites/CCSprite.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -546,7 +546,7 @@ cc.Sprite = cc.Node.extend(/** @lends cc.Sprite# */{
546546
}
547547

548548
if (this._batchNode) {
549-
this._arrayMakeObjectsPerformSelector(_children, cc.Node._StateCallbackType.sortAllChildren);
549+
this._arrayMakeObjectsPerformSelector(_children, cc.Node._stateCallbackType.sortAllChildren);
550550
}
551551

552552
//don't need to check children recursively, that's done in visit of each child
@@ -1458,7 +1458,7 @@ if (cc._renderType === cc._RENDER_TYPE_CANVAS) {
14581458

14591459
// recursively iterate over children
14601460
if (_t._hasChildren)
1461-
_t._arrayMakeObjectsPerformSelector(_t._children, cc.Node._StateCallbackType.updateTransform);
1461+
_t._arrayMakeObjectsPerformSelector(_t._children, cc.Node._stateCallbackType.updateTransform);
14621462
};
14631463

14641464
_p.addChild = function (child, localZOrder, tag) {

cocos2d/render-texture/CCRenderTexture.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -495,7 +495,8 @@ cc.RenderTexture = cc.Node.extend(/** @lends cc.RenderTexture# */{
495495
//cc._renderContext = cc._mainRenderContextBackup;
496496
//cc.view._resetScale();
497497

498-
cc.renderer._renderingToCacheCanvas(this._cacheContext, this.__instanceId);
498+
var scale = cc.contentScaleFactor();
499+
cc.renderer._renderingToCacheCanvas(this._cacheContext, this.__instanceId, scale, scale);
499500

500501
//TODO
501502
/*//restore viewport

extensions/ccui/base-classes/UIScale9Sprite.js

+12-7
Original file line numberDiff line numberDiff line change
@@ -203,12 +203,17 @@ ccui.Scale9Sprite = cc.Node.extend(/** @lends ccui.Scale9Sprite# */{
203203
_cacheScale9Sprite: function(){
204204
if(!this._scale9Image)
205205
return;
206-
var size = this._contentSize, locCanvas = this._cacheCanvas;
206+
207+
var locScaleFactor = cc.contentScaleFactor();
208+
var size = this._contentSize;
209+
var sizeInPixels = cc.size(size.width * locScaleFactor, size.height * locScaleFactor);
210+
211+
var locCanvas = this._cacheCanvas;
207212
var contentSizeChanged = false;
208-
if(locCanvas.width != size.width || locCanvas.height != size.height){
209-
locCanvas.width = size.width;
210-
locCanvas.height = size.height;
211-
this._cacheContext.translate(0, size.height);
213+
if(locCanvas.width != sizeInPixels.width || locCanvas.height != sizeInPixels.height){
214+
locCanvas.width = sizeInPixels.width;
215+
locCanvas.height = sizeInPixels.height;
216+
this._cacheContext.translate(0, sizeInPixels.height);
212217
contentSizeChanged = true;
213218
}
214219

@@ -217,8 +222,8 @@ ccui.Scale9Sprite = cc.Node.extend(/** @lends ccui.Scale9Sprite# */{
217222
this._scale9Image.visit();
218223

219224
//draw to cache canvas
220-
this._cacheContext.clearRect(0, 0, size.width, -size.height);
221-
cc.renderer._renderingToCacheCanvas(this._cacheContext, this.__instanceId);
225+
this._cacheContext.clearRect(0, 0, sizeInPixels.width, -sizeInPixels.height);
226+
cc.renderer._renderingToCacheCanvas(this._cacheContext, this.__instanceId, locScaleFactor, locScaleFactor);
222227

223228
if(contentSizeChanged)
224229
this._cacheSprite.setTextureRect(cc.rect(0,0, size.width, size.height));

extensions/ccui/uiwidgets/UICheckBox.js

+1-2
Original file line numberDiff line numberDiff line change
@@ -96,8 +96,7 @@ ccui.CheckBox = ccui.Widget.extend(/** @lends ccui.CheckBox# */{
9696
if (ccui.Widget.prototype.init.call(this)) {
9797
this._isSelected = true;
9898
this.setSelected(false);
99-
if(backGround === undefined)
100-
this.loadTextures(backGround, backGroundSelected, cross, backGroundDisabled, frontCrossDisabled, texType);
99+
this.loadTextures(backGround, backGroundSelected, cross, backGroundDisabled, frontCrossDisabled, texType);
101100
return true;
102101
}
103102
return false;

extensions/cocostudio/reader/timeline/CSLoader.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -335,7 +335,7 @@ ccs.csLoader = {
335335
var nodeOptions = nodetree["widgetOptions"];
336336
var options = nodetree["projectNodeOptions"];
337337

338-
var filePath = options["filename"];
338+
var filePath = options["fileName"];
339339
//cc.log("filePath = %s", filePath);
340340
if(filePath != "")
341341
{

extensions/gui/control-extension/CCScale9Sprite.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,7 @@ cc.Scale9Sprite = cc.Node.extend(/** @lends cc.Scale9Sprite# */{
218218

219219
//draw to cache canvas
220220
this._cacheContext.clearRect(0, 0, sizeInPixels.width, -sizeInPixels.height);
221-
cc.renderer._renderingToCacheCanvas(this._cacheContext, this.__instanceId);
221+
cc.renderer._renderingToCacheCanvas(this._cacheContext, this.__instanceId, locScaleFactor, locScaleFactor);
222222

223223
if(contentSizeChanged)
224224
this._cacheSprite.setTextureRect(cc.rect(0,0, size.width, size.height));

0 commit comments

Comments
 (0)