MAGI JAVA -Make a game in Java-
JAVA Game作成講座 003回 クラスを作る


kouza003 jarファイル


これから先に進むためにちょっと面倒な作業をします。
GameDataクラスと、PlayerPlatformクラスを新規に作成。
あと、グラフィックをフォルダに収めるのを中止。
全部同一ファイル内にダラダラと入れるのは好きじゃないですが、
フォルダを指定してファイルを取る方法が理解できていません。
上手いやり方を思いつくまでこれで行きます。
それに合わせて、

InputStream is3 = this.getClass().getResourceAsStream("mapUnit1.gif");
playerGra = ImageIO.read(is3);
is3.close();

ファイルの読み込み場所をクラスファイルと同じ場所に変えています。
以降はこれを下地に作成していきます。
コロコロ変えて申し訳ありません。
しかし、Jarファイルとして登録できたので実行が楽になっています。
javaのランタイムを入れてあればそれを用いてファイルを開けます。
中身を見たい場合は解凍すれば各ファイルを取り出せます。


[GameDataクラスの中身]
public class GameData {

public PlayerPlatform pPlatform=null;
public GameData() {
init();
}

public void init() {
pPlatform=new PlayerPlatform();
}

}

[PlayerPlatformクラスの中身]
public class PlayerPlatform {

public PlayerPlatform() {
init();
}

public void init() {

}

}


GameDataクラス内のクラスとしてPlayerPlatformクラスを定義します。
GameDataクラス自体はARPanelに定義します。

48行目 public GameData gData=null;
92行目 gData=new GameData();

これでGameDataクラス=gDataと、
その下位クラスgData.pPlatformを使う準備ができました。
次回はこのpPlatformにARPanelの処理を一部移行します。


なぜこんな面倒なことをやるのかというと、
ARPanelからしかプレイヤー座標がいじれないことが問題になってくるのです。
将来的にイベントやら何やらからプレイヤーを操作したい時に、
最上位クラスのARPanelにその制御権があるとめんどくさい。

わざわざここまで戻ってきて処理を入力し、
下へ下へと命令を送り込んでやっと動かせるようになる。
それはうんざりする手間なのでそれを省きます。

今回と次回はビジュアルに全く変化がないので動画を作りません。

・トップページへ戻る
inserted by FC2 system