Android Open Source - minecraft-connect-4 Game Activity






From Project

Back to project page minecraft-connect-4.

License

The source code is released under:

MIT License

If you think the Android project minecraft-connect-4 listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/* COPYRIGHT (C) 2014 Aleksandr Belkin. All Rights Reserved. */
package sq.squ1rr.mcc4;
//from  w  w w . ja  va 2  s .com
import java.util.Date;

import sq.squ1rr.mcc4.board.BoardDialogue;
import sq.squ1rr.mcc4.board.BoardView;
import sq.squ1rr.mcc4.board.GameBoard;
import sq.squ1rr.mcc4.rules.GameRules;
import sq.squ1rr.mcc4.rules.GameRules.Fps;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;

/**
 * Main game activity, the game is happening here.
 * Does not use XML layout.
 * @author Aleksandr Belkin
 */
public class GameActivity extends BaseActivity {
    /** game board */
    private GameBoard game;
    
    /** OpenGL game view */
    private BoardView view;
    
    /** time played last time-stamp */
    private long lastTimestamp;
    
    /** time played */
    private int timePlayed = 0;
    
    /*
     * (non-Javadoc)
     * @see sq.squ1rr.mcc4.BaseActivity#onCreate(android.os.Bundle)
     */
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
 
        game = new GameBoard(this, savedInstanceState, getRules());
        view = new BoardView(this, game);
        
        view.setCountFps(getRules().getRule(GameRules.FPS) == Fps.COUNT);

        setContentView(view);
        
        game.setDialogueListener(listener);
    }

    /*
     * (non-Javadoc)
     * @see sq.squ1rr.mcc4.BaseActivity#onSaveInstanceState(android.os.Bundle)
     */
    @Override
    public void onSaveInstanceState(Bundle savedInstanceState) {
        game.exportTo(savedInstanceState);
        super.onSaveInstanceState(savedInstanceState);
    }
    
    /*
     * (non-Javadoc)
     * @see android.app.Activity#onPause()
     */
    @Override
    protected void onPause() {
        timePlayed += (int)((new Date().getTime() - lastTimestamp) / 1000);
        
        view.onPause();
        super.onPause();
    }
    
    /*
     * (non-Javadoc)
     * @see android.app.Activity#onResume()
     */
    @Override
    protected void onResume() {
        lastTimestamp = new Date().getTime();
        
        view.onResume();
        super.onResume();
    }
    
    /*
     * (non-Javadoc)
     * @see android.app.Activity#onDestroy()
     */
    @Override
    public void onDestroy() {
        game.onDestroy();
        super.onDestroy();
    }
    
    /*
     * (non-Javadoc)
     * @see android.app.Activity#onBackPressed()
     */
    @Override
    public void onBackPressed() {
        game.displayDialogue(); // don't want to exit activity
    }
    
    /**
     * Return time in the game
     * @return
     */
    public int getTimePlayed() {
        return timePlayed + (int)((new Date().getTime() - lastTimestamp) / 1000);
    }
    
    /** Listener for the menu buttons */
    private OnClickListener listener = new OnClickListener() {
        @Override
        public void onClick(View button) {
            switch(button.getId()) {
            case BoardDialogue.RESTART:
                game.initialise(true);
                game.hideDialogue();
                break;
            case BoardDialogue.MENU:
                Intent menuActivity = new Intent(
                    GameActivity.this,
                    MainMenuActivity.class
                );
                startActivity(menuActivity);
                finish();
                break;
            }
        }
    };
}




Java Source Code List

sq.squ1rr.mcc4.AboutMenu.java
sq.squ1rr.mcc4.BaseActivity.java
sq.squ1rr.mcc4.GameActivity.java
sq.squ1rr.mcc4.MainMenuActivity.java
sq.squ1rr.mcc4.MainMenu.java
sq.squ1rr.mcc4.MenuLayout.java
sq.squ1rr.mcc4.OptionsMenu.java
sq.squ1rr.mcc4.QuickGameMenu.java
sq.squ1rr.mcc4.StatsMenu.java
sq.squ1rr.mcc4.Stats.java
sq.squ1rr.mcc4.ai.Ai.java
sq.squ1rr.mcc4.ai.EasyAi.java
sq.squ1rr.mcc4.ai.HardAi.java
sq.squ1rr.mcc4.ai.NormalAi.java
sq.squ1rr.mcc4.ai.PeacefulAi.java
sq.squ1rr.mcc4.board.BoardDialogue.java
sq.squ1rr.mcc4.board.BoardLogic.java
sq.squ1rr.mcc4.board.BoardRenderer.java
sq.squ1rr.mcc4.board.BoardView.java
sq.squ1rr.mcc4.board.GameBoard.java
sq.squ1rr.mcc4.board.Texture.java
sq.squ1rr.mcc4.gl.Rectangle.java
sq.squ1rr.mcc4.gl.SpriteBatch.java
sq.squ1rr.mcc4.gl.SpriteString.java
sq.squ1rr.mcc4.gl.Sprite.java
sq.squ1rr.mcc4.layout.LayoutManager.java
sq.squ1rr.mcc4.layout.McButton.java
sq.squ1rr.mcc4.layout.McGroup.java
sq.squ1rr.mcc4.layout.McSelector.java
sq.squ1rr.mcc4.layout.McStyle.java
sq.squ1rr.mcc4.layout.McText.java
sq.squ1rr.mcc4.layout.McToggler.java
sq.squ1rr.mcc4.layout.McToken.java
sq.squ1rr.mcc4.rules.GameRules.java
sq.squ1rr.mcc4.rules.Player.java
sq.squ1rr.mcc4.rules.Rule.java
sq.squ1rr.mcc4.util.GlobalConstants.java