hogepiyo

かつてはマイクラのModを作っていたがひざに矢を受けた

ForgeEvent

MinecraftForgeEventの種類

Eventの種類 MinecraftForgeのEventには以下の3つがある. EVENT_BUS TERRAIN_GEN_BUS ORE_GEN_BUS ForgeSubscribeアノテーションを付与したメソッドでも, 適切なEVENT_BUSにregisterしないとフックをかけれらない(メソッドが呼ばれない). terraingen以外のEv…

UseHoeEventの利用

UseHoeEventを使ったModの作成 UseHoeEventはプレイヤーがクワを使ったときに呼ばれるEvent. 利用方法がだいぶ限定されている気はするが, やはりアイデア次第. ダイヤクワのみ範囲耕作になるMod 今回はForgeSubscribe以下のメソッドのみ. 前回のPlayerSleepI…

PlayerSleepInBedEventの利用

PlayerSleepInBedEventを利用した簡単なModを作成 PlayerSleepInBedEventはプレイヤーがベッドで寝ているときに割りこまれるイベント. これを使うことで「ベッドに寝てるときに」何かすることができる. ベッドで寝るとライフが回復するMod と, いうわけでさ…

PlayerInteractEventの挙動

PlayerInteractEventについて PlayerInteractEventは, EntityInteractEventと似たEventで, プレイヤーがブロックやアイテムを右クリック(左クリック)したときに割りこまれる.このEventを使って, 特定のアイテムを持った状態で元々GUIを持つブロックを右クリ…

HasResultなEvent

概要 EventのクラスにCancelable以外にEvent.HasResultアノテーションが付与されいてるEventがある. たとえば骨粉で成長促進させるためのEvent, @Cancelable @Event.HasResult public class BonemealEvent extends PlayerEvent { ... } HasResultアノテーシ…

CancelableなEvent

概要 Eventにはそのクラス自体にCancelableアノテーションが付与されているものがある. たとえば @Cancelable public class AttackEntityEvent extends PlayerEvent { ... } CancelableなEventではsetCanceled(bool)が呼べる. このsetCanceled()というのは, …

Forge Eventについて

概要 1.3以降のForgeから, 従来のHandlerの多くがEventに変更された. インタフェースを継承し, 実装するHandlerと異なり, Eventはアノテーションによって呼び出されるメソッドが指定される. Bukkit PluginのEventHandlerと同じ形式でもある. 基本的な使い方 …