我正在创建简单的 Flash 游戏。现在我正在编写角色的控件。我已经添加了与地面和墙壁的角色碰撞,但无法成功添加与天花板的碰撞,角色跳过天花板。请问你能帮帮我吗?谢谢你。
这是我尝试过的部分代码:
if(space){
if(myCollisionsList.checkCollisions().length > 0) {
if (hitTestPoint(hero.x + 28, hero.y, true)){
/////////////////////////////////////////////////////////////////////////////////////
//here I need to add any code for character's collision with the ceiling.
/////////////////////////////////////////////////////////////////////////////////////
Hero.y_speed = 0; // 这对我没有帮助
}else{
Hero.y_speed = -jumpspeed;
}
我创建了 myCollisionsList,我在其中保留了所有阶段、与角色发生碰撞的墙壁。当角色向右或向左移动时,此方法适用于碰撞,因为我只是在角色接触墙壁时将角色的 x_speed 设置为“0”。但是当我碰到天花板时我怎么能阻止它呢?将角色的 y_speed 设置为“0”对我没有帮助。
图片解释了现在发生的事情: