2016-04-03 8 views
0

どのように私はによって作成された発射/エンティティを追跡します:Bukkit - トラック発射

Egg egg = (Egg) ((ProjectileSource) player).launchProjectile(Egg.class); 

をしている卵がに着弾したブロックを見つけますか?

これらの卵からチキンの産卵も無効にしたいと思います。

答えて

1

卵が上陸する場所は、かなりcomplexと思われます。あなただけの発射が入っているブロックを取得することが罰金だ場合、あなたはこれを使用することができます:

@EventHandler 
public void onProjectileHit(ProjectileHitEvent e) { 
    if (e.getEntity().getType() == EntityType.EGG) { 
     Block block = e.getEntity().getLocation().getBlock(); 
    } 
} 

が卵から産卵から鶏を防止することは簡単です:

@EventHandler 
public void onCreatureSpawn(CreatureSpawnEvent e) { 
    if (e.getSpawnReason() == CreatureSpawnEvent.SpawnReason.EGG) { 
     e.setCancelled(true); 
    } 
}