this.node.parent.on('touchmove',(event)=>{
let removing = event.getDelta();
let minX = -this.node.parent.width/2 + this.node.width/2 + 20;
let maxX = -minX;
let minY = -this.node.parent.height/2 + this.node.height/2 + 20;
let maxY = -minY;
let followWidth = this.node.x;
if (this.node.x < minX){
followWidth = minX;
}
if (this.node.x> maxX){
followWidth = maxX;
}
let followHeight = this.node.y;
if (this.node.y < minY){
followHeight = minY;
}
if (this.node.y> maxY){
followHeight = maxY;
}
this.node.setPosition(followWidth + removing.x, followHeight + removing.y);
}
//_________________________________________________________________
this.targetMap.on('touchmove',(event)=>{
let pre = event.getPreviousLocation();
let cur = event.getLocation();
var dir = cur.sub(pre);
this.targetMap.x += dir.x;
this.targetMap.y += dir.y;
//判断左边距离
var bgLeft = this.bg.x - this.bg.width / 2;
var bgRight = this.bg.x + this.bg.width / 2;
var bgTop = this.bg.y + this.bg.height / 2;
var bgBottom = this.bg.y - this.bg.height / 2;
var halfMapWidth = this.targetMap.width / 2;
var halfMapHeight = this.targetMap.height / 2;
//左边
if(this.targetMap.x - halfMapWidth > bgLeft){
this.targetMap.x = bgLeft + halfMapWidth;
}
//右边
if(this.targetMap.x + halfMapWidth < bgRight){
this.targetMap.x = bgRight - halfMapWidth;
}
//上边
if(this.targetMap.y + halfMapHeight < bgTop){
this.targetMap.y = bgTop - halfMapHeight;
}
//下边
if(this.targetMap.y - halfMapHeight > bgBottom){
this.targetMap.y = bgBottom + halfMapHeight;
}
});
跟随鼠标移动
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...