git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@614 d9718cc8-9f43-0410-858b-315f434eb58c
37 lines
1.2 KiB
Java
37 lines
1.2 KiB
Java
// This file is part of MicropolisJ.
|
|
// Copyright (C) 2013 Jason Long
|
|
// Portions Copyright (C) 1989-2007 Electronic Arts Inc.
|
|
//
|
|
// MicropolisJ is free software; you can redistribute it and/or modify
|
|
// it under the terms of the GNU GPLv3, with additional terms.
|
|
// See the README file, included in this distribution, for details.
|
|
|
|
package micropolisj.engine;
|
|
|
|
/**
|
|
* Lists the simulation speeds available.
|
|
* Contains properties identifying how often the animation timer fires,
|
|
* and how many animation steps are fired at each interval.
|
|
* Note: for every 2 animation steps, one simulation step is triggered.
|
|
*/
|
|
public enum Speed
|
|
{
|
|
PAUSED ( 999, 0),
|
|
SLOW ( 625, 1), //one sim step every 1250 ms
|
|
NORMAL ( 125, 1), //one sim step every 250 ms
|
|
FAST ( 25, 1), //one sim step every 50 ms
|
|
SUPER_FAST( 25, 5); //one sim step every 10 ms
|
|
|
|
/** The animation speed, expressed as an interval in milliseconds. */
|
|
public final int animationDelay;
|
|
|
|
/** For faster speeds, how many simulation steps should occur for every
|
|
* update to the screen. */
|
|
public final int simStepsPerUpdate;
|
|
|
|
private Speed(int delay, int simSteps)
|
|
{
|
|
this.animationDelay = delay;
|
|
this.simStepsPerUpdate = simSteps;
|
|
}
|
|
}
|