我在一个bgMC内部有一个敌人MC,敌人的MC类检测到一个点并对该点落入敌人MC内的位置作出反应。
一切正常,但是一旦我在bgMC内部旋转敌人MC,那时我就会遇到问题而不是我想要的那个......
enemyMC位于gameMC中的bgMC内部:
这是我的“gameMC”类中放置子弹的代码
pointEnemy.x = (bulletPoint.x - this.x - bg.x - (enemyMC.x * 2 )) * 0.5 / enemyMC.scaleX ;
pointEnemy.y = (bulletPoint.y - this.y - bg.y - (enemyMC.y * 2 )) * 0.5 / enemyMC.scaleY ;
enemyMC.hurt(pointEnemy);
这就是敌人MC内部的伤害功能:
function hurt(point:Point)
{
local = localToGlobal(point);
if(main.hitTestPoint(local.x, local.y, true))
{
trace("HIT!");
}
}
现在,如果我在bgMC中旋转enemyMC ......整个点x / y系统被抛弃。 我想知道我应该寻找哪个轮换代码? COS? ACOS?晒黑?晒黑?我对AS3的角度很新。
我希望对pointEnemy的调用有一些修正:
pointEnemy.x = (bulletPoint.x - this.x - bg.x - (enemyMC.x * 2 )) * 0.5 / enemyMC.scaleX;
并添加“+ enemyMC.rotation”?我知道这不起作用,但希望你们可以帮我一个可能的代码。