【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

Modding・サーバPlugin制作・ツール制作など、開発関連の質問があればこちらにお願い致します。
フォーラムルール
質問関連フォーラムで質問する時は、必ず次のトピックを一読/厳守お願い致します。
viewtopic.php?f=5&t=999
  • (PostNo.268999)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by オリゼリ » 2016年3月31日(木) 22:59

すみません連続投稿になってしまうかもしれないですけど、どうしても出来ない所が出てきたので質問します
コンフィグのreloadコマンドについてですが、reloadConfig(); を使っても更新されません。
getIntだと違うやり方なのでしょうか?
一応コード全体
コード: 全て選択
public class Main extends JavaPlugin implements Listener{
   
   BukkitTask t;
   public static FileConfiguration config;
   
   @Override
    public void onEnable(){
      this.getLogger().info("プラグインを有効にしました");
      this.getServer().getPluginManager().registerEvents(this, this);
      saveDefaultConfig();
      config = getConfig();
   }
   
   @Override
    public void onDisable(){
      this.getLogger().info("プラグインを無効にしました");
   }
   
   @Override
    public boolean onCommand(CommandSender sender, final Command cmd, String commandLabel, String[] args){
      String prefix = ChatColor.GREEN + "[timer]" + ChatColor.RESET;
      if(cmd.getName().equalsIgnoreCase("timer")){
         if(args.length==0){
            sender.sendMessage(prefix + ChatColor.GOLD + "/timer start : " + ChatColor.RESET + "コンフィグで設定された時間でタイマーが作動します");
            sender.sendMessage(prefix + ChatColor.GOLD + "/timer stop : " + ChatColor.RESET+ "動作中のタイマーを停止します");
            sender.sendMessage(prefix + ChatColor.GOLD + "/timer reload : " + ChatColor.RESET+ "コンフィグをリロードします");
            return true;
         }
         if(args.length==1){
            final Player player = (Player) sender;
            if (args[0].equalsIgnoreCase("start")) {
               t = new BukkitRunnable() {
                  int count = config.getInt("time");
                  @Override
                  public void run() {
                     if(count > 5){
                        BountifulAPI.sendActionBarToAllPlayers("残り" + count + "秒");
                     }else if(count > 0){
                        player.playSound(player.getLocation(), Sound.ORB_PICKUP, 1, 0);
                        BountifulAPI.sendActionBarToAllPlayers("残り" + count + "秒");
                     }else if (count == 0){
                        player.playSound(player.getLocation(), Sound.LEVEL_UP, 1, 0);
                        BountifulAPI.sendActionBarToAllPlayers("終了!!");
                        t.cancel();
                     }
                     count--;
                  }
               }.runTaskTimer(this, 0, 20);
               return true;
            }
            if (args[0].equalsIgnoreCase("stop")) {
               BountifulAPI.sendActionBarToAllPlayers(ChatColor.RED + "コマンドによりタイマーが止まりました");
               t.cancel();
               return true;
            }
            if (args[0].equalsIgnoreCase("reload")) {
               reloadConfig();
               sender.sendMessage(prefix + ChatColor.AQUA + "Configのリロードが完了しました");
               return true;
            }
         }
      }
      return false;
   }
}
質問の仕方とか直したほうがいいよってことがあったら教えていただければ嬉しいです
オリゼリ
ID:e76ccee0
大工さん
 
記事: 45
登録日時: 2015年4月29日(水) 20:13

  • (PostNo.269006)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by ucchy » 2016年3月31日(木) 23:16

オリゼリさん、

reloadConfig() のあとに、config = getConfig() を実行してください。
それだけで解決しますよ。

これは、メンバ変数configに、”getConfig()を実行した時点での” コンフィグの内容が残っているからです。
reloadConfig() は、getConfig() で取得される内容をリロードします。つまりこの場合、config = getConfig() をしないと、メンバ変数 config まで更新されないわけです。
――お知らせ――
パソコンが壊れたため、買い替えるまで、プラグイン開発作業はお休みしています。簡単な質問程度ならお答えいたします。
――お知らせ――
アバター
ucchy
ID:953ffc01
ラピスラズリ収集家
 
