|
|
(他の1人の利用者による、間の1版が非表示) |
1行目: |
1行目: |
− | =鉱石生成イベント= | + | {{forge|version=1.8}} |
− | <p>
| + | ORE_GEN_BUSに登録するイベント. 鉱石生成へのフックが中心.<br> |
− | ORE_GEN_BUSに登録するイベント. 鉱石生成へのフックが中心.<br>
| + | 具体的な使い方は[[1.8のOreGenEvent利用による鉱石生成]]を参照のこと。 |
− | 具体的な使い方は[[1.8のOreGenEvent利用による鉱石生成]]を参照のこと。
| |
− | </p>
| |
| | | |
| ==生成に関するイベント== | | ==生成に関するイベント== |
40行目: |
38行目: |
| |鉱石を生成させるか否かを返すことができる。 | | |鉱石を生成させるか否かを返すことができる。 |
| |} | | |} |
− | ==用例==
| |
− | ※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>
| |
2019年9月30日 (月) 22:18時点における最新版
1.8向けMinecraft Forgeのチュートリアルです。
ORE_GEN_BUSに登録するイベント. 鉱石生成へのフックが中心.
具体的な使い方は1.8のOreGenEvent利用による鉱石生成を参照のこと。
生成に関するイベント[編集]
イベント名
|
OreGenEvent.Pre
|
OreGenEvent.Post
|
フックのタイミング
|
バニラ鉱石を生成する前(Pre)と、した後(Post)
|
Cancelable
|
×
|
HasResult
|
×
|
補足
|
|
イベント名
|
OreGenEvent.GenerateMinable
|
フックのタイミング
|
鉱石が生成されるタイミング。
|
Cancelable
|
×
|
HasResult
|
○
|
補足
|
鉱石を生成させるか否かを返すことができる。
|