2017-06-06 1 views
4

マップ(Bukkit)からカーソルを削除する方法:私は現在、このようなマップに画像をレンダリングするプラグイン開発してい

public class MapRendererTest extends MapRenderer { 

    private Image image; 

    public MapRendererTest(File file) { 
     try { 
      this.image = ImageIO.read(file); 
     } 
     catch (IOException e) { 
      e.printStackTrace(); 
     } 
    } 

    @Override 
    public void render(MapView mapView, MapCanvas mapCanvas, Player player) { 
     mapCanvas.drawImage(0, 0, image); 
    } 
} 

すべてが正常に動作しますが、この小さな事はしてあります私が削除したい赤い丸ですが、私はどのようにわかりません。

T

物事は私はすでに誰が演奏されていない世界にemtpy MapCursorCollection

  • MapView.setWorldを設定

    • を試してみました。目に見えないカーソル

    誰かがそれで私を助けることができればそれは素晴らしいだろうとMapCursorCollectionを作成

  • 。事前

  • 答えて

    2

    おかげで、カーソルを取り除くために、あなたは他のすべてのマップレンダラーまたは少なくともCraftMapRandererを削除する必要があります。

    これを行うためには、次の操作を行う必要があります:

    @EventHandler 
    public void onMapInitialized(MapInitializeEvent e) { 
        e.getMap().removeRenderer(e.getMap().getRenderers().get(0)); 
        e.getMap().addRenderer(new MapRendererTest(new File(Main.getInstance().getDataFolder() + "/image.png"))); 
    } 
    

    もちろんこの作品だけがこのマップに割り当てられた他のカスタムマップレンダラはありませんので、登録だけがCraftMapRendererある場合。

    MapRenderersが複数ある場合は、リストをループして削除できます。

    関連する問題