Class AbstractGameEngine

  • All Implemented Interfaces:
    be.yildizgames.common.frame.FrameManager

    public abstract class AbstractGameEngine
    extends Object
    implements be.yildizgames.common.frame.FrameManager
    Base class for the server and client GameEngine.
    Author:
    Grégory Van den Borre
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected AbstractGameEngine​(be.yildizgames.common.model.Version version)
      Simple constructor.
    • Method Summary

      Modifier and Type Method Description
      void addFrameListener​(be.yildizgames.common.frame.FrameListener listener)
      Add a frame listener to be called every time a frame is started or finished.
      be.yildizgames.common.model.Version getGameVersion()  
      void removeFrameListener​(be.yildizgames.common.frame.FrameListener listener)
      Remove a frame listener.
      protected void runOneFrame()
      Common code to run in game loop.
      protected abstract void runOneFrameImpl()
      Client or server implementation specific code to run every time the game loop is iterating.
      void setFrameLimiter​(int fps)
      set a frame speed limiter.
      abstract void start()
      Start the main loop.
    • Constructor Detail

      • AbstractGameEngine

        protected AbstractGameEngine​(be.yildizgames.common.model.Version version)
        Simple constructor.
        Parameters:
        version - Game version.
    • Method Detail

      • start

        public abstract void start()
        Start the main loop.
      • runOneFrame

        protected final void runOneFrame()
        Common code to run in game loop.
      • runOneFrameImpl

        protected abstract void runOneFrameImpl()
        Client or server implementation specific code to run every time the game loop is iterating.
      • addFrameListener

        public final void addFrameListener​(be.yildizgames.common.frame.FrameListener listener)
        Add a frame listener to be called every time a frame is started or finished.
        Specified by:
        addFrameListener in interface be.yildizgames.common.frame.FrameManager
        Parameters:
        listener - FrameListener to add.
      • removeFrameListener

        public final void removeFrameListener​(be.yildizgames.common.frame.FrameListener listener)
        Remove a frame listener.
        Parameters:
        listener - Listener to remove.
      • setFrameLimiter

        public final void setFrameLimiter​(int fps)
        set a frame speed limiter.
        Parameters:
        fps - Maximum computation number in one second.
      • getGameVersion

        public final be.yildizgames.common.model.Version getGameVersion()