【发布时间】:2013-11-29 12:34:58
【问题描述】:
我正在尝试在 actionscript 3.0 中构建 2d 游戏,但我遇到了 hittest 问题。我这里有这段代码
import flash.ui.Keyboard;
import flash.events.Event;
import flash.events.KeyboardEvent;
myChar.addEventListener(Event.ENTER_FRAME, update);
stage.addEventListener(KeyboardEvent.KEY_DOWN, onKeyDown);
stage.addEventListener(KeyboardEvent.KEY_UP, onKeyUp);
stage.addEventListener(Event.ENTER_FRAME, letsSee);
var keys:Array=[];
function update(e:Event):void {
myChar.y+=10;
if (keys[Keyboard.RIGHT]) {
myChar.x+=10;
}
if (keys[Keyboard.LEFT]) {
myChar.x-=10;
}
}
function onKeyDown(e:KeyboardEvent):void {
keys[e.keyCode]=true;
}
function onKeyUp(e:KeyboardEvent):void {
keys[e.keyCode]=false;
}
function letsSee(e:Event):void {
if (myChar.hitTestObject(myLevel)==true) {
myChar.y-=10;
}
}
一切正常,但letsSee 函数中的hitTestObeject 无法正常工作,我希望我的角色(myChar) 出现在platoe (myLevel) 上,但myChar 一直悬停。
如何在没有对象悬停的情况下制作 hitTestObject?
【问题讨论】:
标签: actionscript-3 flash