var ParkRotation = cc.Layer.extend({
parkNodeList: ],
angleParameter: {},
touchListener: null,
onEnter: function () {
this.createPark();
this.addTouchEventListenser();
},
//点击事件
addTouchEventListenser: function () {
this.touchListener = cc.EventListener.create({
event: cc.EventListener.TOUCH_ONE_BY_ONE,
swallowTouches: true,
onTouchBegan: this.onTouchBegan,
onTouchMove: this.onTouchMove,
onTouchEnded: this.onTouchEnded
});
cc.eventManager.addListener(this.touchListener, this);
},
onTouchBegan: function (touch, event) {
cc.log("1");
return true;
},
onTouchMove: function (touch, event) {
var pos = touch.getLocation();
cc.log(pos);
},
onTouchEnded: function (touch, event) {
cc.log("2");
var target = event.getCurrentTarget();
target.getParent().dailyOpen = false;
target.removeFromParent();
},
createPark: function () {
var centerNode = new cc.Sprite(res.btn_0_png);
centerNode.setPosition(cc.p(SIZE.WIDTH_HALF, SIZE.HEIGHT_HALF));
centerNode.setAnchorPoint(0.5, 0.5);
this.addChild(centerNode);
for (var i = 0; i < 8; i++) {
var parkNode = new cc.Sprite(res.btn_1_png);
var parameter = this.angleValue(i);
parkNode.setPosition(cc.p(parameter.x, parameter.y));
parkNode.setAnchorPoint(0.5, 0.5);
this.addChild(parkNode);
this.parkNodeList* = parkNode;
}
},
angleValue: function (i) {
var angle = (360 / 8) * (i + 1);
//Math是已弧度作为计算的,要想得到角度需要*Math.PI
var x = SIZE.WIDTH_HALF + 120 * Math.cos(angle * Math.PI / 180);
var y = SIZE.HEIGHT_HALF + 120 * Math.sin(angle * Math.PI / 180);
this.angleParameter = {
x: x,
y: y
}
return this.angleParameter;
},
});
我想给当前层添加点击事件,这么写哪里错误了啊,为什么log打不出来呢*