zoukankan      html  css  js  c++  java
  • MarteEngine: Alarms

    现在你应该已经完全了解了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。


    ——————————————————————————————————
    傲轩游戏网
  • 相关阅读:
    ASP.NET 分页数据源:: PagedDataSource //可分页数据源
    strtok
    FloydWarshall算法详解(转)
    Tom Clancy's Splinter Cell: Double Agent
    暴雪COO确认:星际争霸2.0要来了
    wxWidgets 2.8.0 released
    如饥似渴
    大乘法器遇见小乘法器
    GLEW 1.3.5 adds OpenGL 2.1 and NVIDIA G80 extensions
    DevIL真是好用得想哭
  • 原文地址:https://www.cnblogs.com/cuizhf/p/2378603.html
Copyright © 2011-2022 走看看