@Override protected void onStart() { final GameBoard boardView = (GameBoard) this.findViewById(R.id.gameBoard); SharedPreferences prefs = getPreferences(Context.MODE_PRIVATE); this.level = prefs.getInt("level", 0); String mapJson = prefs.getString("map", null); if (mapJson == null) { waitForNext = true; } else { this.game.initGame(mapJson); String howdyPosition = prefs.getString("howdy", null); if (howdyPosition != null) { this.game.setHowdyPosition(howdyPosition); } Toast.makeText(this, this.level + "", Toast.LENGTH_SHORT).show(); } String allDoneLevelsString = prefs.getString("doneLevels", null); if (allDoneLevelsString != null) { allDoneLevels = new ArrayList<String>(Arrays.asList(allDoneLevelsString.split(","))); } super.onStart(); }
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // remove title requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow() .setFlags( WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView(R.layout.activity_main_game); allDoneLevels = new ArrayList<>(); AssetManager am = getResources().getAssets(); final GameBoard boardView = (GameBoard) this.findViewById(R.id.gameBoard); final HowdyShadeView howdyShadeView = (HowdyShadeView) this.findViewById(R.id.howdyShadeView); final GlowingBoard glowingBoard = (GlowingBoard) this.findViewById(R.id.glowingBoard); final HowdyView howdyView = (HowdyView) this.findViewById(R.id.howdyView); this.game = new Game(); boardView.setHowdyShadeView(howdyShadeView); boardView.setGlowingBoard(glowingBoard); boardView.setHowdyView(howdyView); boardView.setOnTouchListener(new BoardGameTouchListener(this)); }
@Override public void onWindowFocusChanged(boolean hasFocus) { // TODO: Implement this method super.onWindowFocusChanged(hasFocus); if (waitForNext) { this.nextLevel(); waitForNext = false; } ((GameBoard) findViewById(R.id.gameBoard)).setGame(this.game); findViewById(R.id.gameBoard).invalidate(); ((GameBoard) findViewById(R.id.gameBoard)).getHowdyShadeView().invalidate(); }
@Override protected void onStop() { SharedPreferences prefs = getPreferences(Context.MODE_PRIVATE); SharedPreferences.Editor editor = prefs.edit(); editor.putInt("level", this.level); editor.putString("map", game.getLabyrinth().getJsonMap()); editor.putString("howdy", game.getJsonHowdy()); String allDoneLevelsString = ""; for (String s : allDoneLevels) { allDoneLevelsString += s + ","; } if (allDoneLevelsString.length() > 0) { editor.putString( "doneLevels", allDoneLevelsString.substring(0, allDoneLevelsString.length() - 1)); } editor.commit(); super.onStop(); }