記事: 1171
登録日時: 2012年11月07日(水) 00:08

  • (PostNo.269113)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by オリゼリ » 2016年4月01日(金) 20:43

ucchy さんが書きました:オリゼリさん、

reloadConfig() のあとに、config = getConfig() を実行してください。
それだけで解決しますよ。

これは、メンバ変数configに、”getConfig()を実行した時点での” コンフィグの内容が残っているからです。
reloadConfig() は、getConfig() で取得される内容をリロードします。つまりこの場合、config = getConfig() をしないと、メンバ変数 config まで更新されないわけです。

そうだったんですねありがとうございます。
質問の仕方とか直したほうがいいよってことがあったら教えていただければ嬉しいです
オリゼリ
ID:e76ccee0
大工さん
 
記事: 45
登録日時: 2015年4月29日(水) 20:13

  • (PostNo.269818)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by ゲスト » 2016年4月07日(木) 20:16

今ゾンビエスケープのようなものができるプラグインを作ろうと考えています。
そこで、ゾンビのプレイヤーのスキンをそのゲーム中だけゾンビに変えるということをしたいと思ってるんですが、
どうやったら実現できますか?
ゲスト
ID:5de6df4a
 

  • (PostNo.270266)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by xkaedex » 2016年4月11日(月) 21:10

ゲスト さんが書きました:今ゾンビエスケープのようなものができるプラグインを作ろうと考えています。
そこで、ゾンビのプレイヤーのスキンをそのゲーム中だけゾンビに変えるということをしたいと思ってるんですが、
どうやったら実現できますか?

Lib's Disguisesというentity変装プラグインを使ってみては? APIも用意されているので気軽にゾンビに変装できます
https://www.spigotmc.org/resources/libs-disguises.81/
xkaedex
ID:c79117eb
木を殴ってる
 
記事: 27
登録日時: 2013年2月20日(水) 22:22

  • (PostNo.270664)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by rikuriku112233 » 2016年4月17日(日) 12:36

xkaedex さんが書きました:
ゲスト さんが書きました:今ゾンビエスケープのようなものができるプラグインを作ろうと考えています。
そこで、ゾンビのプレイヤーのスキンをそのゲーム中だけゾンビに変えるということをしたいと思ってるんですが、
どうやったら実現できますか?

Lib's Disguisesというentity変装プラグインを使ってみては? APIも用意されているので気軽にゾンビに変装できます
https://www.spigotmc.org/resources/libs-disguises.81/

ID 5de6df4a の者です。
そんなプラグインがあったのですね!助かりました!
これを使ってZEを再現してみようと思います。
ありがとうございました!
ID変えました rikuriku112233→kuri112233
SkriptとかJavaとかやってます
rikuriku112233
ID:0899c242
水から上がったとこ
 
記事: 10
登録日時: 2013年12月22日(日) 12:03

  • (PostNo.270803)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by timer-b » 2016年4月19日(火) 07:42

プレイヤーコマンドで@p, @a[team=Red]のようなセレクタを用いてプレイヤーを取得する方法を探しています。
以前はkeepoff氏のArgumentAPIを使用させて頂いていたのですが、残念ながら公開を停止されてしまい、その方法を諦める事にしました。
やはりgetPlayers()やgetEntities()で返ってくるリストから自力で取得するしか方法はないのでしょうか。
timer-b
ID:d620457f
水から上がったとこ
 
記事: 1
登録日時: 2016年4月19日(火) 07:12

  • (PostNo.271042)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by 青鷺火 » 2016年4月23日(土) 04:12

質問させて頂きます。

プレイヤーにクリエイティブモードのインベントリを開かせたかったのですが、
bukkitがそれに対応していないみたいでできませんでしたので
すべてのアイテム(クリエイティブのインベントリで手に入るもの)をクリエイティブインベントリの種類別に取得したいのですが、なにか良い方法はありませんか?

