提供: Minecraft Modding Wiki
この編集を取り消せます。
下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
1行目: | 1行目: | ||
=Eventについて= | =Eventについて= | ||
− | + | <p> | |
+ | EventはMinecraft 1.3以降にMinecraftForgeに追加された, 従来のハンドラに代わるフックの仕組みである. 機能的にはBukkitのEventシステムとほぼ同じである. | ||
+ | Cancelableなイベントは'''イベントの処理のみ行い, 通常の処理はキャンセルできる'''ものである. HasResultなイベントは'''イベントの処理が成功かどうかの情報が必要'''ということである. | ||
+ | </p> | ||
+ | ==Playerに関するイベント== | ||
+ | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
+ | !width=15% rowspan="2"|イベント名 | ||
+ | |'''ArrowLooseEvent''' | ||
+ | |- | ||
+ | |'''ArrowNockEvent''' | ||
+ | |- | ||
+ | !フックのタイミング | ||
+ | |弓を右クリックしたとき(NockEvent)と矢を発射するとき(LooseEvent) | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |○ | ||
+ | |- | ||
+ | !HasResult | ||
+ | |× | ||
+ | |- | ||
+ | !補足 | ||
+ | |追加した矢をバニラの弓で撃たせたいときに実装する必要がある | ||
+ | |} | ||
+ | |||
+ | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
+ | !width=15%|イベント名 | ||
+ | |'''AttackEntityEvent''' | ||
+ | |- | ||
+ | !フックのタイミング | ||
+ | |プレイヤーが他のEntityを攻撃したとき | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |○ | ||
+ | |- | ||
+ | !HasResult | ||
+ | |× | ||
+ | |- | ||
+ | !補足 | ||
+ | | | ||
+ | |} | ||
+ | |||
+ | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
+ | !width=15%|イベント名 | ||
+ | |'''BonemealEvent''' | ||
+ | |- | ||
+ | !フックのタイミング | ||
+ | |プレイヤーが骨粉をブロックに対し右クリックしたとき | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |○ | ||
+ | |- | ||
+ | !HasResult | ||
+ | |○ | ||
+ | |- | ||
+ | !補足 | ||
+ | |処理成功時にsetResult(ALLOW)するとスタック数が減る | ||
+ | |} | ||
+ | |||
+ | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
+ | !width=15%|イベント名 | ||
+ | |'''EntityInteractEvent''' | ||
+ | |- | ||
+ | !フックのタイミング | ||
+ | |プレイヤーが他のEntityを右クリックしたとき | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |○ | ||
+ | |- | ||
+ | !SetResult | ||
+ | |× | ||
+ | |- | ||
+ | !補足 | ||
+ | | | ||
+ | |} | ||
+ | |||
+ | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
+ | !width=15%|イベント名 | ||
+ | |'''EntityItemPickupEvent''' | ||
+ | |- | ||
+ | !フックのタイミング | ||
+ | |プレイヤーがEntityItem(ドロップ状態のアイテム)を拾ったとき | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |○ | ||
+ | |- | ||
+ | !SetResult | ||
+ | |○ | ||
+ | |- | ||
+ | !補足 | ||
+ | | | ||
+ | |} | ||
+ | |||
+ | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
+ | !width=15%|イベント名 | ||
+ | |'''FillBucketEvent''' | ||
+ | |- | ||
+ | !フックのタイミング | ||
+ | |プレイヤーが空のバケツでブロックを右クリックしたとき | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |○ | ||
+ | |- | ||
+ | !SetResult | ||
+ | |○ | ||
+ | |- | ||
+ | !補足 | ||
+ | | | ||
+ | |} | ||
+ | |||
+ | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
+ | !width=15%|イベント名 | ||
+ | |'''PlayerDestroyItemEvent''' | ||
+ | |- | ||
+ | !フックのタイミング | ||
+ | |プレイヤーが現在持っているアイテムのスタック数が0になったとき | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |× | ||
+ | |- | ||
+ | !SetResult | ||
+ | |× | ||
+ | |- | ||
+ | !補足 | ||
+ | |ツールだけでなくアイテムやブロックのスタック数が0になったときも呼ばれる | ||
+ | |} | ||
+ | |||
+ | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
+ | !width=15%|イベント名 | ||
+ | |'''PlayerDropsEvent''' | ||
+ | |- | ||
+ | !フックのタイミング | ||
+ | |プレイヤーがアイテムをドロップしたとき | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |○ | ||
+ | |- | ||
+ | !SetResult | ||
+ | |× | ||
+ | |- | ||
+ | !補足 | ||
+ | | | ||
+ | |} | ||
+ | |||
+ | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
+ | !width=15% rowspan="2"|イベント名 | ||
+ | |'''PlayerEvent.HarvestCheck''' | ||
+ | |- | ||
+ | |'''PlayerEvent.BreakSpeed''' | ||
+ | |- | ||
+ | !rowspan="2"|フックのタイミング | ||
+ | |プレイヤーがツールでブロックを右クリックしたとき | ||
+ | |- | ||
+ | |プレイヤーがツールでブロックを破壊しているとき | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |(BreakSpeedのみ)○ | ||
+ | |- | ||
+ | !SetResult | ||
+ | |× | ||
+ | |- | ||
+ | !補足 | ||
+ | |BreakSpeedはcancelable | ||
+ | |} | ||
+ | |||
+ | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
+ | !width=15%|イベント名 | ||
+ | |'''PlayerInteractEvent''' | ||
+ | |- | ||
+ | !フックのタイミング | ||
+ | |プレイヤーがブロックを左クリック/右クリックしたとき | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |○ | ||
+ | |- | ||
+ | !SetResult | ||
+ | |× | ||
+ | |- | ||
+ | !補足 | ||
+ | | | ||
+ | |} | ||
+ | |||
+ | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
+ | !width=15%|イベント名 | ||
+ | |'''PlayerSleepInBedEvent''' | ||
+ | |- | ||
+ | !フックのタイミング | ||
+ | |プレイヤーがベッドで寝たとき | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |× | ||
+ | |- | ||
+ | !SetResult | ||
+ | |× | ||
+ | |- | ||
+ | !補足 | ||
+ | | | ||
+ | |} | ||
+ | |||
+ | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
+ | !width=15%|イベント名 | ||
+ | |'''UseHoeEvent''' | ||
+ | |- | ||
+ | !フックのタイミング | ||
+ | |クワで土/草ブロックを耕したとき | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |○ | ||
+ | |- | ||
+ | !SetResult | ||
+ | |○ | ||
+ | |- | ||
+ | !補足 | ||
+ | | | ||
+ | |} | ||
+ | |||
+ | ==EntityLivingに関するイベント== | ||
+ | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
+ | !width=15%|イベント名 | ||
+ | |'''LivingAttackEvent''' | ||
+ | |- | ||
+ | !フックのタイミング | ||
+ | |EntityLivingが'''攻撃を受けた'''とき | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |○ | ||
+ | |- | ||
+ | !HasResult | ||
+ | |× | ||
+ | |- | ||
+ | !補足 | ||
+ | |名前と機能がわかりづらい | ||
+ | |} | ||
+ | |||
+ | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
+ | !width=15%|イベント名 | ||
+ | |'''LivingDeathEvent''' | ||
+ | |- | ||
+ | !フックのタイミング | ||
+ | |EntityLivingが死亡したとき | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |○ | ||
+ | |- | ||
+ | !HasResult | ||
+ | |× | ||
+ | |- | ||
+ | !補足 | ||
+ | | | ||
+ | |} | ||
+ | |||
+ | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
+ | !width=15%|イベント名 | ||
+ | |'''LivingDropsEvent''' | ||
+ | |- | ||
+ | !フックのタイミング | ||
+ | |EntityLivingが死んで, アイテムをドロップするとき | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |○ | ||
+ | |- | ||
+ | !HasResult | ||
+ | |× | ||
+ | |- | ||
+ | !補足 | ||
+ | | | ||
+ | |} | ||
− | |||
{|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
− | !width=15%| | + | !width=15% rowspan="2"|イベント名 |
− | |''' | + | |'''LivingEvent.LivingUpdateEvent''' |
+ | |- | ||
+ | |'''LivingEvent.LivingJumpEvent''' | ||
+ | |- | ||
+ | !rowspan="2"|フックのタイミング | ||
+ | |EntityLivingのonUpdate | ||
+ | |- | ||
+ | |EntityLivingがジャンプしたとき | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |(LivingUpdateEventのみ)○ | ||
|- | |- | ||
− | ! | + | !HasResult |
− | | | + | |× |
|- | |- | ||
!補足 | !補足 | ||
15行目: | 289行目: | ||
{|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
− | !width=15%| | + | !width=15%|イベント名 |
− | |''' | + | |'''LivingFallEvent''' |
+ | |- | ||
+ | !フックのタイミング | ||
+ | |EntityLivingが落下したとき | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |○ | ||
+ | |- | ||
+ | !HasResult | ||
+ | |× | ||
+ | |- | ||
+ | !補足 | ||
+ | |ジャンプ後の落下も含む | ||
+ | |} | ||
+ | |||
+ | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
+ | !width=15%|イベント名 | ||
+ | |'''LivingHurtEvent''' | ||
+ | |- | ||
+ | !フックのタイミング | ||
+ | |EntityLivingがダメージを受けたとき | ||
+ | |- | ||
+ | !Cancelable | ||
+ | |○ | ||
|- | |- | ||
− | ! | + | !HasResult |
− | | | + | |× |
|- | |- | ||
!補足 | !補足 | ||
− | | | + | |LivingAttackEventと異なり, 落下, 水没, 炎など全てのダメージソースで呼ばれる |
|} | |} | ||
{|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
− | !width=15%| | + | !width=15%|イベント名 |
− | |''' | + | |'''LivingSetAttackTargetEvent''' |
|- | |- | ||
− | ! | + | !フックのタイミング |
− | | | + | |EntityLivingが他のEntityLivingをターゲットしたとき |
+ | |- | ||
+ | !Cancelable | ||
+ | |× | ||
+ | |- | ||
+ | !HasResult | ||
+ | |× | ||
|- | |- | ||
!補足 | !補足 | ||
− | | | + | | |
|} | |} | ||
{|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | {|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; " width=100% | ||
− | !width=15%| | + | !width=15% rowspan="2"|イベント名 |
− | |''' | + | |'''LivingSpawnEvent.CheckSpawn''' |
+ | |- | ||
+ | |'''LivingSpawnEvent.SpecialSpawn''' | ||
+ | |- | ||
+ | !rowspan="2"|フックのタイミング | ||
+ | |EntityLivingのスポーンチェック時 | ||
+ | |- | ||
+ | |特殊なMobがスポーンするとき | ||
+ | |- | ||
+ | !rowspan="2"|Cancelable | ||
+ | |× | ||
+ | |- | ||
+ | |○ | ||
+ | |- | ||
+ | !rowspan="2"|HasResult | ||
+ | |○ | ||
|- | |- | ||
− | + | |× | |
− | | | ||
|- | |- | ||
!補足 | !補足 | ||
− | | | + | | |
|} | |} | ||
+ | |||
+ | ==EntityItemに関するイベント== | ||
+ | |||
+ | ==Minecartに関するイベント== | ||
+ | |||
+ | ==地形生成に関するイベント== | ||
+ | |||
+ | ==ワールドに関するイベント== |