163 lines
5.4 KiB
Java
Executable File
163 lines
5.4 KiB
Java
Executable File
package com.hyperling.apps.games;
|
|
|
|
import android.content.Intent;
|
|
import android.content.SharedPreferences;
|
|
import androidx.appcompat.app.AppCompatActivity;
|
|
import android.os.Bundle;
|
|
import android.util.Log;
|
|
import android.view.View;
|
|
import android.widget.Button;
|
|
|
|
public class MainActivity extends AppCompatActivity {
|
|
|
|
private Button btnGameBird, btnGameCow, btnGamePig, btnGameChicken, btnGameCat, btnGameSquirrel, btnOptions, btnHighScores, btnHelp;
|
|
|
|
private String TAG, sharedPreferencesKey, birdScoreKey, chickenScoreKey;
|
|
|
|
private SharedPreferences sharedPreferences;
|
|
|
|
@Override
|
|
protected void onCreate(Bundle savedInstanceState) {
|
|
super.onCreate(savedInstanceState);
|
|
|
|
setContentView(R.layout.activity_main);
|
|
|
|
TAG = getString(R.string.TAG);
|
|
|
|
// Keys
|
|
sharedPreferencesKey = getString(R.string.sharedPreferencesKey);
|
|
birdScoreKey = getString(R.string.birdScoreKey);
|
|
chickenScoreKey = getString(R.string.chickenScoreKey);
|
|
|
|
// Shared Preferences
|
|
sharedPreferences = getSharedPreferences(sharedPreferencesKey, MODE_PRIVATE);
|
|
|
|
// Initialize buttons
|
|
btnGameBird = (Button) findViewById(R.id.btnBirdGame);
|
|
btnGameCow = (Button) findViewById(R.id.btnGameCow);
|
|
btnGamePig = (Button) findViewById(R.id.btnGamePig);
|
|
btnGameChicken = (Button) findViewById(R.id.btnGameChicken);
|
|
btnGameCat = (Button) findViewById(R.id.btnGameCat);
|
|
btnGameSquirrel = (Button) findViewById(R.id.btnGameSquirrel);
|
|
btnOptions = (Button) findViewById(R.id.btnOptions);
|
|
btnHighScores = (Button) findViewById(R.id.btnHighScores);
|
|
btnHelp = (Button) findViewById(R.id.btnHelp);
|
|
|
|
// Set up game buttons
|
|
btnGameBird.setOnClickListener(new View.OnClickListener() {
|
|
@Override
|
|
public void onClick(View v) {
|
|
doGameButton((Button) v);
|
|
}
|
|
});
|
|
btnGameCow.setOnClickListener(new View.OnClickListener() {
|
|
@Override
|
|
public void onClick(View v) {
|
|
doGameButton((Button) v);
|
|
}
|
|
});
|
|
btnGamePig.setOnClickListener(new View.OnClickListener() {
|
|
@Override
|
|
public void onClick(View v) {
|
|
doGameButton((Button) v);
|
|
}
|
|
});
|
|
btnGameChicken.setOnClickListener(new View.OnClickListener() {
|
|
@Override
|
|
public void onClick(View v) {
|
|
doGameButton((Button) v);
|
|
}
|
|
});
|
|
btnGameCat.setOnClickListener(new View.OnClickListener() {
|
|
@Override
|
|
public void onClick(View v) {
|
|
doGameButton((Button) v);
|
|
}
|
|
});
|
|
btnGameSquirrel.setOnClickListener(new View.OnClickListener() {
|
|
@Override
|
|
public void onClick(View v) {
|
|
doGameButton((Button) v);
|
|
}
|
|
});
|
|
|
|
// Set up other buttons
|
|
btnOptions.setOnClickListener(new View.OnClickListener() {
|
|
@Override
|
|
public void onClick(View v) {
|
|
doOptionsButton();
|
|
}
|
|
});
|
|
btnHighScores.setOnClickListener(new View.OnClickListener() {
|
|
@Override
|
|
public void onClick(View v) {
|
|
doHighScoresButton();
|
|
}
|
|
});
|
|
}
|
|
|
|
@Override
|
|
protected void onResume() {
|
|
// Append high scores to button text
|
|
int score;
|
|
String newText;
|
|
|
|
score = sharedPreferences.getInt(birdScoreKey, 0);
|
|
Log.d(TAG, "MainActivity.onResume(): birdScore=" + score);
|
|
if (score > 0) {
|
|
newText = getString(R.string.btnGameBird) + '\n' + getString(R.string.btnHighScoreSubHeader).concat(" ") + score;
|
|
Log.d(TAG, "MainActivity.onResume(): newText=" + newText);
|
|
btnGameBird.setText(newText);
|
|
}
|
|
else{
|
|
btnGameBird.setText(getString(R.string.btnGameBird));
|
|
}
|
|
|
|
score = sharedPreferences.getInt(chickenScoreKey, 0);
|
|
if (score > 0) {
|
|
newText = getString(R.string.btnGameChicken) + '\n' + getString(R.string.btnHighScoreSubHeader).concat(" ") + score;
|
|
Log.d(TAG, "MainActivity.onResume(): newText=" + newText);
|
|
btnGameChicken.setText(newText);
|
|
}
|
|
else{
|
|
btnGameChicken.setText(getString(R.string.btnGameChicken));
|
|
}
|
|
|
|
super.onResume();
|
|
}
|
|
|
|
// Start the game
|
|
private void doGameButton(Button b){
|
|
Log.i(TAG, "MainActivity.doCowGameButton()");
|
|
|
|
// Only get the game name, not the high score
|
|
String gameType, buttonText;
|
|
buttonText = b.getText().toString();
|
|
int newLine = buttonText.indexOf('\n');
|
|
if (newLine > 0) {
|
|
gameType = buttonText.substring(0, buttonText.indexOf('\n'));
|
|
}
|
|
else{
|
|
gameType = buttonText;
|
|
}
|
|
|
|
// Start the GameActivity
|
|
Intent game = new Intent(MainActivity.this, GameActivity.class);
|
|
game.setAction(gameType);
|
|
startActivity(game);
|
|
}
|
|
|
|
// Go to OptionsActivity
|
|
private void doOptionsButton(){
|
|
Log.i(TAG, "MainActivity.doOptionsButton()");
|
|
|
|
Intent options = new Intent(MainActivity.this, OptionsActivity.class);
|
|
startActivity(options);
|
|
}
|
|
|
|
private void doHighScoresButton(){
|
|
Intent highScores = new Intent(MainActivity.this, HighScoreActivity.class);
|
|
startActivity(highScores);
|
|
}
|
|
}
|