また、Materialには通常では手に入らないアイテムなどもありますので
それらを含まないアイテムのリストを得る方法などでもあればぜひ教えてほしいです。

アイテムひとつひとつをリストに追加する方法では、すべてのバージョンに対応することができないと思い質問するにいたりました。

クリエイティブモードのインベントリを開くことができなかったというのは、
1.クリエイティブモード以外のモードのプレイヤーに開かせるとエラーが発生
2.クリエイティブモードのプレイヤーに開かせるとチェストタイプのインベントリが開く
3.パケットからクリエイティブモードのインベントリを開かせようとしても2と同じくチェストタイプが開く
ということでした。
マインクラフトのプラグインを作っています。
青鷺日記
アバター
青鷺火
ID:ee9551fc
石炭掘り
 
記事: 153
登録日時: 2013年10月09日(水) 18:52

  • (PostNo.271062)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by King(qpwakaba) » 2016年4月23日(土) 12:57

青鷺火 さんが書きました:すべてのアイテム(クリエイティブのインベントリで手に入るもの)をクリエイティブインベントリの種類別に取得したいのですが、なにか良い方法はありませんか?


うーん、BukkitじゃなくてCraftBukkit前提になりますが、
net.minecraft.server以下のBlock、Itemを直接探しに行けば、
どのクリエイティブモードのタブに存在しているかは取得できますが、結構めんどくさそう。

全ブロック、全アイテムループで回して取得してプラグイン側のリストか何かに保存すればそれっぽいものはできるかも。

もちろんバージョン依存になるので 複数バージョン対応にはリフレクションが必須になりますね
以下サイン
調べて見つからないことを質問して、「そのくらい調べろ」と言われたら それは調べが足りないとき。

投稿画面のBBコード挿入ボタン を追加するユーザースクリプト作りました。良かったらどうぞ。
https://greasyfork.org/ja/scripts/18657
最大描画距離を64チャンクまで伸ばすMod作ってます。
viewtopic.php?t=30697
アバター
King(qpwakaba)
ID:1e108afa
ダイヤモンド掘り
 
記事: 823
登録日時: 2013年3月26日(火) 10:25

  • (PostNo.271104)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by 青鷺火 » 2016年4月24日(日) 00:50

King(qpwakaba) さんが書きました:
net.minecraft.server以下のBlock、Itemを直接探しに行けば、
どのクリエイティブモードのタブに存在しているかは取得できますが、結構めんどくさそう。

全ブロック、全アイテムループで回して取得してプラグイン側のリストか何かに保存すればそれっぽいものはできるかも。

もちろんバージョン依存になるので 複数バージョン対応にはリフレクションが必須になりますね


やっぱりNMSになりますよねー…

king様の案がすばらしかったのでひととおり頑張ってみましたが、アイテムによっては登録されていないのかところどころ取得できないものもあり、
全てのアイテムをタブわけすることはできませんでした…

もういちど頑張ってみようと思います。ありがとうございました!
マインクラフトのプラグインを作っています。
青鷺日記
アバター
青鷺火
ID:ee9551fc
石炭掘り
 
記事: 153
登録日時: 2013年10月09日(水) 18:52

  • (PostNo.271106)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by King(qpwakaba) » 2016年4月24日(日) 02:05

青鷺火 さんが書きました:king様の案がすばらしかったのでひととおり頑張ってみましたが、アイテムによっては登録されていないのかところどころ取得できないものもあり、
全てのアイテムをタブわけすることはできませんでした…

もしよろしければ、バージョンとどのアイテムが取得できないか教えていただけますか?

(気になる点としては アイテムとブロックとで両方存在しているものの扱いのあたり)


追記:
なるほど、確かにバケツとか染料とか 全種類の登録されてないですね・・・
どうすりゃうまく取得できるだろうか・・・
以下サイン
調べて見つからないことを質問して、「そのくらい調べろ」と言われたら それは調べが足りないとき。

