作者john01189 (做自己好自在)
看板Flash
标题[问题] AS3的物件碰撞
时间Fri Nov 12 22:34:42 2010
我想问个问题
当我的人物(player)走路的方法是读取
滑鼠点的座标点
然後判断距离远近执行走的速度差异
但是地图上有些无法行走的地方
不知道如何判读?
之前是设定成不能行走的地方按钮
然後使用HittestPoint
以下是程式码
function moveFlash(event:MouseEvent) {
stage.removeEventListener(MouseEvent.CLICK, moveFlash);
var targetX:Number = mouseX;
var targetY:Number = mouseY;
var diffX:Number = targetX-player.x;
var diffY:Number = targetY-player.y;
var moveX:Number = diffX/10;
var moveY:Number = diffY/10;
player.addEventListener(Event.ENTER_FRAME,moveMe);
function moveMe(event:Event) {
player.x += moveX;
player.y += moveY;
if (Math.abs(player.x-targetX) < 1 || Math.abs(player.y-targetY)<1) {
player.removeEventListener(Event.ENTER_FRAME,moveMe);
stage.addEventListener(MouseEvent.CLICK, moveFlash);
player.x = targetX;
player.y = targetY;
}
}
if(wall1.hitTestPoint(player.x,player.y,false))
{
player.x= =player.x;
player.y= =player.y;
}else{
player.x = = targetX;
player.y = = targetY;
}
}
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.47.129.58