我正在制作一个小型Flash游戏,我想实现无敌框架,但我不确定如何去做。基本上,当玩家走过一个物体时,我想要移除一个生命值(我知道该怎么做),然后拥有无敌帧,以便玩家有时间离开物体。
的内容if (player.hitTestObject(spikes)) {
//remove health
// INVINCIBILITY FRAMES
}
这里的任何方向都会有所帮助。谢谢!
答案 0 :(得分:0)
你最好提供一些关于编程风格的细节,我的意思是你的编程风格纯粹是as3或纯粹的舞台,或者同时使用as3和stage。 假设你使用的是纯粹的as3风格,我会回答你的问题。 如果你想让你的英雄无敌于所有的东西而不仅仅是那个命中的尖刺,你应该在你的英雄(或角色)类中添加一个公共方法和一个变量来跟踪去除无敌的剩余时间。像这样的东西
public function gotHit(){
invincibilityTimeLeft=500;//500 is miliseconds, which is a half second edit this as you wish.
isInvincible=true;
}
然后在游戏的Event.ENTER_FRAME循环中,你应该根据传递的时间减少角色的invincibilityTimeLeft。当它再次达到0或更低时,将字符的isInvincible变量设置为false。我希望你明白我的意思。
祝你好运。
-Ozan