投稿画面のBBコード挿入ボタン を追加するユーザースクリプト作りました。良かったらどうぞ。
https://greasyfork.org/ja/scripts/18657
最大描画距離を64チャンクまで伸ばすMod作ってます。
viewtopic.php?t=30697
アバター
King(qpwakaba)
ID:5504b2e8
ダイヤモンド掘り
 
記事: 823
登録日時: 2013年3月26日(火) 10:25

  • (PostNo.271306)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by ゲスト » 2016年4月26日(火) 20:34

質問です。
特定のアイテムを手に持ってMOBを右クリックしたときに、ダメージを与えるというプラグインを作っているのですが、右クリックしたときにそのアイテムの耐久値を減らすにはどうすればいいですか?

↓現在のコード↓
 @EventHandler
 public void onAttack(PlayerInteractEntityEvent event) {
 Player player = event.getPlayer();
  if (event.getRightClicked() instanceof Damageable) && (player.getInventory().getItemInOffHand().getType() == Material.BLAZE_ROD) {
  ((Damageable) event.getRightClicked()).damage(4d, player);
}
}
ゲスト
ID:9b12332a
 

  • (PostNo.271312)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by King(qpwakaba) » 2016年4月26日(火) 21:18

ゲスト さんが書きました:質問です。
特定のアイテムを手に持ってMOBを右クリックしたときに、ダメージを与えるというプラグインを作っているのですが、右クリックしたときにそのアイテムの耐久値を減らすにはどうすればいいですか?

↓現在のコード↓
 @EventHandler
 public void onAttack(PlayerInteractEntityEvent event) {
 Player player = event.getPlayer();
  if (event.getRightClicked() instanceof Damageable) && (player.getInventory().getItemInOffHand().getType() == Material.BLAZE_ROD) {
  ((Damageable) event.getRightClicked()).damage(4d, player);
}
}

求めている回答とは若干ズレが有ると思いますが 先に結論をまとめますと
  • ブレイズロッドには耐久値が存在しないため、耐久値を減らすことは不可能
  • それっぽいものをプラグインで作れば可能
となります。


多分なんの表示も出ずに動作していない状態だと思うけど、 どこが原因歌がわからない時は、ログに文字を出力する方法を使って どこまで処理が通っているかを1行ずつ確認するといいです。

今回の場合はevent.getPlayerの次の行のif文、前半部分の event.getRightClicked() instanceof Damageable の段階でfalseになってしまっていてその後がスルーされてしまっているはずです。


さて、では そもそも「ブレイズロッドの耐久値を減らすにはどうしたらよいか」の質問の前提となっている、「ブレイズロッドに耐久値がある」ですが、 そもそもバニラのマインクラフトには ブレイズロッドに耐久値が設定されていないため、プラグインから耐久値を~ ということはどうしてもできません。

ただし、アイテム名を変更するなどして、擬似的に耐久値を作り、それが尽きた時にアイテムを破壊する(もしくは使用不可能にする)という処理を作れば不可能ではありません。

文章色々おかしいけど、まぁいっか!
以下サイン
調べて見つからないことを質問して、「そのくらい調べろ」と言われたら それは調べが足りないとき。

投稿画面のBBコード挿入ボタン を追加するユーザースクリプト作りました。良かったらどうぞ。
https://greasyfork.org/ja/scripts/18657
最大描画距離を64チャンクまで伸ばすMod作ってます。
viewtopic.php?t=30697
アバター
King(qpwakaba)
ID:5504b2e8
ダイヤモンド掘り
 
記事: 823
登録日時: 2013年3月26日(火) 10:25

  • (PostNo.271322)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by ゲスト » 2016年4月26日(火) 22:36

返信ありがとうございます。
おかげさまで正常に動作しました。
やはりブレイズロッドは色々面倒ですかね...。バニラで耐久値が存在する斧やツルハシといった道具類を使おうと思います。
そこで、「右クリックしたときにそのアイテムの耐久値を減らす」というのをやりたいのですが、どのような処理をしたら良いか教えてください。
ゲスト
ID:9b12332a
 

  • (PostNo.271324)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by King(qpwakaba) » 2016年4月26日(火) 22:46

