提供: Minecraft Modding Wiki
(ModLoaderAPI解説と同様に表で概要を作成) |
|||
106行目: | 106行目: | ||
==ForgeModLoader API== | ==ForgeModLoader API== | ||
===基礎=== | ===基礎=== | ||
− | + | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " | |
− | + | |+ style="background:#ddd;text-align:center;padding:0 0 0 2px;"|GameRegistry | |
− | + | !メソッド名 | |
− | + | !概要 | |
− | + | !補足 | |
+ | |- | ||
+ | |public static void registerBlock(Block block) | ||
+ | |Blockの登録, ModLoader.registerBlockと同等 | ||
+ | |非推奨 | ||
+ | |- | ||
+ | |public static void registerBlock(Block block, String name) | ||
+ | |Blockの登録 | ||
+ | |nameは後述のfindBlockを利用するときに使われる | ||
+ | |- | ||
+ | |public static void registerBlock(Block block, Class<? extends ItemBlock> itemclass) | ||
+ | |ItemBlockの登録, ModLoader.registerBlockと同等 | ||
+ | |非推奨 | ||
+ | |- | ||
+ | |public static void registerBlock(Block block, Class<? extends ItemBlock> itemclass, String name) | ||
+ | |ItemBlockの登録 | ||
+ | |nameは後述のfindBlockを利用するときに使われる | ||
+ | |- | ||
+ | |public static void registerBlock(Block block, Class<? extends ItemBlock> itemclass, String name, String modId) | ||
+ | |Block, ItemBlockの登録. 上記のメソッドでこのメソッドを呼んでいるので直接叩く機会はほぼない | ||
+ | |上記のメソッドを利用した場合, modIdはnullとして登録される | ||
+ | |- | ||
+ | |public static void registerItem(net.minecraft.item.Item item, String name) | ||
+ | |Itemの登録 | ||
+ | |後述のfindItemを利用する場合登録する | ||
+ | |- | ||
+ | |public static void registerItem(net.minecraft.item.Item item, String name, String modId) | ||
+ | |Itemの登録 | ||
+ | |後述のfindItemを利用する場合登録する | ||
+ | |- | ||
+ | |public static Block findBlock(String modId, String name) | ||
+ | |modIdとnameからBlockを取得 | ||
+ | |modIdとnameが適切に登録されている必要がある | ||
+ | |- | ||
+ | |public static Item findItem(String modId, String name) | ||
+ | |modIdとnameからItemを取得 | ||
+ | |modIdとnameを適切に登録されている必要がある | ||
+ | |- | ||
+ | |public static void addRecipe(ItemStack output, Object... params) | ||
+ | |レシピの追加, ModLoader.addRecipeと同等 | ||
+ | | | ||
+ | |- | ||
+ | |public static void addShapelessRecipe(ItemStack output, Object... params) | ||
+ | |非定形レシピの追加, ModLoader.addShapelessRecipeと同等 | ||
+ | | | ||
+ | |- | ||
+ | |public static void addRecipe(IRecipe recipe) | ||
+ | |レシピの追加, IRecipeを実装したクラスを渡すタイプ | ||
+ | |鉱石辞書を利用したレシピ追加で利用 | ||
+ | |- | ||
+ | |public static void addSmelting(int input, ItemStack output, float xp) | ||
+ | |精錬レシピの追加 | ||
+ | |メタデータを利用したアイテムの精錬レシピはこれではできないことに注意 | ||
+ | |- | ||
+ | |public static void registerTileEntity(Class<? extends TileEntity> tileEntityClass, String id) | ||
+ | |TileEntityの登録, idは固有の文字列 | ||
+ | | | ||
+ | |- | ||
+ | |public static void addBiome(BiomeGenBase biome) | ||
+ | |バイオームの追加 | ||
+ | | | ||
+ | |- | ||
+ | |public static void removeBiome(BiomeGenBase biome) | ||
+ | |バイオームの削除 | ||
+ | | | ||
+ | |- | ||
+ | |public static void registerFuelHandler(IFuelHandler handler) | ||
+ | |IFuelHandlerインタフェースの登録 | ||
+ | | | ||
+ | |- | ||
+ | |public static void registerCraftingHandler(ICraftingHandler handler) | ||
+ | |ICraftingHandlerインタフェースの登録 | ||
+ | | | ||
+ | |- | ||
+ | |public static void registerPickupHandler(IPickupNotifier handler) | ||
+ | |IPickupNotifierインタフェースの登録 | ||
+ | | | ||
+ | |- | ||
+ | |public static void registerPlayerTracker(IPlayerTracker tracker) | ||
+ | |IPlayerTrackerインタフェースの登録 | ||
+ | | | ||
+ | |- | ||
+ | |public static void registerWorldGenerator(IWorldGenerator generator) | ||
+ | |IWorldGeneratorインタフェースの登録 | ||
+ | | | ||
+ | |} | ||
+ | *LanguageRegistry | ||
+ | 表示名やローカライズを登録するAPI | ||
+ | *EntityRegistry | ||
+ | Entityを登録するAPI | ||
+ | *RenderingRegistry | ||
+ | 描画関連のクラスを登録するAPI | ||
*インタフェース | *インタフェース |
2013年3月30日 (土) 18:33時点における版
目次
概要
Minecraft ForgeとはMod作成に作成において要求頻度の高い様々な拡張機能を総合的に補助する前提Mod(拡張API)である. ver1.2.5まではModLoader, ModLoaderMP, Forgeと3つ導入する必要があったが, 1.3以降はForge用に調整されたForgeModLoaderが同梱されたので, Forgeのみ導入すればよくなった. なお, 1.2.5用の解説はここに記載しないので注意. 1.2.5と1.3ではForgeでもAPIが大きく異なるためである.
開発環境でのインストール方法
MinecraftForge導入手順(MCP)にある通り, Forge ForumないしForge Downloadsからrecommended(推奨版)またはlatest(最新版)をダウンロードし, 解凍後任意のディレクトリで同梱のinstall.batまたはinstall.shを実行すれば開発環境が構築される.
関連リンク
ForgeModLoaderについて
ForgeModLoader(以下FML)はForge用に作られた新しいModLoaderである. ModLoaderとは互換性があり, ModLoaderで作られたModでもFMLで動作することがある. 1.3以降時にForgeが担っていたネットワーク関連のAPIがFMLに委譲されており, Forge前提でもFMLのAPIを利用することが多いためこのページではまとめて扱う.
ForgeModLoader API
基礎
メソッド名 | 概要 | 補足 |
---|---|---|
public static void registerBlock(Block block) | Blockの登録, ModLoader.registerBlockと同等 | 非推奨 |
public static void registerBlock(Block block, String name) | Blockの登録 | nameは後述のfindBlockを利用するときに使われる |
public static void registerBlock(Block block, Class<? extends ItemBlock> itemclass) | ItemBlockの登録, ModLoader.registerBlockと同等 | 非推奨 |
public static void registerBlock(Block block, Class<? extends ItemBlock> itemclass, String name) | ItemBlockの登録 | nameは後述のfindBlockを利用するときに使われる |
public static void registerBlock(Block block, Class<? extends ItemBlock> itemclass, String name, String modId) | Block, ItemBlockの登録. 上記のメソッドでこのメソッドを呼んでいるので直接叩く機会はほぼない | 上記のメソッドを利用した場合, modIdはnullとして登録される |
public static void registerItem(net.minecraft.item.Item item, String name) | Itemの登録 | 後述のfindItemを利用する場合登録する |
public static void registerItem(net.minecraft.item.Item item, String name, String modId) | Itemの登録 | 後述のfindItemを利用する場合登録する |
public static Block findBlock(String modId, String name) | modIdとnameからBlockを取得 | modIdとnameが適切に登録されている必要がある |
public static Item findItem(String modId, String name) | modIdとnameからItemを取得 | modIdとnameを適切に登録されている必要がある |
public static void addRecipe(ItemStack output, Object... params) | レシピの追加, ModLoader.addRecipeと同等 | |
public static void addShapelessRecipe(ItemStack output, Object... params) | 非定形レシピの追加, ModLoader.addShapelessRecipeと同等 | |
public static void addRecipe(IRecipe recipe) | レシピの追加, IRecipeを実装したクラスを渡すタイプ | 鉱石辞書を利用したレシピ追加で利用 |
public static void addSmelting(int input, ItemStack output, float xp) | 精錬レシピの追加 | メタデータを利用したアイテムの精錬レシピはこれではできないことに注意 |
public static void registerTileEntity(Class<? extends TileEntity> tileEntityClass, String id) | TileEntityの登録, idは固有の文字列 | |
public static void addBiome(BiomeGenBase biome) | バイオームの追加 | |
public static void removeBiome(BiomeGenBase biome) | バイオームの削除 | |
public static void registerFuelHandler(IFuelHandler handler) | IFuelHandlerインタフェースの登録 | |
public static void registerCraftingHandler(ICraftingHandler handler) | ICraftingHandlerインタフェースの登録 | |
public static void registerPickupHandler(IPickupNotifier handler) | IPickupNotifierインタフェースの登録 | |
public static void registerPlayerTracker(IPlayerTracker tracker) | IPlayerTrackerインタフェースの登録 | |
public static void registerWorldGenerator(IWorldGenerator generator) | IWorldGeneratorインタフェースの登録 |
- LanguageRegistry
表示名やローカライズを登録するAPI
- EntityRegistry
Entityを登録するAPI
- RenderingRegistry
描画関連のクラスを登録するAPI
- インタフェース
- ICraftingHandler
- IFuelHandler
- ITickHandler
- IWorldGeneretor
- IEntityAdditonalSpawnData
- IThorwableEntity
- IConnectionHandler
- IGuiHandler
- IPacketHandler
coremods向け
- API
- インタフェース
Minecraft Forge API
追加メソッド
基礎
イベント
液体API
- API
- インタフェース
鉱石辞書
- API