提供: Minecraft Modding Wiki
ModderKina (トーク | 投稿記録) (ここは用例を書くところではないはずなので修正。間違っていたら巻き戻し願います。) |
ModderKina (トーク | 投稿記録) (一応、用例を復活させときます。) |
||
40行目: | 40行目: | ||
|鉱石を生成させるか否かを返すことができる。 | |鉱石を生成させるか否かを返すことができる。 | ||
|} | |} | ||
+ | ==用例== | ||
+ | ※importは省略しています。 | ||
+ | *SampleOreGen.java | ||
+ | <source lang="java"> | ||
+ | |||
+ | @Mod(modid = "sampleoregen", name = "SampleOreGen", version = "1.0") | ||
+ | public class SampleOreGen { | ||
+ | @EventHandler | ||
+ | public void init(FMLInitializationEvent event) { | ||
+ | // 別途クラスを用意し、そのインスタンスでも可。 | ||
+ | MinecraftForge.ORE_GEN_BUS.register(this); | ||
+ | } | ||
+ | |||
+ | @SubscribeEvent | ||
+ | public void generateOrePre(OreGenEvent.Pre event) { | ||
+ | // 1.7以前版 | ||
+ | WorldGenerator generator = new WorldGenMinable(Blocks.bedrock, 9); | ||
+ | if(TerrainGen.generateOre(event.world, event.rand, generator, event.worldX, event.worldZ, OreGenEvent.GenerateMinable.EventType.CUSTOM)) { | ||
+ | // 生成処理 | ||
+ | } | ||
+ | // 1.8以降版 | ||
+ | WorldGenerator generator = new WorldGenMinable(Blocks.bedrock.getDefaultState(), 9); | ||
+ | if(TerrainGen.generateOre(event.world, event.rand, generator, event.pos, OreGenEvent.GenerateMinable.EventType.CUSTOM)) { | ||
+ | // 生成処理 | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | |||
+ | </source> |
2015年1月24日 (土) 09:58時点における版
鉱石生成イベント
ORE_GEN_BUSに登録するイベント. 鉱石生成へのフックが中心.
具体的な使い方は1.8のOreGenEvent利用による鉱石生成を参照のこと。
生成に関するイベント
イベント名 | OreGenEvent.Pre |
---|---|
OreGenEvent.Post | |
フックのタイミング | バニラ鉱石を生成する前(Pre)と、した後(Post) |
Cancelable | × |
HasResult | × |
補足 |
イベント名 | OreGenEvent.GenerateMinable |
---|---|
フックのタイミング | 鉱石が生成されるタイミング。 |
Cancelable | × |
HasResult | ○ |
補足 | 鉱石を生成させるか否かを返すことができる。 |
用例
※importは省略しています。
- SampleOreGen.java
@Mod(modid = "sampleoregen", name = "SampleOreGen", version = "1.0") public class SampleOreGen { @EventHandler public void init(FMLInitializationEvent event) { // 別途クラスを用意し、そのインスタンスでも可。 MinecraftForge.ORE_GEN_BUS.register(this); } @SubscribeEvent public void generateOrePre(OreGenEvent.Pre event) { // 1.7以前版 WorldGenerator generator = new WorldGenMinable(Blocks.bedrock, 9); if(TerrainGen.generateOre(event.world, event.rand, generator, event.worldX, event.worldZ, OreGenEvent.GenerateMinable.EventType.CUSTOM)) { // 生成処理 } // 1.8以降版 WorldGenerator generator = new WorldGenMinable(Blocks.bedrock.getDefaultState(), 9); if(TerrainGen.generateOre(event.world, event.rand, generator, event.pos, OreGenEvent.GenerateMinable.EventType.CUSTOM)) { // 生成処理 } } }