ゲスト さんが書きました:バニラで耐久値が存在する斧やツルハシといった道具類を使おうと思います。
そこで、「右クリックしたときにそのアイテムの耐久値を減らす」というのをやりたいのですが、どのような処理をしたら良いか教えてください。


ツール類の耐久値は アイテムのダメージ値によって保存されています。なので、対象のItemStackのダメージ値を増加させる事によって耐久度を扱うことができます。
(たしか ダメージ値を減らすんじゃなくて増やすんだったはず。違ってたらすいません)

ItemStack#getDurability で、ダメージ値を取得 setDurabilityで設定できるはずです。
以下サイン
調べて見つからないことを質問して、「そのくらい調べろ」と言われたら それは調べが足りないとき。

投稿画面のBBコード挿入ボタン を追加するユーザースクリプト作りました。良かったらどうぞ。
https://greasyfork.org/ja/scripts/18657
最大描画距離を64チャンクまで伸ばすMod作ってます。
viewtopic.php?t=30697
アバター
King(qpwakaba)
ID:5504b2e8
ダイヤモンド掘り
 
記事: 823
登録日時: 2013年3月26日(火) 10:25

  • (PostNo.271366)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by ゲスト » 2016年4月27日(水) 19:46

返信遅れてしまってすみません。
setDurabilityを使ってみました。
耐久値を指定した値に設定することはできたのですが、使うたびに耐久値が減っていくようにしたいです。

↓現在のコード↓

@EventHandler
public void Interact(PlayerInteractEntityEvent event) {
if (event.getRightClicked() instanceof Damageable) {
if (event.getPlayer().getInventory().getItemInOffHand().getType() == Material.WOOD_AXE) {
((Damageable) event.getRightClicked()).damage(4d, event.getPlayer());
event.getPlayer().getInventory().getItemInOffHand().setDurability((short) 1);
}
}
}

もしコード自体が間違っていたら教えてください。
ゲスト
ID:9b12332a
 

  • (PostNo.271370)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by King(qpwakaba) » 2016年4月27日(水) 20:25

ゲスト さんが書きました:返信遅れてしまってすみません。
setDurabilityを使ってみました。
耐久値を指定した値に設定することはできたのですが、使うたびに耐久値が減っていくようにしたいです。

↓現在のコード↓

@EventHandler
public void Interact(PlayerInteractEntityEvent event) {
if (event.getRightClicked() instanceof Damageable) {
if (event.getPlayer().getInventory().getItemInOffHand().getType() == Material.WOOD_AXE) {
((Damageable) event.getRightClicked()).damage(4d, event.getPlayer());
event.getPlayer().getInventory().getItemInOffHand().setDurability((short) 1);
}
}
}

もしコード自体が間違っていたら教えてください。


一度 自分の回答をすべて声に出して読みなおしてから、それでもわからなければ可能な限りを尽くしたうえで再度質問してください。
以下サイン
調べて見つからないことを質問して、「そのくらい調べろ」と言われたら それは調べが足りないとき。

投稿画面のBBコード挿入ボタン を追加するユーザースクリプト作りました。良かったらどうぞ。
https://greasyfork.org/ja/scripts/18657
最大描画距離を64チャンクまで伸ばすMod作ってます。
viewtopic.php?t=30697
アバター
King(qpwakaba)
ID:7b2027ee
ダイヤモンド掘り
 
記事: 823
登録日時: 2013年3月26日(火) 10:25

  • (PostNo.271376)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by あいむぅ » 2016年4月27日(水) 21:52

質問です

指定された名前のアイテムを右クリックすると〜が起こる
というプラグインを作ろうとしているのですが
方法が思いつきません。何かいい方法はないでしょうか
あいむぅ
ID:f86fe74b
 

  • (PostNo.271383)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by Hinyari_Gohan » 2016年4月27日(水) 23:15

あいむぅ さんが書きました:質問です

指定された名前のアイテムを右クリックすると〜が起こる
というプラグインを作ろうとしているのですが
方法が思いつきません。何かいい方法はないでしょうか


