0

同じパッケージの下に 2 つのクラスがあります。クラス名は「TestPlugin」と「Pokemon」です。私が得るエラーは、「New Pokemon」と書かれている7行目のTestPluginクラスにあります。エラーは「変数に解決できません」です。TestPlugin がポケモンのコードにアクセスして使用できるようにしたい。この問題を解決するにはどうすればよいですか? bukkit プラグインの作成は初めてなので、答えを高度にしすぎないでください。「私はこのコード/プラグインを所有していません。教育目的でのみ所有しています!」. 私が使用している bukkit ライブラリは何かと思ったら、推奨されるビルド "craftbukkit-1.6.4-R2.0" です。

TestPlugin のコード:

package com.hotmail.marrunsilkeborg.plugins.testplugin;

import org.bukkit.plugin.java.JavaPlugin;   

public class TestPlugin extends JavaPlugin{
    public void onEnable(){
        getServer().getPluginManager().registerEvents(new Pokemon, this);

    }
}

ポケモンのコード:

package com.hotmail.marrunsilkeborg.plugins.testplugin;

import org.bukkit.block.Block;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.block.BlockPlaceEvent;

public class Pokemon implements Listener{

    @EventHandler
    public void onBlockPlace(BlockPlaceEvent event){
        Player p = event.getPlayer();
        Block bp = event.getBlockPlaced();


        p.sendMessage("You've placed a " + bp.getType().toString());        
    }
}
4

2 に答える 2

2

7 行目を this.getServer().getPluginManager().registerEvents(new Pokemon(this), this); に変更します。on disable を追加することも検討してください

于 2013-11-11T23:12:09.137 に答える