mod制作でコマンドを使う

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

mod制作でコマンドを使う

投稿記事by kabocya » 2015年12月12日(土) 22:07

ただいま、1.7.10のforgeにてMOD制作をしているのですが、MODの中でコマンドを実行するにはどうしたら良いのか分かりません。
できるかぎり自分で探したのですが、"コマンドの追加"というのはあったのですが、"コマンドの実行"というのは見つかりませんでした。
何か、「command("gamemode 0")」みたいなことができる関数は無いでしょうか?(gamemodeだけではなく、他のコマンドも)
あればお願いします。
kabocya
ID:34599b60
 

  • (PostNo.256625)

Re: mod制作でコマンドを使う

投稿記事by alice » 2015年12月13日(日) 06:07

コマンドブロックのコードを読んでみると分かると思います。
TileEntityの方です。
スチマーとマストドナーと化してる。PC故障につき活動停止中。2018年12月24日復活予定。
@a1lic,a1lic.net,MOD公開場所(トピックへリダイレクト),GitHub
アバター
alice
ID:40837d64
金掘り
 
記事: 442
登録日時: 2011年10月23日(日) 20:10

  • (PostNo.256647)

Re: mod制作でコマンドを使う

投稿記事by kabocya » 2015年12月13日(日) 11:48

どういうことでしょうか
kabocya
ID:34599b60
 

  • (PostNo.256648)

Re: mod制作でコマンドを使う

投稿記事by エリンギ » 2015年12月13日(日) 11:56

kabocya さんが書きました:どういうことでしょうか

バニラのコマンドブロックのソースのうち、TileEntityCommandBlockのソースを見るとわかるということかと思われます。
バニラのソースは、Modding wiki通りに構築していれば、IDE上(EclipseやIDEAなど)で見られるようです。
使用しているIDEによっても違いますので、そのあたりは御自分でお調べください。
forgeSrc-1.8.8-11.15.0.1601-1.8.8.jarといった名前(バージョンは違いますが)のファイルがライブラリにあると思いますので、そちらを見る形になるかと。
アバター
エリンギ
ID:27911246
掘り廃人
 
記事: 1674
登録日時: 2013年11月30日(土) 17:18

  • (PostNo.256658)

Re: mod制作でコマンドを使う

投稿記事by alice » 2015年12月13日(日) 13:11

kabocya さんが書きました:どういうことでしょうか
出先からの返信となってしまったため、簡易な返事になってしまい申し訳ありませんでした。
コマンドを実行させたいとのことなので、サーバーからコマンドマネージャーを取得して実行するようにします。
バージョン1.7.10での処理は次の通りとなります。(ほぼコマンドブロックの処理と同じです)
コード: 全て選択
if(!world.isRemote)
{
    // この処理はサーバー側
    MinecraftServer server = MinecraftServer.getServer();
    server.getCommandManager().executeCommand(player, "/gamemode 0");
}

ICommandSenderを指定する必要がありますが、playerはICommandSenderを実装しているので、このようにするとプレイヤーがコマンドを実行した、という風になります。
また、自前でICommandSenderを実装することで、MODがコマンドを実行した、というようにすることもできます。ただし、この場合はプレイヤーを対象とするようなコマンド(/gamemodeや/tpなど)は別途プレイヤー名を指定するなどする必要があります。
スチマーとマストドナーと化してる。PC故障につき活動停止中。2018年12月24日復活予定。
@a1lic,a1lic.net,MOD公開場所(トピックへリダイレクト),GitHub
アバター
alice
ID:718fe3b0
金掘り
 
記事: 442
登録日時: 2011年10月23日(日) 20:10

  • (PostNo.256699)

Re: mod制作でコマンドを使う

投稿記事by kabocya » 2015年12月13日(日) 16:38

有難うございます。
何となく自分でできそうな気がしてきました。
kabocya
ID:34599b60
 

  • (PostNo.256703)

Re: mod制作でコマンドを使う

投稿記事by kabocya » 2015年12月13日(日) 17:19

自分の力不足で申し訳ないのですが、playerというのはどこで定義されているのでしょうか。
"playerを型に解決できません" とでてきてしまいます。
また、ICommandSenderの実装というのはどうやったらできるのでしょうか。
教えて頂けると幸いです。
kabocya
ID:34599b60
 

  • (PostNo.256743)

Re: mod制作でコマンドを使う

投稿記事by alice » 2015年12月13日(日) 20:59

上記で示したのはあくまでも一例にすぎないので、状況に応じて記述を変えて欲しいです。
どのようなMODを作られているのか、そのMODでコマンドを実行させる状況がどんな時なのかについて教えて頂けると、もう少し回答しやすいと思います。
スチマーとマストドナーと化してる。PC故障につき活動停止中。2018年12月24日復活予定。
@a1lic,a1lic.net,MOD公開場所(トピックへリダイレクト),GitHub
アバター
alice
ID:718fe3b0
金掘り
 
記事: 442
登録日時: 2011年10月23日(日) 20:10


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

x