【问题标题】:Collision detection kit with FlashPunk带有 FlashPunk 的碰撞检测套件
【发布时间】:2014-10-25 19:08:52
【问题描述】:

我开始使用 Flashpunk 创建我的 Flash 游戏,对于碰撞我不想使用碰撞框,因为我的图像 (PNG) 中有透明部分,所以我决定使用碰撞检测工具包,我在创建碰撞时遇到了问题碰撞列表,它需要一个显示对象作为参数并且不接受flash punk spritemaps,我尝试将spritemap 转换为flash 显示对象但它不起作用,有没有办法将CDK 与flashpunk 一起使用?

override public function begin():void 
    {

        _player = new Player(100, 100);// Entity

        initCollision(_player.sprPlayer);// The Entity Spritemap
    }


private function initCollision(player:Spritemap):void {

        collisionChecker = new CollisionList(player); // Problem here

    }

【问题讨论】:

    标签: actionscript-3 flash collision-detection


    【解决方案1】:

    好吧,您可以创建一个与 Spritemap 具有相同宽度和高度的空 BitmapData,然后将其“渲染”到该 BitmapData,如下所示:

    var bmd:BitmapData = new BitmapData(64, 64, true, 0);
    var sprite:Spritemap = _player.sprPlayer;
    sprite.render(bmd, new Point(0,0), new Point(0,0));
    collisionChecker = new CollisionList(bmd);
    

    这应该将 spritemap 的当前帧绘制到 BitmapData,然后您可以将其用于 CollisionList。上面的代码是一个示例,仅演示如何执行此操作。对于您的实际代码,最好避免在碰撞检测期间不断初始化新变量。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多