忍者ブログ
[PR]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


2024/11/23 18:34 |
開発状況:ゲームパッドに対応
趣味で作ってる不思議のダンジョン風ゲームだけど、ついにゲームパッドに対応してみた! 対応させること自体は、JInputを使えば簡単だった。結構簡単に、パッドからの入力を受け取れる。

以下はテストコード例。テスト環境としては、ELECOM のJC-PS101USVというのを使って、PS2のコントローラを使用。
import net.java.games.input.Component;
import net.java.games.input.Controller;
import net.java.games.input.ControllerEnvironment;

public class Main {
  
  public static void main(String[] args) {
    
    ControllerEnvironment env =           
      ControllerEnvironment.getDefaultEnvironment();
    
    for(Controller cont : env.getControllers()) {
      
      if (cont.getType() == Controller.Type.STICK) {
        while(true) {
          
          try {
            Thread.sleep(100);
          } catch (InterruptedException e) { }
          cont.poll(); // コントローラの状態を更新
          print(cont.getComponents());
        }
      }
    }

  }
  
  private static void print(Component[] comp) {

    for(Component c : comp) {

      // int にキャストが適切かどうかは不明
      int val = (int)c.getPollData(); 

      if (c.getIdentifier() == Component.Identifier.Axis.X) {
        
        if (val == -1) {
          System.out.println("左");
        }
        if (val == 1) {
          System.out.println("右");
        }
      }      
      if (c.getIdentifier() == Component.Identifier.Axis.Y) {
        if (val == -1) {
          System.out.println("上");
        }
        if (val == 1) {
          System.out.println("下");
        }
      }
      
      if (c.getIdentifier() == Component.Identifier.Button._0) {
        if (val == 1) {
          System.out.println("△");
        }
      }
      if (c.getIdentifier() == Component.Identifier.Button._1) {
        if (val == 1) {
          System.out.println("○");
        }
      }
      if (c.getIdentifier() == Component.Identifier.Button._2) {
        if (val == 1) {
          System.out.println("×");
        }
      }
      if (c.getIdentifier() == Component.Identifier.Button._3) {
        if (val == 1) {
          System.out.println("□");
        }
      }
    }
  }
}
PR

2007/09/16 15:16 | Comments(1) | TrackBack() | 開発状況
開発状況:コードを綺麗に
機能的には全然改善されてないが、コードを綺麗にする作業をやってた。いわゆるリファクタリングというやつですな。

ニコニコアクションゲームを作ってみる【その10】 とかを見てると、短い期間でよく作れるなー、と思ったりする。こっちは、期間だけで言うと一年半以上経ってるのに全然できてねえ。


2007/09/11 23:10 | Comments(0) | TrackBack() | 開発状況
開発状況:定期報告

全然開発進んでないぜー。

とりあえず、週一回ぐらいで定期的にどういう状況かを報告してみようと思う。

今つまってるのは、システムの基本的な部分。普通はいわゆる「タスクシステム」でゲーム処理を行うんだろうけど、気に入らなかったので別の方法で自作してたからあまりうまくいっていない。

気にいらないといっても、ちゃんと分析したわけじゃないので、わざわざ別のアプローチをしなくてもよいかもしれないけど。

で、その部分がうまく設計・実装できてないので進行が鈍ってる。

で、あまり気合が要らない部分として、ゲームデータのセーブ・ロードに着手中。まだ実装してなかったのか、って感じだけど。


一つ悩んでいるのは、現状のコードを公開するかどうか、っていう部分。というのも、普通にプレイできるまではまだ時間がかかりそうなので、どうしようかな、と。

コードを公開すること自体は別にいいんだけど。ただ、一時的なファイルとかをディレクトリ構成を整理しなきゃいけないってのが面倒ってだけで。


2007/07/28 21:56 | Comments(0) | TrackBack() | 開発状況
開発状況:罠

59812cf9.jpeg








全然開発が進んでないわけだけど、仮というか中途半端に罠を実装してみた。


2007/05/19 16:40 | Comments(0) | TrackBack() | 開発状況

| HOME |
忍者ブログ[PR]