• Tempo

    No pacote do JPlay temos um contador de tempo no seguinte formato:

    formatoTempo

    1 - Construtores da classe Time

    public Time(int x, int y, boolean crescentTime);

    Para esse construtor devem ser passadas as posições (x,y) de onde o tempo será desenhado na tela e se o Time será usado como um cronômetro regressivo ou progressivo.

    Para funcionar como um cronômetro regressivo na opção, boolean crescentTime, passe o valor false. Para funcionar como um cronômetro progressivo passe o valor true.

    Exemplo:

    					Time tempo = new Time(100,100, true);
    					X = 100, Y = 100, Cronômetro progressivo.
    					Time tempo = new Time(100,100, false);
    					X = 100, Y = 100, Cronômetro regressivo.
    				


    No construtor abaixo temos que passar o valor da hora, minuto e segundo que serão usados além da posição onde o tempo será desenhado.

    public Time( int hour, int minute, int second, int x, int y );

    Exemplo:

    					//Tempo igual a 5 minutos
    					//hora = 0, minuto = 5, segundo = 0, x = 456, y = 329, tempo decrescente ou cronômetro regressivo.
    					Time tempo = new Time(0,5,0, 456, 329, false);
    				


    No cosntrutor abaixo temos a liberdade de escolher a cor e a fonte que serão usadas para exibir o tempo.

    public Time(int hour, int minute, int second, int x, int y, Font font, Color color, boolean crescentTime);

    Exemplo:

    					//public Time( int hour, int minute, int second, int x, int y, Font font, Color color, boolean crescentTime )
    					Font fonte = new Font("Comic Sans MS", Font. TRUETYPE_FONT, 40);
    					Time tempo = new Time( 1, 23, 34, 100, 100, fonte , Color.Yellow, false);
    				

    Obs.: Nos outros construtores a fonte e a cor padrões são as seguintes: Font("Arial",Font.TRUETYPE_FONT, 20) e Color.YELLOW.

    2 - Métodos da classe Time

    					//Retorna uma string com o valor do tempo, a string retornada é no formato 00:00:00.
    					public String toString(); 
    					
    					//Desenha uma mensagem que é uma escolha do usuário e em seguida desenha o valor do tempo.
    					public void draw(String message);
    					
    					//Desenha o valor do tempo na tela.
    					public void draw();
    					
    					//Seta a cor a ser usada na fonte que será usada para desenhar o tempo.
    					public void setColor(Color color);
    					
    					//Seta a fonte que será usada para desenhar o tempo.
    					public void setFont(Font font);
    					
    					//Retorna se o tempo terminou, esse método só serve se o tempo escolhido é do tipo cronômetro regressivo.
    					public boolean  timeEnded();
    					
    					//Seta o valor da hora.
    					public void setHour(int  hour);
    					
    					//Seta o valor dos minutes.
    					public void setMinute(int  minute);
    					
    					//Seta o valor dos segundos.
    					public void setSecond(int  second);
    					
    					//Retorna o valor da hora.
    					public long  getHour();
    					
    					//Retorna o valor do minuto.
    					public long  getMinute();
    					
    					//Retorna o valor do segundo.
    					public long  getSecond();
    					
    					//Converte o tempo em segundos e retorna o valor total.
    					public long  getTotalSecond();
    					
    					//Seta o valor do tempo.
    					public void setTime(int hour, int minute, int seconds);
    				


    Exemplo: Mostra na tela um contador de tempo regressivo e outro progressivo.

    					package Time001;
    
    					import jplay.GameImage;
    					import jplay.Keyboard;
    					import jplay.Time;
    					import jplay.Window;
    					import java.awt.Color;
    
    					/**
    					 * @author Gefersom Cardoso Lima
    					 * Federal Fluminense University
    					 * Computer Science
    					 */
    
    					public class Time001
    					{
    						//Show on the screen a regressive and a rising time.
    						public static void main(String[] args)
    						{
    								Window janela = new Window(800,600);
    								Keyboard keyboard = janela.getKeyboard();
    								GameImage backGround = new GameImage("fundo.png");
    
    								Time tempo1 = new Time(100, 100,true);
    								tempo1.setColor(Color.yellow);
    
    								Time tempo2 = new Time(1, 39, 56, 100, 200,false);
    								tempo2.setColor(Color.cyan);
    
    								boolean executando = true;
    
    								while(executando)
    								{
    										backGround.draw();
    										tempo1.draw("Progressivo: ");
    										tempo2.draw("Regressivo:  ");
    										janela.update();
    
    										if ( keyboard.keyDown(Keyboard.ESCAPE_KEY) == true )
    											executando = false;
    								}
    								janela.exit();
    						}
    					}
    
    				

    UFF - Universidade Federal Fluminense - Institudo de Computação - Ciência da Computação