こんにちは、私は現在仮想ペット スタイルのアプリを作成しています。Pet.class というペットのベース用のクラスを作成しました。
package com.grim.droidchi;
public class Pet {
public static int Health = 100;
public static int Happiness = 10;
public static int Level = 1;
public static int Hunger = 0;
public static int Exp = 0;
public static String Name;
public static Boolean isAlive = true;
public static Boolean isSick = false;
public Pet(int startHealth, int startLevel, int startHunger) {
}
}
そして、基本のペット クラスを拡張する 'Dog' クラス
package com.grim.droidchi;
public class Dog extends Pet {
public Dog(int startHealth, int startLevel, int startHunger) {
super(startHealth, startLevel, startHunger);
}
}
30 分ごとに AlarmManager が Gameloop.class をトリガーします
package com.grim.droidchi;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.media.MediaPlayer;
import android.util.Log;
import android.widget.TextView;
public class Gameloop extends BroadcastReceiver {
MediaPlayer mp = null;
private static final String TAG = "VPET";
@Override
public void onReceive(Context context, Intent intent) {
Log.d(TAG, "Loop running");
if (Pet.isAlive == true) {
Pet.Hunger = Pet.Hunger + 1;
Pet.Exp = Pet.Exp + 2;
Pet.Happiness = Pet.Happiness - 1;
mp = MediaPlayer.create(context, R.raw.beep);
mp.start();
petLevel();
petStatus();
randomEncounters();
} else {
}
}
private void petLevel() {
}
private void randomEncounters() {
if (Math.random() < 0.20) {
Pet.isSick = true;
}
}
private void petStatus() {
if (Pet.Hunger > 7) {
Pet.isAlive = false;
}
}
}
ユーザーが選択した特定のペットに依存するようにゲームループで行われることを取得するにはどうすればよいですか? (より多くのペットタイプを作成すると仮定します。)
PS また、この質問の補足として、Gameloop クラスから UI を常に最新の状態に保つための最良の方法は何ですか?
どんな助けでも大歓迎です。私はまだJavaとAndroidについて学んでいます.すべての優れた学習教材の中でさえ、特定の/質問の答えを見つけるのが難しい場合があります.
ありがとうございました。