LoginSignup
11
4

More than 5 years have passed since last update.

最強のPocketMineプラグイン開発環境を作る。

Last updated at Posted at 2019-01-04

挨拶

あけましておめでとうございます。2019年最初の記事を書きました。
寒さにやられてコーディングするやる気が起きず苦しんでいます()
ちなみにこれが二回目に書いた記事です。不定期ですが頑張って書いていきます。

この記事について

自分が最強だと思う環境を記事にして書いてみました。

PocketMineとは

PocketMine-MPという名前のphpのMCBE(Minecraft Bedrock Edition)専用のサーバーソフトです。
2019年1月4日現在も開発が続いています。

環境

・Windows10
PocketMine-MP
php(7.2)
PhpStorm 2018.3.2

セットアップ

Composerのセットアップとかをしていきます。

php のインストール

  1. ここからphp-7.2.13-vc15-x64をダウンロード(x32には非対応)
  2. ダウンロードしたものをC:\phpに解凍(フォルダ名はなんでもいいですがこの記事ではこれで行きます。)

PATHの設定

  1. コントロールパネル > システムとセキュリティ > システム > システムの詳細 > 環境変数 を開きます。
  2. システム環境変数からPathを開く
  3. C:\php を追加する。
  4. 保存

Microsoft Visual C++ のインストール

・Visual Studio が既に入っている人はこの手順を無視出来ますがComposerのインストールで失敗したら試して下さい。

ここから その他のツールとフレームワーク > Visual Studio 2017 の Microsoft Visual C++ 再頒布可能パッケージ をダウンロードしてインストール

Composer のインストール

  1. ここからWindows Installerをダウンロード
  2. C:\phpを指定してNextを押しインストール

PhpStorm

有名なJetBrains社のIDEです。

学生は無料で使う事が出来ます(申請方法についてはこちらの記事を参考にして下さい。)

ここからダウンロードしてセットアップどうりに進めればOKです。

再起動

上の作業が終わったら念の為PCを再起動しておきましょう

開始

セットアップ長すぎですがまだあります。がんばりましょう!

  1. PhpStormを起動する。
  2. Create new Project > PHP Empty Project の順に進む
  3. 場所を指定してCreateを押す image.png

設定

  1. Ctrl+Alt+Sを押します。
  2. Language & Framework > PHP を開いてこのように設定する。 image.png 設定はこれで終わりです。

composer.jsonを作る。

  1. Terminalを開いてcomposer initを入力 image.png
  2. そうするとこんな感じになるのでEnterを押していきます。
  3. セットアップが終わるとcomposer.jsonが生成されるので開いてみましょう image.png
    中身はこんな感じ
    image.png

composer.jsonの書き換え

pmmpのプラグイン開発環境を整えるにはここからが重要です。
必要なものを書いていきます。

composer.json
{
  "name": "inkohx/testplugin",
  "type": "project",
  "authors": [
    {
      "name": "InkoHX"
    }
  ],
  "require": {
    "php": ">=7.2.0",
    "php-64bit": "*",
    "ext-bcmath": "*",
    "ext-curl": "*",
    "ext-crypto": "^0.3.1",
    "ext-ctype": "*",
    "ext-date": "*",
    "ext-gmp": "*",
    "ext-hash": "*",
    "ext-json": "*",
    "ext-mbstring": "*",
    "ext-openssl": "*",
    "ext-pcre": "*",
    "ext-phar": "*",
    "ext-pthreads": ">=3.1.7dev",
    "ext-reflection": "*",
    "ext-sockets": "*",
    "ext-spl": "*",
    "ext-yaml": ">=2.0.0",
    "ext-zip": "*",
    "ext-zlib": ">=1.2.11",
    "mdanter/ecc": "^0.5.0",
    "pocketmine/pocketmine-mp": "^3.5.0",
    "pocketmine/raklib": "^0.12.0",
    "pocketmine/spl": "^0.3.0",
    "pocketmine/binaryutils": "^0.1.0",
    "pocketmine/nbt": "^0.2.1",
    "pocketmine/math": "^0.2.0",
    "pocketmine/snooze": "^0.1.0",
    "daverandom/callback-validator": "dev-master",
    "adhocore/json-comment": "^0.0.7"
  },
  "autoload": {
    "psr-4": {
      "": [
        "src"
      ]
    }
  },
  "repositories": [
    {
      "type": "git",
      "url": "https://github.com/pmmp/PocketMine-MP"
    },
    {
      "type": "git",
      "url": "https://github.com/pmmp/RakLib"
    },
    {
      "type": "git",
      "url": "https://github.com/pmmp/SPL"
    },
    {
      "type": "git",
      "url": "https://github.com/pmmp/BinaryUtils"
    },
    {
      "type": "git",
      "url": "https://github.com/pmmp/NBT"
    },
    {
      "type": "git",
      "url": "https://github.com/pmmp/Math"
    },
    {
      "type": "git",
      "url": "https://github.com/pmmp/Snooze"
    }
  ]
}

めっちゃ多いですがpmmpはこれを必要とします。
後はcomposer.jsonを開くと右上にあるUpdateを押すだけです。
image.png

image.png
こんなのが出てきますがOK押すだけで大丈夫です。

plugin.ymlを作る。

  1. 右クリックをしてNew > Fileをクリック
  2. ウィンドウが出るのでplugin.ymlと打ってEnterを押す。
plugin.yml
name: TestPlugin
main: InkoHX\Test\Main
version: 1.0.0

クラスを作る

  1. 右クリックをしてNew > Directoryをクリック
  2. plugin.ymlを見ながら入力

image.png
3. OK(Enter)で作成

image.png
4. Testの部分を右クリック New > PHP Class

image.png
5. ウィンドウが出てくるので全部入力する。

image.png
6. OK(Enter)で作成

後はいつも通りにコードを書いていけばOKです。
image.png
image.png

最後に

ショートカットや他の機能を覚えればもっと楽にコーディングする事ができます。
pmmperの皆さんでメモ帳などで書いている人がたまに居るのでIDEを使った開発をしてみませんか?
楽にすばやく開発する技術も覚えていきましょう!
間違った情報があれば教えて下さい。
JetBrains IDE使おうよみたいな記事になってないかな

11
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
4