MarteEngine: Alarms

mac2022-06-30  18

现在你应该已经完全了解了Tweens,那么接下来你可以探索MarteEngine的有用特性:Alarms。

在你想要构造的许多游戏中,有时需要在多少次之后执行某些操作,例如更新玩家位置,你可以自己开发一个系统来跟踪逝去的时间或者使用Alarms。

 

Alarm不是Entity也不是World, 它是帮助你执行某些操作的通用类,你可以定义许多alarms。让我们从最基本的AlarmEntity开始:

 

public  class AlarmEntity  extends Entity {      private  static  final String MOVE_RIGHT = "move right";      public AlarmEntity( float x,  float y, Image image) {          super(x, y, image);                   //  now add an Alarm: we define an alarm to be triggered every 2 seconds         setAlarm(MOVE_RIGHT, 2,  falsetrue);     }          @Override      public  void alarmTriggered(String name) {          //  this method is called for every triggered method we can define on this entity          if (name.equalsIgnoreCase(MOVE_RIGHT)){              //  in this case we just move right             x = x + 2;         }     } }

 这里我们创建了一个新的Alarm,并定义了一些属性加入到Entity本身。因为MarteEngine会小心地更新alarms的内部逻辑,当alarms被触发时调用alarmTriggered方法,所以你可以覆写该方法,以捕获特殊的alarms触发。

 

现在使用Alarm你可以Rotate and scale你的Entity。

 

 

转载于:https://www.cnblogs.com/cuizhf/archive/2012/03/03/2378603.html

相关资源:JAVA上百实例源码以及开源项目
最新回复(0)