1、PlayerInteractEventをキャッチ
2、持っているアイテムを取得
3、その名前が~~なら==を実行

この3ステップで思い通りの動作をすると思います。

わからない場合は見てください。このコードの意味がわからない場合はJavaとBukkitについて理解を深める必要があります。
コード: 全て選択
@EventHandler
   public void onRightClick(PlayerInteractEvent event)
   {
      if ( event.getAction() != Action.RIGHT_CLICK_AIR ||
            event.getAction != Action.RIGHT_CLICK_BLOCK )
      {
         return;
      }

      Player player = event.getPlayer();
      ItemStack item = player.getItemInHand();
      
      if ( item == null )
      {
         return;
      }
      
      if ( !( item.hasItemMeta()) )
      {
         return;
      }
      
      ItemMeta meta = item.getItemMeta();
      String dName = meta.getDisplayName();
      
      if ( dName.equals("hoge") )
      {
         //処理を記述する
         //たとえばクリックしたら ほげほげアイテム と表示させてみる
         player.sendMessage("ほげほげアイテム。");
      }
   }
最後に編集したユーザー Hinyari_Gohan [ 2016年4月28日(木) 07:21 ], 累計 1 回
Hinyari_Gohanで主に活動しております。
見かけた際はどうぞよろしく。
アバター
Hinyari_Gohan
ID:7cddf658
石掘り
 
記事: 92
登録日時: 2014年4月19日(土) 09:00

  • (PostNo.271391)

Re: 【総合】トピック立てるまでもない質問【Bukkit Plugin制作】

投稿記事by supermarisa6 » 2016年4月28日(木) 01:26

syunsyungoto さんが書きました:
あいむぅ さんが書きました:質問です

指定された名前のアイテムを右クリックすると〜が起こる
というプラグインを作ろうとしているのですが
方法が思いつきません。何かいい方法はないでしょうか


1、PlayerInteractEventをキャッチ
2、持っているアイテムを取得
3、その名前が~~なら==を実行

この3ステップで思い通りの動作をすると思います。

わからない場合は見てください。このコードの意味がわからない場合はJavaとBukkitについて理解を深める必要があります。
コード: 全て選択
@EventHandler
   public void onRightClick(PlayerInteractEvent event)
   {
      Player player = event.getPlayer();
      ItemStack item = player.getItemInHand();
      
      if ( item == null )
      {
         return;
      }
      
      if ( !( item.hasItemMeta()) )
      {
         return;
      }
      
      ItemMeta meta = item.getItemMeta();
      String dName = meta.getDisplayName();
      
      if ( dName == "hoge" )
      {
         //処理を記述する
         //たとえばクリックしたら ほげほげアイテム と表示させてみる
         player.sendMessage("ほげほげアイテム。");
      }
   }


回答に水を差すようで申し訳ないのですが、Javaの文字列の比較に==は使えないので注意してください。
BukkitよりJavaの基礎なのであまり深くは解説しませんが、文字列の比較にはequals()で比較してください。
コード: 全て選択
String str = "test";
if(str.equals("test")){
    //プログラム
}


もう一点、いくつのVerでの開発かわかりませんが、1.9ではPlayer#getItemInHand()はDeprecatedになっているので注意してください。
Player#getInventory()#getItemInMainHand()かPlayer#getInventory()#getItemInOffHand()を使用してください(両腕追加のため)

追記:
書き忘れていましたが、右クリックした時を判定したい場合
event.getAction()がAction.RIGHT_CLICK_AIRかAction.RIGHT_CLICK_BLOCKのどちらかなので、その判定を入れてください。
Bukkitプラグインや外部支援ツールなどちょくちょく作っているsupermarisa6です。
回答するとき、質問を理解せず答えて見当違いなことをよく言いってしまいます。(申し訳ないです)
supermarisa6
ID:9297c8ac
石炭掘り
 
記事: 153
登録日時: 2013年6月05日(水) 17:37

1つ前へ次へ

Return to 質問:開発・制作関連

x